CN102607535B - 一种利用视差空间集束调整的高精度实时立体视觉定位方法 - Google Patents

一种利用视差空间集束调整的高精度实时立体视觉定位方法 Download PDF

Info

Publication number
CN102607535B
CN102607535B CN201210026463.6A CN201210026463A CN102607535B CN 102607535 B CN102607535 B CN 102607535B CN 201210026463 A CN201210026463 A CN 201210026463A CN 102607535 B CN102607535 B CN 102607535B
Authority
CN
China
Prior art keywords
frame
image
camera
present frame
parameter
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
CN201210026463.6A
Other languages
English (en)
Other versions
CN102607535A (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.)
Huzhou University
Original Assignee
Huzhou University
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 Huzhou University filed Critical Huzhou University
Priority to CN201210026463.6A priority Critical patent/CN102607535B/zh
Publication of CN102607535A publication Critical patent/CN102607535A/zh
Application granted granted Critical
Publication of CN102607535B publication Critical patent/CN102607535B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提出了一种利用视差空间集束调整的高精度实时立体视觉定位方法。本发明仅利用立体相机得到的视频流进行移动机器人的导航定位,具有完全的自主性;本发明利用U-SURF描述符进行特征匹配,对运动过程中出现的光照变化、运动模糊、大的旋转和尺度变换具有较强的鲁棒性;本发明利用视差空间集束调整优化方法使自主导航车在长距离行进下也能够进行精度实时的定位,其具有对优化初始值依赖程度低,收敛速度快,数值稳定性高等优点,与利用集束调整的立体视觉定位方法相比,定位精度更高,速度更快。本发明整个立体视觉定位方法计算速度快,可在线实时运行。

Description

