APP下载

基于机器视觉的鱼眼镜头畸变校正算法

2018-02-14王赛男孟显娇鲜鑫

数字技术与应用 2018年10期

王赛男 孟显娇 鲜鑫

摘要:本文根据摄像机参数和机器视觉技术进行鱼眼镜头图像畸变矫正算法的研究,重点研究出鱼眼镜头桶形畸变校正算法。Matlab实验结果表明:应用本算法能对鱼眼镜头产生的畸变进行校正,算法快速有效。

关键词:鱼眼镜头;桶形畸变;校正算法

中图分类号:TP391.41    文献标识码:A    文章编号:1007-9416(2018)10-0000-00

鱼眼镜头的拍摄角度大,成像角度宽,因此鱼眼镜头被广泛应用于汽车电子、医疗、视频监控等各个领域。由于鱼眼镜头的视角可以达到180度,因此鱼眼镜头被广泛的用于全景影像的采集中,虽然它的视角很大,但不可避免的产生了严重的畸变现象,如果想利用这些具有严重变形图像的信息,就需要将这些具有严重变形的图像校正为符合人们视觉习惯的透视投影图像。目前,对于一般的摄像机校正已经存在大量的研究,但针对鱼眼镜头所拍摄的图像的校正的研究却不多。本文所以结合摄像机的内外参数提出一种基于机器视觉的鱼眼镜头畸变矫正算法,对鱼眼摄像头拍摄的畸变图像进行校正,矫正后的图像可以用于研究具有非常重要的价值和意义。

目前鱼眼镜头畸变校正的方法主要有两种,第一种方法是利用光学方法进行畸变校正,另一种方法是利用数字图像处理技术进行畸变校正[1]。光学方法主要利用光学成像系统中的镜片对光线的折射原理等方法对图像进行校正。但是此方法中涉及复杂的光学成像系统设计,实施难度大,制造工艺困难,成本高。因此一般不采用此方法进行畸变校正。

数字图像处理技术主要在实物已经成像后应用算法对所成图像进行校正。该方法成本较低,并且可根据环境以及要求的不同进行算法的改进实现图像校正,目前国内外多采用此种方法进行图像校正[2]。传统数字图像的校正方法主要有平面透视投影约束,、球面透视投影约束方法、2D球面坐标定位算法等方法进行畸变校正,本文借鉴了基于经纬度的校正算法提出了一种基于圆分割的鱼眼图像畸变校正算法。

1 鱼眼镜头成像原理

鱼眼镜头的成像与透视投影不同,在成像时将鱼眼镜头近似看成是一个半球模型,鱼眼镜头的成像模型包括世界坐标系W(X,Y,Z),鱼眼镜头坐标系M(X,Y,Z)和图像坐标系P(u,v)。本论文建立的鱼眼镜头的成像模型如图1所示,取世界坐标系W(X,Y,Z)中的一点Q,图中半球用来模拟鱼眼镜头,镜头坐标系为M(X,Y,Z),最下方为成像的平面既图像坐标系P(u,v)。Q点由鱼眼镜头在图像平面中对应的点为q2,而理想的不发生畸变的点为q1,从成像可以发现,经过鱼眼镜头成像后,成像点发生了变形[3]。

鱼眼镜头成像过程过程如下:

(1)首先,通过线性变换将世界坐标系下的Q点转化到到镜头坐标系下,转换过程可以通过一个平移向量T和一个3*3的旋转矩阵R得到,即:

(1)

(2)从相机坐标系变换到成像的平面是一个非线性的过程,既鱼眼镜头的模型可以用一个泰勒级数的多项式来近似表达,从相机坐标系变换到成像的平面虚拟传感器图像坐标系的变换如下式:

(2)

其中  为畸变的成像点与成像平面的中心距离,其表达式为,是镜头畸变的多项式系数。

(3)从虚拟的传感器图像平面到最终的即便图像通常会经过一个仿射变换,设Q(u,v)为畸变图像的坐标,令仿射矩阵为一个单位矩阵,此时图像的中心坐标为则有如下变换关系。

(3)

2 基于经度的鱼眼校正算法

