一种双目图像的自适应权重立体匹配方法及系统与流程

文档序号:14715877发布日期:2018-06-16 01:20阅读:205来源:国知局
一种双目图像的自适应权重立体匹配方法及系统与流程

本发明涉及双目立体视觉领域,具体涉及一种双目图像的自适应权重立体匹配方法及系统。



背景技术:

双目立体视觉系统是一个根据获取的平面图像恢复3D图像的系统。场景中的光线在人眼这个精密的成像系统中被采集,通过神经中枢被送入包含有数以亿计的神经元的大脑中被并行的处理,得到了实时的高清晰度的准确的深度感觉信息。这使得人类对环境的适应能力大大提高,很多复杂的动作能够得以完成:如行走、体育运动、驾驶车辆以及进行科学实验等。

计算机视觉是一门研究使用计算机来模拟人的视觉系统的学科。当前计算机立体视觉的水平与人类的双目视觉水平还相距甚远,因此对它的研究仍然是一个非常活跃的领域。以双目立体视觉为例,它是计算机视觉领域的重要分支,它通过模拟人的视觉系统来处理现实世界,对于立体视觉匹配的研究,能够大大的增强计算机或机器人对环境的感知能力,使得机器人能够更好的适应环境、更加智能,从而能够更好的为人们服务。双目立体视觉中最重要但又非常困难的问题就是立体视觉匹配问题,即从不同视点图像中找到匹配的对应点。



技术实现要素:

针对上述问题,本申请提供一种双目图像的自适应权重立体匹配方法及系统。

根据第一方面,一种实施例中提供一种双目图像的自适应权重立体匹配方法,包括:

获取至少两个视点的图像;

对任意一个待匹配的像素点p,计算它与支持窗内其他任意一像素点q,两者的匹配代价矢量特征的距离Δfpq;

至少根据计算得到的匹配代价矢量特征的距离Δfpq,得到像素点q对像素点p的支持权重w(p,q);

计算累积匹配代价函数;

根据所述累积匹配代价函数得到像素点p的匹配点和/或视差。

在一实施例中,任意一像素点(x,y)的匹配代价矢量特征通过以下方式计算得到:

计算该像素点(x,y)和另一幅图像中若干像素点的距离c(x,y,d)=|I1(x,y)-I2(x-d,y)|;其中d∈Sd={dmin,...,dmax},为所有可能的视差的集合,I1(x,y)为像素点(x,y)的属性,I2(x-d,y)为另一幅图像中像素点(x-d,y)的属性;

根据计算得到的距离c(x,y,d)构造像素点(x,y)的匹配代价矢量特征feature_vector(x,y)。

在一实施例中,根据距离c(x,y,d)构造的像素点(x,y)的匹配代价矢量特征:

feature_vector(x,y)=[c(x,y,dmin),...,c(x,y,dmax)]。

在一实施例中,根据距离c(x,y,d)构造的像素点(x,y)的匹配代价矢量特征:

feature_vector(x,y)=[e(x,y,dmin),...,e(x,y,dmax)];

其中,或者,σ为预设的常数,

在一实施例中,根据计算得到的匹配代价矢量特征的距离Δfpq,得到像素点q对像素点p的支持权重w(p,q);或者,

还计算像素点p与像素点q的颜色距离Δcpq和/或几何距离Δgpq;根据匹配代价矢量特征的距离Δfpq,以及颜色距离Δcpq、几何距离Δgpq中的一者或两者,来共同得到像素点q对像素点p的支持权重w(p,q)。

在一实施例中,像素点q对像素点p的支持权重w(p,q)为:

或者,

或者,

或者,

其中,γ1、γ2、γ3分别为设置的匹配代价矢量特征的距离控制参数、颜色距离控制参数、几何距离控制参数。

在一实施例中,所述计算累积匹配代价函数,包括通过以下公式来计算:

其中,像素点p、像素点q分别为待匹配的图像中的待匹配的像素点、该待匹配的像素点的支持窗内的像素点,Np表示所述待匹配的图像中像素点q的支持窗;像素点分别为另一幅图像中与像素点p视差为d的像素点、该像素点的支持窗内的像素点,表示所述另一幅图像中像素点的支持窗;w(p,q)表示像素点q对像素点p的支持权重,表示像素点对像素点的支持权重;表示像素点q与像素点的匹配代价函数,通过两者的颜色、梯度或匹配代价矢量特征中的一者或多者来计算;表示累积匹配代价函数。

在一实施例中,所述根据所述累积匹配代价函数得到像素点p的匹配点和/或视差,包括:求解一视差dp;其中Sd={dmin,...,dmax}为所有可能的视差的集合。

根据第二方面,一种实施例中提供一种双目图像的自适应权重立体匹配系统,包括:

存储器,用于存储程序;

处理器,用于通过执行所述存储器存储的程序以实现上述任一实施例所述的方法。

根据第三方面,一种实施例中提供一种计算机可读存储介质,其特征在于,包括程序,所述程序能够被处理器执行以实现上述任一实施例所述的方法。