一种利用视差空间集束调整的高精度实时立体视觉定位方法
技术领域
本发明属于计算机视觉自主导航技术领域,涉及一种基于视差空间集束调整的高精度实时立体视觉定位方法,可以应用于自主移动机器人、智能车辆等领域。
背景技术
在未知环境中自主导航是各种移动机器人或智能车应用的关键任务之一。机器人在其长距离漫游过程中需要实时地获得自身的定位信息。目前,由于视觉传感器的性价比日益提高以及视觉计算的发展,基于视觉的导航定位方法正开始广泛运用于各个相关领域。视觉导航定位方法依赖硬件设备少、对体积、功耗、载荷等要求低,适用于各种复杂未知环境,并能够填补GPS卫星定位的盲区,有效纠正轮式里程计和惯性导航的累计误差。因此,采用视觉定位方法已经成为机器人自主导航的必然趋势。
实时立体视觉定位算法一般利用二帧之间的特征匹配信息进行运动估计,对运动估计参数进行级联计算出摄像机定位信息,这种方法使小的运动估计误差不断积累,从而导致长距离行进下定位精度不高。
经对现有技术的文献检索发现,E.Mouragnon等人于2006年《2006 Proceedings of theIEEE Conference on Computer Vision and Pattern Recognition》上发表的论文“Real-TimeLocalization and 3D Reconstruction”以及N.Sunderhauf等人于2006年《2006 Proceedings ofTowards Autonomous Robotic Systems》上发表的论文“Towards Using Bundle Adjustment forRobust Stereo Odometry in Outdoor Terrain”提出了利用集束调整进行实时视觉定位。集束调整采用公共坐标系统同时优化3D点和摄像机位姿参数,由于其可以利用多帧之间的特征匹配信息,所以作为最后一步优化步骤可大大提高立体视觉定位的精度。但集束调整优化方法对初始值依赖太大,由于远距离特征点或长的运动序列引起的弱结构会造成收敛速度慢或收敛发散等数值稳定性低的缺点。
发明内容
本发明的目的在于克服现有技术中的不足和缺点,提出一种利用视差空间集束调整的高精度实时立体视觉定位方法。相对于集束调整,由于视差空间集束调整采用视差空间特征点投影约束和相对坐标表达,所以其参数优化的数值稳定性高,收敛速度快,对初始值依赖小,鲁棒性高,从而使自主导航车在长距离行进下也能够进行精度实时的定位。为此,本发明采用以下技术方案,其步骤如下:
步骤一、对视频流当前帧的立体图像对进行极线校正,视频流的第一帧选为起点帧;视频流由立体相机的摄像头拍摄形成;
步骤二、提取第一图像的CenSurE特征和U-SURF描述符,所述第一图像为所述立体图像对中的左图像和右图像之一;
步骤三、采用SAD区域匹配方法沿第二图像水平方向极线进行一维搜索得到第一图像CenSurE特征对应的图像坐标,从而得到特征点的3D坐标;所述第二图像为所述立体图像对中的左图像和右图像之另一;所述特征点为摄像头拍摄的同一场景图像关键点,具体反映在立体图像第一图像CenSurE特征和第二图像对应图像坐标;
若当前帧为起点帧,则将当前帧的下一帧作为当前帧,重复步骤一至三的处理步骤;否则,对所述当前帧再进行步骤四和五;
步骤四、对当前帧和前一帧立体图像的特征点集进行一一匹配;
步骤五、采用RANSAC算法和2D-3D位姿估计方法得到匹配内点和拍摄当前帧时的所述摄像头运动参数,包括相对位置、相对姿态;所述相对位置为平移参数t,所述相对姿态为旋转参数R;
步骤六、如步骤五所述的当前帧与起点帧之间的帧数、起点帧和当前帧的总和小于N,将步骤五所述的当前帧的下一帧作为当前帧,对所述当前帧进行步骤一至五的处理,否者,进行步骤七和步骤八的处理;N=2*n+1,n为大于等于1的自然数;
步骤七、利用当前帧前的N帧中的两两相邻帧的匹配内点之间的视差空间投影约束,采用视差空间集束调整对拍摄当前帧的前n帧摄像头的运动参数进行迭代优化;
如步骤七所述的当前帧与起点帧之间的帧数等于N,则所述迭代优化的初值为当前帧前的n帧的摄像头运动参数;否则,所述迭代优化的初值为当前帧前的n-1帧在视差空间集束调整后的摄像头运动参数和当前帧运动参数;
步骤八、利用拍摄所述当前帧前第1帧时摄像头的全局位置姿态参数和拍摄所述当前帧时摄像头运动参数的迭代优化值,得到拍摄当前帧时摄像头的全局位置姿态参数作为拍摄实时帧时摄像头的全局位置姿态参数,以对摄像头实时立体视觉定位。
在采用上述技术方案的基础上,本发明还可采用以下进一步的技术方案:
在所述步骤一中,采用以下步骤:
利用已标定立体相机的参数,采用极线校正方法对立体图像对进行校正,使立体图像对的左右图像对应的特征点位于同一水平扫描线上,同时得到校正后立体相机基线长度B和焦距f。
在所述步骤二中,采用以下步骤:
(1)、计算得到第一图像的积分图像;
(2)、利用积分图像在每个像素上计算六个尺度的盒子核近似高斯拉普拉斯滤波器响应;
(3)、采用非极大值抑制检测局部极大值得到CenSurE特征,所述CenSurE特征包括其图像坐标(u,v)、尺度s及极大值;
(4)、利用积分图像和CenSurE特征的图像坐标(u,v)和尺度s计算对应的U-SURF描述符。
在所述步骤三中,采用以下步骤:
对第一图像的每个CenSurE特征在第二图像采用简单的SAD立体匹配方法沿水平方向极线进行一维搜索匹配,从而得到第一图像CenSurE特征在第二图像上的对应位置坐标(u2,v),则得到整数视差d=u2-u;采用如下二次函数对视差值进行拟合,从而达到亚象素级视差:
d subpixel = d + C d - 1 - C d + 1 2 ( C d - 1 - 2 C d + C d + 1 ) - - - ( 1 )
Cd为求得的SAD匹配代价, ω = u v d 表示视差空间特征点,由u、v、d可以计算得到特征点的3D坐标X。
在所述步骤四中,采用以下步骤进行匹配:
取当前帧第一图像中的某个特征点U-SURF描述符,与前一帧第一图像中在某个视差范围(-L,L)内的特征点U-SURF描述符计算二者之间的欧式距离,如果最近的欧式距离与次近的欧式距离的比值少于某个比例阀值并且最近邻的距离小于某个阀值时则接受这一对特征点为匹配点,否则拒绝;在匹配过程中只对极大值同为正值或同为负值的CenSurE特征的U-SURF描述符进行匹配;
重复以上步骤,得到至少3对匹配点。
在所述步骤五中,采用以下步骤:
(1)、在步骤四得到的匹配点集中随机采样3对匹配点;
(2)、利用2D-3D位姿估计算法和3对匹配点计算拍摄当前帧时摄像头的运动参数R和t;
(3)、利用该运动参数R和t计算所有匹配点在立体相机上的再投影误差:
|ml-K[RX+t]|<τ,|mr-K[RX+t+(B 0 0)T]|<τ        (2)
其中ml=(u,v)T和mr=(u+d,v)T为当前帧特征点在第一和第二图像中的坐标,K为为摄像头内部参数矩阵;满足(2)式的匹配点则为匹配内点;其中τ为一固定阀值,X为前一帧特征点3D坐标;
(4)、多次重复步骤(1)、(2)、(3),选取匹配内点数最多的计算结果作为最后的匹配内点和拍摄当前帧时的摄像头初始运动参数R和t。
在所述步骤七中,采用以下步骤:
(1)、把旋转矩阵R转化为四元数(q1,q2,q3,q4),其中则q1,q2,q3为独立变量,加上平移参数t=[x y z]T,则相邻二帧之间的运动参数θt=[q1 q2 q3 x y z]T为6维向量;
(2)、利用相邻二帧之间的匹配内点得到最近N帧图像任意帧之间的匹配点,利用Pk,j表示帧j到帧k之间的匹配点数;
(3)、通过拍摄相邻两帧的摄像头之间的的运动参数级联表达得到拍摄任意非相邻帧摄像头之间的运动参数;相邻二帧摄像头之间的运动参数即为拍摄各帧时的摄像头的运动参数;
(4)、采用增量式局部参数更新优化方式对运动参数进行优化,本次优化得到的参数作为下一轮优化的初始值;在当前帧t,仅优化其之前的n帧的运动参数,但包含其之前的N帧的视差空间特征点投影约束,设局部视差空间集束调整的目标函数为F(θ),待优化的运动参数为θ={θt-n+1,...θt},则目标函数表达如下:
F ( θ ) = Σ j = t - N t - 1 Σ k = t - n + 1 , k > j t Σ i = 0 P k , j - 1 ( f k , j , i ( θ ) - ω ~ k , i ) Σ - 1 ( f k , j , i ( θ ) - ω ~ k , i ) T - - - ( 3 )
Figure BDA0000134402110000052
表示特征点i在摄像机帧k上的视差空间真实测量坐标,fk,j,it)表示特征点i在帧j向帧k运动后的再投影视差空间坐标。∑为视差空间特征点的协方差矩阵;
(5)、采用Levenberg-Marquard算法对目标函数F(θ)中的运动参数θ={θt-n+1,...θt}进行非线性迭代优化。
在所述步骤八中,采用以下步骤:
(1)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的旋转参数R和平移参数t、拍摄当前帧前第n帧时摄像头的运动参数θt-n+1计算得到拍摄当前帧前第n帧时摄像头相对于世界坐标系的旋转参数和平移参数;
(2)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的各个旋转参数R和平移参数t、拍摄当前帧前n帧的摄像头运动参数θ={θt-n+1,...θt}计算得到拍摄当前帧时摄像头相对于世界坐标系的旋转参数R和平移参数t;拍摄当前帧时摄像头相对于世界坐标系的旋转参数和平移参数即为立体相机6个自由度的3D定位信息。
由于采用本发明的技术方案,本发明具有的有益效果:(1)、仅利用立体相机得到的视频流进行移动机器人的导航定位,具有完全的自主性。(2)、利用U-SURF描述符进行特征匹配,对运动过程中出现的光照变化、运动模糊、大的旋转和尺度变换具有较强的鲁棒性。(3)、利用视差空间集束调整优化方法使自主导航车在长距离行进下也能够进行精度实时的定位,其具有对优化初始值依赖程度低,收敛速度快,数值稳定性高等优点,与利用集束调整的立体视觉定位方法相比,定位精度更高,速度更快。(4)、整个立体视觉定位方法计算速度快,可在线实时运行。
附图说明
图1是本发明的总体流程图;
图2是当前帧的第一和第二图像立体匹配图;
图3是当前帧与前一帧的特征匹配图;
图4是演示特征点多帧匹配约束的示意图;
图5是演示多帧运动约束的示意图;
图6是演示图2所示视差空间投影函数的雅克比矩阵转置JT的示意图;
图7是增量式调整示意图。
图8是立体定位结果对比图。
具体实施方式:
为了使本发明的技术方案和优点更加清楚,下面结合附图对本发明做进一步的详细描述。本发明的总体流程图如图1所示。按照该流程图所述,步骤如下:
1、立体图像校正:
视频流的第一帧选为起点帧;视频流由立体相机的摄像头拍摄形成;利用已标定立体相机的参数(内参,外参,畸变参数),采用极线校正方法对立体图像对进行校正,使左右图像对应的特征点位于同一水平扫描线上,同时得到校正后立体相机基线长度B和焦距f。极线校正方法采用Bouguet算法。
2、第一图像CenSurE特征和U-SURF描述符提取:
CenSurE特征计算过程如下:
(1)、计算得到第一图像的积分图像;
(2)、利用积分图像在每个像素上计算六个尺度的盒子核近似高斯拉普拉斯滤波器响应;
(3)、采用非极大值抑制检测局部极大值得到CenSurE特征,所述CenSurE特征包括其位置(u,v)、尺度以及极大值;
U-SURF描述符计算过程如下:
(1)、以CenSurE特征点为中心取20s×20s的邻域,将该窗口区域分成4×4的子区域。
(2)、在每个子区域内,计算5s×5s范围内的x和y方向的哈尔小波响应dx、dy,并赋予响应值以高斯权重系数,采样步长为s。
(3)、将每个子区域内的响应值和响应绝对值相加,并用四维描述向量V=(∑dx,∑dy,∑|dx|,∑|dy|)表示子区域,所以,每个特征点的描述符就是一个64维向量;
(4)、将描述符向量归一化,去除光照影响。
3、第一和第二图像立体匹配:
对第一图像的每个CenSurE特征在第二图像采用简单的SAD立体匹配方法沿水平方向极线进行一维搜索匹配,从而得到第一图像CenSurE特征在第二图像上的对应图像坐标(u2,v),则得到整数视差d=u2-u。采用如下二次函数对视差值进行拟合,从而达到亚象素级视差:
d subpixel = d + C d - 1 - C d + 1 2 ( C d - 1 - 2 C d + C d + 1 ) - - - ( 1 )
Cd为求得的SAD匹配代价。 ω = u v d 表示视差空间特征点。,由u、v、d可以计算得到特征点的3D坐标X。图2给出了当前帧的第一和第二图像立体匹配图。
若当前帧为起点帧,则将当前帧的下一帧作为当前帧,重复步骤1至3的处理步骤;否则,对所述当前帧再进行步骤4和5;
4、与前一帧的特征匹配:
取当前帧第一图像中的某个特征点U-SURF描述符,与前一帧第一图像中在某个视差范围(-L,L)内的特征点U-SURF描述符计算二者之间的欧式距离,如果最近的欧式距离与次近的欧式距离的比值少于某个比例阀值并且最近邻的距离小于某个阀值时则接受这一对特征点为匹配点,否则拒绝;在匹配过程中只对极大值同为正值或同为负值的CenSurE特征的U-SURF描述符进行匹配。图3给出了当前帧与前一帧的特征匹配图。
5、计算匹配内点和初始运动参数:
(1)、在上述步骤得到的匹配点集中随机采样3对匹配点;
(2)、利用2D-3D位姿估计算法和3对匹配点计算拍摄当前帧时摄像头的运动参数R和t;
(3)、利用该运动参数R和t计算所有匹配点在立体相机上的再投影误差:|ml-K[RX+t]|<τ,|mr-K[RX+t+(B 0 0)T]|<τ        (2)
其中ml=(u,v)T和mr=(u+d,v)T为当前帧特征点在第一和第二图像中的坐标,K为为摄像头内部参数矩阵;满足(2)式的匹配点则为匹配内点;其中τ为一固定阀值,X为前一帧特征点3D坐标;
(4)、多次重复步骤(1)、(2)、(3),选取匹配内点数最多的计算结果作为最后的匹配内点和拍摄当前帧时的摄像头的初始运动参数R和t。
6、如步骤5所述的当前帧与起点帧之间的帧数(包含起点帧和当前帧)小于N,将步骤5所述的当前帧的下一帧作为当前帧,对所述当前帧进行步骤一至五的处理,否则,进行步骤六和步骤七的处理;N=2*n+1,n为大于等于1的自然数;
7、视差空间集束调整:
(1)、建立视差空间投影函数:
W = ω 1 , 表示视差空间特征点的齐次坐标。设 ω ′ = u ′ v ′ d ′ 为运动后视差空间特征点,则存在下列视差空间投影函数:
u ′ = h 1 T W h 4 T W , v ′ = h 2 T W h 4 T W , d ′ = h 3 T W h 4 T W - - - ( 3 )
其中 H ( R , t ) = f 0 0 0 0 f 0 0 0 0 0 fB 0 0 1 0 R t 0 1 f 0 0 0 0 f 0 0 0 0 0 fB 0 0 1 0 - 1 = h 1 T h 2 T h 3 T h 4 T - - - ( 4 )
(2)、运动参数转换:
把旋转矩阵R转化为四元数(q1,q2,q3,q4),其中
Figure BDA0000134402110000092
则q1,q2,q3为独立变量,加上平移参数t=[x y z]T,则相邻二帧之间的运动参数θt=[q1 q2 q3 x y z]T为6维向量;
(3)、采用相对坐标表达任意帧之间的运动参数:
在特征点匹配时,有许多特征点会同时被两帧以上的立体相机观测到,产生特征点多帧匹配约束,如图2所示。相邻二帧之间的运动参数级联表达得到任意非相邻帧之间的运动参数;设 G j , j + 1 = R j , j + 1 t j , j + 1 0 1 为4×4的齐次坐标矩阵,表示时间j相邻帧之间的运动参数矩阵,则摄像机帧k相对于帧j的运动参数矩阵为:
Gj,k=[Gj,j+1Gj+1,j+2...Gk-1,k]-1                                    (5)
则Hj,k(R,t)=ΓGj,kΓ-1                                             (6)
(6)式中 Γ = f 0 0 0 0 f 0 0 0 0 0 fB 0 0 1 0
由于非相邻帧之间也存在匹配点,从而产生了多帧运动约束,如图3所示。除了连续相邻二帧之间存在运动约束,非相邻帧之间也存在运动约束。图3中,相邻帧之间的运动约束如实线所示,非相邻之间的运动约束如虚线所示。这种匹配点产生的运动约束,可以通过特征点视差空间投影约束联系。
(4)、建立增量式视差空间集束调整的参数优化方程:
采用增量式局部参数更新优化方式对运动参数进行优化,本次优化得到的参数作为下一轮优化的初始值。在当前帧t,仅优化最后n帧的运动参数,但包含最后N帧(N=2*n+1)的视差空间特征点投影约束,图4给出了增量式调整示意图。设局部视差空间集束调整的目标函数为F(θ),待优化的运动参数为θ={θt-n+1,...θt},则目标函数表达如下:
F ( θ ) = Σ j = t - N t - 1 Σ k = t - n + 1 , k > j t Σ i = 0 P k , j - 1 ( f k , j , i ( θ ) - ω ~ k , i ) Σ - 1 ( f k , j , i ( θ ) - ω ~ k , i ) T - - - ( 7 )
Figure BDA0000134402110000102
表示特征点i在摄像机帧k上的视差空间真实测量坐标。fk,j,i(θ)表示特征点i在帧k向帧j运动后的再投影视差空间坐标,如下式:
fk,j,i(θ)=SPproj[Hj,kWj,i]=SPproj[Wk,j,i(θ)]                    (8)
SPproj[]为式(3)的视差空间投影函数。
∑为视差空间特征点的协方差矩阵,如下式:
Σ i = δ 0 0 0 δ 0 0 0 δ d - - - ( 9 )
δ为图像坐标u、v的噪声方差。δd为视差d的噪声方差。δ取值为1,δd取值为0.5。
(5)、基于Levenberg-Marquard算法的运动参数优化:
Figure BDA0000134402110000104
ω ~ = ω ~ t - N + 1,0 ω ~ t - N + 1 , P t - N + 1 , t - N · · · ω ~ t , P t , t - 1 T ,
则式(7)为: F ( θ ) = ( f ( θ ) - ω ~ ) T Σ - 1 ( f ( θ ) - ω ~ ) - - - ( 10 )
采用Levenberg-Marquard算法对目标函数F(θ)中的运动参数θ={θt-n+1,...θt}进行非线性迭代优化。Levenberg-Marquard算法迭代过程如下:
1)、给定初始值θ。如步骤六所述的当前帧与起点帧之间的帧数等于N,则所述迭代优化的初值为当前帧的前n帧运动参数;否则,所述迭代优化的初值为拍摄前一帧视差空间集束调整后的前n-1帧运动参数和当前帧运动参数;
2)、计算 ∂ θ = ( J T Σ - 1 J + λI ) - 1 J T Σ - 1 ( f ( θ ) - ω ~ ) , θ new = θ + ∂ θ .
J为f(θ)的雅克比矩阵:
J = ∂ f ( θ ) ∂ θ = = ∂ f t - N + 1 , t - N , 0 ( θ ) ∂ θ t - n + 1 . . . ∂ f t - N + 1 , t - N , 0 ( θ ) ∂ θ t . . . . . . . . . ∂ f t , t - 1 , P t , t - 1 ( x ) ∂ θ t - n + 1 . . . ∂ f t , t - 1 , P t , t - 1 ( x ) ∂ θ t - - - ( 11 )
∂ f k , j , i ( θ ) ∂ θ c = ∂ Φ ∂ W k , j , i ∂ W k , j , i ∂ θ c , ∂ W k , j , i ∂ θ c = Γ G k , c ∂ G c , c + 1 ∂ θ c G c + 1 , j Γ - 1 W j , i - - - ( 12 )
∂ G c , c + 1 ∂ θ c 为4×4×6的张量。
如图5给出了对应于图2所示视差空间投影函数的雅克比矩阵转置(JT)。
3)、若f(θnew)<f(θ)则转向5);否则进行4)。
4)、若
Figure BDA0000134402110000115
停止计算,输出结果。否则置λ=βλ,θ=θnew,转2)。
5)、若
Figure BDA0000134402110000116
停止计算,输出结果。否则置λ=λ/β,θ=θnew,转2)。参数λ、β、ε分别取0.01、10和0.000001。
8、计算当前帧的3D定位信息:
(1)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的旋转参数R和平移参数t、拍摄当前帧前第n帧时摄像头的运动参数θt-n+1计算得到拍摄当前帧前第n帧时摄像头相对于世界坐标系的旋转参数和平移参数;
(2)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的各个旋转参数R和平移参数t、拍摄当前帧前n帧的摄像头运动参数θ={θt-n+1,...θt}计算得到拍摄当前帧时摄像头相对于世界坐标系的旋转参数R和平移参数t;拍摄当前帧时摄像头相对于世界坐标系的旋转参数和平移参数即为立体相机6个自由度的3D定位信息。
图8给出了立体视觉定位结果对比图,可以看出:利用视差空间集束调整的立体视觉定位方法比利用集束调整的立体视觉定位方法更接近基准路径。

