基于蚁群遗传算法的BP神经网络摄像机标定

2013-08-26 02:48江祥奎汪友明
机械与电子 2013年12期
关键词:摄像机标定遗传算法

江祥奎,汪友明

(西安邮电大学自动化学院,陕西 西安 710121)

0 引言

作为立体视觉中的关键技术,摄像机标定技术目前己被广泛关注。比较经典的优化算法在摄像机标定中的应用也较为普遍,遗传算法是近年来应用较多的一种优化方法,目前已取得一定成效,但主要的研究工作集中在单个摄像机的参数标定。采用遗传算法标定摄像机参数,在收敛性、精度和鲁棒性方面具有很好的性能。但由于其摄像机模型中没有包含透镜畸变因素,如果用于三维测量,则难以保证精度。另外,标准遗传算法用于高维空间的寻优时性能会变差,而且随着搜索空间维数的增加,算法性能会急剧退化,同时,基于神经网络的摄像机标定方法所能覆盖的标定空间十分有限[1],所以拟采用蚁群遗传算法优化BP神经网络的摄像机标定方法,以解决传统摄像机标定中难以解决的问题。

1 蚁群算法与遗传算法的融合

遗传算法具有快速全局搜索能力,但是对于系统中的反馈信息却没有利用,往往导致大量无为的冗余迭代,求精确解效率较低[2]。蚁群遗传算法的流程如图1所示。

图1 蚁群-遗传算法流程

蚁群算法是通过信息素的积累和更新而收敛于最优路径,具有分布、并行、全局收敛能力,但是搜索初期信息素匮乏,导致搜索初期信息素积累时间较长,求解速度慢[3-4]。为了克服这2种算法各自的缺陷,形成优势互补,首先利用遗传算法的随机搜索、快速、全局收敛性产生有关问题的初始解,并将其转化为蚁群算法的初始信息素分布,然后利用蚁群算法的并行性、正反馈机制以及求解效率高等特征寻求最优解。在遗传算法运行过程中动态确定遗传算法与蚁群算法的融合时机,避免由于遗传算法过早或过晚结束而影响算法整体性能,这样融合后的算法既发挥了遗传算法与蚁群算法在寻优搜索中的各自的优势,又克服了遗传算法在搜索到一定阶段时最优解搜索效率低以及蚁群算法初始信息素匮乏的不足。

2 基于蚁群遗传算法的摄像机标定

基于蚁群遗传算法的摄像机标定主要包括:

a.遗传算法和蚁群算法的融合。首先利用遗传算法的随机搜索、快速、全局收敛性获取问题初始解,并将其转换为蚁群算法的初始信息分布,然后利用蚁群算法的并行性、反馈机制寻求最优解。原理如图2所示。

图2 遗传算法与蚁群算法的融合原理

b.利用步骤1产生的最优解作为BP神经网络的输入层。搭建的BP神经网络如图3所示。

图3 BP神经网络的搭建

c.BP神经网络运用于摄像机标定。设计的神经网络与摄像机的物理模型一致,其前向计算相当于求解程序中的被优化函数,同时将蚁群-遗传算法引入进来,以神经网络性能指标的倒数作为遗传算法的适应度函数,得到系统全局最优解的时候,即可根据神经网络的权值得到摄像机的内、外部参数。

3 标定实验与结果分析

实验采用2台MV-2000FCMOS摄像机,镜头采用Computar公司的M0814-MP,焦距f=8mm。采用AutoCAD绘制,激光打印机打印的8×8圆阵列图案(圆直径20mm,两圆之间的水平和垂直间距均为10mm)作为标定模板,圆心为标定点。在不同位置拍摄10对图像,给出的其中1对如图4所示。将标定板置于一垂直于地面的平板,以标定板的两条相互垂直的边作为世界坐标系的X轴和Y轴,Z轴垂直标定板,实验中,以标定板所在的平面作为面,即标定点Z坐标为0。用2台摄像机同时采集一幅图像。将特征点在左右两幅图像的坐标作为输入,在世界空间坐标系的坐标作为输出。

图4 测量标定板

Matlab神经网络工具箱提供了相关函数,可以直接建立网络结构,训练和测试。课题设计的是从像平面坐标到世界坐标系之间的映射,而像平面坐标采用是双目摄像机采集,即有(u1,v1),(u2,v2)4个输入数据,所以输入层采用4个结点。输出层是经过网络学习后输出的世界坐标(XW,YW,ZW),所以,这里的输出层结点选择3个。隐层节点数采用2 N+1个,即9个。所以网络结构为4-9-3。训练数据存放在chrom2.mat文件中,是1个480×7的矩阵。其中1~460行为训练数据,461~480为测试数据,1~4列为输入数据,5~7列为输出数据。考虑到遗传算法工具箱需要自己导入,实验采用英国Sheffield遗传算法工具箱进行训练,经过81步训练达到目标,此时网络训练停止。可见,采用蚁群遗传算法的BP神经网络能更好的拟合。

将整个测试样本的均方根误差RMSE作为标定方法的评价指标。基于蚁群遗传算法的BP神经网络标定结果如表1所示。与此同时还进行了基于BP神经网络的标定实验[5],其标定结果如表2所示。

表1 基于ACGA的BP神经网络标定结果

表2 基于BP神经网络的标定结果

对比表1和表2可知,虽然在X,Y方向上的误差二者相差不大,但在Z轴方向上,采用蚁群遗传算法的BP神经网络误差明显低于BP神经网络的误差。

通过对比,基于蚁群遗传算法的BP神经网络标定结果的均方根误差(RMSE)比基于BP神经网络的均方根误差要小,这说明采用蚁群遗传算法优化之后的BP神经网络能训练出更精确的结果。

4 结束语

神经网络具有很强的非线性逼近能力和学习能力,可以不建立复杂的数学模型,通过直接学习系统的输入输出数据,即可建立三维空间中的物点与其对应的二维图像点的复杂的非线性映射关系,具有较好的精度。但是由于网络的权值和阈值随机,不利于拟合,所以采用融合的蚁群遗传算法优化BP神经网络,通过训练误差作为遗传算法的目标函数,并以此计算适应度来优化BP神经网络的权值和阈值,然后再通过BP网络训练,将优化后的神经网络应用于摄像机标定中。实验结果表明,提出的基于蚁群遗传算法的BP神经网络摄像机标定方法切实可行,有效提高了摄像机标定的精度。

[1]田 震.基于神经网络方法的摄像机标定技术研究[D].长沙:国防科学技术大学,2010.

[2]陈江义,宋雪枫,张明伟.融合蚁群算法和遗传算法的矩形件排样问题研究[J].郑州大学学报,2011,43(2):79-82.

[3]毕硕本,董学士,马 燕.遗传算法和蚁群算法优化TSP的设计与分析[J].武汉理工大学学报,2010,32(16):89-92.

[4]段海滨.蚁群算法原理及其应用[M].北京:科学出版社,2005.

[5]华希俊,李永超,王木菊,等.基于BP神经网络的摄像机标定方法研究[J].机械设计与制造,2010,(11):51-53.

猜你喜欢
摄像机标定遗传算法
使用朗仁H6 Pro标定北汽绅宝转向角传感器
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于遗传算法和LS-SVM的财务危机预测
摄像机低照成像的前世今生
新安讯士Q6155-E PTZ摄像机
船载高精度星敏感器安装角的标定
基于改进的遗传算法的模糊聚类算法
如何消除和缓解“摄像机恐惧症”