绘制新视点中的空洞填补方法转让专利

申请号 : CN201310489437.1

文献号 : CN103581648B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王好谦李政芝张永兵王兴政戴琼海

申请人 : 清华大学深圳研究生院

摘要 :

本发明涉及一种绘制新视点中的空洞填补方法,该方法包括以下步骤:在三维映射前,对深度图预处理,包括:检测深度图边缘;进行深度不连续分析,获取主要深度不连续区域;对主要深度不连续区域进行非对称高斯滤波;在三维映射后,检查新视点图像是否仍有空洞,如果有,则基于深度信息对空洞填补。本发明在三维映射前只对主要深度不连续区域进行平滑,在三维映射后基于深度信息对空洞填补,不但有效避免了对不出现空洞或只有小空洞区域的平滑而造成的额外扭曲现象,而且能够实现更合理的填补结果。

权利要求 :

1.一种绘制新视点中的空洞填补方法,其特征在于,包括以下步骤:在三维映射前,对深度图预处理,包括:检测深度图边缘;进行深度不连续分析,获取主要深度不连续区域;对主要深度不连续区域进行非对称高斯滤波;

在三维映射后,检查新视点图像是否仍有空洞,如果有,则基于深度信息对空洞填补;

三维映射中包括判断当前映射点映射后是否超过图像边界,如果是,则不对当前点进行映射。

2.根据权利要求1所述的空洞填补方法,其特征在于,对深度图预处理还包括对主要深度不连续区域附近的深度图区域进行非对称高斯滤波和三边滤波。

3.根据权利要求1或2所述的空洞填补方法,其特征在于,对深度图预处理还包括对其余深度图区域进行三边滤波。

4.根据权利要求1所述的空洞填补方法,其特征在于,对深度图预处理还包括对滤波后区域物体边界附近的垂直边缘进行深度值校正。

5.根据权利要求1所述的空洞填补方法,其特征在于,深度不连续分析包括:判断边缘点水平方向附近的深度值是由低到高变化还是由高到低变化,据此确定边缘点映射后会产生空洞或会被遮挡;

对于会产生空洞的边缘点,计算映射后的空洞区域的水平长度;

将空洞区域的水平长度与阈值比较,大于阈值则判定该空洞区域为主要深度不连续区域。

6.根据权利要求5所述的空洞填补方法,其特征在于,深度不连续分析还包括:对于会被遮挡的边缘点,计算映射后被遮挡区域的水平长度;

三维映射中包括:判断当前映射点映射后是否会被遮挡,如果是,则用深度不连续分析步骤中计算的被遮挡区域的水平长度确定被遮挡区域边界点,不映射被遮挡区域,直接跳至被遮挡区域边界点进行映射。

7.根据权利要求1所述的空洞填补方法,其特征在于,基于深度信息对空洞填补的步骤包括:分别计算以空洞边界上的各个点为中心的各个块的可信度和深度信息,基于可信度和深度信息计算各个块的优先级;

取优先级最高的块作为当前待修补块;

在已知区域搜索当前待修补块的最匹配块;

用最匹配块内的像素填补当前待修补块内对应位置的像素,以及分别用当前待修补块的平均深度值和可信度值更新填补像素的深度值和可信度值。

8.根据权利要求7所述的空洞填补方法,其特征在于,通过公式计算块的深度信息,ψp表示以点p为中心的块,I表示输入图像,Ω表示空洞区域,I-Ω表示已知区域, 表示块ψp内的平均深度值,Zq表示块ψp内已知像素点的深度值。

说明书 :

绘制新视点中的空洞填补方法

技术领域

[0001] 本发明涉及一种绘制新视点中的空洞填补方法,基于现有的绘制新视点方法,用于减少并填补绘制过程中出现的空洞,以提高新视点的绘制质量。属于计算机视觉、图像处理、虚拟现实技术领域。

背景技术

