在大范围监控、智能交通等领域,为了获得大视角,鱼眼镜头[1]被广泛使用。但是,在获得大范围拍摄视角的同时,为解决在一定的成像面内容纳大视场中的目标物体等问题,鱼眼镜头中不可避免地引入了径向畸变[2]。 如何把存在畸变的鱼眼图像校正为适合人眼观看的图像,显得尤为重要。目前,鱼眼校正算法有高次多项式拟合校正法[3]、球面坐标定位法[4]、球面透视投影约束法[5,6]、抛物面投影校正[7,8]、基于渐变方程和经纬映射模型校正[9]及基于几何性质[10,11]等方法。现有的方法中,仍存在一些问题:校正公式复杂,校正后图像中有桶形或枕形畸变,校正模型参数拟合需要人工采样。基于这些情况,本文提出一种椭球面校正模型,并且通过自动检测特征点得出校正模型的参数。
1 鱼眼镜头成像模型
本文采用椭球面成像模型,成像原理如图 1所示。假设相机在场景坐标系的原点O,沿着z轴正方向拍摄,从空间任一点P1(x,y,z)指向原点O的射线,与成像模型曲面交于一点P2,根据正交投影规则过P2做z轴的平行线,交x-y平面于点P3(u,v),P3就是空间点P1(x,y,z)经过鱼眼变换后的图像点。鱼眼图像轮廓中心点坐标为(u0,v0),因此空间点与鱼眼图像点之间的关系可表示为
![]() | 图 1 鱼眼镜头成像模型 Fig. 1 Imaging model of fisheye lens attitude measurement |
由椭球面成像模型可知,本文的椭球面校正模型方程为
现有的鱼眼图像轮廓提取方法中:统计法[12],当鱼眼图像圆形轮廓区域内存在大量黑色像素点时,该算法失效;扫描线逼近法[13],设定一个行列极限亮度差的阈值,通过阈值判定是否扫描到鱼眼图像圆形轮廓的上、下、左和右边缘的切线,这4条切线确定了圆形轮廓的外切正方形,据此可得出圆心坐标和半径,但是当鱼眼轮廓不是一个完整的圆形时,该算法与切线法[14]同样失效。本文采用标准圆标定法获取鱼眼图像的圆心和半径,具体做法:预先设定圆心坐标(x0,y0),半径为r0,鱼眼图像中出现一个预置的标准圆形轮廓,通过鼠标拖动,从而调整标准圆的大小和位置,使得标准圆最终与鱼眼轮廓吻合。鱼眼图像的圆心(x,y)和半径r分别为
在RGB图像中,令c(x,y)为RGB彩色空间中点(x,y)处的像素值,可表示为
令gxx,gyy和gxy分别为
基于以上分析,在鱼眼图像中,对圆心两边(沿x轴)的3条网格线的梯度幅值进行分析,结果如图 2所示。 由图可知每条网格线经边缘检测后,有左右两条边缘。对上述边缘梯度函数作如下处理,即
![]() | 图 2 圆心所在行上三条网格线的梯度值 Fig. 2 Gradient magnitude of three grid lines on the center row |
![]() | 图 3 特征点检测示意图 Fig. 3 Feature-point detection |
图 3所示的特征点中,有些点是伪特征点,不能用于拟合校正模型参数。空间x-z平面中网格上点在x轴上坐标为x(以x>0为例),鱼眼图像中对应的图像点到原点距离是x的函数,记为h(x),则有
空间平面中的网格是等距的,沿x轴正方向的点依次记为1,2,3,…,n,其在鱼眼图像中的对应点到原点的距离记为h(1),h(2),h(3),…,h(n),这些点对(n,h(n))是上述函数h(x)上的点。由上式可知,式(14)大于0,式(15)小于0,因此Δh(n)是递减的,即
式(5)中得到的鱼眼轮廓半径为R,把R代入式(2),则椭球面校正模型的方程简化为
![]() | 图 4 特征点及拟合曲线示意图 Fig. 4 Feature points and the fitting curve |
由图可知,本文提出的校正模型曲线与特征点轨迹相吻合,椭球面校正模型与实际的鱼眼成像曲面接近。由校正模型可得,鱼眼图像点与空间点的坐标关系为
3 实验结果
以网格图像为例,运用上述校正模型对鱼眼图像进行校正,结果如图 5所示,并与球面校正模型、抛物面校正模型和高次多项式校正模型的效果进行对比,其他校正结果分别如图 6、图 7和图 8所示。
![]() | 图 5 本文方法校正结果 Fig. 5 The correction result by using the method proposed in this paper |
![]() | 图 6 球面模型校正结果 Fig. 6 The correction result by using the spherical model |
![]() | 图 7 抛物面模型校正结果 Fig. 7 The correction result by using the parabolic model |
![]() | 图 8 高次多项式模型校正结果 Fig. 8 The correction result by using the high-degree polynomial model |
由校正结果可知:球面校正后仍存在桶形畸变;抛物面模型中存在枕形畸变;高次多项式模型校正后图片的中心存在枕形畸变,而在靠近边缘的地方存在桶形畸变;本文的校正模型中不存在畸变,校正效果好。
4 结 语
本文依据鱼眼镜头的成像特点,并针对现有算法中存在的不足,提出一种椭球面校正模型,该模型与鱼眼镜头实际的成像模型吻合较好,并用双线性插值法[15]填充像素。实验结果表明,该校正模型取得了比较好的校正效果。
[1] | 肖潇,杨国光.全景成像技术的现状和进展[J].光学仪器,2007,29(4):84-89. |
[2] | 李洪海,王敬东.摄像机标定技术研究[J].光学仪器,2007,29(4):7-12. |
[3] | 张景国,将大钢,李晓峰.广角镜头桶形畸变的二元二次多项式修正法[J].光学技术,2010,36(4):500-504. |
[4] | 张宁,刘天键.鱼眼图像校正算法研究与实现[J].闽江学院学报,2012,33(5):74-76. |
[5] | 崔汉国,陈军,王大宇.鱼眼图像校正及拼接的研究与实现[J].计算机工程,2007,33(10):190-192. |
[6] | DEVERNAY F,FAUGERAS O.Straight lines have to be straight:automatic calibration and removal of distortion from scenes of structured environments[J].Machine Vision and Applications,2001,13(1):14-24. |
[7] | 温灿红,杨强,罗飞,等.一种基于椭圆抛物面透视投影约束的鱼眼镜头校正方法[J].大学数学,2010,26(3):192-195. |
[8] | 周飚,赵鑫,齐志宏,等.一种通用的基于抛物面模型的鱼眼图像校正算法[J].长春理工大学学报:自然科学版,2014,37(2):22-25. |
[9] | 王依桌,席志红.基于渐变方程的鱼眼图像校正方法[J].电子科技,2013,26(10):70-72. |
[10] | 杨晶晶,陈更生,尹文波.一种基于几何性质的鱼眼图像校正算法[J].计算机工程,2012,38(3):203-205. |
[11] | 李根,费章君,杨仕友.基于几何成像模型的鱼眼镜头图像校正算法和技术研究[J].机电工程,2013,30(10):1268-1272. |
[12] | 唐俊,赵为民,谷峰.基于鱼眼图像的全景漫游模型[J].微机发展,2003,13(2):69-70. |
[13] | 韩迎辉.基于改进扫描线逼近的鱼眼图轮廓提取算法的研究[J].电子器件,2013,36(6),784-788. |
[14] | 常丹华,赵丹,杨峰明,等.提取鱼眼图像轮廓的算法改进及图像校正[J].激光与红外,2012,42(4):448-451. |
[15] |
吴桂萍,吴巍,王成,等.基于双线性插值的鱼眼图像校正方法[J].计算机应用与软件,2012,29(2):122-125.
(编辑:刘铁英)
|