一种合成虚拟视点图像的新方法转让专利

申请号 : CN201210389767.9

文献号 : CN102892021B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜歆叶刚朱云芳

申请人 : 浙江大学

摘要 :

本发明公开了一种合成虚拟视点图像的新方法,该方法首先通过双向投影生成初始虚拟视点图像,然后检测初始虚拟视点图像上的瑕疵区域,将这些区域统一标记成待填充区域;对于待填充区域,通过基于块搜索的分层次空洞填补算法进行填充,最终获得高质量的虚拟视点图像;本发明在视差图质量较差的情况下仍能够得到高质量的虚拟视点图像,从而有效降低虚拟视点合成方法对视差图精度的依赖性。

权利要求 :

1.一种合成虚拟视点图像的新方法,其特征在于,该方法包括以下步骤:

(1)生成初始虚拟视点图像:输入立体图像的左右视图和左右视差图,按照视角调整的要求,通过双向投影方法生成初始虚拟视点图像;

(2)瑕疵检测:对初始虚拟视点图像进行瑕疵检测,检测出其中的错误区域和空洞区域,统一标记为待填充区域;

(3)分层次空洞填补:对标记出的待填充区域进行分层次空洞填补,得到高质量的虚拟视点图像;具体包含以下步骤:(3-1)对初始虚拟视点图像、左视图和右视图分别进行降采样,建立各图像的N层降采样图像金字塔{MN,MN-1,…,M2,M1},其中N为自然数,Mi(i=1,2,…,N-1,N)表示图像金字塔中第i层的图像,其中最底层MN与原图具有同样的尺寸,Mi-1层图像从Mi层通过降采样得到;通过降采样,初始虚拟视点图像所对应的图像金字塔中的待填充区域将不断减小,图像金字塔的层数确定以最顶层金字塔图像中的待填充区域变得足够小为准;

(3-2)自顶向下(M1→M2→…)开始对初始虚拟视点图像中标记出的待填充区域逐点做基于块搜索的空洞修复处理,填充修复后将此点标记为已知点;其中基于块搜索的空洞修复处理,具体包含以下步骤:(3-2-1)对于待修复“待填充区域”中的每个待填充像素点P,以像素点P和其八邻域像素中第i个邻域像素为中心的窗口 为一个搜索块,由此可以构成共9个搜索块;

(3-2-2)对于每个搜索块,在同一层图像金字塔的左右视图的同一行上搜索与 的最佳匹配块,标记为 ;

(3-2-3)将搜索得到的所有有效 的最佳匹配块中对应位置像素进行加权平均,得到待修复空洞像素点的像素值;

(3-3)向低一层金字塔图像传递修补结果;

(3-4)重复步骤(3-2)、(3-3)直至处理完MN得到完整修复后的虚拟视点图像。

2.根据权利要求1所述的一种合成虚拟视点图像的新方法,其特征在于,所述的步骤1中,所述通过双向投影方法生成初始虚拟视点图像具体包括以下子步骤:(1-1)生成一幅空白的初始虚拟视点图像;

(1-2)对初始虚拟视点图像进行按行遍历,逐点进行赋值:对初始虚拟视点 图像中任一像素点pinter,其横坐标记为xinter;为了确定该点的像素值,分别对输入的左视图和右视图中与pinter位于同一行,且距离pinter在最大视差范围内进行搜索,寻找所有可能投影到pinter的像素点,其中最大视差指的是左右视差图中最大的视差值;如果左视图上的搜索点满足|xinter-(xL-f(dL))|

(1-3)在所有的候选投影点集合中选择对应的视差值最大的点作为最佳的投影点,因为拥有最大视差值的点是前景点,前景点将遮挡背景点;

(1-4)当最佳投影点的坐标为非整数像素时,则将线性插值后得到的像素值赋给初始虚拟视点图像中的像素点pinter。

说明书 :

一种合成虚拟视点图像的新方法

技术领域

[0001] 本发明涉及一种基于立体图像和对应的视差图进行虚拟视点图像合成的新方法,具体来说,涉及一种能够在视差图不准确的情况下,依然得到高质量虚拟视点图像的新方法。

背景技术