[0002] 自1936年,第一项电视服务由英国广播公司(BBC)推出以来,随着视频技术的发展(例如内容获取,编码,通信和显示),电视播放经历了从黑白到彩色,模拟到数字,阴极射线管显示到液晶屏显示,从被动的欣赏电视节目到交互式视频点播(VOD)服务。而如今,为实现身临其境的体验,电视业向着三维电视(3D-TV)发展着。三维电视将传统的二维视频生动的拓展为三维,使用户感觉他们正通过窗口看真实的对象而不是平面图像。当前三维电视的发展主要受限于立体视频内容的制作和传输,尤其是以下两个方面:不同接收端的自适应能力(视点的数量和大小)和对现有的二维显示的向后兼容性。
[0003] 传统的立体视频制作方法主要是通过一组平行、会聚或者任意角度的相机阵列拍摄场景中不同角度的信息,所得的多个视频经几何参数校正、亮度/色度补偿等预处理后,再经多视视频编码(multiview video coding,MVC)压缩成视频流。由于编码后重构的多个视不一定符合某个观众在显示屏前所在位置的观看要求,故解码后需通过选择一些合适的视绘制成符合需要的两个虚拟视(虚拟摄像机)后,再合成为“立体对”视。但是这种方法对于视频编码和传输都有较高的要求,且传输过程中数据量较大,不便于实现。因此,只须通过一路二维视频和它相应的每点深度信息的立体视频制作方法颇受青睐。方法中,利用基于深度图像绘制技术(DIBR)在接收端合成一个或多个虚拟视点,减少了数据传输中总的带宽,而且通过绘制所有需要的虚拟视点使用户端拥有了对不同接收端的自适应能力。
[0004] 然而基于深度图像绘制技术,也称为三维映射(3D image warping)过程中出现的空洞是一路二维视频加深度信息方法最大的问题。三维映射方程首先将二维参考图像某个像素坐标映射到一个三维空间坐标点,然后再将该三维空间坐标点反映射为目标图像一个图像坐标,最后将参考图像坐标像素值赋给目标图像映射坐标。由于空间点在图像不同视图中遮挡关系即体现在深度图中水平方向的较大不连续区域,图像映射会暴露出在原视点下被遮挡,而在新视点中可见的区域,这也就是新视点下的空洞区域。
[0005] 空洞的出现对新视点的绘制质量有较大的影响,如今常用的有两类空洞填补的方法:一种是对深度图通过均值滤波、高斯滤波等预处理,能够平滑深度图的不连续区域,消除空洞。但是这种方法会使映射后的新视点下的物体出现明显的几何失真,尤其是垂直边界扭曲的物体对视觉影响更大。另一种是对映射后出现的空洞利用图像修补的算法进行填补。由于空洞一般都是来自于原视点下被遮挡的背景像素,故如果填补时没有考虑到空洞更倾向于背景像素来填补的话,填补后的图像也会明显失真。

发明内容

