一种虚拟视图渲染方法

文档序号:6399925阅读:133来源:国知局
专利名称:一种虚拟视图渲染方法
技术领域
本发明涉及图像处理技术领域,特别涉及一种虚拟视图渲染方法。
背景技术
立体显示技术在电视、电影、医疗、教育等方面均有良好的应用前景。目前的立体显示技术主要有两类:基于双目立体成像的显示技术和裸眼多视点立体显示技术。其中,裸眼多视点立体显示技术不需要佩戴辅助观看设备,更符合人们的观看需求。裸眼多视点显示技术需要多个不同视点的图像作为片源,多视点图像的获取方式包括多视点采集、三维建模、虚拟视图渲染等。基于深度图或视差图的虚拟视图渲染方法在采集成本和数据处理复杂度上均具有优势。虚拟视图渲染方法主要为采用参考视图和深度图或视差图的算法。根据场景点在参考视图和虚拟视图中的视差值,计算场景点在虚拟视图中的投影位置,根据视差-深度理论,由两个参考视点便可获知场景点的真实深度,并可在不显示真实深度的情况下,根据视差对参考视点间的任意虚拟视点的视图进行渲染。对基于深度图或视差图的虚拟视图进行渲染的方法,深度图或视差图的准确度对渲染结果影响较大,而对于遮挡区域的重现造成的渲染空洞较难处理。左、右参考视点视图中被遮挡的像素由于在对应视图中无匹配点,因而没有视差值。而一般情况下,在虚拟视点的虚拟视图中,左、右视图中被遮挡的区域均会有部分重现。若仅基于单个视点对虚拟视图进行渲染,左、右视图中被遮挡区域在虚拟视图中的重现部分均会产生空洞。现有的虚拟视图渲染方法对空洞的处理大都使用单视角的边缘信息填补空洞,处理痕迹较为明显,影响图像的观看效果和真实感。