依据上述实施例的双目图像的自适应权重立体匹配方法、系统及计算机可读存储介质,在计算支持权重时,引入匹配代价矢量特征,至少根据匹配代价矢量特征的距离来计算支持权重,使得支持权重的计算更加有效和合理,从而有效解决立体匹配时发生误匹配的问题,提高了立体匹配的精确度。

附图说明

图1为一种双目图像的自适应权重立体匹配方法的流程图;

图2为一种实施例中计算累积匹配代价函数的像素点的空间位置示意图;

图3为一种双目图像的自适应权重立体匹配系统的结构示意图。

具体实施方式

下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。

另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。

本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。

在双目视觉的立体匹配中,一个关键问题是寻找在左右图像中的匹配点,以得到两幅图像中对应像素的水平位置差,也称之为视差,从而进一步可以计算出该像素点的深度。

不在同一深度的像素点,完全可能有相同的颜色、纹理和梯度等,所以这常常会导致立体匹配时发生误匹配,从而进一步导致视差计算出现较大的错误,大大影响了双目视觉在深度测量中的应用。为了克服这一点,在现有的双目图像的立体匹配方法中,一般会采用像素点周边区域的像素点来估计该像素点,例如用一个矩形区域,用自适应生长的区域,还有用最小生成树等等,但这些方法中,对像素的匹配代价的加权仍然只能采用上面的颜色、纹理和梯度等与视差没有直接关系的特征来计算,因此这些方法还有较大的不鲁棒性。

例如,自适应权重(Adaptive Support-Weight)立体匹配技术,是Kuk-Jin Yoon等人从人类视觉心理学出发,提出的匹配算法,根据像素之间的位置和颜色差异对窗口内原始像素代价赋以不同的加权,然后再加以聚合。一般地,对于待匹配的像素点,在它的窗口内与之空间坐标越接近、颜色越相似的像素点,会被分配更大权重,而与之空间坐标越接远、颜色越相异的像素点,则会被分配更小的权重。

本发明是基于自适应权重立体匹配算法以及基于该算法的变种算法,提出了一种双目图像的自适应权重立体匹配方法及系统,针对Kuk-Jin Yoon等人提出的经典的自适应权重立体匹配算法以其他人对该经典算法的改进算法,进行了改进,具体地,在计算权重时,引入了一个匹配代价矢量特征,是一种可以用来衡量两个像素点是否在同一深度(或同一视差)的特征,在具体实施例中,可以单独用本发明的匹配代价矢量特征来计算权重,当然也可以用本发明的匹配代价矢量特征,联合其他的特征例如颜色特征和几何特征(空间坐标特征)中的一者或多者,来共合计算权重。本发明可以使得权重的计算更加有效和合理,从而有效解决立体匹配时发生误匹配的问题,提高了立体匹配的精确度。下面具体说明。

请参照图1,本发明一实施例中提供一种双目图像的自适应权重立体匹配方法,包括步骤S1100~S1500。

S1100:获取至少两个视点的图像。

S1200:对任意一个待匹配的像素点p,计算它与支持窗内其他任意一像素点q,两者的匹配代价矢量特征的距离Δfpq。

在一实施例中,计算一幅图像中任意像素点(x,y)的匹配代价矢量特征通过以下方式计算得到:

计算该幅图像中该像素点(x,y)和另一幅图像中若干像素点的距离c(x,y,d)=|I1(x,y)-I2(x-d,y)|;其中d∈Sd={dmin,...,dmax},为所有可能的视差的集合,I1(x,y)为像素点(x,y)的属性,I2(x-d,y)为另一幅图像中像素点(x-d,y)的属性。在一实施例中,像素点的属性包括像素点的颜色强度属性、灰度强度属性和梯度中一者或多者。当像素点的属性包括多者时,例如包括像素点的颜色和梯度时,则在计算两个点的距离时,可以计算这两个点的颜色差值以及梯度差值,再相加或加权平均得到距离。例如,当只考虑颜色属性时:

c(x,y,d)

=|I1(x,y)-I2(x-d,y)|

=|I1R(x,y)-I2R(x-d,y)|+|I1G(x,y)-I2G(x-d,y)|+|I1B(x,y)-I2B(x-d,y)|;

其中I1R(x,y)、I1G(x,y)、I1B(x,y)分别表示在上述的一幅图像中像素点(x,y)在RGB颜色空间的R、G、B分量,I2R(x-d,y)、I2G(x-d,y)、I2B(x-d,y)分别表示在上述的另一幅图像中像素点(x-d,y)在RGB颜色空间的R、G、B分量;当然当只考虑颜色属性时,类似地也可以用CIELab颜色空间来计算,在此不再赘述。

根据计算得到的距离c(x,y,d)构造像素点(x,y)的匹配代价矢量特征feature_vector(x,y)。本发明一实施例中将feature_vector(x,y)定义为像素点(x,y)的一个基本特征,经发明人研究发现,两个处于同一深度的像素点,通常它们的匹配代价矢量特征也比较相近,反过来,如果两个像素点在不同深度,那么它们的匹配代价矢量特征也会相差比较大,因此将feature_vector(x,y)定义为像素点(x,y)的匹配代价矢量特征是非常具有价值的,可以有效解决立体匹配时发生误匹配的问题,提高了立体匹配的精确度。

