基于自适应布谷鸟算法的摄像机标定方法研究

2023-05-08 03:15吴禄慎
计算机应用与软件 2023年4期
关键词:布谷鸟步长摄像机

付 玮 吴禄慎

1(南昌航空大学软件学院 江西 南昌 330063) 2(南昌师范学院物理系 江西 南昌 330032) 3(南昌大学机电学院 江西 南昌 330031)

0 引 言

相机标定是现代计算机图像视觉系统中的基本问题之一,目的在于通过使用图像二维特征和相应的三维特征确定相机的内部和外部参数。研究者对相机标定已经进行了广泛深入的研究。相机标定方法包括传统的相机标定和相机自标定法。传统的相机标定方法是通过测量基于场景信息的已知形状和结构来获取的,但是这种方法对场景信息和摄像机运动的要求很高,这导致实际标定受到限制[1]。Zhang[1]通过用二维平面替代昂贵的标定网格从而提出了一种灵活的相机标定技术平面图案,通过移动相机或以不同方向拍摄模型平面的几幅图像后,可以唯一确定平面与其投影之间的对应性,这可以从相机的固有标定参数中得出。文献[2]首次提出相机自标定方法,它不需要任何特殊的外部标定对象,就可以直接通过图像完成标定任务。

近年来,众多研究者越来越关注群智能算法的基础研究,并已经成功取得了重大进展。文献[3]使用融合遗传算法与BP神经网络。但是,该算法的局部收敛性和稳定性不好。文献[4]使用混沌粒子群优化算法对相机标定,但是该算法容易陷入局部最优解,标定精度不高。因此,这些智能算法容易陷入诸如过早收敛或效率低下等问题,而无法找到最佳解决方案。Elazim等研发了一种布谷鸟搜索算法(Cuckoo Search,CS)。它是一种有效的全局最优的群智能算法,并且在某些情况下,CS在效率和成功率方面均优于PSO和GA。CS已成功吸引来自不同应用领域的许多研究人员的关注。由于CS算法参数少、易实现、寻优能力强,因此本文提出了一种自适应布谷鸟算法的摄像机标定方法,可以有效解决算法过早收敛,寻找全局最优解,并验证了算法的可行性和有效性。

1 相机标定原理

将摄影中的一个对象点Pw(Xw,Yw,Zw)从世界坐标系转换为相机坐标系,其对应的相机坐标为Pc(Xc,Yc,Zc)。原点和Zc轴分别与光心和镜头光轴重合 。相机模型定义为:

(1)

特别地,R和T分别是旋转矩阵和平移向量。r0~r7是三角函数组合,旋转角度(α,β,γ)。R可以表示为:

(2)

由于标定板几乎是平行于成像平面的,α和β的值比较小。其中,cosα=1,sinα=α,cosβ=1,sinβ=β,通过替换这些关系得到以下的旋转矩阵:

(3)

通过透视投影,将3D空间中的对象点Pw(Xw,Yw,Zw)成像在2D平面中,其中未失真的图像坐标由P(X,Y)表示,可得出:

(4)

图像像素坐标为(u,v),因此相机坐标与2D图像像素坐标之间的关系表示为:

(5)

式中:(fx,fy)是有效焦距,其定义为光学中心和像平面之间的距离。相机坐标系(cx,cy)是摄像机的偏移量。假设模型平面位于世界坐标系中的x-y平面上,因此模型平面的方程为Zw=0。相机模型可以简化为:

(6)

式中:s是比例因子,A是相机固有参数矩阵。

(7)

2 算法设计

2.1 基本布谷鸟算法

布谷鸟将蛋产在宿主鸟的巢中。当宿主鸟发现外来蛋时,它们要么抛出外来蛋,要么离开它们的巢,去建造一个新巢[6]。基本的布谷鸟算法必须遵循以下三个基本规则:

1) 每只布谷鸟每次产一个蛋,然后将其放置于随机选择的宿主巢中。

2) 最好的蛋巢将传给下一代。

3) 可用寄主巢的数量是恒定的。寄主发现外来蛋的概率是Pa∈[0,1]。寄主鸟发现外来蛋将其扔掉,或者寄主鸟在新位置筑新巢。

基本布谷鸟算法如下:

Step1初始化:将创建一组寄主巢并被蛋占据。寄主巢中的每个蛋都有一个唯一的ID。用蛋填充宿主巢后,计算巢的适合度。拥有最好质量的蛋(最佳适应性值)的宿主被表示为最佳。在此阶段之后,进行迭代过程,然后解决方案是由莱维(Levy)飞行提供的。

Step2莱维飞行的迭代过程:重复此过程,直到满足终止条件为止。 通过使用切换参数pa,布谷鸟搜索方法可以在本地和全局搜索之间取得很好的平衡。pa是由宿主鸟识别外来蛋的概率。

Step3终止过程:迭代过程持续到最大迭代次数或解决方案为止,而不是经过固定次数的迭代后有所改善。

(8)

式中:α>0是步长;N表示寄主巢数;t表示当前的迭代次数;X(t)反映了在第t次迭代的i个巢;乘积⊕表示逐项乘法。Levy(λ)是一个Levy分布函数,可以转换为概率密度函数:

Levy(λ)~g-λ1<λ≤3

(9)

式中:λ是单位间隔内发生的事件参数的期望值,λ=1.5。 根据Mantegna的算法,Levy可以通过以下公式计算:

(10)

式中:μ和ν是从正态分布中得出的。θμ和θν是正态分布的标准偏差:

(11)