Claims (8)

1.一种利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于它包括以下步骤:
步骤一、对视频流当前帧的立体图像对进行极线校正,视频流的第一帧选为起点帧;视频流由立体相机的摄像头拍摄形成;
步骤二、提取第一图像的CenSurE特征和U-SURF描述符,所述第一图像为所述立体图像对中的左图像和右图像之一;
步骤三、采用SAD区域匹配方法沿第二图像水平方向极线进行一维搜索得到第一图像CenSurE特征对应的图像坐标,从而得到特征点的3D坐标;所述第二图像为所述立体图像对中的左图像和右图像之另一;所述特征点为摄像头拍摄的同一场景图像关键点,具体反映在立体图像第一图像CenSurE特征和第二图像对应图像坐标;
若当前帧为起点帧,则将当前帧的下一帧作为当前帧,重复步骤一至三的处理步骤;否则,对所述当前帧再进行步骤四和五;
步骤四、对当前帧和前一帧立体图像的特征点集进行一一匹配;
步骤五、采用RANSAC算法和2D-3D位姿估计方法得到匹配内点和拍摄当前帧时的所述摄像头运动参数,包括相对位置、相对姿态;所述相对位置为平移参数t,所述相对姿态为旋转参数R;
步骤六、如步骤五所述的当前帧与起点帧之间的帧数加上起点帧以及当前帧后的帧数总和小于N,将步骤五所述的当前帧的下一帧作为当前帧,对所述当前帧进行步骤一至五的处理,否者,进行步骤七和步骤八的处理;N=2*n+1,n为大于等于1的自然数;
步骤七、利用当前帧前的N帧中的两两相邻帧的匹配内点之间的视差空间投影函数约束,采用视差空间集束调整对拍摄当前帧的前n帧摄像头的运动参数进行迭代优化;
如步骤七所述的当前帧与起点帧之间的帧数等于N,则所述迭代优化的初值为当前帧前的n帧的摄像头运动参数;否则,所述迭代优化的初值为当前帧前的n-1帧在视差空间集束调整后的摄像头运动参数和当前帧运动参数;
步骤八、利用拍摄所述当前帧前第1帧时摄像头的全局位置姿态参数和拍摄所述当前帧时摄像头运动参数的迭代优化值,得到拍摄当前帧时摄像头的全局位置姿态参数作为拍摄实时帧时摄像头的全局位置姿态参数,以对摄像头实时立体视觉定位。
2.根据权利要求1所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤一中,采用以下步骤:
利用已标定立体相机的参数,采用极线校正方法对立体图像对进行校正,使立体图像对的左右图像对应的特征点位于同一水平扫描线上,同时得到校正后立体相机基线长度B和焦距f。
3.根据权利要求1所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤二中,采用以下步骤:
(1)、计算得到第一图像的积分图像;
(2)、利用积分图像在每个像素上计算六个尺度的盒子核近似高斯拉普拉斯滤波器响应;
(3)、采用非极大值抑制检测局部极大值得到CenSurE特征,所述CenSurE特征包括其图像坐标(u,v)、尺度s及极大值;
(4)、利用积分图像和CenSurE特征的图像坐标(u,v)和尺度s计算对应的U-SURF描述符。
4.根据权利要求1或3所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤三中,采用以下步骤:
对第一图像的每个CenSurE特征在第二图像采用简单的SAD立体匹配方法沿水平方向极线进行一维搜索匹配,从而得到第一图像CenSurE特征在第二图像上的对应位置坐标(u2,v),则得到整数视差d=u2-u;采用如下二次函数对视差值进行拟合,从而达到亚象素级视差:
d subpixel = d + C d - 1 - C d + 1 2 ( C d - 1 - 2 C d + C d + 1 ) - - - ( 1 )
Cd为求得的SAD匹配代价, ω = u v d 表示视差空间特征点,由u、v、d可以计算得到特征点的3D坐标X。
5.根据权利要求1或3所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤四中,采用以下步骤进行匹配:
取当前帧第一图像中的某个特征点U-SURF描述符,与前一帧第一图像中在某个视差范围(-L,L)内的特征点U-SURF描述符计算二者之间的欧式距离,如果最近的欧式距离与次近的欧式距离的比值少于某个比例阀值并且最近邻的距离小于某个阀值时则接受这一对特征点为匹配点,否则拒绝;在匹配过程中只对极大值同为正值或同为负值的CenSurE特征的U-SURF描述符进行匹配;
重复以上步骤,得到至少3对匹配点。
6.根据权利要求5所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤五中,采用以下步骤:
(1)、在步骤四得到的匹配点集中随机采样3对匹配点;
(2)、利用2D-3D位姿估计算法和3对匹配点计算拍摄当前帧时摄像头的运动参数R和t;
(3)、利用该运动参数R和t计算所有匹配点在立体相机上的再投影误差:
|ml-K[RX+t]|<τ,|mr-K[RX+t+(B 0 0)T]|<τ       (2)
其中ml=(u,v)T和mr=(u+d,v)T为当前帧特征点在第一和第二图像中的坐标,K为为摄像头内部参数矩阵;满足(2)式的匹配点则为匹配内点;其中τ为一固定阀值,X为前一帧特征点3D坐标;
(4)、多次重复步骤(1)、(2)、(3),选取匹配内点数最多的计算结果作为最后的匹配内点和拍摄当前帧时的摄像头初始运动参数R和t。
7.根据权利要求1所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤七中,采用以下步骤:
(1)、把旋转矩阵R转化为四元数(q1,q2,q3,q4),其中
Figure FDA0000380699990000041
则q1,q2,q3为独立变量,加上平移参数t=[x y z]T,则相邻二帧之间的运动参数θt=[q1 q2 q3 x y z]T为6维向量;
(2)、利用相邻二帧之间的匹配内点得到最近N帧图像任意帧之间的匹配点,利用Pk,j表示帧j到帧k之间的匹配点数;
(3)、通过拍摄相邻两帧的摄像头之间的的运动参数级联表达得到拍摄任意非相邻帧摄像头之间的运动参数;相邻二帧摄像头之间的运动参数即为拍摄各帧时的摄像头的运动参数;
(4)、采用增量式局部参数更新优化方式对运动参数进行优化,本次优化得到的参数作为下一轮优化的初始值;在当前帧t,仅优化其之前的n帧的运动参数,但包含其之前的N帧的视差空间特征点投影约束,设局部视差空间集束调整的目标函数为F(θ),待优化的运动参数为θ={θt-n+1,...θt},则目标函数表达如下:
( θ ) = Σ j = t - N t - 1 Σ k = t - n + 1 , k > j t Σ i = 0 P k , j - 1 ( f k , j , i ( θ ) - ω ~ k , i ) Σ - 1 ( f k , j , i ( θ ) - ω ~ k , i ) T - - - ( 3 )
Figure FDA0000380699990000043
表示特征点i在摄像机帧k上的视差空间真实测量坐标,fk,j,it)表示特征点i在帧j向帧k运动后的再投影视差空间坐标。∑为视差空间特征点的协方差矩阵;
(5)、采用Levenberg-Marquard算法对目标函数F(θ)中的运动参数θ={θt-n+1,...θt}进行非线性迭代优化。
8.根据权利要求7所述的利用视差空间集束调整的高精度实时立体视觉定位方法,其特征在于在所述步骤八中,采用以下步骤:
(1)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的旋转参数R和平移参数t、拍摄当前帧前第n帧时摄像头的运动参数θt-n+1计算得到拍摄当前帧前第n帧时摄像头相对于世界坐标系的旋转参数和平移参数;
(2)、利用拍摄当前帧前第n+1帧时摄像头相对于世界坐标系的各个旋转参数R和平移参数t、拍摄当前帧前n帧的摄像头运动参数θ={θt-n+1,...θt}计算得到拍摄当前帧时摄像头相对于世界坐标系的旋转参数R和平移参数t;拍摄当前帧时摄像头相对于世界坐标系的旋转参数和平移参数即为立体相机6个自由度的3D定位信息。
CN201210026463.6A 2012-02-07 2012-02-07 一种利用视差空间集束调整的高精度实时立体视觉定位方法 Active CN102607535B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210026463.6A CN102607535B (zh) 2012-02-07 2012-02-07 一种利用视差空间集束调整的高精度实时立体视觉定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210026463.6A CN102607535B (zh) 2012-02-07 2012-02-07 一种利用视差空间集束调整的高精度实时立体视觉定位方法