在一实施例中,根据距离c(x,y,d)构造的像素点(x,y)的匹配代价矢量特征:

feature_vector(x,y)=[c(x,y,dmin),...,c(x,y,dmax)]。

由于像素点(x,y)的匹配代价矢量特征feature_vector(x,y)通常只在其使c(x,y,d)达到最小的d的取值的附近才会比较小,其他地方则存在较大的不确定性,因此在一实施例中,可以将距离c(x,y,d)进行了一个转换后再来构造匹配代价矢量特征feature_vector(x,y),这样可以突出最小值附近特性。因此,在一实施例中,为了突出最小值附件的值的特性,并且让较大的匹配代价值迅速趋向于零,我们令或者,σ为预设的常数,用于控制预制较大误差走向于零的幅度,因此根据距离c(x,y,d)构造的像素点(x,y)的匹配代价矢量特征:

feature_vector(x,y)=[e(x,y,dmin),...,e(x,y,dmax)]。

定义了任意一像素点的匹配代价矢量特征后,相应地,也就可以计算任意两个像素点的匹配代价矢量特征的距离,例如两个矢量特征的距离可以通过它们的差值来计算,例如像素点q和像素点p的匹配代价矢量特征的距离可以通过下式来计算:Δfpq=|feature_vector(p)-feature_vector(q)|。

S1300:至少根据计算得到的匹配代价矢量特征的距离Δfpq,得到像素点q对像素点p的支持权重w(p,q)。

在一实施例中,可以单独根据计算得到的匹配代价矢量特征的距离Δfpq,得到像素点q对像素点p的支持权重w(p,q)。例如

在一实施例中,还计算像素点p与像素点q的颜色距离Δcpq和/或几何距离Δgpq;根据匹配代价矢量特征的距离Δfpq,以及颜色距离Δcpq、几何距离Δgpq中的一者或两者,来共同得到像素点q对像素点p的支持权重w(p,q)。例如:

或者,

或者,

其中,γ1、γ2、γ3分别为设置的匹配代价矢量特征的距离控制参数、颜色距离控制参数、几何距离控制参数,在一实施例中,用户可以根据经验进行设置。两个像素点的颜色距离Δcpq、几何距离Δgpq可以采用现有或未来出现的方法来计算。不妨以CIELab颜色空间为例,计算像素点p和像素点q的颜色距离Δcpq,可以通过公式来计算:Δcpq=|Lp-Lq|+|ap-aq|+|bp-bq|,或者,通过公式来计算:Lp、ap、bp分别表示像素点p在CIELab颜色空间的L、a、b的颜色分量,Lq、aq、bq分别表示像素点q在CIELab颜色空间的L、a、b的颜色分量。计算像素点p和像素点q的几何距离Δgpq可以通过公式来计算:Δgpq=|xp-xq|+|yp-yq|,或者,通过公式来计算:其中(xp,yp)表示像素点p的空间坐标,(xq,yq)表示像素点q的空间坐标。

S1400:计算累积匹配代价函数。在一实施例中,计算累积匹配代价函数包括通过以下公式来计算累积匹配代价函数

其中,像素点p、像素点q分别为待匹配的图像中的待匹配的像素点、该待匹配的像素点的支持窗内的像素点,Np表示所述待匹配的图像中像素点q的支持窗;像素点分别为另一幅图像中与像素点p视差为d的像素点、该像素点的支持窗内的像素点,表示所述另一幅图像中像素点的支持窗。如图2所示,一般地,像素点p、像素点q为待匹配的图像(例如两个视点的图像中的左视图)中的像素点,像素点为另一幅图像(例如两个视点的图像中的右视图)中的像素点,像素点p和像素点的视差为d,像素点q相对像素点p的空间位置,与像素点相对像素点的空间位置,是相同的。

w(p,q)表示像素点q对像素点p的支持权重,表示像素点对像素点的支持权重;表示像素点q与像素点的匹配代价函数,通过这两个像素点q与像素点的颜色、梯度或匹配代价矢量特征中的一者或多者来计算,例如通过计算两个像素点的颜色距离、梯度差和/或匹配代价矢量特征的距离来计算,当通过颜色距离(例如RGB颜色空间的颜色距离)、梯度差和/或匹配代价矢量特征的距离等中的多者来计算两个像素点的匹配代价函时,可以计算通过加权平均或分配相应权重系数的方式来计算匹配代价函。

S1500:根据所述累积匹配代价函数得到像素点p的匹配点和/或视差。例如,步骤S1500包括:求解一视差dp;其中Sd={dmin,...,dmax}为所有可能的视差的集合。换句说话,根据赢者取全的机制,视差为这样就可以得到一个视点的图像中像素点p在另一个视点的图像中的视差以及匹配点。进一步地,可以计算像素点p的深度信息。

请参照图3,本发明一实施例中还公开了一种双目图像的自适应权重立体匹配系统,其包括存储器1100和处理器1200。存储器1100用于存储程序;处理器1200用于通过执行上述存储器存储的程序以实现上述任一实施例所述的双目图像的自适应权重立体匹配方法。

本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。

以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1