CN104240219B - 配置视差值的方法和*** - Google Patents
配置视差值的方法和*** Download PDFInfo
- Publication number
- CN104240219B CN104240219B CN201310233783.3A CN201310233783A CN104240219B CN 104240219 B CN104240219 B CN 104240219B CN 201310233783 A CN201310233783 A CN 201310233783A CN 104240219 B CN104240219 B CN 104240219B
- Authority
- CN
- China
- Prior art keywords
- parallax
- region
- parameter
- plane type
- distributed model
- 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.)
- Expired - Fee Related
Links
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了配置视差值的方法和***。在一个实施例中,该方法可以包括:获取参考图像;将获取的参考图像分割为多个区域;对分割得到的多个区域进行分类;基于分类结果为每个区域内的像素分配视差值。根据本发明提供的配置视差值的方法和***,可以更准确地配置视差值,获得准确并且稠密的视差图像。
Description
技术领域
本发明涉及图像处理领域,更具体地涉及配置视差值的方法和***。
背景技术
近年来,立体视觉技术获得广泛关注。立体视觉的基本原理是结合两个(双目)或更多视点的信息,以获得不同视角下同一物体的图像,并利用三角测量原理来计算图像的像素点之间的位置偏差,从而获得物体的立体信息。该立体视觉包括图像获取、摄像机定标、特征提取、立体匹配、深度及内插等处理,其中,通过立体匹配技术得到的视差信息(深度信息)可用来估量摄像机和物体之间的相对距离。这些视差信息可以应用于诸多场合,例如三维电影、机器人、监控、基于三维技术的道路检测、行人检测、自动驾驶、智能车辆控制等等。例如,在智能车辆控制中,基于通过视差信息获得的视差图,可以很容易地检测到路面、白线和栅栏,从而检测包括行人和车辆等目标,以便基于检测结果对车辆进行智能控制。可见,获得鲁棒和准确的视差图在立体视觉中起着重要的作用。
通常,立体匹配技术可以分成两类,一类是基于像素的算法,另一类是基于分割的算法。基于像素的算法单独考虑每个像素。如图1所示,基于像素的算法为像素P和Q单独寻找对应像素,实际上,P和Q均位于路面区域,它们的视差值之间满足某种特定关系。基于像素的算法需要很长的处理时间。
另外一种常用的算法是基于分割的算法。图像分割是基于分割的算法的基本模块,该算法的基本思想是对同一区域块内的所有像素一起进行考虑,即利用区域块内有效像素的视差值来估计每个区域块的视差分布。图2为典型的基于分割的立体匹配算法的***框图,该算法包括对参考图像进行分割,根据参考图像和目标图像计算初始视差值获得初始视差图像,对每个分割的区域块计算视差值从而利用计算的视差值更新初始视差图像来获得视差图像。
例如,题为“Segment based image matching method and system”的美国专利US7330593B2公开了一种图像匹配方法,其中用彩色信息对参考图像进行分割,通过基本的局部立体匹配算法生成一幅初始视差图像,采用平面拟合方法对分割的每个区域进行建模并利用置信传播方法生成最优的视差图。
基于分割的算法在很大程度上解决了基于像素的算法所存在的问题:处理时间过长。但是,基于分割的算法带来一个新问题:在一些区域存在严重错误的视差值。以路面区域为例,如图3所示,根据典型的基于分割的算法获得的路面区域的视差图向右倾斜,存在错误。根据“A Complete U-V-Disparity Study for Stereovision Based3D DrivingEnvironment Analysis”Zhencheng Hu,Francisco Lamosa and Keiichi Uchimura,Department of Computer Science,Kumamoto University,Japan,Graduate School ofScience and Technology,Kumamoto University,Japan,因为对于路面区域来说,每条水平线上的深度值是恒定的,所以对于路面区域的正确的视差图应该是由很多水平线组成。
由此可见,典型的基于分割的立体匹配算法有些盲目,对初始视差图像过于依赖,得到的视差图可能不够准确。如图4所示,如果初始视差图像中有特别多噪声点,就会产生错误的视差图。因此,需要提供能够更准确地配置视差图中的视差值的方法和***。
发明内容
考虑到以上问题,本申请提出了基于分类的视差图配置方法及装置,其利用更加鲁棒的方法获得更加准确的稠密视差图。
根据本发明的一个方面,提供了配置视差值的方法,该方法可以包括:获取参考图像;将获取的参考图像分割为多个区域;对分割得到的多个区域进行分类;基于分类结果为每个区域内的像素分配视差值。
可选地,对分割得到的多个区域进行分类的步骤可以包括:建立不同平面类型的视差分布模型;对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数;基于每个区域的各个参数确定该区域所属于的平面类型。
可选地,基于分类结果为每个区域内的像素分配视差值的步骤可以包括:根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值。
可选地,建立不同平面类型的视差分布模型可以包括:建立与第一平面类型对应的第一视差分布模型;建立与第二平面类型对应的第二视差分布模型;建立与第三平面类型对应的第三视差分布模型。对于分割得到的每个区域计算参数可以包括:对每个区域分别计算与第一视差分布模型对应的第一参数、与第二视差分布模型对应的第二参数以及与第三视差分布模型对应的第三参数。
可选地,基于每个区域的各个参数确定该区域所属于的平面类型的步骤可以包括:如果任意区域的第一参数小于预定阈值并且该第一参数充分小于该区域的第二参数,则确定该区域属于第一平面类型;如果该区域的第二参数小于该预定阈值并且该第二参数充分小于该第一参数,则确定该区域属于第二平面类型;否则,确定该区域属于第三平面类型。可以基于该区域的第三参数设置该预定阈值。
可选地,该方法还可以包括:获取与该参考图像对应的初始视差图。计算与第一视差分布模型对应的第一参数的步骤可以包括:扫描每个区域的每一行像素以从所述初始视差图获得每一行像素的有效视差值的直方图;获得每一行像素的有效视差值的直方图的峰值;按照第一视差分布模型,利用每一行像素的纵坐标和与该直方图峰值对应的初始视差值形成的点对拟合出该区域的第一视差分布表达式;根据该区域的第一视差分布表达式,计算该区域的第一参数。有效视差值是大于零的视差值
可选地,计算与第二视差分布模型对应的第二参数的步骤可以包括:扫描每个区域的每一列像素点以从所述初始视差图获得每一列像素的有效视差值的直方图;获得每一列像素的有效视差值的直方图的峰值;按照第二视差分布模型,利用每一列像素的横坐标和与直方图峰值对应的视差值形成的点对拟合出该区域的第二视差分布表达式;根据该区域的第二视差分布表达式,计算该区域的第二参数。
可选地,计算与第三视差分布模型对应的第三参数的步骤可以包括:扫描每个区域内的所有像素以从所述初始视差图获得所有像素的有效视差值;按照第三视差分布模型,利用每个区域内具有有效视差值的所有像素的横坐标、纵坐标以及相应的有效视差值拟合出该区域的第三视差分布表达式,根据该区域的第三视差分布表达式,计算该区域的第三参数。
可选地,根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值的步骤可以包括:如果任意区域被分类为第一平面类型,则根据该区域的第一视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值,如果该区域被分类为第二平面类型,则根据该区域的第二视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值,如果该区域被分类为第三平面类型,则根据该区域的第三视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值。
根据本发明的上述实施例,将参考图像划分成多个区域并对它们进行分类,并根据不同的类别采用不同的视差值配置方法,从而能够自适应地选择该平面类型对应的视差值配置方法配置该区域块内像素的视差值,获得更加准确的视差值。
根据本发明的另一方面,提供了配置视差值的***,该***可以包括:获取单元,配置为获取参考图像;分割单元,配置为将获取的参考图像分割为多个区域;分类单元,配置为对分割单元所分割的多个区域进行分类;分配单元,配置为基于分类单元的分类结果为每个区域内的像素分配视差值。
可选地,该分类单元可以通过以下来对多个区域进行分类:建立不同平面类型的视差分布模型;对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数;基于每个区域的各个参数确定该区域所属于的平面类型。
可选地,该分配单元可以通过以下来为每个区域内的像素分配视差值:根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值。
典型的基于分割的立体匹配算法过于盲目,对初始视差图像过于依赖。然而,在根据本发明的实施例的方法和***中,通过对区域分类并与区域所属的类别相应地计算视差值,将已知的场景信息引入到视差计算过程当中,因此根据本发明的实施例的方法更加鲁棒,得到的视差图像更加准确。
附图说明
图1是基于像素的立体匹配算法的示意图。
图2是基于分割的立体匹配算法的示意图。
图3例示路面区域及通过基于分割的方法获得的相应视差图。
图4例示初始视差图中存在过多噪声点的情况下获得的视差图。
图5是本发明的实施例可应用的硬件***的框图。
图6是根据本发明的一个实施例的配置像素的视差值的方法的流程图。
图7是根据本发明的一个实施例的对分割得到的区域分类的方法的流程图。
图8(a)到8(d)是根据本发明的一个实施例的三种平面类型及相应的例子的示意图。
图9是根据本发明的一个实施例的计算第一参数的方法的流程图。
图10是根据本发明的一个实施例的基于第一视差分布模型计算第一参数的示意图。
图11是根据本发明的一个实施例的计算第二参数的方法的流程图。
图12是根据本发明的一个实施例的基于第二视差分布模型计算第二参数的示意图。
图13是根据本发明的一个实施例的计算第三参数的方法的流程图。
图14(a)和14(b)示出通过典型的基于分割的立体匹配算法得到的视差图。
图15(a)和14(b)示出根据本发明的一个实施例得到的视差图。
图16示出根据本发明的一个实施例的配置视差值的***的框图。
具体实施方式
现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但是将理解,不意图将本发明限于所公开的具体实施例。应注意,在此所述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
如上所述,典型的基于分割的方法归于盲目,对于初始视差图像过于依赖,然而,如果已知场景并将其引入到视差计算过程中,则对视差值的配置将更加准确。根据本发明,通过对分割参考图像获得的区域块进行分类,基于区域块的类别而相应地配置视差值,从而获得更加准确的视差图,以下详细描述。
首先参考图5,描述应用于本发明的实施例的硬件***100的框图。
硬件***100包括:立体相机110,用于从两个或更多视点拍摄两个或更多图像;解码器120,用于从立体相机110拍摄的图像中提取与像素相关的图像信息、例如灰度信息、彩色信息等;数字信号处理器130,用于对解码器120输出的各种信息进行数字信号处理;存储器140,与数字信号处理器130耦合,用于存储由数字信号处理器处理130的数据或向数字信号处理器130提供数据;以及与应用相关的其他模块150,用于利用数字信号处理器130处理的结果进行进一步的动作。
根据本发明的实施例的方法和***可以实现在图5所示的数字信号处理器130中。当然,这仅仅是一个例子,其实现方式不限于此。
以下参考图6的流程图描述根据本发明的一个实施例的配置像素的视差值的方法。
如图6所示,配置视差值的方法600可以包括:
步骤601,获取参考图像;
步骤602,将获取的参考图像分割为多个区域;
步骤603,对分割得到的多个区域进行分类;
步骤604,基于分类结果为每个区域内的像素分配视差值。
在步骤601,可以通过任何已知的方法获得目标场景的参考图像。例如,通过双目相机,可以获得目标场景的左眼图像和右眼图像,可以取其中的任意一个、例如左眼图像作为参考图像,则右眼图像作为目标图像,或反之亦然。当然,这仅仅是例子,获取参考图像的方法不限于此。
可选地,在一个实施例中,在步骤601中输入参考图像和目标图像,并由此获取相应的初始视差图像。或者,在另一实施例中,输入参考图像和相应的初始视差图像。可以通过本领域中已知的方法、例如立体匹配算法来获取初始视差图,当然,获取初始视差图的方法不限于此。
在步骤602,分割参考图像。图像分割是将一幅图像划分成若干区域的过程,每个区域内的像素具有一些共同的或者相似的特征。特征对于图像分割算法而言是至关重要的,如果用彩色(灰度)信息作为特征,则分割的每个区域内的像素具有几乎相同的彩色(灰度)值。基于均值漂移的算法是目前常用的图像分割算法,彩色(灰度)特征是常用的特征。例如,在Yizong Cheng的“Mean Shift,Mode Seeking,and Clustering”IEEETRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE,VOL.17,NO.8,AUGUST1995中,详细描述了均值漂移算法及其应用,其全文被引用合并于此作为参考。以下以彩色(灰度)特征作为图像分割特征举例说明图像分割的过程,然而,图像分割特征的选取不限于彩色特征或灰度特征,也可以采用本领域中已知的其他特征。
首先,定义图像分割特征,考虑像素的彩色(灰度)信息,该图像分割特征可以表示为:(IR,IG,IB)或者I,其中,(IR,IG,IB)和I分别为像素(x,y)的R、G、B彩色值和灰度值。然后,在特征空间中通过均值漂移过程为每个像素寻找收敛模式。收敛模式是特征空间中的一个点,漂移至该点后特征值不再变化。根据由此得到的收敛模式,对所有像素进行聚类,从而获得多个符合预定特征(例如,具有共同的或者相似的特征)的像素区域。在图2中,示出了参考图像被分割为多个区域的分割结果。
当然,可以采用任何基本的图像分割算法来对参考图像进行分割。在这里,假设实际场景由许多平面组成,分割得到的每个区域块对应于实际场景中的一个平面。经此分割后,输出与分割结果相关的信息,该信息可以包括但不限于以下中的一个或多个:分割的区域的数目、每个区域内像素的数目、整个参考图像的标记图像等。这些与分割结果相关的信息将在后续步骤中使用。
在步骤603,将分割得到的各个区域分类。参考图7的流程图描述根据本发明的一个实施例的对分割得到的区域分类的示例方法700。
如图7所示,分类方法700可以包括:
步骤701,建立不同平面类型的视差分布模型;
步骤702,对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数;
步骤703,基于在步骤702中获得的每个区域的各个参数确定该区域所属于的平面类型。
通常,可以将实际场景中的平面分成三类。在如图8所示的世界坐标***(Xw,Yw,Zw)的情况下,这三类平面分别是:绕Xw轴旋转的第一类平面,如图8(a)所示,属于第一类的所有平面具有相同的视差分布模式;绕Yw轴旋转的第二类平面,如图8(b)所示,属于第二类的所有平面具有相同的视差分布模式;绕Zw轴旋转的第三类平面,如图8(c)所示,属于第三类的所有平面具有相同的视差分布模式,其中在该图8中的该坐标***中的(xr,yr)为参考图像的图像坐标***,(xl,yl)为目标图像的图像坐标***。
图8(d)给出了三种类别的平面在实际场景中的例子。对于图8(d)所示的图像,其图像坐标系按照下面的方式建立:图像左上角的像素点为坐标原点,水平向右为X轴正方向,竖直向下为Y轴正方向;相应的世界坐标系为:Xw轴正方向水平向右,Yw轴正方向竖直向下,Zw轴正方向垂直纸面向里。如图8(d)所示,路面、车辆后背板平面、大楼的正面属于第一类平面,大楼的侧面属于第二类平面,人行道旁侧立的倾斜墙壁面属于第三类平面。图8(d)中用于标示三种平面类型的矩形框仅仅是示意性的,并不是对参考图像进行分割的实际结果,当然,分割后的区域不限于矩形。
以下描述在步骤701中建立视差分布模型的一种示例的实现方式。在ZhenchengHu等人的“A Complete U-V-Disparity Study for Stereovision Based 3D DrivingEnvironment Analysis”,Department of Computer Science,Kumamoto University,Japan,Graduate School of Science and Technology,Kumamoto University,Japan中,给出了这三种平面类型的平面方程以及视差分布方程,其全文被引用合并于此作为参考。对于第一类平面,其平面方程Zw以及视差分布方程d(x,y)分别由以下公式(1)和公式(2)表示:
Zw=c1Yw+c2(c2≠0) 公式(1)
公式(2)
其中,(x0,y0)是图像中心点的坐标,B和f为摄像机参数:B是基线距,表示双目视觉***中两个摄像机光心之间的距离;f是摄像机焦距长度。
可能存在一种特殊的平面,其既属于第一类平面,也属于第二类平面,根据Zhencheng Hu等人的理论,该平面的平面方程Yw以及视差分布方程d(x,y)分别由以下公式(3)和公式(4)表示:
公式(3)
Yw=c(c≠0) 公式(4)
在这里,将该平面归入第一类平面。从而,该第一类平面的视差分布方程d(x,y)可以用下面的通用表达式(5)来表示:
d(x,y)=C1y+C2 公式(5)
根据Zhencheng Hu等人的理论,第二类平面的平面方程Zw以及视差分布方程d(x,y)分别由以下公式(6)和公式(7)表示:
Zw=c1Xw+c2(c1≠0,c2≠0) 公式(6)
公式(7)
其中,同上,(x0,y0)为图像中心点的坐标,B和f为摄像机参数:B是基线距,表示双目视觉***中两个摄像机光心之间的距离;f是摄像机焦距长度。
还可能存在一种特殊的平面,其既属于第二类平面,也属于第三类平面,根据Zhencheng Hu等人的理论,此平面的平面方程Xw以及视差分布方程d(x,y)分别由以下公式(8)和公式(9)表示:
Xw=c(c≠0) 公式(8)
公式(9)
在这里,将该平面归入第二类平面。该第二类平面的视差分布方程d(x,y)可以用下面的通用表达式(10)来表示:
d(x,y)=C1x+C2(C1≠0) 公式(10)
根据Zhencheng Hu等人的理论,第三类平面的平面方程Yw以及视差分布方程d(x,y)分别由以下公式(11)和公式(12)表示:
Yw=c1Xw+c2(c1≠0,c2≠0) 公式(11)
公式(12)
其中,同上,(x0,y0)为图像中心点的坐标,B和f为摄像机参数:B是基线距,表示双目视觉***中两个摄像机光心之间的距离;f是摄像机焦距长度。
从而,第三类平面的视差分布方程d(x,y)可以用下面的通用表达式(13)来表示:
d(x,y)=C1x+C2y+C3(C1≠0,C2≠0) 公式(13)
接下来,在步骤702,基于在步骤701中建立的第一、第二和第三平面类型的视差分布方程d(x,y)的通用表达式(5)、(10)以及(13),即第一、第二和第三类平面的视差分布模型,对在步骤602中分割得到的多个区域的每个区域分别计算对应于每个类别的视差分布模型的参数。
具体地,在一个实施例中,对于分割得到的任意一个区域S,分别按照第一类平面的视差分布模型(以下称为第一视差分布模型)计算其参数(以下称为第一参数),按照第二类平面的视差分布模型(以下称为第二视差分布模型)计算其参数(以下称为第二参数),按照第三类平面的视差分布模型(以下称为第三视差分布模型)计算其参数(以下称为第三参数)。
例如,如果区域S属于第一类平面,那么其视差分布满足第一视差分布模型:d(x,y)=C1y+C2,即S的每一行具有相同的视差值,而在实际中,S的每一行不一定具有严格唯一的初始视差值,因此,可以统计一个直方图,认为直方图峰值对应的视差值即为该行的唯一的正确的视差值。
假设该区域S的高度为h,即有h行像素,则基于在步骤601中获得的初始视差图中的各个像素的视差值,按照第一视差分布模型(公式(5))来计算S的第一参数。
具体地,参考图9的流程图描述根据本发明的一个实施例的计算第一参数的示例方法900。在该实施例中,基于在步骤601中获得的初始视差图中的每个像素点的视差值,按照第一视差分布模型计算该第一参数。
如图9所示,该第一参数计算方法900可以包括:
步骤901,扫描区域S的每一行像素以从初始视差图获得每行像素的有效视差值(大于零的视差值)的直方图Hi,d,其中i表示行数,i=0,1,...,h-1,d=1,2,...,dmax,dmax是可能出现的最大视差值,是一个固定值。
在步骤902,获得每一行的有效视差值的直方图的峰值。同时,可以收集与该峰值相应的索引,即出现次数最多的视差值:
公式(14)
在步骤903,按照第一视差分布模型,利用每一行像素的纵坐标yi和与直方图峰值对应的视差值di形成的点对(yi,di)拟合出该区域的第一视差分布表达式,其中i=0,1,...,h-1。例如,按照以上所述的第一视差分布模型d(x,y)=C1y+C2,可以拟合出一条直线的方程,作为该区域S的第一视差分布表达式。例如,拟合的直线方程可以如公式(15)所示:
d(x,y)=ay+b 公式(15)
其中通过对点对(yi,di)的拟合,可以确定参数a,b的值。
在步骤904,基于在步骤903中得到的该区域S的第一视差分布表达式计算第一参数。例如,假设区域S内有n个有效点(初始视差值大于零的点)(Xk,Yk,dk),其中dk>0,k=0,1,...,n-1,则将区域S的第一参数E1定义为如以下表达式(16)所示:
公式(16)
图10示出了根据本发明的一个实施例的基于第一视差分布模型计算第一参数的示意图。如果区域S属于第一类平面,则根据以上表达式(16)对区域S中的有效像素点计算得到的第一参数E1的值应该非常小。
需要注意的是,在此实施例中,并不处理区域S中所有的像素,而是只处理初始视差值大于零的像素,并认为这些像素是有效的像素点。
对于第二参数,类似地,基于在步骤601中获得的初始视差图中的各个像素的视差值,对于每个区域按照第二视差分布模型(公式(10))来计算第二参数。假设该区域S的宽度为l,即有l列像素,图11的流程图示出了根据本发明的一个实施例的计算第二参数的示例方法1100。方法1100的基本原理与图9所示的方法900类似,只是在此实施例中按列扫描区域S。
例如,如图11所示,第二参数计算方法1100可以包括:
步骤1101,扫描每个区域S的每一列像素并分别统计其有效视差值(大于零的视差值)的直方图Hj,d,其中j表示列数,并且j=0,1,2,...,l-1;
步骤1102,寻找每一列像素的直方图的峰值。另外,可以收集与该峰值相对应的索引,即出现次数最多的视差值:
公式(17)
步骤1103,按照第二视差分布模型,利用每一列像素的横坐标xj和直方图峰值对应的视差值dj形成的点对(xj,dj)拟合出第二视差分布表达式,其中j=0,1,2,...,l-1。例如,按照以上所述的第二视差分布模型d(x,y)=C1x+C2(C1≠0),可以拟合出一条直线方程,作为区域S的第二视差分布表达式,通过拟合得到的直线方程可以如公式(18)所示:
d(x,y)=ex+f 公式(18)
其中通过对点对(xj,dj)的拟合,可以确定参数e,f的值。
步骤1104,基于在步骤1103中得到的该区域S的第二视差分布表达式计算第二参数。假设区域S内有n个有效点(初始视差值大于零的点)(Xk,Yk,dk),其中dk>0,k=0,1,…,n-1,由此将区域S的第二参数E2定义为如以下表达式(19)所示:
公式(19)
图12示出了基于第二视差分布模型计算第二参数的示意图。如果区域块S属于第二类平面,则根据以上表达式(19)对区域S中的有效像素点计算得到的第二参数E2的值应该非常小。
同样,在此实施例中,并不处理区域S中所有的像素,而是只处理初始视差值大于零的像素,并认为这些像素是有效的像素点。
对于第三参数,基于在步骤601中获得的初始视差图中的各个像素的视差值,对于每个区域按照第三视差分布模型(公式(13))来计算该第三参数。例如,假设区域块S内有n个有效点(初始视差值大于零的点)(Xk,Yk,dk),其中dk>0,k=0,1,...,n-1。图13的流程图示出了根据本发明的一个实施例的计算第三参数的示例方法1300。
如图13所示,第三参数计算方法1300可以包括:
步骤1301,扫描区域S内的所有像素,以获得每个像素的有效视差值;
步骤1302,按照第三视差分布模型,利用区域S内具有有效视差值的所有像素的横坐标Xk、纵坐标Yk和相应的视差值dk拟合该区域的第三视差分布表达式。例如,根据第三类平面的视差分布模型d(x,y)=C1x+C2y+C3(C1≠0,C2≠0)(公式(13)),使用上述这些点利用最小二乘法拟合一个平面,作为该区域的第三视差分布表达式,这个过程等同于最小化下面的表达式(20):
公式(20)
为最小化S,应该使得成立,其中p=1,2,3,这等同于下面的表达式(21)和(22)成立:
公式(21)
公式(22)
其中,a1,a2和a3通过矩阵运算得到,进而得到如下的平面方程(23),作为区域S的第三视差分布表达式:
d(x,y)=a1x+a2y+a3 公式(23)
步骤1303,基于在步骤1302中得到的该区域S的第三视差分布表达式计算第三参数。将区域S的第三参数E3定义如下表达式(24):
公式(24)
同理,如果区域块S属于第三类平面,则根据以上表达式(24)对区域S中的有效像素点计算得到的第三参数E3的值应该非常小。而且,同样在此实施例中,并不处理区域S中所有的像素,而是只处理初始视差值大于零的像素,并认为这些像素是有效的像素点。
至此,基于与第一类、第二类和第三类平面对应的第一、第二和第三视差分布模型估算出参考图像中的任意区域S的第一、第二和第三参数E1,E2,E3。
返回图7,在步骤703,基于在步骤702中计算出的区域S的上述第一、第二和第三参数E1,E2,E3,确定该区域S所属于的平面类型。
在一个实施例中,定义一个判别函数如下:
其中,T和t均为预定阈值,如果x小于阈值T并且x与y相比足够小,则函数G的值为1,否则,函数值为0。
然后,按照下面的方式对区域块S进行分类:
根据最小二乘法的性质可知,E3=min(E1,E2,E3),因此,我们无法直接利用E3来进行分类,而是只利用E1和E2来进行分类,并基于E3来设置T的取值。例如,在一个实施例中,可以取T=1.2E3,并将t取为0.8,也就是说,如果则认为x与y相比足够小。当然,这仅仅是为了举例说明,本领域技术人员完全可以根据实际需要而对T和t取任何其他适当的值。
因此,如果E1小于预定阈值T,并且E1比E2足够小,则将区域S分类为第一类平面;如果E2小于预定阈值T,并且E2比E1足够小,则将区域S分类为第二类平面;如果前面两个条件都不满足,则将区域块S分类为第三类平面。
从而,可以基于估计出的区域S的上述第一、第二和第三参数E1,E2,E3,确定该区域S所属于的平面类型。
应该注意,如果在步骤602中对参考图像的分割不够准确,区域S中的一部分属于一种平面类型,另外一部分属于另一种平面类型,例如,一部分属于第一类平面,另外一部分属于第二类平面,那么在对区域S进行分类时,其既不满足第一类平面的条件,也不满足第二类平面的条件,所以区域S将被分类到第三类平面。同理,如果区域S包含所有的三种平面类型,区域S也将被分类到第三类平面。也就是说,由第三类平面来容纳不符合预定规则的区域,比如包含两种及以上平面类型的区域。
因此,为了更加准确地对平面进行分类,在实际应用中,在分割参考图像时,保证分割处于过分割状态,即分割得到的区域块不能过大,由此来保证每个区域块对应实际场景中的一个平面,尽量避免一个区域包含两种及以上平面类型的情况发生。这可以通过设置分割时采用的预定规则来实现,例如,在一个实施例中,可以将分割特征设置得更严格,比如将具有相同的彩色特征的像素点划分为一个区域。当然,这不是要求的。本领域技术人员可以根据实际需要适当地设置分割特征。
当然,对分割的区域进行分类的方法不限于以上公开的实施例,仅仅为了示例的目的而描述以上实施例以便本领域技术人员可以更好地理解本发明,本领域技术人员在实际应用中可以采取符合本发明的精神的任何其他分类方法,也可以与以上公开不同地设置除第一、第二和第三参数外的其他参数值来进行平面类型判定。
返回图6,在步骤604,基于步骤603中的分类结果为每个区域内的像素分配视差值。例如,可以基于所确定的区域S的平面类型相应地为每个区域内的像素分配视差值。在一个实施例中,在获得步骤603中的所有区域的分类结果后,可以根据每个区域所属的平面类型,利用相应的视差分布表达式来计算视差值。
如果S被分类为第一类平面,则根据公式(15)的第一视差分布表达式d(x,y)=ay+b来计算区域S中的像素点的视差值,其中(x,y)∈S;
如果S被分类为第二类平面,则根据公式(18)的第二视差分布表达式d(x,y)=ex+f来计算区域S中的像素点的视差值,其中(x,y)∈S;
如果S被分类为第三类平面,则根据公式(23)的第三视差分布表达式d(x,y)=a1x+a2y+a3来计算区域S中的像素点的视差值,其中(x,y)∈S。
在该实施例中,所有参数a,b,e,f,a1,a2,a3均已在步骤603中确定。具体地,在步骤903中,已经确定了a,b,在步骤1103中,已经确定了e,f,在步骤1302中已经确定了a1,a2和a3。因此,对于已经确定了平面类型的任意区域S,可以通过与该平面类型对应的视差分布模型来计算该区域中的像素的视差值。
从而,可以将所计算的视差值分配给参考图像的每个区域的对应像素点,以更新或替换初始视差图中的相应初始视差值,获得与该参考图像对应的视差图。
由于典型的基于分割的立体匹配算法过于盲目,对初始视差图像过于依赖,因此通常得到的视差图在某些区域存在错误。然而,根据本发明的此实施例的配置视差值的方法,通过将参考图像分割为多个区域并对多个区域进行分类,可以基于区域的类别相应地配置每个区域内的像素的视差值。由于本发明的此实施例基于分割的区域所属的类别而对属于不同类别的区域采用不同的视差值配置方法,所以更够更准确地配置视差值。
在一个实施例中,通过建立平面类型的视差分布模型,对于分割得到的每个区域估计与每个平面类型的视差分布模型对应的参数,从而可以基于每个区域的各个参数确定该区域所属于的平面类型。因为依据视差分布模型对分割得到的区域块进行分类,利用得到的准确的视差分布模型来配置视差值,因此,得到的视差图更加准确。
图14示出了通过典型的基于分割的立体匹配算法得到的视差图,图15示出通过根据此实施例的方法得到的视差图。从图14中可以看出,采用典型的基于分割的立体匹配算法得到的视差图中某些区域存在的错误,而这些错误在根据本实施例的方法得到的视差图中得以改正。以路面区域为例,正确的视差图应该是由很多水平线组成,对比图14(b)和图15(b),图14(b)中所示的视差图是错误的,而图15(b)所示的视差图是正确的。根据本实施例的方法得到的新视差图更加准确和鲁棒,证明根据本实施例的视差值配置方法非常有效。
根据本发明的另一实施例,提供了配置视差值的***。图16示出了根据本发明的另一实施例的配置视差值的***1600的框图。如图16所示,***1600可以包括:获取单元1610,配置为获取参考图像;分割单元1620,配置为将参考图像分割为多个区域;分类单元1630,配置为对分割单元1620所分割的多个区域进行分类;分配单元1640,配置为基于分类单元1630的分类结果为每个区域内的像素分配视差值。
在一个实施例中,该分类单元1630可以通过以下来对多个区域进行分类:建立平面类型的视差分布模型;对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数;基于每个区域的各个参数确定该区域所属于的平面类型。
在一个实施例中,该分配单元1640可以通过以下来为每个区域内的像素分配视差值:根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值。
由此,在根据本发明的实施例的方法和***中,通过对区域分类并根据区域所属的类别相应地计算视差值,将已知的场景信息引入到视差计算过程当中,因此根据本发明的实施例的方法更加鲁棒,得到的视差图像更加准确。
本公开中涉及的器件、装置、设备、***的方框图仅作为例示性的例子,并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、***。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
本公开中的步骤流程图以及以上方法描述仅作为例示性的例子,并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
Claims (7)
1.一种配置视差值的方法,包括:
获取参考图像;
将获取的参考图像分割为多个区域;
对分割得到的多个区域进行分类;
基于分类结果为每个区域内的像素分配视差值,
其中对分割得到的多个区域进行分类的步骤包括:
建立不同平面类型的视差分布模型,其中建立所述不同平面类型的所述视差分布模型包括:
建立与第一平面类型对应的第一视差分布模型;
建立与第二平面类型对应的第二视差分布模型;
建立与第三平面类型对应的第三视差分布模型;
对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数,其中计算所述参数的步骤包括:
对每个区域分别计算与第一视差分布模型对应的第一参数、与第二视差分布模型对应的第二参数以及与第三视差分布模型对应的第三参数;
基于每个区域的各个参数确定该区域所属于的平面类型,其中确定所述平面类型的步骤包括:
如果任意区域的第一参数小于预定阈值并且该第一参数充分小于该区域的第二参数,则确定该区域属于第一平面类型;
如果该区域的第二参数小于该预定阈值并且该第二参数充分小于该第一参数,则确定该区域属于第二平面类型;
否则,确定该区域属于第三平面类型,
其中,基于该区域的第三参数设置该预定阈值。
2.如权利要求1所述的方法,其中基于分类结果为每个区域内的像素分配视差值的步骤包括:根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值。
3.如权利要求1所述的方法,还包括:获取与该参考图像对应的初始视差图,
其中,计算与第一视差分布模型对应的第一参数的步骤包括:
扫描每个区域的每一行像素以从所述初始视差图获得每一行像素的有效视差值的直方图;
获得每一行像素的有效视差值的直方图的峰值;
按照第一视差分布模型,利用每一行像素的纵坐标和与该直方图峰值对应的初始视差值形成的点对拟合出该区域的第一视差分布表达式;
根据该区域的第一视差分布表达式,计算该区域的第一参数,
其中,有效视差值是大于零的视差值。
4.如权利要求3所述的方法,其中,计算与第二视差分布模型对应的第二参数的步骤包括:
扫描每个区域的每一列像素点以从所述初始视差图获得每一列像素的有效视差值的直方图;
获得每一列像素的有效视差值的直方图的峰值;
按照第二视差分布模型,利用每一列像素的横坐标和与直方图峰值对应的视差值形成的点对拟合出该区域的第二视差分布表达式;
根据该区域的第二视差分布表达式,计算该区域的第二参数。
5.如权利要求4所述的方法,其中,计算与第三视差分布模型对应的第三参数的步骤包括:
扫描每个区域内的所有像素以从所述初始视差图获得所有像素的有效视差值;
按照第三视差分布模型,利用每个区域内具有有效视差值的所有像素的横坐标、纵坐标以及相应的有效视差值拟合出该区域的第三视差分布表达式,
根据该区域的第三视差分布表达式,计算该区域的第三参数。
6.如权利要求5所述的方法,根据每个区域所属于的平面类型,利用与该平面类型相对应的视差分布模型来计算该区域内的像素点的视差值的步骤包括:
如果任意区域被分类为第一平面类型,则根据该区域的第一视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值,
如果该区域被分类为第二平面类型,则根据该区域的第二视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值,
如果该区域被分类为第三平面类型,则根据该区域的第三视差分布表达式计算该区域内的像素点的视差值,作为分配给所述像素点的视差值。
7.一种配置视差值的***,包括:
获取单元,配置为获取参考图像;
分割单元,配置为将获取的参考图像分割为多个区域;
分类单元,配置为对分割单元所分割的多个区域进行分类;
分配单元,配置为基于分类单元的分类结果为每个区域内的像素分配视差值,其中,为了对所述多个区域分类,所述分类单元:
建立平面类型的视差分布模型,其中建立所述平面类型的所述视差分布模型包括:
建立与第一平面类型对应的第一视差分布模型;
建立与第二平面类型对应的第二视差分布模型;
建立与第三平面类型对应的第三视差分布模型;
对于分割得到的每个区域计算与每个平面类型的视差分布模型对应的参数,其中计算所述参数的步骤包括:
对每个区域分别计算与第一视差分布模型对应的第一参数、与第二视差分布模型对应的第二参数以及与第三视差分布模型对应的第三参数;
并基于每个区域的各个参数确定该区域所属于的平面类型,其中确定所述平面类型的步骤包括:
如果任意区域的第一参数小于预定阈值并且该第一参数充分小于该区域的第二参数,则确定该区域属于第一平面类型;
如果该区域的第二参数小于该预定阈值并且该第二参数充分小于该第一参数,则确定该区域属于第二平面类型;
否则,确定该区域属于第三平面类型,
其中,基于该区域的第三参数设置该预定阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310233783.3A CN104240219B (zh) | 2013-06-13 | 2013-06-13 | 配置视差值的方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310233783.3A CN104240219B (zh) | 2013-06-13 | 2013-06-13 | 配置视差值的方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104240219A CN104240219A (zh) | 2014-12-24 |
CN104240219B true CN104240219B (zh) | 2017-08-08 |
Family
ID=52228228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310233783.3A Expired - Fee Related CN104240219B (zh) | 2013-06-13 | 2013-06-13 | 配置视差值的方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104240219B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111724431B (zh) * | 2019-03-22 | 2023-08-08 | 北京地平线机器人技术研发有限公司 | 视差图的获得方法、装置和电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262619A (zh) * | 2008-03-30 | 2008-09-10 | 深圳华为通信技术有限公司 | 视差获取方法和装置 |
CN102819843A (zh) * | 2012-08-08 | 2012-12-12 | 天津大学 | 基于边界控制置信传播的立体图像视差估计方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330593B2 (en) * | 2004-06-25 | 2008-02-12 | Stmicroelectronics, Inc. | Segment based image matching method and system |
-
2013
- 2013-06-13 CN CN201310233783.3A patent/CN104240219B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262619A (zh) * | 2008-03-30 | 2008-09-10 | 深圳华为通信技术有限公司 | 视差获取方法和装置 |
CN102819843A (zh) * | 2012-08-08 | 2012-12-12 | 天津大学 | 基于边界控制置信传播的立体图像视差估计方法 |
Non-Patent Citations (3)
Title |
---|
A complete U-V-disparity study for stereovision based 3D driving environment analysis;zhencheng Hu et al;《A complete U-V-disparity study for stereovision based 3D driving environment analysis》;20050616;摘要,第3.3部分,第3.4部分,第4.2部分 * |
Real time obstacle detection in stereovision on non flat road geometry through disparity representation;R Labayrade et al;《Intelligent Vehicle Symposium》;20020621;第2卷;第650页D部分 * |
基于U-V 视差算法的障碍物识别技术研究;上官珺;《兰州工业高等专科学校学报》;20111031;第18卷(第5期);第1部分 * |
Also Published As
Publication number | Publication date |
---|---|
CN104240219A (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6295645B2 (ja) | 物体検出方法及び物体検出装置 | |
CN107392958B (zh) | 一种基于双目立体摄像机确定物体体积的方法及装置 | |
CN108475433B (zh) | 用于大规模确定rgbd相机姿势的方法和*** | |
Okutomi et al. | A simple stereo algorithm to recover precise object boundaries and smooth surfaces | |
JP6131704B2 (ja) | 連続型道路分割体の検知方法及び連続型道路分割体の検知装置 | |
CN109446892B (zh) | 基于深度神经网络的人眼注意力定位方法及*** | |
US9665782B2 (en) | Obstacle detecting apparatus and obstacle detecting method | |
CN105069804B (zh) | 基于智能手机的三维模型扫描重建方法 | |
CN105335955A (zh) | 对象检测方法和对象检测装置 | |
CN106600650A (zh) | 一种基于深度学习的双目视觉深度信息获取方法 | |
US20120230580A1 (en) | Analysis of stereoscopic images | |
CN106530336B (zh) | 基于色彩信息和图割理论的立体匹配方法 | |
CN106033614B (zh) | 一种强视差下的移动相机运动目标检测方法 | |
CN101610425A (zh) | 一种评测立体图像质量的方法和装置 | |
JP2018088151A (ja) | 境界線推定装置 | |
CN108510529A (zh) | 一种基于自适应权值的图割立体匹配方法 | |
US20160232705A1 (en) | Method for 3D Scene Reconstruction with Cross-Constrained Line Matching | |
CN106778660B (zh) | 一种人脸姿态校正方法及装置 | |
CN104537627B (zh) | 一种深度图像的后处理方法 | |
CN104240219B (zh) | 配置视差值的方法和*** | |
Stefańczyk et al. | Multimodal segmentation of dense depth maps and associated color information | |
CN103955886A (zh) | 一种基于图论和灭点检测的2d-3d图像转换方法 | |
CN104123715B (zh) | 配置视差值的方法和*** | |
CN103942810B (zh) | 一种基于改进双向动态规划的立体匹配方法 | |
CN107798703A (zh) | 一种用于增强现实的实时图像叠加方法以及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170808 |