OutLand1000水下机器人的视觉定位研究

2010-05-30 09:44徐筱龙徐国华
中国机械工程 2010年11期
关键词:单目畸变标定

徐筱龙 徐国华

华中科技大学,武汉,430073

0 引言

水下遥控机器人/水下无人自主机器人(remotely operated vehicles/autonomous underwater vehicle,ROV/AUV)通常携带多种传感器,其中水下相机是较为重要和常用的视觉传感设备。例如,麻省理工学院研发的用来参加 2004年国际AUV竞赛的ORCA-VII型AUV配备了一个指向下方的彩色视频CCD相机,可识别水下多个方形区域并完成规定动作[1];法国的 IFREMER研究开发了视频镶嵌技术,并在2003年ROV“VICTOR6000”的深海6000m 海底火山探测实验中得到应用[2];日本的东京大学工业科学协会在AUV“Tan Tan”上嵌入了一个很完善的光视觉系统,可以检测并识别出不同的水中浮游生物;澳大利亚的 CSIRO ICT Centre在AUV“StarBug”上嵌入了一个基于视觉的运动控制系统,装有朝向下和朝向前的CMOS相机,分别用于运动估计和避碰控制;国内也在水下机器人视觉方面开展了一系列的研究,如汤士华等[3]对7000m载人潜器的视觉定位试验。

单目视觉作为机器视觉的一个重要研究领域,对于水下微小型自主作业型机器人而言,因为能源供应、搭载体积等限制而具有重要的研究意义。本文讨论的视觉定位方法,不借助结构光照、也无外部参照物。在陆地机器人单目视觉研究领域,McLauchlan提出了一种基于VSDF的迭代求解方法[4];Azarbayejani等[5]于1995年提出了一种迭代求解运动参数、结构参数的方法;Davison等[6-9]提出了一种MonoSLAM 方法,其提供的算例及实验室机器人运动控制录像表明该方法具有较强的实用性。

出于简化模型的考虑,目前机器人所携带的相机模型一般不考虑畸变的影响或有极少数仅考虑一阶的畸变(如前文提到的各种算法)。简化模型在大多数情况下是满足精度要求的,但在下述两种情况应对畸变作非线性修正:①当镜头的视野较宽广时,此时模型畸变较明显,不能忽略;②当相机在水下工作时,水流的晃动、浑浊度等都会引起模型畸变,此时相机与目标间的水层相当于是给镜头又加了个透镜,因此应对畸变作非线性修正。

本文的研究目的是通过对OutLand1000型ROV水下相机的标定,获取可靠的数据并分析得到内参数,然后对畸变进行非线性修正,再对陆地机器人采用单目视觉定位算法进行改进,提高水下定位精度。

1 水下相机模型

图1所示为本文的实验对象OutLand1000型ROV,其基本模型信息如下:①Outland1000机器人彩色相机使用了Ex-view CCD芯片;②1/3″CCD;③480线分辨率;④0.01 lux敏感度;⑤3.6mm镜头。

1.1 水下相机非线性模型

理想小孔相机模型是陆地机器人视觉定位方法常采用的一种模型,小孔相机模型下的理想投影变换为

设P w(x w,y w,z w)是三维世界坐标系中物体的三维坐标;P R(x,y,z)是同一点在相机坐标系中的三维坐标;P u(x u,y u)是在理想小孔相机模型下点的正则化坐标,P m(x m,y m)是计算机获得图像坐标。

采用文献[10]中的相机畸变模型,参数间的对应关系如表1所示。

图1 OutLand1000 ROV

表1 本文与文献[10]相机模型参数对照

表1中,f c(f c1,f c2)为焦距;c c(c c1,c c2)为相机光轴与图像平面的交点;αc为倾斜因子;k c为5阶畸变向量,kc=(kc1,kc2,kc3,kc4,kc5)。相机畸变模型可由下式得到:

其中,Pd为相机畸变模型下的正则化坐标。

由上式可得:

1.2 水下相机标定

相机标定方法是指用一个结构已知、精度很高的标定块作为空间参照物,通过空间点和图像点之间的对应关系来建立相机模型参数的约束,然后通过优化算法来求取这些参数。定位用模板(图2)的小方格组成个数为9×7;小方格的尺寸为28mm×28mm。

图2 相机内参数标定试验

本文采用Bouguet方法[11]进行标定,其主要步骤如下:①读入像片;②提取黑白方格的交叉点(图3);③标定;④误差分析(图4);⑤图像的二次投影;⑥补偿后提取交叉点;⑦再次标定。

图3 提取交叉点

图4 误差分析

最终标定的结果(以标定值及误差上下限的形式给出)为

2 水下单目视觉定位算法

MonoSLAM算法是陆地机器人用的单目视觉定位方法,其有效性已得到了检验,实验室机器人基于视觉的避障试验及户外汽车定位试验如图5、图 6 所示。

图5 MonoSLAM算法室内避障试验

图6 户外汽车定位试验

2.1 陆地机器人用MonoSLAM算法

单目视觉坐标系如图7所示。

图7 单目视觉坐标系

(1)状态向量形如

式中,(yW1,…,yWi,…,yWn)T为n个目标的空间位置坐标。

相机位置及运动参量

式中,VW、ΩW为世界坐标系中的线速度与角速度增量;q为一个四元素的转换矩阵;Δt为时间间隔。

(3)观测方程。目标到相机的距离可表示为

式中,hRL(hRLx,hRLy,hRLz)为目标与相机间的距离;RRW为转换矩阵。

根据相机的针孔成像原理有观测值

式中,向量(u,v)T为特征点在像片中的二维坐标;u0、v0、f、ku、kv为相机的内参数,先由标定算法得到。

