CN104104933B - 一种视差矢量生成方法及装置 - Google Patents

一种视差矢量生成方法及装置 Download PDF

Info

Publication number
CN104104933B
CN104104933B CN201310129441.7A CN201310129441A CN104104933B CN 104104933 B CN104104933 B CN 104104933B CN 201310129441 A CN201310129441 A CN 201310129441A CN 104104933 B CN104104933 B CN 104104933B
Authority
CN
China
Prior art keywords
depth value
image block
estimating depth
image
estimating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310129441.7A
Other languages
English (en)
Other versions
CN104104933A (zh
Inventor
虞露
张熠辰
赵寅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201310129441.7A priority Critical patent/CN104104933B/zh
Publication of CN104104933A publication Critical patent/CN104104933A/zh
Application granted granted Critical
Publication of CN104104933B publication Critical patent/CN104104933B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

本发明提供了一种应用于多媒体通信领域的视差矢量生成方法及装置。所述的视差矢量生成方法对视点1图像中图像块A,利用视点2图像的深度值,估算出图像块A在两视点图像之间的视差。本发明使得视点1图像的视差矢量获得只依赖于视点2深度图像,因此可以在视点2深度图像可得时,提供编码视点1图像所需要的视差矢量。

Description

一种视差矢量生成方法及装置
技术领域
本发明涉及通信领域,具体而言,涉及一种视差矢量生成方法及装置。
背景技术
三维视频(3D video)包括多路(通常为2路或3路)纹理图像序列(其中每一帧为表示被拍摄物体色彩或亮度的图像)和深度图像序列(其中每一帧为表示被拍摄物体与拍摄相机之间距离的图像);通过视点合成(view synthesis)技术产生虚拟视点的纹理图像序列或深度图像序列。通常,一路纹理图像序列对应于一路深度图像序列,称为多视点视频加深度(Multi-View Video Plus Depth,简称为MVD)格式。另外,多路纹理图像之间的分辨率通常相等,多路深度图像之间的分辨率也通常相等;一路纹理图像和深度图像的分辨率可能相等,或者深度图像的分辨率小于纹理图像,例如深度图像的水平(horizontal)和竖直(vertical)分辨率均为纹理图像相应值的一半,也称纹理图像的分辨率(总像素数)为深度图像分辨率的4倍。深度图像通常为8比特位宽,其中每个深度值也称为一个深度级(即8比特位宽的深度图像有256个深度级)。
三维视频编码中可以借助视点间的相关性,例如两个视点的纹理图像之间具有一定的相似度,如像素值、运动信息的相似度等,两个视点的深度图像之间也具有一定的相似度。但是,多个视点之间存在视差,即视点间的对应点(correspondence)之间存在位置偏移,两个视点间的对应点通常由视差矢量指示。请参考图1,图1是视差矢量和视差矢量起始位置之间的关系示意图,例如,当视点1图像中的中心坐标为Pos1(150,100)的图像块A(图像块包括一个像素或者一个矩形像素块等)对应于视点2图像中的中心坐标为Pos2(180,95)的图像块B,则对于A和B,由视点1图像中Pos1指向视点2图像中Pos2的视差矢量DV1为(30,-5),30为水平分量,-5为竖直分量,即有Pos2=Pos1+DV1,Pos1=Pos2-DV1,矢量方向可简述为“由视点2图像指向视点1图像”或“由视点2指向视点1”;由视点2图像中Pos2指向视点1图像中Pos1的视差矢量DV2为(-30,5),即有Pos1=Pos2+DV2,Pos2=Pos1-DV2;相应的有DV2=-DV1。不区分矢量方向笼统地说,DV1和DV2均为视点1和视点2之间的视差矢量,仅指向相反。特别的,当两个视点图像呈平行摄像机排列(1D parallel cameraarrangement,即光轴平行、焦距相等、光心处于同一水平直线上、且图像分辨率相同)时,两个视点图像间任意像素的视差矢量的竖直分量为0(即竖直视差为0);此时,仅需要指示视差矢量的水平分量即可;这种情况下,水平视差,即视差的水平分量,也简称为视差,以上P2=P1+DV1等坐标运算可以退化为水平方向标量运算。
视差和深度之间存在一定的几何关系。某个图像块A对应的在视点1图像和视点2图像间的视差可以根据该图像块的深度值和这两个视点的摄像机参数转换得到。例如,当两个视点图像为通常所说的平行摄像机排列时,竖直视差为0(这种竖直视差始终为0的情况下,通常水平视差简称为视差),各图像块的水平视差DV可以通过DV=(f×L/Z)+du得到,其中f为视点1图像对应的摄像机的焦距,L为视点1和视点2之间的基线距离,Z为由图像块对应的深度值D指示的该图像块所在物体与摄像机的距离,du为视点1和视点2图像中心点(principle point)之间的水平偏移。“视点1图像”一般指视点1的纹理图像,也可以是视点1的深度图像。相似的,“视点2图像”一般指视点2的纹理图像,也可以是视点2的深度图像。对于平行摄像机排列,各具有相同深度值的图像块具有相同的视差,即视差与其所在的图像位置无关;通常可以先建立由深度值映射到视差的映射表(look-up table);对各图像块,由其位置和深度值对应的视差(例如可由查找上述映射表得到),找到该图像块在另一个视点图像中的对应位置。需要说明的是,同一物体在两个不同视点图像之间的视差随着这两个视角的基线距离(baseline)增加而增加,因此,一般需要说明视差矢量对应的两个视点才能明确这个视差矢量的大小。当某一视点V的深度图像存在时,视点V图像中某一像素P的深度值可以由该像素在视点V深度图像中对应像素的深度值得到。例如,当视点V纹理图像和深度图像具有相同分辨率时,视点V纹理图像上某一像素B的深度值一般对应于深度图像中相同坐标位置的深度像素的值。又例如,当视点V纹理图像的水平分辨率和竖直分辨率为深度图像分辨率的两倍时,则视点V纹理图像上某一像素B的深度值可以对应于深度图像上水平和竖直坐标值为B坐标值一半的深度像素的值。
一些编码工具利用当前编码视点重建的深度图像帮助提高当前编码视点纹理图像的编码效率,例如3D-ATM平台中的基于反向投影(backward warping)的视点合成预测(View Synthesis Prediction,简称为VSP)和基于深度的运动矢量预测(Depth-basedMotion Vector Prediction,简称为DMVP)。它们都需要由当前编码视点的重建深度图像的深度值获取当前编码纹理块的一个视差矢量(例如,对一个4×4图像块,由其中心点的深度值转换为这个块的视差矢量)。所以,如果当前编码视点的纹理图像先于深度图像编码,即编码纹理图像时深度图像还没有重建,则上述两个编码工具均无法获得视差矢量,不能正常工作,从而造成当前编码视点纹理图像的编码性能下降。要使得这些编码工具在纹理图像先于深度图像编码时仍然能够工作,则需要另一种不依赖于当前视点深度图像的视差矢量生成方法。
视差矢量生成方法(特别是视频编码应用中)包括如下2种:
1)若当前视点(正在编码/解码的视点)的深度图像可得,由当前视点图像中一个图像块A对应的深度值转换为A的视差矢量。但是,该方法存在如下缺点:如果当前编码视点的纹理图像先于深度图像编码,即编码纹理图像时对应的深度图像还不可得,则本方法无法获得视差矢量;
2)若当前视点的深度图像不可得,可以借用当前图像块周围已编码块的视差矢量作为当前块的视差矢量。但是,该方法得到的视差矢量可能不够准确,并且当周围块不存在视差矢量时,会发生处理异常。
针对相关技术中的视差矢量导出方法依赖于当前视点深度或当前块的周围块的视差矢量,目前尚未提出有效的解决方案。
发明内容
为克服现有技术的上述缺陷,本发明提出了一种视差矢量生成方法及其装置。
实现本发明第一目的的技术方案如下:
一种视差矢量生成方法,包括以下处理步骤:
步骤1:对视点1图像中一个P×Q(P×Q≥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的视差矢量。
作为优选,所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括取最后一次重复所述步骤2获得的估计深度值作为图像块A的估计深度值。
所述的取所述N个估计深度值之一,作为图像块A的估计深度值,包括:
取所述N个估计深度值中的最大值、最小值、次大值、次小值、或中值之一作为图像块A的估计深度值;或
取所述N个估计深度值中出现次数最多的估计深度值作为图像块A的估计深度值;或
在执行N次所述步骤2的过程中,如果执行第K(K≤N)次步骤2得到的所述估计深度值和执行第K-U(U≥1)次步骤2得到的所述估计深度值之差小于阈值,则取执行第K次或第K+V(V≥1)次步骤2得到的所述估计深度值为图像块A的估计深度值;或
在执行N次所述步骤2的过程中,如果连续M(M≥2)次执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,则取这M次中最后一次执行步骤2得到的所述估计深度值作为图像块A的估计深度值。
本发明的第二目的在于提供一种视差矢量生成装置,其包括:
估计深度值初始化模块,用于对视点1图像中一个P×Q(P×Q≥1)大小的图像块A,将图像块A的估计深度值初始化为一常数;
估计深度值更新模块,用于根据估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值更新为图像块B的深度值;
视差矢量赋值模块,用于将图像块A的估计深度值对应的视差作为图像块A的视差矢量。
作为优选,还包括估计深度值选择模块,用于从所述估计深度值更新模块N次处理得到的N个估计深度值中选出一个作为图像块A的估计深度值,N为大于等于1的整数。
从以上的描述中,可以看出,与现有技术相比,本发明以迭代的方式将一个假设的初始估计深度值渐进地更新修正为一个具有更高准确度的估计深度值,解决了视差矢量生成对当前视点深度数据或周围块视差矢量的依赖性,并有助于提高估算的视差矢量的准确性。具体为:
(1)本发明的视差矢量导出方法不依赖于当前编码视点的深度图像,可在当前编码视点的纹理图像先于深度图像编码时,产生已编码视点即本说明书中的视点2图像和当前编码视点即本说明书中的视点1图像之间的视差矢量;
(2)本发明的视差矢量导出方法不依赖于当前编码块周围块的视差矢量,从而在当前编码块周围均不使用视间预测方式即没有视差矢量时仍然可以导出视差矢量。
附图说明
结合附图,本发明的其他特点和优点可从下面通过举例来对本发明的原理进行解释的优选实施方式的说明中变得更清楚。
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的视差矢量和视差矢量起始位置之间的关系示意图;
图2是根据本发明实施例的视差矢量生成装置的结构框图;
图3是根据本发明实施例的视差矢量生成装置的又一种结构框图。
具体实施方式
为表述简单,我们将由深度值D导出的视点1图像和视点2图像之间的视差矢量简称为深度值D对应的视差矢量,记作Disp(D),其水平和竖直分量分别记为DispH(D)和DispV(D),其矢量方向记为由视点1图像指向视点2图像。以下实施例中我们均假设视点1的深度图像不可得,而视点2的深度图像可得。此时,视点1图像中某一像素A的深度值不能由视点1的深度图像获得。视点2图像中某一像素B的深度值可以由该像素在视点2深度图像中对应像素的深度值得到。下面将结合附图对本发明的实施方式进行详细描述:
实施例1
本发明的第一实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A(即1×1大小的图像块)的坐标为(xA,yA),xA和yA分别表示像素A的水平和竖直坐标。将像素A的估计深度值初始化为一常数D0,例如D0=128。根据像素A的估计深度值对应的视差Disp(D0)找到视点2图像中的对应像素B0,其坐标记为(xB0,yB0),其中xB0=xA+DispH(D0),yB0=yA+DispV(D0)。将像素B0的深度值DB0作为像素A的估计深度值。将像素A的视差矢量赋值为像素B0的深度值对应的视差Disp(DB0)。所述像素A的视差矢量由视点1图像指向视点2图像。
实施例2
本发明的第二实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),将像素A的估计深度值初始化为一常数D0,例如D0=63。
根据像素A的估计深度值对应的视差Disp(D0)找到视点2图像中的对应像素B0,其坐标记为(xB0,yB0),其中xB0=xA+DispH(D0),yB0=yA+DispV(D0)。将像素B0的深度值DB0作为像素A的估计深度值,即将估计深度值由初始值D0更新为DB0
根据像素A的估计深度值DB0对应的视差Disp(DB0),找到视点2图像中的像素B1,其坐标记为(xB1,yB1),其中xB1=xA+DispH(DB0),yB1=yA+DispV(DB0)。将像素B1的深度值DB1作为像素A的估计深度值,即进行一次迭代处理替换前一估计深度值DB0为当前估计深度值DB1。像素A的视差矢量赋值为Disp(DB1)。
实施例3
本发明的第三实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),则生成像素A的视差矢量包括以下步骤:
步骤1:将像素A的估计深度值Dest初始化为一常数,例如Dest为视点2深度图像中若干个像素的平均值;
步骤2:根据像素A的估计深度值Dest对应的视差Disp(Dest),找到视点2图像中的像素B(xB,yB),其中xB=xA+DispH(Dest),yB=yA+DispV(Dest);将像素B的深度值DB作为像素A的估计深度值Dest
步骤3:重复步骤2的迭代处理N次,其中N为大于等于0的整数。若N等于0,相当于本步骤不执行,直接跳转到步骤4。若N大于0,则每次重复步骤2得到1个像素A的估计深度值,故重复N次后得到N个估计深度值,这N个估计深度值中可能有部分值相同;取所述N个估计深度值中的一个,例如,N个估计深度值中的最后一个,或者N个估计深度值的最大值、最小值、中值、次大值或次小值其一,或者N个估计深度值中出现次数最多者,作为像素A的估计深度值Dest
步骤4:将像素A的估计深度值Dest对应的视差Disp(Dest)作为像素A的视差矢量。
实施例4
本发明的第四实施方式涉及一种视差矢量生成方法。记视点1图像中的一个像素A的坐标为(xA,yA),则生成像素A的视差矢量包括以下步骤:
步骤1:将像素A的估计深度值Dest初始化为一个数,例如像素A周围一个像素的估计深度值;
步骤2:根据像素A的估计深度值Dest对应的视差Disp(Dest),找到视点2图像中的像素B(xB,yB),其中xB=xA+DispH(Dest),yB=yA+DispV(Dest);将像素B的深度值DB作为像素A的估计深度值Dest
步骤3:重复步骤2的迭代处理N次,例如N=5。在执行N次所述步骤2的过程中,如果连续M次,例如M=3,执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,例如,阈值为若干个深度级,或者这两个估计深度值对应的视差之差均小于阈值,例如,阈值为若干个像素的视差,则取这M次中最后一次执行步骤2得到的所述估计深度值为图像块A的估计深度值Dest;同时,可以终止迭代处理。
步骤4:将像素A的估计深度值Dest对应的视差Disp(Dest)作为像素A的视差矢量。
实施例5
本发明的第五实施方式涉及一种视差矢量生成方法。记视点1图像中的一个P×Q(P×Q≥1)大小的图像块A的坐标为(xA,yA),例如,可将P和Q的取值为P=2,Q=2,或P=3,Q=4,图像块的坐标定义为图像块的左上角、中心点或右下角像素的坐标,则生成图像块A的视差矢量包括以下步骤:
步骤1:将图像块A的估计深度值Dest初始化为一常数,例如:初始化为视点2深度图像的平均值;或深度取值范围的中值,如,对8比特深度图像可以为128;或者一个外部输入的数;
步骤2:根据图像块A的估计深度值Dest对应的视差Disp(Dest),找到图像块A的在视点2图像中一个P×Q大小的图像块B,其坐标记为(xB,yB),其中xB=xA+Disp(Dest),yB=yA+DispV(Dest);图像块B的深度值DB定义为图像块B中某一像素的深度值或其中若干像素的深度值的平均值,将DB作为图像块A的估计深度值Dest。此时的估计深度值Dest记作“第0次”执行步骤2的估计深度值Dest0
步骤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<1,则所述执行第K-U次步骤2得到的所述估计深度值可以由Dest0代替。U和V的取值,例如U=1,V=1,又例如U=2,V=1。
步骤4:将图像块A的估计深度值Dest对应的视差Disp(Dest)作为图像块A的视差矢量。
实施例6
本发明的第六实施方式涉及一种视差矢量生成方法。对视点1图像中的一个区域R(例如一个E×F大小的图像块,E×F≥2),取其中的G个像素(例如区域R左上角、右上角、左下角、右下角和中心点中一个或多个),分别对这G个像素中的每一个像素Ai(i=1,2,...,G,G为大于等于1的整数)按照实施例1或实施例2中所述的视差矢量生成方法,生成Ai的视差矢量;取这个G个像素的视差矢量之一,例如,最大值、最小值、中值、平均值,等等,作为区域R的视差矢量。
实施例7
本发明的第七实施方式涉及一种视差矢量生成方法。对视点1图像中的一个区域R,取其中的H个像素,分别对这H个像素中的每一个像素Ai(i=1,2,...,H,H为大于等于1的整数)按照实施例3中所述的视差矢量生成方法中的步骤1至步骤4,生成Ai的视差矢量;取这个H个像素的视差矢量的最大值,作为区域R的视差矢量。
需要说明的是,因为视差矢量和深度值存在一一对应的关系且视差矢量的大小随深度值的增大而增大,实施例7也等效于:对视点1图像中的一个区域R,取其中的H个像素,分别对这H个像素中的每一个像素Ai按照实施例3中所述的视差矢量生成方法中的步骤1至步骤3处理,生成Ai的估计深度值Dest,i;取H个Dest,i的最大值对应的视差矢量,作为区域R的视差矢量。
实施例8
本发明的第八实施方式涉及一种视差矢量生成装置。图2为一种视差矢量生成装置的结构示意图。如图2所示,该装置包括四个模块:估计深度值初始化模块、估计深度值更新模块、估计深度值选择模块以及视差矢量赋值模块。其中,估计深度值初始化模块用于对视点1图像中一个P×Q(P×Q≥1)大小的图像块A,将图像块A的估计深度值Dest初始化为一常数;估计深度值更新模块用于根据估计深度值Dest对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值Dest更新为图像块B的深度值DB;估计深度值选择模块用于从所述估计深度值更新模块输出的N(N为大于1的整数)个估计深度值中取出一个,作为图像块A的估计深度值Dest;视差矢量赋值模块用于将估计深度值Dest对应的视差作为图像块A的视差矢量。下面对这四个模块进行描述。
估计深度值初始化模块,其输入包括视点1图像中一个P×Q(P×Q≥1)大小的图像块A的位置,其输出包括图像块A的初始估计深度值;估计深度值初始化模块完成的功能和实施方式与上述将图像块A的估计深度值初始化为一常数的功能和实施方式相同。
估计深度值更新模块,其输入包括一个估计深度值和视点2图像的深度值,其输出包括一个(更新的)估计深度值;估计深度值更新模块完成的功能和实施方式与上述根据图像块A的估计深度值对应的视差,找到视点2图像中一个P×Q大小的图像块B,将图像块B的深度值作为图像块A的估计深度值的功能和实施方式相同。
估计深度值选择模块,其输入包括N个估计深度值,通常为估计深度值更新模块N次处理输出的估计深度值,其输出包括一个估计深度值;估计深度值选择模块完成的功能和实施方式与上述取所述N个估计深度值中的一个作为图像块A的估计深度值Dest的功能和实施方式相同。
视差矢量赋值模块,其输入包括一个估计深度值,其输出包括一个视差矢量;视差矢量赋值模块完成的功能和实施方式与上述将估计深度值对应的视差作为图像块A的视差矢量的功能和实施方式相同。
实施例9
本发明的第九实施方式涉及一种视差矢量生成装置。图3为一种视差矢量生成装置的结构示意图。如图3所示,该装置包括3个模块:估计深度值初始化模块、估计深度值更新模块以及视差矢量赋值模块。其中,估计深度值初始化模块用于对视点1图像中一个P×Q(P×Q≥1)大小的图像块A,将图像块A的估计深度值Dest初始化为一常数;估计深度值更新模块用于根据估计深度值Dest对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值Dest更新为图像块B的深度值DB;视差矢量赋值模块用于将估计深度值Dest对应的视差作为图像块A的视差矢量。下面对这三个模块进行描述。
估计深度值初始化模块,其输入包括视点1图像中一个P×Q(P×Q≥1)大小的图像块A,其输出包括图像块A的估计深度值;估计深度值初始化模块完成的功能和实施方式与上述将图像块A的估计深度值初始化为一常数的功能和实施方式相同。
估计深度值更新模块,其输入包括一个估计深度值和视点2图像的深度值,其输出包括一个估计深度值;估计深度值更新模块完成的功能和实施方式与上述根据图像块A的估计深度值对应的视差,找到视点2图像中一个P×Q大小的图像块B,将图像块B的深度值作为图像块A的估计深度值的功能和实施方式相同。
视差矢量赋值模块,其输入包括一个估计深度值,其输出包括一个视差矢量;视差矢量赋值模块完成的功能和实施方式与上述将估计深度值对应的视差作为图像块A的视差矢量的功能和实施方式相同。
视差矢量生成装置可以由多种方式实现,例如:
方法一:以电子计算机为硬件附加与视差矢量生成方法功能相同的软件程序来实现。
方法二:以单片机为硬件附加与视差矢量生成方法功能相同的软件程序来实现。
方法三:以数字信号处理器为硬件附加与视差矢量生成方法功能相同的软件程序来实现。
方法四:设计与视差矢量生成方法功能相同的电路来实现。
当然,在实际应用中,实现视差矢量生成装置的方式还可以有其它多种,不仅仅局限于上述四种。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种视差矢量生成方法,其特征在于,包括以下处理步骤:
步骤1:对视点1图像中一个P×Q大小的图像块A,将图像块A的估计深度值初始化为一常数,其中,P×Q≥1;
步骤2:根据图像块A的估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块B的深度值作为图像块A的估计深度值;
步骤3:重复所述步骤2处理N次,其中N为大于等于0的整数;若N等于0,跳转到步骤4;若N大于0,则每次步骤2处理得到1个图像块A的估计深度值,重复所述步骤2的处理N次共计得到N个估计深度值,取最后一次重复所述步骤2获得的估计深度值,作为图像块A的估计深度值;
步骤4:将图像块A的估计深度值对应的视差作为图像块A的视差矢量。
2.如权利要求1所述的一种视差矢量生成方法,其特征在于,取所述N个估计深度值之一,作为图像块A的估计深度值,包括在执行N次所述步骤2的过程中,如果执行第K次步骤2得到的所述估计深度值和执行第K-U次步骤2得到的所述估计深度值之差小于阈值,则取执行第K次或第K+V次步骤2得到的所述估计深度值为图像块A的估计深度值,其中,K≤N,U≥1,V≥1。
3.如权利要求1所述的一种视差矢量生成方法,其特征在于,取所述N个估计深度值之一,作为图像块A的估计深度值,包括在执行N次所述步骤2的过程中,如果连续M次执行步骤2中任意相邻两次得到所述估计深度值之差均小于阈值,则取这M次中最后一次执行步骤2得到的所述估计深度值作为图像块A的估计深度值,其中,M≥2。
4.一种视差矢量生成方法,其特征在于,包括以下处理步骤:
步骤1:对视点1图像中一个P×Q大小的图像块A,将图像块A的估计深度值初始化为一常数,其中P×Q≥1;
步骤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的视差矢量。
5.一种视差矢量生成方法,其特征在于,包括以下处理步骤:
步骤1:对视点1图像中一个P×Q大小的图像块A,将图像块A的估计深度值初始化为一常数,其中P×Q≥1;
步骤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的视差矢量。
6.一种视差矢量生成装置,其特征在于,包括:
估计深度值初始化模块,用于对视点1图像中一个P×Q大小的图像块A,将图像块A的估计深度值初始化为一常数,其中P×Q≥1;
估计深度值更新模块,用于根据估计深度值对应的视差找到图像块A在视点2图像中的对应图像块B;将图像块A的估计深度值更新为图像块B的深度值;
估计深度值选择模块,用于从所述估计深度值更新模块N次处理得到的N个估计深度值中选取:
最后一次获得的估计深度值,
或者,最大值、最小值、次大值、次小值、或中值之一,
或者,出现次数最多的估计深度值,
作为图像块A的估计深度值,N为大于等于1的整数;
视差矢量赋值模块,用于将图像块A的估计深度值对应的视差作为图像块A的视差矢量。
CN201310129441.7A 2013-04-12 2013-04-12 一种视差矢量生成方法及装置 Active CN104104933B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310129441.7A CN104104933B (zh) 2013-04-12 2013-04-12 一种视差矢量生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310129441.7A CN104104933B (zh) 2013-04-12 2013-04-12 一种视差矢量生成方法及装置

