一种视差矢量生成方法及装置制造方法

文档序号:7998324阅读:278来源:国知局
一种视差矢量生成方法及装置制造方法【专利摘要】本发明提供了一种应用于多媒体通信领域的视差矢量生成方法及装置。所述的视差矢量生成方法对视点1图像中图像块A,利用视点2图像的深度值,估算出图像块A在两视点图像之间的视差。本发明使得视点1图像的视差矢量获得只依赖于视点2深度图像,因此可以在视点2深度图像可得时,提供编码视点1图像所需要的视差矢量。【专利说明】一种视差矢量生成方法及装置【
技术领域
】[0001]本发明涉及通信领域,具体而言,涉及一种视差矢量生成方法及装置。【
背景技术
】[0002]三维视频(3Dvideo)包括多路(通常为2路或3路)纹理图像序列(其中每一帧为表示被拍摄物体色彩或亮度的图像)和深度图像序列(其中每一帧为表示被拍摄物体与拍摄相机之间距离的图像);通过视点合成(viewsynthesis)技术产生虚拟视点的纹理图像序列或深度图像序列。通常,一路纹理图像序列对应于一路深度图像序列,称为多视点视频加深度(Multi-ViewVideoPlusD印th,简称为MVD)格式。另外,多路纹理图像之间的分辨率通常相等,多路深度图像之间的分辨率也通常相等;一路纹理图像和深度图像的分辨率可能相等,或者深度图像的分辨率小于纹理图像,例如深度图像的水平(horizontal)和坚直(vertical)分辨率均为纹理图像相应值的一半,也称纹理图像的分辨率(总像素数)为深度图像分辨率的4倍。深度图像通常为8比特位宽,其中每个深度值也称为一个深度级(即8比特位宽的深度图像有256个深度级)。[0003]三维视频编码中可以借助视点间的相关性,例如两个视点的纹理图像之间具有一定的相似度,如像素值、运动信息的相似度等,两个视点的深度图像之间也具有一定的相似度。但是,多个视点之间存在视差,即视点间的对应点(correspondence)之间存在位置偏移,两个视点间的对应点通常由视差矢量指示。请参考图1,图1是视差矢量和视差矢量起始位置之间的关系示意图,例如,当视点1图像中的中心坐标为P〇sl(150,100)的图像块A(图像块包括一个像素或者一个矩形像素块等)对应于视点2图像中的中心坐标为Pos2(180,95)的图像块B,则对于A和B,由视点1图像中Posl指向视点2图像中Pos2的视差矢量DV1为(30,一5),30为水平分量,一5为坚直分量,即有Pos2=Posl+DVl,Posl=Pos2-DV1,矢量方向可简述为"由视点2图像指向视点1图像"或"由视点2指向视点1";由视点2图像中Pos2指向视点1图像中Posl的视差矢量DV2为(一30,5),即有Posl=Pos2+DV2,Pos2=Posl-DV2;相应的有DV2=-DV1。不区分矢量方向笼统地说,DV1和DV2均为视点1和视点2之间的视差矢量,仅指向相反。特别的,当两个视点图像呈平行摄像机排列(IDparallelcameraarrangement,即光轴平行、焦距相等、光心处于同一水平直线上、且图像分辨率相同)时,两个视点图像间任意像素的视差矢量的坚直分量为0(即坚直视差为〇);此时,仅需要指示视差矢量的水平分量即可;这种情况下,水平视差,即视差的水平分量,也简称为视差,以上P2=P1+DV1等坐标运算可以退化为水平方向标量运算。[0004]视差和深度之间存在一定的几何关系。某个图像块A对应的在视点1图像和视点2图像间的视差可以根据该图像块的深度值和这两个视点的摄像机参数转换得到。例如,当两个视点图像为通常所说的平行摄像机排列时,坚直视差为〇(这种坚直视差始终为〇的情况下,通常水平视差简称为视差),各图像块的水平视差DV可以通过DV=(fXL/Z)+du得至IJ,其中f为视点1图像对应的摄像机的焦距,L为视点1和视点2之间的基线距离,Z为由图像块对应的深度值D指示的该图像块所在物体与摄像机的距离,du为视点1和视点2图像中心点(principlepoint)之间的水平偏移。"视点1图像"一般指视点1的纹理图像,也可以是视点1的深度图像。相似的,"视点2图像"一般指视点2的纹理图像,也可以是视点2的深度图像。对于平行摄像机排列,各具有相同深度值的图像块具有相同的视差,即视差与其所在的图像位置无关;通常可以先建立由深度值映射到视差的映射表(look-uptable);对各图像块,由其位置和深度值对应的视差(例如可由查找上述映射表得到),找到该图像块在另一个视点图像中的对应位置。需要说明的是,同一物体在两个不同视点图像之间的视差随着这两个视角的基线距离(baseline)增加而增加,因此,一般需要说明视差矢量对应的两个视点才能明确这个视差矢量的大小。当某一视点V的深度图像存在时,视点V图像中某一像素P的深度值可以由该像素在视点V深度图像中对应像素的深度值得至IJ。例如,当视点V纹理图像和深度图像具有相同分辨率时,视点V纹理图像上某一像素B的深度值一般对应于深度图像中相同坐标位置的深度像素的值。又例如,当视点V纹理图像的水平分辨率和坚直分辨率为深度图像分辨率的两倍时,则视点V纹理图像上某一像素B的深度值可以对应于深度图像上水平和坚直坐标值为B坐标值一半的深度像素的值。[0005]-些编码工具利用当前编码视点重建的深度图像帮助提高当前编码视点纹理图像的编码效率,例如3D-ATM平台中的基于反向投影(backwardwarping)的视点合成预测(ViewSynthesisPrediction,简称为VSP)和基于深度的运动矢量预测(Depth-basedMotionVectorPrediction,简称为DMVP)。它们都需要由当前编码视点的重建深度图像的深度值获取当前编码纹理块的一个视差矢量(例如,对一个4X4图像块,由其中心点的深度值转换为这个块的视差矢量)。所以,如果当前编码视点的纹理图像先于深度图像编码,即编码纹理图像时深度图像还没有重建,则上述两个编码工具均无法获得视差矢量,不能正常工作,从而造成当前编码视点纹理图像的编码性能下降。要使得这些编码工具在纹理图像先于深度图像编码时仍然能够工作,则需要另一种不依赖于当前视点深度图像的视差矢量生成方法。[0006]视差矢量生成方法(特别是视频编码应用中)包括如下2种:[0007]1)若当前视点(正在编码/解码的视点)的深度图像可得,由当前视点图像中一个图像块A对应的深度值转换为A的视差矢量。但是,该方法存在如下缺点:如果当前编码视点的纹理图像先于深度图像编码,即编码纹理图像时对应的深度图像还不可得,则本方法无法获得视差矢量;[0008]2)若当前视点的深度图像不可得,可以借用当前图像块周围已编码块的视差矢量作为当前块的视差矢量。但是,该方法得到的视差矢量可能不够准确,并且当周围块不存在视差矢量时,会发生处理异常。[0009]针对相关技术中的视差矢量导出方法依赖于当前视点深度或当前块的周围块的视差矢量,目前尚未提出有效的解决方案。【
发明内容】[0010]为克服现有技术的上述缺陷,本发明提出了一种视差矢量生成方法及其装置。[0011]实现本发明第一目的的技术方案如下:[0012]一种视差矢量生成方法,包括以下处理步骤:[0013]步骤1:对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值初始化为一常数;[0014]步骤2:根据图像块A的估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块B的深度值作为图像块A的估计深度值;[0015]步骤3:重复所述步骤2处理N次,其中N为大于等于0的整数;若N等于0,跳转到步骤4;若N大于0,则每次步骤2处理得到1个图像块A的估计深度值,重复所述步骤2的处理N次共计得到N个估计深度值,取所述N个估计深度值之一,作为图像块A的估计深度值;[0016]步骤4:将图像块A的估计深度值对应的视差作为图像块A的视差矢量。[0017]作为优选,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括取最后一次重复所述步骤2获得的估计深度值作为图像块A的估计深度值。[0018]所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括:[0019]取所述N个估计深度值中的最大值、最小值、次大值、次小值、或中值之一作为图像块A的估计深度值;或[0020]取所述N个估计深度值中出现次数最多的估计深度值作为图像块A的估计深度值;或[0021]在执行N次所述步骤2的过程中,如果执行第K(K<N)次步骤2得到的所述估计深度值和执行第K一U(U>1)次步骤2得到的所述估计深度值之差小于阈值,则取执行第K次或第K+V(V>1)次步骤2得到的所述估计深度值为图像块A的估计深度值;或[0022]在执行N次所述步骤2的过程中,如果连续Μ(M>2)次执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,则取这Μ次中最后一次执行步骤2得到的所述估计深度值作为图像块Α的估计深度值。[0023]本发明的第二目的在于提供一种视差矢量生成装置,其包括:[0024]估计深度值初始化模块,用于对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值初始化为一常数;[0025]估计深度值更新模块,用于根据估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值更新为图像块B的深度值;[0026]视差矢量赋值模块,用于将图像块A的估计深度值对应的视差作为图像块A的视差矢量。[0027]作为优选,还包括估计深度值选择模块,用于从所述估计深度值更新模块N次处理得到的N个估计深度值中选出一个作为图像块A的估计深度值,N为大于等于1的整数。[0028]从以上的描述中,可以看出,与现有技术相比,本发明以迭代的方式将一个假设的初始估计深度值渐进地更新修正为一个具有更高准确度的估计深度值,解决了视差矢量生成对当前视点深度数据或周围块视差矢量的依赖性,并有助于提高估算的视差矢量的准确性。具体为:[0029](1)本发明的视差矢量导出方法不依赖于当前编码视点的深度图像,可在当前编码视点的纹理图像先于深度图像编码时,产生已编码视点即本说明书中的视点2图像和当前编码视点即本说明书中的视点1图像之间的视差矢量;[0030](2)本发明的视差矢量导出方法不依赖于当前编码块周围块的视差矢量,从而在当前编码块周围均不使用视间预测方式即没有视差矢量时仍然可以导出视差矢量。【专利附图】【附图说明】[0031]结合附图,本发明的其他特点和优点可从下面通过举例来对本发明的原理进行解释的优选实施方式的说明中变得更清楚。[0032]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:[0033]图1是根据相关技术的视差矢量和视差矢量起始位置之间的关系示意图;[0034]图2是根据本发明实施例的视差矢量生成装置的结构框图;[0035]图3是根据本发明实施例的视差矢量生成装置的又一种结构框图。【具体实施方式】[0036]为表述简单,我们将由深度值D导出的视点1图像和视点2图像之间的视差矢量简称为深度值D对应的视差矢量,记作Disp(D),其水平和坚直分量分别记为DispH(D)和Dispv(D),其矢量方向记为由视点1图像指向视点2图像。以下实施例中我们均假设视点1的深度图像不可得,而视点2的深度图像可得。此时,视点1图像中某一像素A的深度值不能由视点1的深度图像获得。视点2图像中某一像素B的深度值可以由该像素在视点2深度图像中对应像素的深度值得到。下面将结合附图对本发明的实施方式进行详细描述:[0037]实施例1[0038]本发明的第一实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A(S卩1X1大小的图像块)的坐标为(xA,yA),^和74分别表示像素A的水平和坚直坐标。将像素A的估计深度值初始化为一常数D。,例如D。=128。根据像素A的估计深度值对应的视差Disp(DQ)找到视点2图像中的对应像素B0,其坐标记为(xBQ,yBQ),其中xBQ=xA+DispH(DQ),yBQ=yA+Dispv(D。)。将像素B0的深度值DBQ作为像素A的估计深度值。将像素A的视差矢量赋值为像素B0的深度值对应的视差Disp(DBCI)。所述像素A的视差矢量由视点1图像指向视点2图像。[0039]实施例2[0040]本发明的第二实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),将像素A的估计深度值初始化为一常数Dd,例如Dd=63。[0041]根据像素A的估计深度值对应的视差Disp(D。)找到视点2图像中的对应像素B0,其坐标记为(xB(l,yB(l),其中xB(l=xA+DispH(DQ),yB(l=yA+Dispv(DQ)。将像素B0的深度值Dbq作为像素A的估计深度值,即将估计深度值由初始值D。更新为Dbq。[0042]根据像素A的估计深度值DBQ对应的视差Disp(DBQ),找到视点2图像中的像素B1,其坐标记为(xB1,yB1),其中xB1=xA+DispH(DBQ),yB1=yA+Dispv(DBQ)。将像素B1的深度值DB1作为像素A的估计深度值,即进行一次迭代处理替换前一估计深度值DB(I为当前估计深度值DB1。像素A的视差矢量赋值为Disp(DB1)。[0043]实施例3[0044]本发明的第三实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),则生成像素A的视差矢量包括以下步骤:[0045]步骤1:将像素A的估计深度值Dest初始化为一常数,例如Dest为视点2深度图像中若干个像素的平均值;[0046]步骤2:根据像素A的估计深度值Dest对应的视差Disp(Dest),找到视点2图像中的像素B(xB,yB),其中xB=xA+DispH(Dest),yB=yA+Dispv(Dest);将像素B的深度值DB作为像素A的估计深度值Dest;[0047]步骤3:重复步骤2的迭代处理N次,其中N为大于等于0的整数。若N等于0,相当于本步骤不执行,直接跳转到步骤4。若N大于0,则每次重复步骤2得到1个像素A的估计深度值,故重复N次后得到N个估计深度值,这N个估计深度值中可能有部分值相同;取所述N个估计深度值中的一个,例如,N个估计深度值中的最后一个,或者N个估计深度值的最大值、最小值、中值、次大值或次小值其一,或者N个估计深度值中出现次数最多者,作为像素A的估计深度值Dest;[0048]步骤4:将像素A的估计深度值Dest对应的视差Disp(Dest)作为像素A的视差矢量。[0049]实施例4[0050]本发明的第四实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),则生成像素A的视差矢量包括以下步骤:[0051]步骤1:将像素A的估计深度值Dest初始化为一个数,例如像素A周围一个像素的估计深度值;[0052]步骤2:根据像素A的估计深度值Dest对应的视差Disp(Dest),找到视点2图像中的像素B(xB,yB),其中xB=xA+DispH(Dest),yB=yA+Dispv(Dest);将像素B的深度值DB作为像素A的估计深度值Dest;[0053]步骤3:重复步骤2的迭代处理N次,例如N=5。在执行N次所述步骤2的过程中,如果连续Μ次,例如Μ=3,执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,例如,阈值为若干个深度级,或者这两个估计深度值对应的视差之差均小于阈值,例如,阈值为若干个像素的视差,则取这Μ次中最后一次执行步骤2得到的所述估计深度值为图像块Α的估计深度值Dest;同时,可以终止迭代处理。[0054]步骤4:将像素A的估计深度值Dest对应的视差Disp(Dest)作为像素A的视差矢量。[0055]实施例5[0056]本发明的第五实施方式涉及一种视差矢量生成方法。记视点1图像中的一个PXQ(PXQ彡1)大小的图像块A的坐标为(xA,yA),例如,可将P和Q的取值为P=2,Q=2,或P=3,Q=4,图像块的坐标定义为图像块的左上角、中心点或右下角像素的坐标,则生成图像块A的视差矢量包括以下步骤:[0057]步骤1:将图像块A的估计深度值Dest初始化为一常数,例如:初始化为视点2深度图像的平均值;或深度取值范围的中值,如,对8比特深度图像可以为128;或者一个外部输入的数;[0058]步骤2:根据图像块A的估计深度值Dest对应的视差Disp(Dest),找到图像块A的在视点2图像中一个PXQ大小的图像块B,其坐标记为(xB,yB),其中xB=xA+Disp(Dest),yB=yA+Dispv(Dest);图像块B的深度值DB定义为图像块B中某一像素的深度值或其中若干像素的深度值的平均值,将DB作为图像块A的估计深度值Dest。此时的估计深度值Dest记作"第0次"执行步骤2的估计深度值Dest(l[0059]步骤3:对步骤2作N次重复迭代处理,例如N=2或N=3或N=4,在执行N次步骤2的过程中,如果执行第K(K<N)次步骤2得到的所述估计深度值和执行第K一U(U>1)次步骤2得到的所述估计深度值之差小于阈值,例如J个深度级,J为大于等于1的整数,则取执行第K次或第K+V(V彡1)次步骤2得到的估计深度值为图像块A的估计深度值Dest。需要说明的是,若K一U〈l,则所述执行第K一U次步骤2得到的所述估计深度值可以由Dest(l代替。U和V的取值,例如U=1,V=1,又例如U=2,V=1。[0060]步骤4:将图像块A的估计深度值Dest对应的视差Disp(Dest)作为图像块A的视差矢量。[0061]实施例6[0062]本发明的第六实施方式涉及一种视差矢量生成方法。对视点1图像中的一个区域R(例如一个EXF大小的图像块,EXF彡2),取其中的G个像素(例如区域R左上角、右上角、左下角、右下角和中心点中一个或多个),分别对这G个像素中的每一个像素\(i=1,2,...,G,G为大于等于1的整数)按照实施例1或实施例2中所述的视差矢量生成方法,生成A的视差矢量;取这个G个像素的视差矢量之一,例如,最大值、最小值、中值、平均值,等等,作为区域R的视差矢量。[0063]实施例7[0064]本发明的第七实施方式涉及一种视差矢量生成方法。对视点1图像中的一个区域R,取其中的Η个像素,分别对这Η个像素中的每一个像素八1(i=1,2,...,H,Η为大于等于1的整数)按照实施例3中所述的视差矢量生成方法中的步骤1至步骤4,生成&的视差矢量;取这个Η个像素的视差矢量的最大值,作为区域R的视差矢量。[0065]需要说明的是,因为视差矢量和深度值存在一一对应的关系且视差矢量的大小随深度值的增大而增大,实施例7也等效于:对视点1图像中的一个区域R,取其中的Η个像素,分别对这Η个像素中的每一个像素八1按照实施例3中所述的视差矢量生成方法中的步骤1至步骤3处理,生成Ai的估计深度值D#i;取Η个Dest,i的最大值对应的视差矢量,作为区域R的视差矢量。[0066]实施例8[0067]本发明的第八实施方式涉及一种视差矢量生成装置。图2为一种视差矢量生成装置的结构示意图。如图2所示,该装置包括四个模块:估计深度值初始化模块、估计深度值更新模块、估计深度值选择模块以及视差矢量赋值模块。其中,估计深度值初始化模块用于对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值Dest初始化为一常数;估计深度值更新模块用于根据估计深度值Dest对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值Dest更新为图像块B的深度值DB;估计深度值选择模块用于从所述估计深度值更新模块输出的N(N为大于1的整数)个估计深度值中取出一个,作为图像块A的估计深度值Dest;视差矢量赋值模块用于将估计深度值Dest对应的视差作为图像块A的视差矢量。下面对这四个模块进行描述。[0068]估计深度值初始化模块,其输入包括视点1图像中一个PXQ(PXQ彡1)大小的图像块A的位置,其输出包括图像块A的初始估计深度值;估计深度值初始化模块完成的功能和实施方式与上述将图像块A的估计深度值初始化为一常数的功能和实施方式相同。[0069]估计深度值更新模块,其输入包括一个估计深度值和视点2图像的深度值,其输出包括一个(更新的)估计深度值;估计深度值更新模块完成的功能和实施方式与上述根据图像块A的估计深度值对应的视差,找到视点2图像中一个PXQ大小的图像块B,将图像块B的深度值作为图像块A的估计深度值的功能和实施方式相同。[0070]估计深度值选择模块,其输入包括N个估计深度值,通常为估计深度值更新模块N次处理输出的估计深度值,其输出包括一个估计深度值;估计深度值选择模块完成的功能和实施方式与上述取所述N个估计深度值中的一个作为图像块A的估计深度值Dest的功能和实施方式相同。[0071]视差矢量赋值模块,其输入包括一个估计深度值,其输出包括一个视差矢量;视差矢量赋值模块完成的功能和实施方式与上述将估计深度值对应的视差作为图像块A的视差矢量的功能和实施方式相同。[0072]实施例9[0073]本发明的第九实施方式涉及一种视差矢量生成装置。图3为一种视差矢量生成装置的结构示意图。如图3所示,该装置包括3个模块:估计深度值初始化模块、估计深度值更新模块以及视差矢量赋值模块。其中,估计深度值初始化模块用于对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值Dest初始化为一常数;估计深度值更新模块用于根据估计深度值Dest对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值Dest更新为图像块B的深度值DB;视差矢量赋值模块用于将估计深度值Dest对应的视差作为图像块A的视差矢量。下面对这三个模块进行描述。[0074]估计深度值初始化模块,其输入包括视点1图像中一个PXQ(PXQ彡1)大小的图像块A,其输出包括图像块A的估计深度值;估计深度值初始化模块完成的功能和实施方式与上述将图像块A的估计深度值初始化为一常数的功能和实施方式相同。[0075]估计深度值更新模块,其输入包括一个估计深度值和视点2图像的深度值,其输出包括一个估计深度值;估计深度值更新模块完成的功能和实施方式与上述根据图像块A的估计深度值对应的视差,找到视点2图像中一个PXQ大小的图像块B,将图像块B的深度值作为图像块A的估计深度值的功能和实施方式相同。[0076]视差矢量赋值模块,其输入包括一个估计深度值,其输出包括一个视差矢量;视差矢量赋值模块完成的功能和实施方式与上述将估计深度值对应的视差作为图像块A的视差矢量的功能和实施方式相同。[0077]视差矢量生成装置可以由多种方式实现,例如:[0078]方法一:以电子计算机为硬件附加与视差矢量生成方法功能相同的软件程序来实现。[0079]方法二:以单片机为硬件附加与视差矢量生成方法功能相同的软件程序来实现。[0080]方法三:以数字信号处理器为硬件附加与视差矢量生成方法功能相同的软件程序来实现。[0081]方法四:设计与视差矢量生成方法功能相同的电路来实现。[0082]当然,在实际应用中,实现视差矢量生成装置的方式还可以有其它多种,不仅仅局限于上述四种。[〇〇83]显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。[0084]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。【权利要求】1.一种视差矢量生成方法,其特征在于,包括以下处理步骤:步骤1:对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值初始化为一常数;步骤2:根据图像块A的估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块B的深度值作为图像块A的估计深度值;步骤3:重复所述步骤2处理N次,其中N为大于等于0的整数;若N等于0,跳转到步骤4;若N大于0,则每次步骤2处理得到1个图像块A的估计深度值,重复所述步骤2的处理N次共计得到N个估计深度值,取所述N个估计深度值之一,作为图像块A的估计深度值;步骤4:将图像块A的估计深度值对应的视差作为图像块A的视差矢量。2.如权利要求1所述的一种视差矢量生成方法,其特征在于,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括取最后一次重复所述步骤2获得的估计深度值作为图像块A的估计深度值。3.如权利要求1所述的一种视差矢量生成方法,其特征在于,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括取所述N个估计深度值中的最大值、最小值、次大值、次小值、或中值之一作为图像块A的估计深度值。4.如权利要求1所述的一种视差矢量生成方法,其特征在于,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括取所述N个估计深度值中出现次数最多的估计深度值作为图像块A的估计深度值。5.如权利要求1所述的一种视差矢量生成方法,其特征在于,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括在执行N次所述步骤2的过程中,如果执行第K(K<N)次步骤2得到的所述估计深度值和执行第K一U(U>1)次步骤2得到的所述估计深度值之差小于阈值,则取执行第K次或第K+V(V>1)次步骤2得到的所述估计深度值为图像块A的估计深度值。6.如权利要求1所述的一种视差矢量生成方法,其特征在于,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括在执行N次所述步骤2的过程中,如果连续Μ(M>2)次执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,则取这Μ次中最后一次执行步骤2得到的所述估计深度值作为图像块Α的估计深度值。7.-种视差矢量生成装置,其特征在于,包括:估计深度值初始化模块,用于对视点1图像中一个PXQ(PXQ彡1)大小的图像块A,将图像块A的估计深度值初始化为一常数;估计深度值更新模块,用于根据估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值更新为图像块B的深度值;视差矢量赋值模块,用于将图像块A的估计深度值对应的视差作为图像块A的视差矢量。8.如权利要求7所述的一种视差矢量生成装置,其特征还在于,包括估计深度值选择模块,用于从所述估计深度值更新模块N次处理得到的N个估计深度值中选出一个作为图像块A的估计深度值,N为大于等于1的整数。【文档编号】H04N13/00GK104104933SQ201310129441【公开日】2014年10月15日申请日期:2013年4月12日优先权日:2013年4月12日【发明者】虞露,张熠辰,赵寅申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1