式(6)~式(9)可以构成标准的EKF(扩展卡尔曼滤波)状态方程,可通过标准的求解步骤解出状态向量x。

2.2 MonoSLAM算法的改进

式(9)是根据针孔成像原理所列,u0、v 0、f、ku、kv为相机的内参数,这些参数与式(4)中的量存在一定的对应关系,如表2所示。

表2 参数对照表

由Bouguet标定方法的最后结果可知(式(5)),畸变参量 k c=(-0.448 81,0.066 40,0.013 16,0.002 18,0),前四项并非是可以忽略的小量。因此,采用陆地机器人MonoSLAM 单目视觉定位方法将造成较大的误差,水下定位方法应进行畸变修正以提高精度。式(6)~式(8)不变,式(9)的修正如下:

通过下式实现实际图像坐标系到计算机图像坐标的变换:

式(12)为进行高阶畸变修正的公式,如果仅考虑一阶的畸变,可简化如下:

式(6)~式(8)与式(12)(或式(13))可以构成标准的EKF状态方程,可通过标准的求解步骤解出状态向量x。

2.3 水下定位试验

本文提出的单目视觉水下定位算法,可以针对任意结构化、非结构化的目标。在试验阶段,为获取目标的准确值、方便与算法结果相比较,选用了前面所述的标定对象,并通过标定算法获得了目标的定位值。试验中选取了8个点(图8),对照相中截取的35帧图像(图9)进行了目标定位分析,采用了三种算法:陆地机器人MonoSLAM算法、一阶畸变修正改进算法和畸变修正改进算法。选取分布具有代表性的1号点、5号点(分别位于目标的边缘、中心位置),分别采用此三种算法进行试验,结果如图10所示。分析图10可知:①直接在水下定位过程中采用陆地机器人单目视觉定位算法误差较大,部分特征点处误差超过2%,这对于精密作业而言是不允许的,需提高精度;②三种算法核心还是采用EKF方法,初始部分误差较大,随着像片帧的增加,误差逐步减小;③作了一阶畸变修正后,精度有了较大提高,相对而言,1号点提高的幅度较大,这是因为1号点选的位置处于角点位置,而5号点位于中心位置,相对来说位于视野边缘的特征点畸变较大,因而经修正后精度提高较多;④对1号点、5号点的高阶畸变修正,精度提高的幅度虽然相对一阶修正而言并不大,但也有不同程度的提高,特别是在某些帧改善较明显。

图8 水下定位试验目标点的选取

图9 用于试验的35帧像片

图10 水下定位试验

3 结束语

本文对OutLand1000小型水下机器人的视觉传感器进行了一系列的试验,取得了可靠的试验数据并在此基础上分析得到了ROV携带相机的内参数;通过对陆地机器人采用的单目视觉定位算法MonoSLAM的分析改进,完成了水下单目视觉定位算法,三个算法的试验比照表明,本文所提出的单目视觉定位算法适用于水下环境,可以使视觉传感器精度得到较大提高。

[1] Altshuler R C,Apgar JF,Edelson JS,et al.Orca-Ⅶ:an Autonomous Underwater Vehicle[R].Massachusetts:Massachusetts Institute Technology,2004.

[2] Michel J L.Victor 6000:Design,Utilization and First Improvements[C]//Proceedings of Thirteenth International Offshore and Polar Engineering Conference.Hawaii,2003:7-14.

[3] 汤士华,李硕,吴清潇,等.一种基于视觉的水下机器人动力定位方法[J].海洋工程,2006,24(2):112-117.

[4] McLauchlan PF,Murray DW.A Unifying Framework for Structure and Motion Recovery from Image Sequences[C]//Proc.ICCV'95.Washington:IEEE Computer Society Press,1995:314-320.

[5] Azarbayejani A,Pentland A.Recursive Estimation of Motion,Structure and Focal Length[J].IEEE Transactions on Pattern Analysis and Maching Intelligence,1995,17(6):562-575.

[6] Davison A J.Real-time Simultaneous Localisation and Mapping with a Single Camera[C]//Proc.ICCV'95.Washington:IEEE Computer Society Press,2003:1403-1410.

[7] Davison A J,Reid I D,Molton N D,et al.Mono-SLAM:Real-time single camera SLAM[J].IEEE Transactions on Pattern Analysis and Maching Intelligence,2007,29(6):1052-1067.

[8] Davison A J.Vision-based SLAM in real-time[C]//Proceedings of 3rd Iberian Conference on Pattern Recognition and Image Analysis.Girona,2007:9-12.

[9] Civera J,Davison A J,Montiel JMM.Inverse Depth Parametrization for Monocular SLAM[J].IEEE Transactions on Robotics,2008,24(5):932-945.

[10] HeikkiläJ,Silvén O.A Four-step Camera Calibration Procedure with Implicit Image Correction[C]//IEEEComputer Society Conference on Computer Vision and Pattern Recognition(CVPR'97).Washington :IEEE Computer Society Press,1997:1106-1112.

[11] Bouguet J Y.Visual Methods for three-dimensional Modeling[D].Pasadena:California Institute of Technology Pasadena,1999.

猜你喜欢
单目畸变标定
基于单目视觉车距测量方法综述
使用朗仁H6 Pro标定北汽绅宝转向角传感器
几何特性对薄壁箱梁畸变效应的影响
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
CT系统参数标定及成像—2
CT系统参数标定及成像—2
基于单目视觉的仓储物流机器人定位方法探讨
单目SLAM直线匹配增强平面发现方法
在Lightroom中校正镜头与透视畸变
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定