[0006] 针对上述的现有空洞填补方法存在的问题,本发明提出了绘制新视点中的空洞填补方法。
[0007] 本发明采用的技术方案如下:
[0008] 一种绘制新视点中的空洞填补方法,其包括以下步骤:
[0009] 在三维映射前,对深度图预处理,包括:检测深度图边缘;进行深度不连续分析,获取主要深度不连续区域;对主要深度不连续区域进行非对称高斯滤波;
[0010] 在三维映射后,检查新视点图像是否仍有空洞,如果有,则基于深度信息对空洞填补。
[0011] 在上述的绘制新视点中的空洞填补方法中,优选地,对深度图预处理还包括对主要深度不连续区域附近的深度图区域进行非对称高斯滤波和三边滤波。
[0012] 在上述的绘制新视点中的空洞填补方法中,优选地,对深度图预处理还包括对其余深度图区域进行三边滤波。
[0013] 在上述的绘制新视点中的空洞填补方法中,优选地,对深度图预处理还包括对滤波后区域物体边界附近的垂直边缘进行深度值校正。
[0014] 在上述的绘制新视点中的空洞填补方法中,优选地,深度不连续分析包括:
[0015] 判断边缘点水平方向附近的深度值是由低到高变化还是由高到低变化,据此确定边缘点映射后会产生空洞或会被遮挡;
[0016] 对于会产生空洞的边缘点,计算映射后的空洞区域的水平长度;
[0017] 将空洞区域的水平长度与阈值比较,大于阈值则判定该空洞区域为主要深度不连续区域。
[0018] 在上述的绘制新视点中的空洞填补方法中,优选地,深度不连续分析还包括:对于会被遮挡的边缘点,计算映射后被遮挡区域的水平长度;三维映射中包括:判断当前映射点映射后是否会被遮挡,如果是,则用深度不连续分析步骤中计算的被遮挡区域的水平长度确定被遮挡区域边界点,不映射被遮挡区域,直接跳至被遮挡区域边界点进行映射。
[0019] 在上述的绘制新视点中的空洞填补方法中,优选地,三维映射中包括判断当前映射点映射后是否超过图像边界,如果是,则不对当前点进行映射。
[0020] 在上述的绘制新视点中的空洞填补方法中,优选地,基于深度信息对空洞填补的步骤包括:
[0021] 分别计算以空洞边界上的各个点为中心的各个块的可信度和深度信息,基于可信度和深度信息计算各个块的优先级;
[0022] 取优先级最高的块作为当前待修补块;
[0023] 在已知区域搜索当前待修补块的最匹配块;
[0024] 用最匹配块内的像素填补当前待修补块内对应位置的像素,以及分别用当前待修补块的平均深度值和可信度值更新填补像素的深度值和可信度值。
[0025] 在上述的绘制新视点中的空洞填补方法中,优选地,通过公式
[0026]
[0027] 计算块的深度信息,ψp表示以点p为中心的块,I表示输入图像,Ω表示空洞区域,I-Ω表示已知区域, 表示块ψp内的平均深度值,Zq表示块ψp内已知像素点的深度值。
[0028] 本发明具有以下优点:
[0029] 1)在平滑深度图的不连续深度值时,只对主要深度不连续区域进行平滑,从而避免了对不出现空洞或只有小空洞区域的平滑而造成的额外扭曲现象。
[0030] 2)对主要深度不连续区域以外的深度图区域使用三边滤波,在去噪声的同时考虑了邻域的深度信息之间和对应的彩色信息之间的联系,能够更好的保持边界信息。同时对主要深度不连续区域附近使用非对称高斯滤波和三边滤波,一方面保证了能够尽量完全平滑深度不连续区域,另一方面能够尽量减少对其他区域的影响。
[0031] 3)对平滑后区域物体边界附近的垂直边缘进行了深度值校正,能够尽可能的保持好的视觉效果。
[0032] 4)在映射过程中采用了越界和/或遮挡情况判定,能够简化映射的冗余操作。
[0033] 5)在空洞填补过程中优先考虑了背景像素点,能够实现更合理的填补结果。

附图说明

[0034] 图1是实施例绘制新视点中的空洞填补方法流程图;
[0035] 图2是其中深度图预处理的流程图;
[0036] 图3是其中基于深度图绘制新视点的流程图;
[0037] 图4是其中由被遮挡区域的水平长度确定被遮挡区域边界点的流程图;
[0038] 图5是其中基于深度信息对空洞填补的流程图。

具体实施方式