[0002] 虚拟视点图像的合成方法是立体显示中的关键技术之一,是指通过两个或者两个以上同一场景的立体图像,来合成其他视角的虚拟视点图像的方法。随着三维立体显示技术突飞猛进地发展,越来越多的3D元素融入到了日常生活之中。与以往2D平面显示方式相比,立体显示技术往往能给观看者带来身临其境的视觉感受和体验,因而也备受人们喜爱。
[0003] 传统的立体显示系统中一般有两个视图,分别称为左视图和右视图,通过特定的显示方式,如佩戴立体眼镜,使观众的左右眼分别观看到不同视角的二幅图像,就能在大脑中融合并产生立体感。然而,为了适应不同尺寸的屏幕以及对视差调整以满足舒适感要求等原因,往往需要对输入的左右视图进行处理,生成新的虚拟视点图像进行显示。此外,自由视角电视技术中,虚拟视点合成也是一项关键技术,它允许观众自由地选取三维场景中的任意视点进行观看。
[0004] 通常地,视点合成方法可以归结为三类:不依靠几何结构的绘制、依靠部分几何结构的绘制和完全依靠几何结构的绘制。由于第三种方法能够将参考视图缩减为最少(为左视图和右视图),因此具有较广的适用性。
[0005] 在进行视点合成时,视差图的质量十分关键,尽管目前已经提出了许多立体匹配方法,但精确地估计出立体图像的视差图依然是一项十分困难的任务,视差图中的错误点会导致合成的虚拟视点图像中包含许多错误区域,如错误的边缘、色块和空洞点等。另一方面,由于视点的变换也会使得原先在左右视图中被遮挡的区域变得可见,如果不正确地对这些只在新视点图像中可见的区域进行可靠填充,将会影响合成的虚拟视点图像的质量。常用的处理方法是对视差图进行预处理,如用平滑滤波来减小虚拟视点图像上的瑕疵和空洞区域,然后采用图像修复、插值等方法来填补剩余空洞。但这样的方法很难得到满意的结果,常常造成新视点图像中物体的几何失真。

发明内容

[0006] 本发明的目的在于针对现有技术的不足,提供了一种合成虚拟视点图像的新方法,通过本发明所述的新方法,在视差图质量较差的情况下仍旧能够合成高质量的虚拟视点图像。
[0007] 本发明的目的是通过以下技术方案来实现的:一种合成虚拟视点图像的新方法,该方法包括以下步骤:
[0008] (1)生成初始虚拟视点图像:输入立体图像的左右视图和左右视差图,按照视角调整的要求,通过双向投影方法生成初始虚拟视点图像;
[0009] (2)瑕疵检测:对初始虚拟视点图像进行瑕疵检测,检测出其中的错误区域和空洞区域,统一标记为待填充区域;
[0010] (3)分层次空洞填补:对标记出的待填充区域进行分层次空洞填补,得到高质量的虚拟视点图像。
[0011] 本发明的有益效果是:传统的虚拟视点合成方法对输入的视差图的精度有较高的要求,如果视差图不准确,则生成的虚拟视点图像会包含很多瑕疵区域。本发明通过初始虚拟视点图像生成、瑕疵检测和分层次空洞填补三个主要步骤,即使在输入视差图包含许多错误的情况下仍旧能够得到高质量的虚拟视点图像,从而有效降低虚拟视点合成方法对高精度视差图的依赖性。

附图说明

[0012] 图1为本发明方法的流程图;
[0013] 图2为本发明方法中生成初始虚拟视点图像的双向投影方法示意图;
[0014] 图3为本发明方法中修复P点时所构成的9个搜索块示意图。

具体实施方式