发明内容
本发明的目的旨在至少解决上述的技术缺陷之一。为此,本发明的目的在于提出一种虚拟视图的渲染方法,采用该方法没有明显的处理痕迹,虚拟视图的真实感较强,并且图像绘制速度快。为达到上述目的,本发明的实施例提出一种虚拟视图的渲染方法,包括以下步骤:Si,根据第一参考视点和第二参考视点的第一视图和第二视图,分别计算所述第一视图相对于所述第二视图的第一视差图和所述第二视图相对于所述第一视图的第二视差图;S2,根据所述第一视图和所述第一视差图及所述第二视图和所述第二视差图对虚拟视图进行渲染,并分别建立所述虚拟视图对应于所述第一视图和所述第二视图的第一索引图和第二索引图;S3,检测所述虚拟视图中面积超过第一阈值的空洞,并根据所述第一索引图和所述第二索引图确定所述空洞在所述第一视图和所述第二视图中的对应区域,以及在所述对应区域中取值对所述空洞进行填补;S4,对所述虚拟视图中剩余的空洞进行填补。根据本发明实施例的虚拟视图渲染方法,通过索引图建立虚拟视图与参考视图中的像素的对应关系,确定虚拟视图中的渲染空洞对应于参考视图中的遮挡区域的位置,空洞的填补取自参考视图中的对应区域,能够充分利用两个参考视点的信息,没有明显的处理痕迹,虚拟视图的真实感强,并且图像绘制速度快。在本发明的一个实施例中,所述步骤SI进一步包括以下步骤:以所述第一视图为参考视图,以所述第二视图为目标视图,根据视差计算方法计算所述目标视图相对于所述参考视图的所述第二视差图;以所述第二视图为参考视图,以所述第一视图为目标视图,根据视差计算方法计算所述目标视图相对于所述参考视图的所述第一视差图。进一步地,所述视差计算方法为立体匹配算法,所述立体匹配算法为基于领域窗口灰度分布的局部匹配算法。在本发明的一个实施例中,所述步骤S2进一步包括以下步骤:根据所述第一参考视点和所述第二参考视点与虚拟视点的基线距离,确定主参考视点和次参考视点;根据所述主参考视点及所述主参考视点的视差图,按照渲染顺序,对所述虚拟视图进行渲染,并建立所述虚拟视图对应于所述主参考视点的视图的索引图;根据所述次参考视点及所述次参考视点的视差图,按照渲染顺序,对所述虚拟视图进行进一步的渲染,并建立所述虚拟视图对应于所述次参考视点的视图的索引图。通过索引图建立虚拟视图与第一视图和第二视图中的像素的对应关系。其中,所述渲染顺序包括:基于主参考视点对其次参考视点方向的虚拟视图进行渲染时,从图像的主参考视点方向到次参考视点方向进行渲染;基于次参考视点对其主参考视点方向的虚拟视图进行渲染时,从图像的次参考视点方向到主参考视点方向进行渲染。按照上述渲染顺序进行渲染,能够避免在前的渲染结果被在后的渲染结果覆盖。并且,基于所述主参考视点对所述虚拟视图进行的渲染的优先级高于基于所述次参考视点对所述虚拟视图进行的渲染。在本发明的一个实施例中,所述步骤S3进一步包括以下步骤:检测所述虚拟视图中的渲染空洞,对其中面积大于所述第一阈值的空洞进行标记;检测所述标记的空洞的边界的像素在所述索引图中对应的索引值,并选取所述空洞的边界处存在所述索引值的像素点作为所述空洞的边界点;根据所述空洞边界点对应于参考视图中的所述索引值,确定其在参考视图中的投影位置,并确定所述空洞在所述参考视图中的对应区域;根据选取规则,从所述标记的空洞在参考视图中的对应区域取值,对所述标记的空洞进行填补。其中,所述选取规则包括:对所述空洞在所述第一视图和第二视图中对应区域的面积进行比较;如果所述空洞在所述第一视图中的对应区域的面积大于所述空洞在所述第二视图中的对应区域的面积,则从所述空洞在所述第一视图中的对应区域中靠近所述第一视图侧的边界处,选取与所述空洞面积相等的像素块,对所述空洞进行填补;如果所述空洞在所述第二视图中的对应区域的面积大于所述空洞在所述第一视图中的对应区域的面积,则从所述空洞在所述第二视图中的对应区域中靠近所述第二视图侧的边界处,选取与所述空洞面积相等的像素块,对所述空洞进行填补。在本发明的另一个实施例中,所述步骤S4进一步包括以下步骤:逐行检测所述虚拟视图中的所述空洞,确定所述空洞的边界;在所述虚拟视图中,采用区间截取或线性插值的方法对所述空洞进行填补。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为根据本发明实施例的虚拟视图渲染方法的流程图;图2为根据本发明的一个实施例的基于虚拟视图生成的几何关系示意图;图3为根据本发明的一个实施例的计算获得第一视差图和第二视差图的流程图;图4为根据本发明的一个实施例的基于不同视点出现的遮挡情况示意图;图5为根据本发明的另一个实施例的对虚拟视图进行渲染并获得索引图的流程图;图6为根据本发明的一个实施例的对空洞进行填补的过程的流程图;以及图7为根据本发明的另一个实施例的对虚拟视图中的剩余空洞进行渲染的过程的流程图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。此夕卜,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的可应用于性和/或其他材料的使用。另外,以下描述的第一特征在第二特征之“上”的结构可以包括第一和第二特征形成为直接接触的实施例,也可以包括另外的特征形成在第一和第二特征之间的实施例,这样第一和第二特征可能不是直接接触。在本发明的描述中,需要说明的是,除非另有规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。下面参照附图描述根据本发明实施例的虚拟视图渲染方法。如图1所示,本发明实施例提出的虚拟视图渲染方法包括以下步骤:SI,根据第一参考视点和第二参考视点的第一视图和第二视图,分别计算第一视图相对于第二视图的第一视差图和第二视图相对于第一视图的第二视差图。
在本发明的一个实施例中,如图2所示,Cl、C2分别为左、右相机的光心,C3为虚拟相机的光心。在本发明的实施例中,将左、右相机的光心点Cl和C2作为第一参考视点和第二参考视点,Cl和C2对应的视图即为第一视图和第二视图,虚拟相机的光心点C3为虚拟视点,参考视点Cl和C2与虚拟视点C3对应的相机光轴平行。b2和b3分别是虚拟视点和右视点到左视点的基线距离,f为相机焦距,其中,左视点即第一参考视点,右视点即第二参考视点。空间点W在第一视图和第二视图及虚拟视图中的投影点横坐标分别为xl、x2、x3, Z为W的深度,d2和d3为视差,视差与深度的关系满足:= c/3 = /警其中,投影点坐标之差为视差,即d2=xl-x2,d3=xl_x3。设r=b3/b2,则有d3=rd2。根据由参考视图得到的视差以及虚拟视点相对参考视点的位置比例关系,可以得到场景点在参考视图和虚拟视图中的视差。需要说明的是,左视图·和右视图已经经过几何校正,仅存在水平方向的视差,不存在垂直方向的视差。如图3所示,步骤SI具体包括以下步骤:S101,以第一视图为参考视图,以第二视图为目标视图,根据视差计算方法计算目标视图相对于参考视图的第二视差图。在本发明的一个实施例中,以左视图即第一视图为参考视图,以右视图即第二视图为目标视图,根据视差计算方法计算右视图相对于左视图的视差图即第二视差图,其中,视差计算方法可以为立体匹配算法。具体地,对参考视图中的每一个像素点,在目标视图中一定视差范围内寻找其匹配点,其中,一定视差范围是指根据像素点的位置,设定合适的视差范围。以左视图为参考视图,右视图为目标视图,所述视差范围可以表述为:δ min 彡 5 =Xl-Xr ( δ max,Yl=Ye其中Snjin为视差下限,δ_为视差上限,(xL, yL)为左视图中的像素点,(xK,yK)为右视图中的候选匹配点。在本发明的实施例中,立体匹配算法可以选取基于邻域窗口灰度分布的局部匹配算法。以参考视图中待匹配像素点为中心创建合适尺寸的窗口,以目标视图中可解范围内的像素点为中心创建相同尺寸的窗口,对两个窗口内的像素进行灰度相关运算,灰度相关运算方法为现有技术,不再赘述。用灰度相关度作为相似度的度量。根据需要,设置一定的阈值,当灰度相关度高于阈值时,选取灰度相关度最大的窗口的中心点为匹配点,按下式计算视差:d (xL, yL) =Xl-Xe其中,d(xL, yL)为左视差图中点(Xu yL)处的视差。按照上述方法获得目标视图中每一个像素点相对于参考视图的视差,从而构成目标视图相对于参考视图的视差图,即第二视图相对于第一视图的第二视差图。S102,以第二视图为参考视图,以第一视图为目标视图,根据视差计算方法计算目标视图相对于参考视图的第一视差图。以右视图即第二视图为参考视图,以左视图即第一视图为目标视图,根据基于邻域窗口灰度分布的局部匹配算法计算左视图相对于右视图的视差图,即计算第一视图相对于第二视图的视差图即第一视差图。具体地,对右视图中任一像素点例如像素点(xK,yK),在左视图中寻找到其对应的匹配点(Xu yj,按下式计算右视图中点(xK,yK)处的视差:d (xE, yE) =xK_xL按照上述方法获得左视图中每一个像素点相对于右视图的视差,从而构成左视图相对于右视图的视差图,即第一视图相对于第二视图的视差图。需要说明的是,如果目标视图中的某一个像素点没有在参考视图中找到满足相似度阈值条件的匹配点,则该像素点无视差。像素点无视差的情况多发生于遮挡区域。由于视点变化时,发生前景物体对背景物体的遮挡,有的场景点仅在单个视图中可见。例如如图4所示,将前景和背景简化为不同深度的平面,其中MN为前景平面,PQ为背景平面即背景物体,P点和Q点表示图像的边界,C1和C2分别为左视点和右视点,C3和C4为虚拟视点。在左视点C1的视图中,被遮挡区域为DH,可见范围为H)和HQ。在右视点C2的视图中,被遮挡区域为AE,可见范围为EQ和PA。其中,AD仅在左视点的视图中可见,仅在右视点的视图中可见。被遮挡的场景点仅在一个视图中有投影点即匹配点,而在另一个视图中没有匹配点,无法计算视差或计算错误,对于没有匹配点的像素点,可以用一个不在视差范围内的无效值标记其视差。S2,根据第一视图和第一视差图及第二视图和第二视差图对虚拟视图进行渲染,并分别建立虚拟视图对应于第一视图和第二视图的第一索引图和第二索引图。如图5所示,对虚拟视图进行渲染,并建立虚拟视图对应于第一视图和第二视图的第一索引图和第二索引图,具体包括以下步骤:S201,根据第一参考视点和第二参考视点与虚拟视点的基线距离,确定主参考视点和次参考视点。如图2所示,b2和b3分别是虚拟视点和右视点即第二参考视点到左视点即第一参考视点的基线距离,r=b3/b2,其中,参考视点和虚拟视点对应的相机光轴平行,设r=l/4,则虚拟视点更接近左视点,故以左视点为主参考视点,以右视点为次参考视点。S202,根据主参考视点及主参考视点的视差图,按照渲染顺序,对虚拟视图进行渲染,并建立虚拟视图对应于主参考视点的视图的索引图。步骤S201确定以左视点为主参考视点,以右视点为此参考视点,由于假设参考视图经过几何校正,并且参考视点和虚拟视点对应的相机的光轴相互平行,股可以逐行地对虚拟视图进行渲染,虚拟视图和参考视图之间仅存在水平方向的视差,不存在垂直方向的视差。对虚拟试图进行渲染的顺序包括:基于主参考视点对其次参考视点方向的虚拟视图进行渲染时,从图像的主参考视点方向到次参考视点方向进行渲染。在本发明的一个实施例中,由于前景物体相对于背景物体视差更大,当虚拟视点相对于参考视点右移时,参考视图中前景物体相对于背景物体向左偏移量更大,为了避免在前的渲染效果被在后的渲染效果覆盖,具体地,基于作参考试点对其右侧的虚拟视点对应的虚拟视图进行渲染时,从图像的左侧到右侧进行渲染。同理,当虚拟视点相对于参考视点左移时,参考视图中前景物体相对于背景物体向右偏移量更大,因而基于次参考视点对其主参考视点方向的虚拟视图进行渲染时,从图像的次参考视点方向到主参考视点方向进行渲染。具体地,基于右参考视点对其左侧虚拟视点对应的虚拟视图进行渲染时,从图像的右侧到左侧进行渲染。在本发明的一个实施例中,对虚拟视图进行渲染并建立索引图的过程为:首先,对虚拟视图进行初始化,即将虚拟视图中每一像素点的颜色取值R (红色)、G (绿色)、B (蓝色)三通道的取值置为有效灰度值范围O 255之外的标记值,如-1。虚拟视图对应于参考视点视图的索引图初始化为零值。设八= /(4,3^)为左视图中的像素点,坐标为(jcLM)。由左视图相对于右视图的视差图可得fk的视差火xLM),即在左视图相对于右视图的视差图中查找像素点Λ^/CtK)的视差值fk是空间中的一个场景点在左视图中的投影点,设该场景点为Wk。若d(xi, W)为视差范围内的有效值,可知Wk在右视图中有投影点即匹配点,设场景点Wk在右视图中的匹配点为&二对根据前面描述的视差计算公式,得出其中,xRk=xLk-d{xtyLk) = yl根据图2所示的基于视差的虚拟视图生成中的几何关系,根据。
前述的视差的计算公式及左视图和右视图对应视差间的关系式,可得Wk在虚拟视图中的投影点,记为頌),坐标为(xf,<),其中,Λ, =xl-r-d(xlyl)jK; = yLk。将左视图中的
点/(xf,>i)的颜色值赋给即得到Wk在虚拟视图中的投影点即匹配点。通过有
效视差火xL /k),将Md yf)与/(X,治建立对应关系。虚拟视图中的点(xf,O在左视
图中的索引值为(χ ,Μ),表示两点是同一场景点在不同视点视图中的投影点,即相互匹配的点。根据上述方法,建立虚拟视图对应于主参考视点视图即左视图的索引图,其中,虚拟视图中坐标为(X纥)的点的索引值为W。若d(xLk, 不是视差范围内的有效值,表示没有找到./XxL^)在右视图中的匹配点,Wk仅在左视图有投影点。不能建立虚拟视图中的点与fiA, ylk)的对应关系。对主参考视点视图即左视图中的所有像素点依次执行上述步骤,可以得到初步的虚拟视图渲染结果,以及虚拟视图中的点相对于主参考视点视图的索引值,从而建立虚拟视图对应于主参考视点视图的索引图。在初步的渲染结果中,基于主参考视点,能够得到在左、右参考视图中均有投影点并且投影点正确匹配的空间场景点在虚拟视图中的投影点,但是不能得到仅在单个视图中有投影点的空间场景点在虚拟视图中的投影点。S203,根据次参考视点及次参考视点的视差图,按照渲染顺序,对虚拟视图进行进一步的渲染,并建立虚拟视图对应于次参考视点的视图的索引图。在本发明的一个实施例中,根据次参考视点及次参考视点的视差图即右视图,按照渲染顺序,即基于主参考视点对其次参考视点方向的虚拟视图进行渲染时,从图像的主参考视点方向到次参考视点方向进行渲染。在本实施例中,即基于右参考视点对其左侧虚拟视点视图进行渲染时,从图像的右侧到左侧进行渲染。根据右视图及其对应的视差图对虚拟视图进行渲染的方法并建立索引图的方法与步骤S202类似,具体为:设& =容0^,3^)为右视图中的像素点,坐标为(义^),根据右视
图相对于左视图的第二视差图可得gk的视差。设右视图中的像素点gk对应的空间场景点为wk。若为视差范围内的有效值,可知Wk在左视图中有投影点即匹配点,设场景点Wk在左视图中的匹配点为/; = /(χΚ),根据前面描述的视差计算公式,得出其中,xl = xt-d{xRk,yl),W = M。根据图2所示的基于视差的虚拟视图生成中的几何关系,根据前述的视差的计算公式及左视图和右视图对应视差间的关系式,可得Wk在虚拟视图中的投影点,记为 MOrfjf),坐标为其中,Xi = X - (1- ^).d(xL yt) > = 。在本发明的一个实施例中,基于主参考视点对虚拟视图进行的渲染的优先级高于基于次参考视点对虚拟视图进行的渲染。具体为,检测点i(xf,/D的取值情况,若MUfjf)已在步骤S202中被赋值,即点M(xf,>,f)在基于主参考视点对虚拟视图进行渲染时被赋值,以基于主参考视点的渲染为优先级高,则M(xf,j;f)不重新赋值;若
尚未赋值,则将gOdjD的颜色值赋给点MCtf,),f)。综上所述,通过有效视差dixl}ξ),将Mixi1,yf)与g(xlyl)建立对应关系,虚拟视图中的点Uf,jf)在右视图中的索引值为(χΜ)。根据上述方法,建立虚拟视图对应于次参考视点视图即右视图的索引图,其中,虚拟视图中坐标为Crf,yf)的点的索引值为j。 需要说明的是,若不是视差范围内的有效值,表示没有找到Mxf, jf)在
左视图中的匹配点,Wk仅在右视图有投影点,即不能建立虚拟视图中的点与g(xf,>f)的对
应关系。对次参考视点视图中的所有像素点依次执行上述步骤,可以对步骤S202中初步的虚拟视图渲染结果进行补充,并获得虚拟视图中所有像素点相对于次参考视点视图的索引值,从而建立虚拟视图对应于次参考视点视图的索引图。S3,检测虚拟视图中面积超过第一阈值的空洞,并根据第一索引图和第二索引图确定空洞在第一视图和第二视图中的对应区域,以及在对应区域中取值对空洞进行填补。在步骤S203中基于主、次参考视点的初步渲染中,任一参考视图中被遮挡的区域均会在虚拟视图中产生渲染空洞。检测虚拟视图中面积超过第一阈值的渲染空洞,并进行填补,如图6所示,具体包括以下步骤:S301,检测虚拟视图中的渲染空洞,对其中面积大于第一阈值的空洞进行标记。参考视图中被遮挡区域会在虚拟视图中产生渲染空洞,检测虚拟视图中渲染空洞,并对其中大于第一阈值S的空洞进行标记,以便于后续进行填补。其中,第一阈值δ可以根据具体的需要进行设置。具体地,在本发明的一个实施例中,由于参考视图和虚拟视图仅存在水平方向的视差,不存在垂直方向的视差,故可对虚拟视图进行逐行扫描,二维的渲染空洞转换为一维的空洞区间。对虚拟视图中的每一行进 行扫描,检查其中每一像素点对应于左、右视图的索引值。若其中某一像素点不能同时兼有对应于左视图和右视图的索引值,即该像素点不能同时在左、右视图中均存在匹配点,则将该像素点标记为空白像素,空白像素可能是渲染空洞像素,也可能在初步渲染中有颜色值。如果空白像素为在初步渲染中有颜色值,可能存在的情形是:某一场景点在左、右视图中均有投影点,但受限于立体匹配的准确度,投影点仅在其中一个参考视图中匹配点,未能在左试图和右视图中均匹配,而进行处理时,将在左视图和右视图中均匹配产生的渲染结果置为高可信度,将在其中一个参考视图中匹配产生的渲染结果置为低可信度,作为渲染空洞来处理。在本发明的一个实施例中,可以从左参考视点方向到右参考视点方向连续地检测空白像素,直至出现非空白像素或到达图像右边界,将得到的空白像素的区间,作为空洞区
间。设空洞区间的左、右端点处空白像素的坐标为(X^ylc)空洞区间可表示为,空洞区间长度为/ = X^f + l。若I超过第一阈值δ,则对该区间进行标记,S302,检测标记的空洞的边界的像素点在索引图中对应的索引值,并选取空洞的边界处存在索引值的像素点作为空洞的边界点。在本发明的一个实施例中,例如取:rf = max(xJp -1,I)和x = min(x^ +1,w)为其中
一个标记的空洞的边界的像素点,其中w为图像的宽度。设L (X,y)为虚拟视图中的点(X,y)对应于左视图的索引值,R(x,y)为虚拟视图中的点(x,y)对应于右视图中的索引值。则边
界点xf和Λ对应于左视图中的索引值为4 = ζ(χΓ,}ζ),xi =,对应于右视图中
的索引值为d), = R(4fy^) o则选取像素点(xf , < )和(Jff,vf )为该
空洞的边界点。S303,根据空洞边界点对应于参考视图中的索引值,确定其在参考视图中的投影位置,并确定空洞在参考视图中的对应区域。根据步骤S302中获得的边界点的索引值,确定其在左参考视图和右参考视图中的投影位置,并确定空洞在参考视图中的对应位置,在本发明的一个实施例中,具体为,取
n =,χ = L(X^yli),若4 = 0,取= w+l,则[K]对应于左视图中的区间
即空洞在左视图中的对应区间为[χ +1,χ纟-1],长度Z1=W - xf-1。同理,取Λf = R(xf, )φ, X! = Rixi21, )0 ,若 4 = 0,取 xf = W+1,则[xf,xf]对应
于右视图中的区间即空洞在右视图中的对应区间为[xf+1,X -1],长度h=-xf-xf -1。S304,根据选取规则,从标记的空洞在参考视图中的对应区域取值,对标记的空洞进行填补。在本发明的 一个实施例中,在对空洞进行填补的过程中,在对应区域取值的选取规则包括:对空洞在第一视图和第二视图中对应区域的面积进行比较;如果空洞在第一视图中的对应区域的面积大于空洞在第二视图中的对应区域的面积,则从空洞在第一视图中的对应区域中靠近第一视图侧的边界处,选取与空洞面积相等的像素块,对空洞进行填补;如果空洞在第二视图中的对应区域的面积大于空洞在第一视图中的对应区域的面积,则从空洞在第二视图中的对应区域中靠近第二视图侧的边界处,选取与空洞面积相等的像素块,对空洞进行填补。具体地,在本发明的一个实施例中,由步骤S303获得空洞在参考视图中的对应区域,空洞在左视图和右视图中长度分别为I1和I2,如果I1M2,则认为
权利要求
1.一种虚拟视图渲染方法,其特征在于,包括以下步骤: Si,根据第一参考视点和第二参考视点的第一视图和第二视图,分别计算所述第一视图相对于所述第二视图的第一视差图和所述第二视图相对于所述第一视图的第二视差图; S2,根据所述第一视图和所述第一视差图及所述第二视图和所述第二视差图对虚拟视图进行渲染,并分别建立所述虚拟视图对应于所述第一视图和所述第二视图的第一索引图和第二索引图; S3,检测所述虚拟视图中面积超过第一阈值的空洞,并根据所述第一索引图和所述第二索引图确定所述空洞在所述第一视图和所述第二视图中的对应区域,以及在所述对应区域中取值对所述空洞进行填补; S4,对所述虚拟视图中剩余的空洞进行填补。
2.如权利要求1所述的虚拟视图渲染方法,其特征在于,所述步骤SI进一步包括以下步骤: 以所述第一视图为参考视图,以所述第二视图为目标视图,根据视差计算方法计算所述目标视图相对于所述参考视图的所述第二视差图; 以所述第二视图为参考视图,以所述第一视图为目标视图,根据视差计算方法计算所述目标视图相对于所述参考视图的所述第一视差图。
3.如权利要求2所述的虚拟视图渲染方法,其特征在于,所述视差计算方法为立体匹配算法。
4.如权利要求3所述的虚拟视图渲染方法,其特征在于,所述立体匹配算法为基于邻域窗口灰度分布的局部匹 配算法。
5.如权利要求1所述的虚拟视图渲染方法,其特征在于,所述步骤S2进一步包括以下步骤: 根据所述第一参考视点和所述第二参考视点与虚拟视点的基线距离,确定主参考视点和次参考视点; 根据所述主参考视点及所述主参考视点的视差图,按照渲染顺序,对所述虚拟视图进行渲染,并建立所述虚拟视图对应于所述主参考视点的视图的索引图; 根据所述次参考视点及所述次参考视点的视差图,按照渲染顺序,对所述虚拟视图进行进一步的渲染,并建立所述虚拟视图对应于所述次参考视点的视图的索引图。
6.如权利要求5所述的虚拟视图渲染方法,其特征在于,基于所述主参考视点对所述虚拟视图进行的渲染的优先级高于基于所述次参考视点对所述虚拟视图进行的渲染。
7.如权利要求5所述的虚拟视图渲染方法,其特征在于,所述渲染顺序包括: 基于主参考视点对其次参考视点方向的虚拟视图进行渲染时,从图像的主参考视点方向到次参考视点方向进行渲染; 基于次参考视点对其主参考视点方向的虚拟视图进行渲染时,从图像的次参考视点方向到主参考视点方向进行渲染。
8.如权利要求1所述的虚拟视图渲染方法,其特征在于,所述步骤S3进一步包括以下步骤: 检测所述虚拟视图中的渲染空洞,对其中面积大于所述第一阈值的空洞进行标记;检测所述标记的空洞的边界的像素在所述索引图中对应的索引值,并选取所述空洞的边界处存在所述索引值的像素点作为所述空洞的边界点; 根据所述空洞边界点对应于参考视图中的所述索引值,确定其在参考视图中的投影位置,并确定所述空洞在所述参考视图中的对应区域; 根据选取规则,从所述标记的空洞在参考视图中的对应区域取值,对所述标记的空洞进行填补。
9.如权利要求8所述的虚拟视图渲染方法,其特征在于,所述选取规则包括: 对所述空洞在所述第一视图和第二视图中对应区域的面积进行比较; 如果所述空洞在所述第一视图中的对应区域的面积大于所述空洞在所述第二视图中的对应区域的面积,则从所述空洞在所述第一视图中的对应区域中靠近所述第一视图侧的边界处,选取与所述空洞面积相等的像素块,对所述空洞进行填补; 如果所述空洞在所述第二视图中的对应区域的面积大于所述空洞在所述第一视图中的对应区域的面积,则从所述空洞在所述第二视图中的对应区域中靠近所述第二视图侧的边界处,选取与所述空洞面积相等的像素块,对所述空洞进行填补。
10.如权利要求1所述的虚拟视图渲染方法,其特征在于,所述步骤S4进一步包括以下步骤: 逐行检测所述虚拟视图中的所 述空洞,确定所述空洞的边界; 在所述虚拟视图中,采用区间截取或线性插值的方法对所述空洞进行填补。
全文摘要
本发明提出一种虚拟视图渲染方法,包括以下步骤S1根据第一参考视点和第二参考视点的第一视图和第二视图,分别计算第一视图相对于第二视图的第一视差图和第二视图相对于第一视图的第二视差图;S2根据第一视图和第一视差图及第二视图和第二视差图对虚拟视图进行渲染,并分别建立虚拟视图对应于第一视图和第二视图的第一索引图和第二索引图;S3检测虚拟视图中面积超过第一阈值的空洞,并根据第一索引图和第二索引图确定空洞在第一视图和第二视图中的对应区域,以及在对应区域中取值对空洞进行填补;S4对虚拟视图中剩余的空洞进行填补。采用该方法图像处理痕迹不明显,虚拟视图的真实感较强。
文档编号G06T7/00GK103150729SQ20131006809
公开日2013年6月12日 申请日期2013年3月4日 优先权日2013年3月4日
发明者戴琼海, 杨扬 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1