[0039] 本发明涉及绘制新视点中的空洞填补方法,用于减少并填补绘制过程中出现的空洞,以提高新视点的绘制质量。采用的主要技术包括基于三边滤波的深度图预处理,根据深度不连续强度确定主要平滑区域,利用加权的非对称高斯滤波平滑主要区域,对平滑后区域物体边界附近的垂直边缘进行深度值校正,基于对映射后遮挡区域的估计减少映射过程中的冗余操作,基于深度信息的空洞填补。
[0040] 下面结合附图和实施例对本发明做进一步的说明。
[0041] 如图1所示,本绘制新视点中的空洞填补方法包括以下步骤:
[0042] 步骤1,在三维映射前,对深度图预处理;
[0043] 步骤2,在三维映射后,检查新视点图像是否仍有空洞,如果有,则基于深度信息对空洞填补。
[0044] 图2示出了深度图预处理的流程。如图2所示,深度图预处理过程包括以下步骤:
[0045] 步骤1-1,深度图边缘检测:从读入的深度图中提取深度图边缘信息,即深度不连续区域。
[0046] 步骤1-2,进行深度不连续分析,获取主要深度不连续区域。
[0047] 在一种实施例中,通过以下方法进行深度不连续分析,该方法包括:
[0048] 判断边缘点水平方向附近的深度值是由低到高变化还是由高到低变化,据此确定边缘点映射后会产生空洞或会被遮挡。以参考图像为右视点绘制平行相机配置下的左视点为例,只有深度值由低到高变化的区域会产生空洞,用Iocclusion记录映射后会被遮挡的边缘点,用Idisocclusion记录映射后会产生空洞的边缘点。
[0049] 对于会产生空洞的边缘点,即Idisocclusion中的边缘点,计算映射后的空洞区域的水平长度Ddisoc:
[0050] Ddisoc=xl2-xl1
[0051] xl1和xl2分别为左视点下相邻两点x轴坐标,由平行相机配置下的左右视点坐标对应关系
[0052]
[0053] 得出,
[0054]
[0055] 和 分别为右视点下相邻两点x轴坐标,Z1和Z2分别为两点深度值,f是相机的焦距,B为两相机的水平间距, 为Idisocclusion中的点的x轴坐标, 为其左邻点的x轴坐标。
[0056] 将空洞区域的水平长度Ddisoc与阈值D'比较,大于阈值D'则判定该空洞区域为主要深度不连续区域CI。
[0057] 此外,对于会被遮挡的边缘点,同样用上述方法计算映射后被遮挡区域的水平长度Docc,即计算新视点下被遮挡区域的水平长度Docc,记录信息,以便后续映射过程利用Docc来简化遮挡部分的操作。具体地,可以通过公式
[0058]
[0059] 计算被遮挡区域的水平长度Docc,其中, 和 分别为Iocclusion中的点及其右临点的x轴坐标。
[0060] 步骤1-3,对主要深度不连续区域CI进行加权的非对称高斯滤波,使区域内深度值连续,对主要深度不连续区域CI附近的深度图区域进行加权的非对称高斯滤波和三边滤波。一种具体方式如下:
[0061] Zfiltered(x,y)=α(x,y)·ZTrilateral+(1-α(x,y))·ZGaussian
[0062]
[0063]
[0064] p1(x1,y1),p2(x2,y2)分别是当前点和主要平滑区域(即主要深度不连续区域CI)边缘点坐标。dmax是高斯平滑区域的阈值。
[0065] 对于p(x,y):
[0066]
[0067]
[0068]
[0069]
[0070] Ω是卷积核下p的邻域,k(p)是正则项。σd、σz和σi分别是空间滤波fD(p-s)、深度范围滤波fz(Zs-Zp)、颜色范围滤波fI(Is-Ip)的标准偏差,Zs为s点深度值,Is为s点颜色值,三边滤波的强度由这三个输入参数决定。
[0071]
[0072]
[0073] w是滤波块水平宽度,非对称高斯滤波定义块的长为宽的三倍,且在水平和垂直方向的标准偏差不相同。 为水平高斯滤波范围, 为垂直高斯滤波范围。σu和σv分别是水平方向和垂直方向高斯滤波的标准偏差。Z(x-u,y-v)是u,v在这个以(x,y)为中心的矩形框内变换时,在(x-u,y-v)坐标
上点的深度值。
[0074] 步骤1-4,对其余深度图区域进行三边滤波。
[0075] 步骤1-5,对滤波后区域物体边界附近的垂直边缘进行深度值校正。由于对深度图平滑处理后所绘制的新视点下,物体会有不同程度的几何扭曲现象,尤其是物体边界附近的垂直边缘若出现扭曲则会极大的影响视觉效果,故平滑后检测物体边界附近的垂直边缘深度,若有不连续的值则调整为连续值。
[0076] 图3示出了基于深度图绘制新视点的流程。该过程是将预处理后的深度图和彩色参考图像利用三维映射方程(3D image warping)将参考图像中的点坐标及像素映射到新视点,同时保存对应点的深度值以方便后续处理。该部分的整体思路与现有技术相同。但由于现有技术存在已下两点缺陷:1、在映射过程中有一部分点由于超过图像边界而不显示在新视点中,这些点的处理会造成冗余的操作。2、新视点下有部分背景像素由于视点变化被前景像素遮挡而不显示在新视点中,现有方法是通过比较映射到同一位置的两个点的深度值,取深度值小的显示,该方法操作比较复杂,而且没有考虑到被遮挡像素都是呈区域分布。鉴于现有技术存在的该两个缺陷,本发明方法在三维映射过程中增加了两个简化操作。具体如下,如图3所示,在用预处理后的深度图和彩色参考图像绘制新视点的三维映射中包括以下步骤:
[0077] 步骤3-1,判断当前映射点映射后是否超过图像边界,如果是,则不对当前点进行映射。
[0078] 步骤3-2,判断当前映射点映射后是否会被遮挡,如果是,则用深度不连续分析步骤中计算的被遮挡区域的水平长度Docc确定被遮挡区域边界点,不映射被遮挡区域,直接跳至被遮挡区域边界点进行映射。
[0079] 图4示出了由被遮挡区域的水平长度Docc确定被遮挡区域边界点的流程。如图4所示,该方法包括以下步骤:
[0080] 步骤4-1,选取原视点下在被遮挡点 右侧且离被遮挡点 的距离等于所述被遮挡区域水平长度Docc的点作为当前点 即由被遮挡区域水平长度Docc估计当前点[0081] 步骤4-2,判断 是否等于1,如果等于1则当前点 为被遮挡区域边界点 即,计算当前点与被遮挡点的左邻点在新视点下的x轴坐标的差值,判断该差值是否等于1,如果等于1,则当前点为被遮挡区域的边界点。
[0082] 步骤4-3,如果 (即所述差值大于1),则向左搜索,即选取当前点 水平左邻点作为当前点,然后转步骤4-2;如果 (即所
述差值小于1),则向右搜索,即选取当前点 水平右邻点作为当前点,转步骤4-2。
[0083] 图5示出了基于深度信息对空洞填补的流程。如图5所示,基于深度信息对空洞填补包括以下步骤:
[0084] 步骤2-1,分别计算以空洞边界上的各个点为中心的各个块的可信度和深度信息,基于可信度和深度信息计算各个块的优先级。
[0085] 由于空洞区域产生于参考视点下被遮挡的背景像素,所以在填补过程中应该优先考虑背景像素点。一些实施例中,为了保证更合理的修复仍然存在的空洞,赋予背景像素更高的优先级以完成对空洞的填补。具体地,通过以下公式计算块可信度C(p)[0086]
[0087] 其中,ψp表示以点p为中心的块,I表示输入图像,Ω表示空洞区域,I-Ω表示已知区域,|ψp|表示块ψp的面积即像素点个数,q表示块ψp内的已知像素点。
[0088] 对C(p)初始化:
[0089]
[0090] 通过以下公式计算块深度信息L(p)
[0091]
[0092] 表示块ψp内的平均深度值,Zq表示块ψp内已知像素点的深度值。故深度信息项优先考虑平均深度大的块即背景像素点多的块,和块内深度信息变化不大的块以更利于合理的填补。
[0093] 通过以下公式计算块优先级P(p)
[0094] P(p)=βC(p)+(1-β)L(p)
[0095] β介于0和1之间,可根据实际情况进行调整以更好的填补空洞。
[0096] 步骤2-2,取优先级最高的块作为当前待修补块。
[0097] 步骤2-3,在已知区域搜索当前待修补块ψp的最匹配块 用公式可表示为[0098]
[0099] d(ψp,ψq)表示块ψp和ψq已知像素差的平方和(SSD),d(Zp,Zq)表示块ψp和ψq已知像素点深度值差的平方和,χ介于0和1之间,可根据实际情况进行调整以达到更好的匹配效果。
[0100] 步骤2-4,用最匹配块 内的像素填补当前待修补块ψp内对应位置的像素。同时,分别用当前待修补块的平均深度值和可信度值更新填补像素的深度值和可信度值,用公式可表示为
[0101]
[0102] 即更新填补像素可信度为当前块的可信度值;
[0103]
[0104] 即更新填补像素深度值为当前块的平均深度值。