Publications (2)

Publication Number Publication Date
CN102607535A CN102607535A (zh) 2012-07-25
CN102607535B true CN102607535B (zh) 2014-01-22

Family

ID=46525139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210026463.6A Active CN102607535B (zh) 2012-02-07 2012-02-07 一种利用视差空间集束调整的高精度实时立体视觉定位方法

Country Status (1)

Country Link
CN (1) CN102607535B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036245B (zh) * 2014-06-10 2018-04-06 电子科技大学 一种基于在线特征点匹配的生物特征识别方法
WO2016141208A1 (en) * 2015-03-04 2016-09-09 Usens, Inc. System and method for immersive and interactive multimedia generation
US9984301B2 (en) * 2015-04-20 2018-05-29 Qualcomm Incorporated Non-matching feature-based visual motion estimation for pose determination
CN106371442B (zh) * 2016-11-02 2019-03-19 河海大学常州校区 一种基于张量积模型变换的移动机器人控制方法
CN108447084B (zh) * 2018-03-17 2022-04-15 北京工业大学 基于orb特征的立体匹配补偿方法
CN108759791B (zh) * 2018-07-26 2020-11-10 中国人民解放军陆军工程大学 基于前方交会的无人机航摄影像自动定位方法
CN109278640A (zh) * 2018-10-12 2019-01-29 北京双髻鲨科技有限公司 一种盲区检测系统和方法
CN109345591B (zh) * 2018-10-12 2021-12-24 北京双髻鲨科技有限公司 一种车辆自身姿态检测方法和装置
CN110426562B (zh) * 2019-06-24 2021-06-04 乐山师范学院 基于分层搜索和距离空间投影的高精度闪电三维定位方法
CN113379803B (zh) * 2021-07-07 2024-02-02 上海谦尊升网络科技有限公司 一种基于视觉图像的定位方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1963390A (zh) * 2005-11-08 2007-05-16 李啸炜 一种便捷高效的三维测量方法
EP2309225A1 (en) * 2008-07-01 2011-04-13 Kabushiki Kaisha TOPCON Position measurement method, position measurement device, and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996254B2 (en) * 2001-06-18 2006-02-07 Microsoft Corporation Incremental motion estimation through local bundle adjustment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1963390A (zh) * 2005-11-08 2007-05-16 李啸炜 一种便捷高效的三维测量方法
EP2309225A1 (en) * 2008-07-01 2011-04-13 Kabushiki Kaisha TOPCON Position measurement method, position measurement device, and program

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
E.mouragnon,etc.Real time localization and 3D reconstruction.《2006 proceeding of the IEEE conference on computer vision and pattern recognition》.2006,第1卷363-370.
niko sunderhauf,etc.Towards using sparse bundle adjustment for robust stereo odometry in out door terrain.《2006 proceeding of towards autonomous robotic systems》.2006,206-213. *
Real time localization and 3D reconstruction;E.mouragnon,etc;《2006 proceeding of the IEEE conference on computer vision and pattern recognition》;20061231;第1卷;363-370 *
吴功伟等.基于视差空间的双目视觉里程计.《传感技术学报》.2007,第20卷(第6期),1432-1436.
基于广义正交迭代算法的立体视觉定位;许允喜等;《光子学报》;20110831;第40卷(第8期);1225-1230 *
基于视差空间的双目视觉里程计;吴功伟等;《传感技术学报》;20070630;第20卷(第6期);1432-1436 *
许允喜等.基于广义正交迭代算法的立体视觉定位.《光子学报》.2011,第40卷(第8期),1225-1230.