Publications (2)

Publication Number Publication Date
CN104104933A CN104104933A (zh) 2014-10-15
CN104104933B true CN104104933B (zh) 2016-12-28

Family

ID=51672697

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310129441.7A Active CN104104933B (zh) 2013-04-12 2013-04-12 一种视差矢量生成方法及装置

Country Status (1)

Country Link
CN (1) CN104104933B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016123774A1 (zh) * 2015-02-05 2016-08-11 华为技术有限公司 编解码方法和编解码器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101276720B1 (ko) * 2005-09-29 2013-06-19 삼성전자주식회사 카메라 파라미터를 이용하여 시차 벡터를 예측하는 방법,그 방법을 이용하여 다시점 영상을 부호화 및 복호화하는장치 및 이를 수행하기 위한 프로그램이 기록된 기록 매체
CN101917619B (zh) * 2010-08-20 2012-05-09 浙江大学 一种多视点视频编码快速运动估计方法
WO2012128068A1 (ja) * 2011-03-18 2012-09-27 ソニー株式会社 画像処理装置、画像処理方法、及び、プログラム

Also Published As

Publication number Publication date
CN104104933A (zh) 2014-10-15

Similar Documents

Publication Publication Date Title
CN101933335B (zh) 将二维图像数据转换为立体图像数据的方法和系统
Stefanoski et al. Automatic view synthesis by image-domain-warping
CN102999913B (zh) 一种基于可信点传播的局部立体匹配方法
US20090129667A1 (en) Device and method for estimatiming depth map, and method for generating intermediate image and method for encoding multi-view video using the same
KR100720722B1 (ko) 중간영상 생성방법 및 이 방법이 적용되는 입체영상디스플레이장치
JP5197683B2 (ja) 奥行き信号生成装置及び方法
KR20090085704A (ko) 스테레오-가능 디스플레이 상에의 3d 비디오 이미지의 렌더링
CN103702098A (zh) 一种时空域联合约束的三视点立体视频深度提取方法
CN103428499A (zh) 编码单元的划分方法及使用该方法的多视点视频编码方法
EP3351001A1 (en) Method for encoding a light field content
US20190158875A1 (en) Method and device for generating predicted pictures
CN103024421A (zh) 自由视点电视中的虚拟视点合成方法
CN103402097A (zh) 一种自由视点视频深度图编码方法及其失真预测方法
CN106134197A (zh) 视频编码方法、视频解码方法、视频编码装置、视频解码装置、视频编码程序以及视频解码程序
CN103136775A (zh) 基于局部约束重建的kinect深度图空洞填充方法
CN113160420A (zh) 一种三维点云重建的方法、装置、电子设备及存储介质
CN101483765B (zh) 一种图像处理方法、编解码方法及装置
CN104661013A (zh) 一种基于空间加权的虚拟视点绘制方法
CN104333758B (zh) 深度图的预测方法和检测像素点的方法及相关装置
CN104104933B (zh) 一种视差矢量生成方法及装置
CN104661014A (zh) 时空结合的空洞填充方法
Akin et al. Real-time free viewpoint synthesis using three-camera disparity estimation hardware
JP2014072809A (ja) 画像生成装置、画像生成方法、画像生成装置用プログラム
CN103916652B (zh) 视差矢量生成方法及装置
KR20120125970A (ko) 스테레오 매칭 방법 및 그 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant