一种图像视差的获取方法及系统的制作方法

xiaoxiao2020-10-23  19

一种图像视差的获取方法及系统的制作方法
【技术领域】
[0001] 本发明属于图像处理技术领域,尤其设及一种图像视差的获取方法及系统。
【背景技术】
[0002] 3D图像通常由两路图像组成,该两路图像对应于不同的观看角度,根据该两路图 像所包含的视差信息,可W生成新的观看角度所对应的图像,即裸眼3D技术。由输入图像 计算视差图,第一步通常是进行块匹配,然后是采用不同的方法优化块匹配的结果,W获得 较为准确的结果。现有技术对块匹配的优化通常将优化过程转换为隐马尔科夫模型,通过 维特比算法对该隐马尔科夫模型进行计算,获取块匹配的最佳解。但是使用现有技术,对同 一图像中代表同一物体的像素点,即相邻像素点之间会造成较大的视差差异。

【发明内容】

[0003] 鉴于此,本发明实施例提供一种图像视差的获取方法及系统,W解决现有技术对 同一 3D图像中代表同一物体的像素点容易造成较大的视差差异的问题。
[0004] 本发明实施例是该样实现的,一种图像视差的获取方法,所述方法包括W下步 骤:
[0005] 获取像素点所在行的水平梯度;
[0006] 根据所述水平梯度生成约束图像视差之间的差异的约束条件;
[0007] 根据所述约束条件对相邻像素点之间的视差差异进行约束,获取符合所述约束条 件的视差图。
[0008] 本发明实施例的另一目的在于提供一种图像视差的获取系统,所述系统包括:
[0009] 水平梯度获取单元,用于获取像素点所在行的水平梯度;
[0010] 约束条件生成单元,用于根据所述水平梯度获取单元获取的水平梯度生成约束所 述图像视差之间的差异的约束条件;
[0011] 视差图获取单元,用于根据所述约束条件生成单元生成的约束条件对相邻像素点 之间的视差差异进行约束,获取符合所述约束条件的视差图。
[0012] 本发明实施例通过预设的梯度计算函数获取像素点所在行的水平梯度,根据所述 水平梯度生成约束图像视差之间的差异的约束条件,并根据所述约束条件对相邻像素点之 间的视差差异进行约束,获取符合所述约束条件的视差图。与现有技术相比,本发明实施例 通过特定的约束条件对相邻像素点之间的视差差异进行约束,从而可有效避免同一张图像 中表示同一物体的像素点之间出现较大视差差异的问题。
【附图说明】
[0013] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述 中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些 实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W根据该些 附图获得其他的附图。
[0014] 图1是本发明实施例提供的图像视差获取方法的流程图;
[0015] 图2是本发明实施例提供的图像视差获取效果的示意图;
[0016]图3是本发明实施例提供的图像视差获取系统的结构图。
【具体实施方式】
[0017] 为了使本发明的目的、技术方案及优点更加清楚明白,W下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用W解释本发明,并 不用于限定本发明。
[0018] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[001引实施例一
[0020] 如图1所示为本发明实施例提供的图像视差获取方法的流程图,所述方法包括W 下步骤:
[0021] 步骤S101,获取像素点所在行的水平梯度。
[0022] 在本发明实施例中,可通过梯度计算函数获取像素点所在行的水平梯度。
[0023] 根据所述像素点的灰度信息计算相应像素点的块匹配函数值。
[0024] 其中,水平梯度包括但不限于;左图像的水平梯度和右图像的水平梯度,灰度信息 包括但不限于:左图像的灰度信息和右图像的灰度信息,而每个图像包括若干行像素点。
[0025] 其中所述梯度计算函数具体可W为:
[0026]
[0027] 其中,I(X,y)是Ii^(x,y)或Iij(x,y),G(x,y)表示像素点所在行的水平梯度,Te为 预设的梯度阔值,X是垂直方向的坐标,y是水平方向的坐标,I^x,y-1)是左图像的灰度 信息,Ik(X,厂1)是右图像的灰度信息,山(x,y+l)-Ik(X,厂1)I表示左、右图像的灰度差异 I(X,y+1)。
[0028] 步骤S102,根据所述水平梯度生成约束图像视差之间的差异的约束条件。
[0029] 在本发明实施例中,在同一张图像中,如果是同一个物体,则像素点的视差应该是 相同或相近的(或者说相邻像素点之间视差的差异应该为0或很小),通过像素点之间水 平梯度的差异与像素点之间视差的差异的对比,可W对出现异常视差差异的像素点进行约 束,即;如果像素点之间的视差差异和水平梯度差异都大,则所述像素点的视差为正常;如 果像素点之间的视差差异大、水平梯度差异小,则像素点的视差异常,通过公式表示为;如 果G(x,y) = 1,同一行相邻像素点之间的视差差异不超过正整数N,即|马"-公剖<W;如 果G(x,y) = 0,同一行相邻像素点之间的视差差异不超过正整数K,即|〇r-/)為I^K,其 中K<N,吗。表示第X行第y个像素的视差,I巧其I表示相邻像素点的视差差异。
[0030] 步骤S103,根据所述约束条件对相邻像素点之间的视差差异进行约束,获取符合 所述约束条件的视差图。
[0031] 在本发明实施例中,根据上述生成的约束条件,对相邻像素点之间的视差差异进 行约束:如果符合约束条件,则不进行任何处理,只需获取符合该约束条件的视差图即可。
[0032] 作为本发明的一个可选实施例,所述方法还包括:
[0033] 对视差图进行W梯度为基础的约束优化处理,获取经过所述优化处理后的视差 图,具体的是:
[0034] 通过维特比算法构造能量函数
[00 巧]
[0036] 通过上述维特比算法获取使所述eW狂)最小的解Z,通过所述最小的解Z获取 经过所述优化处理后的视差图。其中,Z=扣1,…,Dy],cU《dmax,1《y《Y,Z= 扣1,…,Dy]表示第X行的像素点的视差,jW表示第X行代价矩阵,Jw化,y)表示块匹配函 数J(x,Dy,y),(/" =G(.v,.r),D表示像素点的视差,dm"表示像素点的最大视差,dmi。表示像 素点的最小视差,Y表示输入图像水平方向的像素点数,表示第X行第y个像素的视差, 吗"兒I表示相邻像素点的视差差异,0《Ph(1)《Ph(2)《Ph(N),Ph(x) =〇°for x〉N,0《Pv(l)《Pv(2)《…《Pv(N),Pv(x) =c?f〇rx〉K,其中K、N为预先设定的正整数,K<N。
[0037] 在本发明实施例中,通过水平梯度和W维特比算法求解的能量函数
I获取使能量函 数eW狂)值最小的Z,通过所述最小的解Z获取优化后的视差图。其计算方法具体为:
[0038] 设;c〇=N〇+l;
[0039] Cl二N1+1;
[0040] A(i,:)为A的第i行元素组成的行向量
[0041] A(:,如为A的第j行元素组成的列向量
[00化IA(i,m:n)为A的第i行第m列至第n列元素组成的行向量
[0043] A(m:n,j)为A的第j列第m行至第m行元素组成的列向量。
[0044] 计算流程如下:
[0045] 1、y^ 1 ;
[0046] 2、/^jW(y,:);
[0047] 3、构造和jW同样大小的全零矩阵optidx,其中,jW为由块匹配函数值组成的第 X行代价矩阵;
K=dmax-dmin+1 ;
[0048] 4、如果坤i二 1,则N=Ni,P=Pi,C=Cl;否则N=N〇,P=P〇,C=c〇;
[0049] 5、构造DrX(2c+l)的矩阵A ;
[0050] A(:,c)<-J.
[005U计算A(:,c+_j)和A(:,c-_j),1《j《N ;
[0052] X<- /+巧_/).
[0053] A(1: j, c-j) ;
[0054] A(j+l:DE,c-j) -X(1:D厂_]?); [00巧]A(l:Dirj,c+j)和X(j+1:DE);
[0056] A值E_j+1 :Dr, c+j) ;
[0057]
[0058] 得到矩阵A,所述矩阵A的元素位于两条平行线之间,矩阵之上的数为矩阵的列标 号。
[0059] 6、计算矩阵A每一列的最小值和所述最小值对应的行标号
[0060] V^A为矩阵A所有列的最小值;
[0061]idx^A为上述最小值对应的行标号。
[0062] 7. J?-/(d,7) + v.
[0063]8、optidx(:,y) ^(1:Dr)+(idx_c);
[0064] 9、如果y=Y,输出optidx,如果y^y+1,则返回步骤4;
[0065] 10、定义长为Y的向量path;
[0066]ll、path〇〇 =min[optIdx(:,Y)];
[0067] 12、y^Y-l;
[0068] 13、k^path(y+1);
[0069] 14、path(y) ^optidx化,y);
[0070]I5、如果y〉l,y^厂1,返回步骤I2 ;
[00川 16、第m行经优化得到的视差图为path+cU-1。
[007引举例说明:
[0073] 如图2所示为本发明实施例提供的图像视差获取效果的示意图,其获取流程如 下:
[0074] 1、横向数字表示图像的水平坐标,即y;
[0075] 2、纵向数字表示像素点的视差,该里视差范围为-1至2;
[007引 3、图2中圆圈称为状态,W纵向和横向数字对来表示,如;S(0,^代表第2行第3 个圆圈,其物理意义是第2个像素点的视差是0的状态。
[0077] 计算过程如下:
[007引 a、将jW(1,:)从上至下填充到第1列圆圈中,WWV={v_i,V。V。V2,}表示该组 数;
[0079] b、第2列的四个状态由前列(即第1列)的四个状态转移而来,W有箭头的连线 表示,该连线称为路径;
[0080] C、计算进入每一状态的四条路径的重量W,进入状态S(d,2)四条路径的重量由下 式计算:
[0081]
[0082] t对第2列所有的状态计算W,并选取各自的最小值W更新V,Vw = min,. i,f S记录 各自取得最小值的i,即本状态是由前一列的哪一个状态转移而来,在图2中表示为实线, 称为幸存路径;
[0083]e、向右前进一列,重复步骤c、d,直至网格图的最右列,在此图示中为第4列;
[0084]f、选出数值最小的Vi所对应的状态;从该状态开始,沿实线从右至左记录下所经 历的状态。假设在此图中乂。最小,得到的状态图为別0,4) ^S(l,3) ^S(0,2) ^S(0,1);
[0085] g、输出视差0、0、1、0,即像素点之间的视差差异分别为;0、1、1,符合视差差异。 [00 8引实施例二
[0087] 本发明还提供一种图像视差的获取系统,如图3所示为本发明实施例提供的图像 视差获取系统的结构图,为了便于说明,仅示出与本发明实施例相关的部分,包括:
[0088] 所述图像视差获取系统可W是内置于智能终端(例如手机、平板电板、智能电视 机)中的软件单元、硬件单元或者是软硬件结合的单元,所述图像视差获取系统包括;水平 梯度获取单元301、约束条件生成单元302W及视差图获取单元302,其中:
[0089] 水平梯度获取单元301,用于获取像素点所在行的水平梯度;
[0090] 约束条件生成单元302,用于根据所述水平梯度获取单元301获取的水平梯度生 成约束所述图像视差之间的差异的约束条件;
[0091] 视差图优化单元303,用于根据所述约束条件生成单元302生成的约束条件对相 邻像素点之间的视差差异进行约束,获取符合所述约束条件的视差图。
[0092] 进一步的,所述水平梯度获取单元301,包括:
[0093] 水平梯度获取子单元3011,用于通过预设的梯度计算函数获取像素点所在行的水 平梯度,其中所述梯度计算函数具体为:
[0094]
[0095] 其中,I(X,y)是Ii^(x,y)或Iij(x,y),G(x,y)表示像素点所在行的水平梯度,Te为 预设的梯度阔值,X是垂直方向的坐标,y是水平方向的坐标,I^x,y-1)是左图像的灰度信 息,lK(x,y-l)是右图像的灰度信息,|lL(x,y+l)-lK(x,y-l)I表示左、右图像的灰度差异息。
[0096] 进一步的,所述约束条件生成单元302生成的约束条件为;如果G(x,y) = 1,同一 行相邻像素点之间的视差差异不超过正整数N,即|吗"-〇记l^iV;如果G(x,y) = 0,同一 行相邻像素点之间的视差差异不超过正整数K,即|〇,…别含K,其中K<N,巧"表示第X 行第y个像素的视差,I公巧刮表示相邻像素点的视差差异。
[0097] 进一步的,所述系统还包括:
[0098] 优化单元304,用于对所述视差图进行优化处理,获取经过所述优化处理后的视差 图,具体的是:
[0099] 通过维特比算法构造能量函数
[0100]
[0101] 通过上述维特比算法获取使eW狂)最小的解Z,并通过所述最小的解Z获取所 述优化处理后的视差图,其中,Z=扣1,…,Dy],cU《dmax,1《y《Y,Z=扣。… ,Dy]表示第X行的像素点的视差,jW表示第X行代价矩阵,Jw值y,y)表示块匹配函数 J(x,Dy,y),巧U=G(.r,.v),D表示像素点的视差,cU表示像素点的最大视差,dmi。表示像素 点的最小视差,Y表示输入图像水平方向的像素点数,巧"表示第X行第y个像素的视差, 巧'i-〇货I表示相邻像素点的视差差异,〇《Ph(1)《Ph(2)《…《Ph(N),Ph(x)=-for x〉N,0《Pv(l)《Pv(2)《…《Pv(N),Pv(x) =c?f〇rx〉K,其中K、N为预先设定的正整数,K<N。
[0102] 其中,所述水平梯度包括;像素点左图像的水平梯度和像素点右图像的水平梯度。
[0103] 所属领域的技术人员可W清楚地了解到,为描述的方便和简洁,仅W上述各功能 单元、子单元的划分进行举例说明,实际应用中,可W根据需要而将上述功能分配由不同的 功能单元、模块完成,即所述系统的内部结构划分成不同的功能单元或模块,W完成W上描 述的全部或者部分功能。实施例中的各功能单元或子单元可W集成在一个处理单元中,也 可W是各个单元单独物理存在,也可W两个或两个W上单元集成在一个单元中,上述集成 的单元或模块既可W采用硬件的形式实现,也可W采用软件功能单元的形式实现。另外,各 功能单元、子单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0104] 需要说明的是,本实施例提供的图像视差获取系统,其主要工作原理与上述实施 例的图像视差的获取方法的实现原理一致,所述图像视差获取系统中各单元、子单元的具 体工作过程,可W参考前述方法实施例的对应过程,此处对此不作寶述。
[0105] 综上所述,本发明实施例通过预设的梯度计算函数获取像素点所在行的水平梯 度,根据所述水平梯度生成约束图像视差之间的差异的约束条件,并根据所述约束条件对 相邻像素点之间的视差差异进行约束,获取符合所述约束条件的视差图。与现有技术相比, 本发明实施例通过特定的约束条件对相邻像素点之间的视差差异进行约束,从而可有效避 免同一张图像中表示同一物体的像素点之间出现较大视差差异的问题,具有较强的易用性 和实用性。
[0106] 所属领域的技术人员可W清楚地了解到,为了描述的方便和简洁,仅W上述各功 能单元的划分进行举例说明,实际应用中,可w根据需要而将上述功能分配由不同的功能 单元、模块完成,即将所述系统的内部结构划分成不同的功能单元或模块,W完成W上描述 的全部或者部分功能。实施例中的各功能单元可W集成在一个处理单元中,也可W是各个 单元单独物理存在,也可W两个或两个W上单元集成在一个单元中,上述集成的单元既可 W采用硬件的形式实现,也可W采用软件功能单元的形式实现。另外,各功能单元的具体名 称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中各单元的具体 工作过程,可W参考前述方法实施例中的对应过程,在此不再 寶述。
[0107]本领域普通技术人员可W意识到,结合本文中所公开的实施例描述的各示例的单 元及算法步骤,能够W电子硬件、或者计算机软件和电子硬件的结合来实现。该些功能究竟 W硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员 可W对每个特定的应用来使用不同方法来实现所描述的功能,但是该种实现不应认为超出 本发明的范围。
[010引在本发明所提供的实施例中,应该理解到,所揭露的系统和方法,可W通过其它的 方式实现。例如,W上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分, 仅仅为一种逻辑功能划分,实际实现时可W有另外的划分方式,例如多个单元或组件可W 结合或者可W集成到另一个系统,或一些特征可W忽略,或不执行。另一点,所显示或讨论 的相互之间的禪合或直接禪合或通讯连接可W是通过一些接口,装置或单元的间接禪合或 通讯连接,可W是电性,机械或其它的形式。
[0109] 所述作为分离部件说明的单元可W是或者也可W不是物理上分开的,作为单元显 示的部件可W是或者也可W不是物理单元,即可W位于一个地方,或者也可W分布到多个 网络单元上。可W根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目 的。
[0110] 另外,在本发明各个实施例中的各功能单元可W集成在一个处理单元中,也可W 是各个单元单独物理存在,也可W两个或两个W上单元集成在一个单元中。上述集成的单 元既可W采用硬件的形式实现,也可W采用软件功能单元的形式实现。
[0111] 所述集成的单元如果W软件功能单元的形式实现并作为独立的产品销售或使用 时,可W存储在一个计算机可读取存储介质中。基于该样的理解,本发明实施例的技术方案 本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可软件产品 的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用W使得一台 计算机设备(可W是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本 发明实施例各个实施例所述方法的全部或部分步骤。而前述的存储介质包括;U盘、移动硬 盘、只读存储器(ROM,Read-OnlyMemoir)、随机存取存储器(RAM,RandomAccessMemoir)、 磁碟或者光盘等各种可W存储程序代码的介质。
[0112] W上所述实施例仅用W说明本发明的技术方案,而非对其限制;尽管参照前述实 施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可W对前述各 实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而该些修改 或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范 围。
【主权项】
1. 一种图像视差的获取方法,其特征在于,所述方法包括: 获取像素点所在行的水平梯度; 根据所述水平梯度生成约束图像视差之间的差异的约束条件; 根据所述约束条件对相邻像素点之间的视差差异进行约束,获取符合所述约束条件的 视差图。2. 如权利要求1所述的方法,其特征在于,所述获取像素点所在行的水平梯度具体为: 通过预设的梯度计算函数获取像素点所在行的水平梯度,其中所述梯度计算函数为:其中,I (X,y)是Ijx,y)或IK(x, y),G(x, y)表示像素点所在行的水平梯度,Te为预设 的梯度阈值,X是垂直方向的坐标,y是水平方向的坐标,IJx,y-l)是左图像的灰度信息, in(x,y_i)是右图像的灰度?目息,liL(x,y+i) _iK(x,y_i) I表不左右图像的灰度差异。3. 如权利要求2所述的方法,其特征在于,所述约束条件为:如果G (X,y) = 1,同一行 相邻像素点之间的视差差异不超过正整数N,即-Ο以卜# 如果G(x,y) = 0,同一行 相邻像素点之间的视差差异不超过正整数K,即1 |£>Γ - 丨I,其中K〈N,Dp表示第X行 第y个像素的视差,表示相邻像素点的视差差异。4. 如权利要求2所述的方法,其特征在于,所述方法还包括: 对所述视差图进行优化处理,获取经过所述优化处理后的视差图,具体为: 通过维特比算法构造能量函数通过所述维特比算法获取使Εω (Z)最小的解Ζ,并通过所述最小的解Z获取经过所 述优化处理后的视差图,其中,Z= [D1,…,DY],dmin彡Dy<d max,l彡y彡Y,Z= [D1,… ,DY]表示第X行的像素点的视差,J(x)表示第X行代价矩阵,J(x)(D y,y)表示块匹配函数 J(x,Dy,y),f =G(x,.r),D表示像素点的视差,dmax表示像素点的最大视差,d min表示像素 点的最小视差,Y表示输入图像水平方向的像素点数,表示第X行第y个像素的视差, |Z)P-D=I表示相邻像素点的视差差异,0彡Ph(I)彡PH(2)彡…彡PH(N),P H(X) =<-f0r χ>Ν,0彡Pv(I)彡Pv(2)彡…彡PV(N),P v(X) =c?for X>K,其中K、N为预先设定的正整数, K〈N〇5. 如权利要求1至4任一项所述的方法,其特征在于,所述水平梯度包括:像素点左图 像的水平梯度和像素点右图像的水平梯度。6. -种图像视差的获取系统,其特征在于,所述系统包括: 水平梯度获取单元,用于获取像素点所在行的水平梯度; 约束条件生成单元,用于根据所述水平梯度获取单元获取的水平梯度生成约束所述图 像视差之间的差异的约束条件; 视差图获取单元,用于根据所述约束条件生成单元生成的约束条件对相邻像素点之间 的视差差异进行约束,获取符合所述约束条件的视差图。7. 如权利要求6所述的系统,其特征在于,所述水平梯度获取单元,包括: 水平梯度获取子单元,用于通过预设的梯度计算函数获取像素点所在行的水平梯度, 其中所述梯度计算函数具体为:其中,I (X,y)是Ijx,y)或IK(x, y),G(x, y)表示像素点所在行的水平梯度,Te为预设 的梯度阈值,X是垂直方向的坐标,y是水平方向的坐标,IJx,y-l)是左图像的灰度信息, in(x,y_i)是右图像的灰度?目息,liL(x,y+i) _iK(x,y_i) I表不左、右图像的灰度差异。8. 如权利要求7所述的系统,其特征在于,所述约束条件生成单元生成的约束条件为: 如果G(x,y) = 1,同一行相邻像素点之间的视差差异不超过正整数N,即 Izf1 -D=卜/V ;如果G (X,y) = 0,同一行相邻像素点之间的视差差异不超过正整数K,即 |W-D;:;卜[,其中尤< #,表示第X行第y个像素的视差,表示相邻像 素点的视差差异。9. 如权利要求1所述的系统,其特征在于,所述系统还包括: 优化单元,用于对所述视差图进行优化处理,获取经过所述优化处理后的视差图,具体 为: 通过维特比算法构造能量函数通过所述维特比算法获取使Εω (Z)最小的解Ζ,并通过所述最小的解Z获取所述优化 处理后的视差图,其中,Z = [D1,…,DY],K DySd max,l彡y彡Y,Z= [D1,…,Dy]表示 第X行的像素点的视差,J(x)表示第X行代价矩阵,J (x) (Dy,y)表示块匹配函数J(x,Dy,y), (7::''=G'(x,.r),D表示像素点的视差,dmax表示像素点的最大视差,d min表示像素点的 最小视差,Y表示输入图像水平方向的像素点数,表示第X行第y个像素的视差, 表示相邻像素点的视差差异,〇彡Ph(I)彡Ph⑵彡…彡PH(N),P H(X) =<-f0r χ>Ν,0彡Pv(I)彡Pv(2)彡…彡PV(N),P v(X) =c?for X>K,其中K、N为预先设定的正整数, K〈N〇10. 如权利要求6至9任一项所述的系统,其特征在于,所述水平梯度包括:像素点左 图像的水平梯度和像素点右图像的水平梯度。
【专利摘要】本发明适用于图像处理技术领域,提供了基于一种图像视差的获取方法及系统,所述方法包括:获取像素点所在行的水平梯度;根据所述水平梯度生成约束图像视差之间的差异的约束条件;根据所述约束条件对相邻像素点之间的视差差异进行约束,获取符合所述约束条件的视差图。通过本发明,可以解决同一图像中代表同一物体的像素点存在较大视差差异的问题。
【IPC分类】H04N13/00
【公开号】CN104902260
【申请号】CN201510381123
【发明人】唐卫东
【申请人】Tcl集团股份有限公司
【公开日】2015年9月9日
【申请日】2015年6月30日

最新回复(0)