2.2 自适应的布谷鸟搜索算法

自适应布谷鸟搜索(ACS)算法[7-8]的研发目的在于提高搜索效率。布谷鸟搜索通常使用Levy的分布来选择步长来探索搜索空间。Zheng等[9-10]使用了高斯分布和高斯与柯西分布分别确定布谷鸟搜索的步长。但是,这些分布没有任何机制来控制布谷鸟搜索的随机行走步长,因此可以指导算法达到最佳状态。因此,在自适应布谷鸟搜索(ACS)中,并入了与适应度函数成比例的步长。步长的计算如下:

(12)

(13)

(14)

式中:Xgbest是全局最佳解决方案。

2.3 基于自适应的布谷鸟算法的摄像机标定

由于布谷鸟算法参数少、操作简单、随机搜索路径优,本文提出自适应布谷鸟算法获取相机标定参数,具体实现步骤总结如下。

(1) 优化摄像机内部参数和外部参数以及畸变系数。假设有n个平面模板图像,每幅图像都有m个标定点,每个点的大小相同,处于相同的噪声环境里。目标函数建立如下:

(15)

(2) 基于自适应布谷鸟优化的相机标定算法实现步骤:

Step1初始化m个宿主巢xi的总体P,Pm=(x1,x2,…,xm)。

Step2计算适应度Fi=f(xi),目标函数是所获取像素和实际像素之间的距离。

Step3在自适应布谷鸟搜索中,并入了与适应度函数成比例的步长,通过式(13)随机选择布谷鸟,并通过Levy飞行将其移动到新的位置。

Step4当目标评估值小于最大评估值,获得最佳布谷鸟并通过Levy飞行生成新的解决方案(xj)。

Step5评估适应度Fj=f(xj)。

Step6在巢中选择随机个体xi。

Step7如果Fj>Fi,则用xj替换xi。

Step8放弃状况最差的个体,将由新的个体代替随机生成的个体。

Step9确定循环是否已经满足终止迭代条件,如果循环达到最大迭代次数,那么确定循环结束,并输出结果,否则转到Step 4,继续迭代,直至循环找到最适合的个体。

3 实验与分析

3.1 实验结果分析

通过自适应布谷鸟算法,求解摄像机的内部参数,并通过可靠性实验和算法性能比较来验证自适应布谷鸟算法的有效性。本实验使用CF1000C摄像机,具有以下参数:

① 传感器类型:CMOS;② 光敏元件的大小:1/2.3英寸 CMOS;③ 实际焦距:6~12 mm;④ 图像分辨率为3 664×2 748。自适应布谷鸟算法优化模型中,设置最大迭代次数1 000,连续优化次数为100。

本实验标定板采用8×6=48个棋盘格,通过改变标定棋盘格的位置角度,拍摄20组不同角度和位置的图像作为标定图像。

按照上面的流程计算步骤在VS 2016下完成优化算法程序,使用20组标定图像,最大迭代次数分别为200、400、600、800、1 000,表1列出了9个参数每次迭代所产生的估计值。

表1 基于自适应布谷鸟优化算法求解摄像机内部参数实验结果

由表1可知,算法从迭代次数 600开始,迭代基本达到收敛,从迭代次数 800开始,迭代基本开始稳定,所求参数值为迭代次数达到1 000次时的值,即摄像机内部参数值为:fx=1 236.435 21,fy=1 033.856 32,cx=188.553 42,cy=116.654 39,k1=0.003 896,k2=0.030 394,k3=0.110 978,p1=-0.005 879,p2=-0.046 784,Fi=2.506×10-5。

表2 自适应布谷鸟算法的可靠性验证结果

由表2可知,任意20组标准检测图像推导得出的图像坐标比较接近实际图像坐标,推导值与实际检测值之间相差较小,均小于0.15个标准检测像素。如表3所示,使用DE算法来测试随机选择的20组实际标定图像,推导值与实际检测值之间均大于0.15个标准检测像素,经过两种算法比较得出,本文所提出的自适应布谷鸟的标定方法具有良好的鲁棒性能。

表3 DE算法的可靠性验证结果

3.2 算法性能比较

为了评价本文提出算法(ACS)的标定结果的迭代性能与平均误差,分别与GA(遗传算法)、DE(差分进化算法)、CS(布谷鸟算法)进行性能比较,如图1所示,本文ACS算法的收敛较快,平均误差较小。其迭代性能与平均误差均优于GA、DE、CS算法。

图1 迭代与平均误差

4 结 语

本文研究了自适应布谷鸟算法,通过自适应控制步长来实现布谷鸟的科学性搜索,将其应用于摄像机标定实验,可以验证新相机标定算法的实际可行性和有效性。实验证明,本文所提出的自适应布谷鸟的相机标定方法具有较好的标定性能,与GA、DE、CS算法进行了性能比较,通过新算法所得的标定结果数据误差迭代性能较好。新算法与GA、DE、CS算法比较,推导出的图像坐标比较接近实际图像坐标,差值均小于0.15个像素,这表明本文所提出的标定方法具有良好的性能,具有一定的理论意义和研究价值。

猜你喜欢
布谷鸟步长摄像机
布谷鸟读信
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
布谷鸟读信
摄像机低照成像的前世今生
新安讯士Q6155-E PTZ摄像机
布谷鸟叫醒的清晨
如何消除和缓解“摄像机恐惧症”
基于逐维改进的自适应步长布谷鸟搜索算法
一种新型光伏系统MPPT变步长滞环比较P&O法
一种新颖的光伏自适应变步长最大功率点跟踪算法