基于经度的鱼眼校正算法的中心思想是先求出鱼眼图像的中心并进行标准圆变换,然后进行球面坐标的定位[4]。鱼眼镜头的畸变场景如图2所示;图中A和B处于一条经度上,在无失真状态下,A和B应在一条直线上,从图2中可以得到每一条相同经度上的不同像素点,在图像畸变校正后应处于同一列即,拥有相同列坐标值。在相同纬度上的的两点,其距离圆心越遠畸变越严重[5]。

对于相同经度上的两点,其从球面的左侧边界到右侧边界的角度差相同,该本算法认为其对应的线段dx在x轴上均匀分割经度,使得不同的经度之间x方向上的距离相等,因此由K点坐标可以求出A点的x坐标如下所示:

(4)

其中,R为鱼眼图像的半径,为A点沿x方向与图像中心O的距离,为B点沿x方向与图像中心O的距离,该算法的优点是简单易行,应用广泛既可以针对视域为180度的图片又可针对视域不是180度的图片,缺点是对于靠近图片顶端的图像矫正效果不理想,存在拱形失真。

3 画圆弧法畸变校正算法

为解决经纬矫正算法在垂直方向上校正效果较好而在水平方向仍存在严重畸变的这一缺点,本文提出一种基于画圆弧法畸变校正算法。该算法拟通过一条图像底部发生畸变最大的圆弧对图像进行分析并建立校正模型,完成鱼眼图畸变图像的校正。

在鱼眼图中,假设鱼眼图像长W,宽H,设图中点为M,其的坐标为(x,y),图像中心点坐标为(W/2,H/2),设矫正后M点对应的图像坐标为(u,v),则在鱼眼图像中点M到图像中心点距离为R:

(5)

本算法利用坐标映射方法,关键问题是寻找畸变图像与校正后图像的映射关系,采取一一映射方法生成图像。本算法首先根据图像边缘最大畸变曲线进行椭圆拟合,获得边缘椭圆半径,校正后的图像中像素的坐标与原图像中点坐标的映射函数为:

(6)

u,v为畸变矫正后的像素坐标,为校正偏差系数,z为

本算法采用matlb进行仿真,该算法流程如图3所示。

4 仿真结果分析

图4所示为畸变图像的校正前图像,图5所示为为采用本算法后校正的图片,仿真结果表明,本文所提出的画圆弧法畸变校正算法能够对鱼眼镜头产生的畸变进行矫正,尤其在图像边缘校正效果明显。

5 結语

本论文针对鱼眼镜头畸变校正研究了一种画圆弧法畸变校正算法,该算法将鱼眼镜头的最大畸变边缘进行椭圆拟合,根据椭圆拟合曲线进行图像校正,通过Matlab实验结果表明该算法对于鱼眼镜头畸变校正有着较好的结果,该算法适用于汽车倒车影像系统,安全监控系统。

参考文献

[1] 王永仲.鱼眼镜头光学[M].北京:科学出版社,2006.

[2] 张琨,王翠荣.基于圆分割的鱼眼镜头图像畸变校正算法[J].东北大学学报,2011,(9):1240-1243.

[3] 宋阳,周亚丽,张奇志.鱼眼镜头径向畸变的校正方法[J].仪器仪表学报,2017,(4):1014-1023.

[4] 冯伟.图像桶形畸变矫正的研究与实现[D].北方工业大学,2011.

[5] 黄岩岩,李庆,张斌珍.鱼眼镜头的标定和畸变校正研究[J].计算机工程与设计,2014,(9):3132-3135.

The Distortion Correction Algorithm of Fish Eye Lens Based on Machine Vision

WANG Sai-nan, MENG Xian-jiao, XIAN Xin

(Shenyang Institute of Science and Technology, Shenyang Liaoning  110000)

Abstract: According to the camera parameters and machine vision technology, this paper studies the image distortion correction algorithm of fisheye lens, focusing on the barrel distortion correction algorithm of fisheye lens. The experimental results of MATLAB show that this algorithm can correct the distortion of fish-eye lens, and the algorithm is fast and effective.

Key words: fisheye lens: barrel distortion; correction algorithm