[0015] 下面结合附图和具体实施方式对本发明作进一步详细描述,本发明的目的和效果将变得更加明显。
[0016] 图1给出了依照本发明进行虚拟视点合成的方法流程图。
[0017] 本发明所述的虚拟视点合成方法是针对立体图像进行,且所处理立体图像应是已经经过了外极线校正的,这样外极线与图像的行扫描线重合,即对于立体图像左右视图的匹配像素而言,它们的纵坐标是相同的,或者说匹配像素点位于左右视图的同一行。
[0018] 输入立体图像的左右视图以及对应的左右视差图,按照视点调整的要求,通过本发明所述方法可以得到在新视角下的虚拟视点图像,也可以将本方法用于立体视频的每一帧,得到在新视角下的虚拟视点立体视频。
[0019] 如图1所示,在步骤101中,输入立体图像的左右视图和左右视差图,按照视点调整的要求,通过双向投影方法生成初始虚拟视点图像。
[0020] 如图2所示,在输入的立体图像的左视图中有一点pL,该点的横坐标为xL,由左视差图得到该点的视差值为dL。根据视差的计算关系,可知pL点在右视图中的匹配点pR的横坐标为xR=xL-dL。相对应的,对于在右视图中的pR点而言,它在左视图中的匹配点也为点pL,它的视差值dR也应等于dL。
[0021] 对于合成的虚拟视点图像中的像素点pinter,它的横坐标为xinter,可由左视图中的某点pL根据某种视差变换关系投影而来,即表示为dinter=f(dL),其中dinter为pinter点的视差值,f(·)为视差变换函数。不失一般性,f(·)函数可以线性变换来表示,如:dinter=s×dL+doffset,其中s为一个比例因子,doffset则是一个固定的偏差。由于左右视图的对应点通过视差图互相联系,因此像素点pinter同样可以由右视图中的某点pR根据某种视差变换关系投影而来,表示为dinter=f'(dR),式中f'(·)为与f(·)相对应的另一视差变换函数
[0022] 当给定视差变换函数的具体形式后,我们可以确定合成的虚拟视点图像中的像素和输入的左右视图像素之间的对应关系,就可以通过投影得到在新视角下的初始虚拟视点图像。
[0023] 为了生成初始虚拟视点图像,本发明采用双向投影方法,包含以下步骤:
[0024] (1)生成一幅空白的初始虚拟视点图像。
[0025] (2)对初始虚拟视点图像进行按行遍历,逐点进行赋值:初始虚拟视点图像中的像素点pinter,其横坐标记为xinter。为了确定该点的像素值,分别对输入的左视图和右视图中与pinter位于同一行,且距离pinter在最大视差范围内进行搜索,寻找所有可能投影到pinter的像素点,其中最大视差指的是左右视差图中最大的视差。如果左视图上的搜索点满足:|xinter-(xL-f(dL))|
[0026] (3)在所有的候选投影点集合中选择对应的视差值最大的点作为最佳的投影点,因为拥有最大视差值的点是前景点,前景点将遮挡背景点;
[0027] (4)当最佳投影点的坐标为非整数像素时,则将线性插值后得到的像素值赋给初始虚拟视点图像中的像素点pinter。
[0028] 由于立体匹配的困难性,输入的左右视差图中通常会包含很多错误的视差值,使用这些错误视差值得到的初始虚拟视点图像中会包含很多错误区域。另一方面,当视角变化后,有些原本在左右视图中不可见的遮挡区域在合成的虚拟视点图像中会变得可见,从而形成了空洞区域。
[0029] 为了将这些错误的投影点检测出来,如图1所示,在步骤102中,对初始虚拟视点图像进行瑕疵检测,检测出错误区域和空洞区域,统一标记为待填充区域。
[0030] 本 发 明 的 瑕 疵 检 测 方 法 可 参 考 文 献:Andrew,J.,Woods,Nicolas S.,Holliman,Neil A.,Dodgson.:Adapting stereoscopic movies to the viewing conditions usingdepth-preserving and artifact-free novel view synthesis.In:Stereoscopic Displaysand Applications.San Francisco,California(2011)。
[0031] 如图1所示,在步骤103中,对初始虚拟视点图像中标记出的待填充区域进行分层次空洞填补,得到高质量的虚拟视点图像,具体包括以下步骤:
[0032] (1)对初始虚拟视点图像、左视图和右视图分别进行降采样,建立各图像的N层降采样图像金字塔{MN,MN-1,…,M2,M1},N为自然数,Mi(i=1,2,…N-1,N)表示图像金字塔中第i层的图像,其中最底层(MN层)与原图具有同样的尺寸,Mi-1层图像从Mi层通过降采样得到。通过降采样,初始虚拟视点图像所对应的图像金字塔中的待填充区域将不断减小,图像金字塔的层数确定以最顶层金字塔图像中的待填充区域变得足够小为准。
[0033] (2)自顶向下(M1→M2→…)开始对初始虚拟视点图像中标记出的待填充区域逐点做基于块搜索的空洞修复处理,填充修复后将此点标记为已知点。
[0034] (3)向低一层金字塔图像传递修补结果;
[0035] (4)重复步骤(2)、(3)直至处理完MN得到完整修复后的虚拟视点图像。
[0036] 在修补每一层金字塔图像时,对待填充区域中的每个空洞点P,以像素点P和其八邻域像素中第i个邻域像素为中心的窗口 为一个搜索块,由此可以构成共9个搜索块,如图3所示。
[0037] 对于每个搜索块,在左右视图的同一层金字塔图像的同一行上搜索与 的最佳匹配块,标记为 即:
[0038]
[0039] 上式中,Φ表示左右视图的同一层金字塔图像中在最大视差搜索范围内所有的搜索窗口集合。 表示搜索窗口 和 之间的非相似性度量,可以取传统的SSD或者SAD度量。
[0040] 在计算非相似性度量时如果 包含待填充像素,则不能将这些像素计算在内,并统计窗口 中待填充像素所占的比例,记为Di。若 包含的待填充像素所占的比例Di>η(η为某一预设的阈值),则放弃此窗口的搜索,并将此 标记为无效。通过图像金字塔的降采样过程必然会使待填充区域逐渐变小,因此必定可以在某个尺度下让P点有足够的搜索窗口。
[0041] 为确定待填充区域中的点P的像素值C,我们可以将所有有效的 所对应的最佳匹配块 中的对应位置的像素值Ci取出,通过加权平均得到:
[0042]
[0043] 上式中,wi表示某一有效搜索块 所对应的权值,它由下式确定:
[0044] wi=(1-Di)·si;
[0045] 其中,si用来评价 与其最佳匹配块 之间的相似程度,可用下式计算:
[0046]
[0047] 其中,σ为某一预设参数, 表示最佳匹配块 和 之间的非相似性度量,可以取传统的SSD或者SAD度量。
[0048] 上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。