Also Published As

Publication number Publication date
CN102607535A (zh) 2012-07-25

Similar Documents

Publication Publication Date Title
CN102607535B (zh) 一种利用视差空间集束调整的高精度实时立体视觉定位方法
CN103761737B (zh) 基于稠密光流的机器人运动估计方法
EP3940421A1 (en) Positioning method and device based on multi-sensor fusion
CN107564061B (zh) 一种基于图像梯度联合优化的双目视觉里程计算方法
CN104732518B (zh) 一种基于智能机器人地面特征的ptam改进方法
CN102682448B (zh) 一种基于双三视张量的立体视觉快速导航定位方法
CN107590827A (zh) 一种基于Kinect的室内移动机器人视觉SLAM方法
CN102519481B (zh) 一种双目视觉里程计实现方法
CN108235725B (zh) 基于云端的轨迹地图生成方法、装置、设备及应用程序
CN109579825B (zh) 基于双目视觉和卷积神经网络的机器人定位系统及方法
CN106595659A (zh) 城市复杂环境下多无人机视觉slam的地图融合方法
CN103983263A (zh) 一种采用迭代扩展卡尔曼滤波与神经网络的惯性/视觉组合导航方法
CN110264528B (zh) 一种鱼眼镜头双目像机快速自标定方法
CN104281148A (zh) 基于双目立体视觉的移动机器人自主导航方法
CN114693754B (zh) 一种基于单目视觉惯导融合的无人机自主定位方法与系统
Tarrio et al. Realtime edge based visual inertial odometry for MAV teleoperation in indoor environments
CN109443355B (zh) 基于自适应高斯pf的视觉-惯性紧耦合组合导航方法
CN109443353B (zh) 基于模糊自适应ickf的视觉-惯性紧耦合组合导航方法
CN115015956A (zh) 一种室内无人车的激光与视觉slam系统
CN114234967A (zh) 一种基于多传感器融合的六足机器人定位方法
CN113155152A (zh) 基于李群滤波的相机与惯性传感器空间关系自标定方法
Kottath et al. Inertia constrained visual odometry for navigational applications
CN117115271A (zh) 无人机飞行过程中的双目相机外参数自标定方法及系统
CN115578417A (zh) 一种基于特征点深度的单目视觉惯性里程计方法
Graeter et al. Momo: Monocular motion estimation on manifolds

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