应用经纬映射的鱼眼图像校正设计方法

2010-09-25 02:57玲,
图学学报 2010年6期
关键词:鱼眼经纬球面

杨 玲, 成 运

(1. 南京信息工程大学滨江学院,江苏 南京 210044;2. 湖南人文科技学院通信与控制工程系,湖南 娄底 417000)

应用经纬映射的鱼眼图像校正设计方法

杨 玲1, 成 运2

(1. 南京信息工程大学滨江学院,江苏 南京 210044;2. 湖南人文科技学院通信与控制工程系,湖南 娄底 417000)

为了消除鱼眼镜头带来的形变,该文提出了一种应用经纬映射的鱼眼图像校正设计方法,推导了消除变形的数学依据,总结出一种不需要任何标定数据,快速的纠正等角鱼眼变形的算法。使用经纬映射图像的校正方法,可以把扭曲的半球鱼眼图像投射为普通照片的四方形状,也即通过投射降低图像的扭曲程度,在视觉上基本达到实用要求。

计算机图形学;经纬映射图;鱼眼图像;鱼眼图像校正

为了消除鱼眼镜头图片的变形,一种方法是使用高次多项式模拟近似的变形方程,通过计算标定多项式系数来得到从源图(有变形)到目标图的点到点的映射关系。另一种方法是用非线性的几何投影模型,例如等角鱼眼模型[1]、球状镜头模型[2],来描述图像的变形机制,但是这些方法只适用与弯曲程度不太大的情况,对于circular fisheye是不适用的[3]。

大多数的方法都需要准确的标定设备,针对特定的一个镜头,获得变形的纠正公式,而且使用迭代优化方法,计算量大。如果在对精度要求不高的商业系统中应用,可能遇到的问题是:不同的照片来自不同的鱼眼镜头;不具备对照相机参数进行标定的条件;需要较短的时间计算时间。所以本文将进一步推导更加简单快速的鱼眼镜头变形纠正方法。

1 恢复算法描述

经纬映射图像(latitude-longitude projection image)方法虽然在绘图学很少应用,但是在计算机图形学中却得到了广泛的使用,因为在计算机上存储单位球是很困难的,把球面分成小片非常复杂[4-5]。球面的经纬映射图像就是把单位球面上的点按经纬度映射到一个矩形纹理图像上的点,经度映射成矩形的水平坐标,纬度映射成垂直坐标,矩形的长宽比为2:1,经度从0到2π,纬度从 0到π。当然,经纬映射图的矩形大小是由源图(鱼眼照片)来定的,例如,当是整个单位球面映射的时候,经纬映射图长宽比为 2:1,经度从0到2π,纬度从0到π,而本文中的源图是半球面图,所以选择经纬映射图的长宽比为 1:1,经度从0到π,纬度从0到π,其原理都是一样的。球面极坐标可以直接使用矩形纹理图像的水平垂直坐标。单位球鱼眼图像中扭曲的场景可以用图1(a)中的经纬度定位图来表示,即每一条经度上的不同像素在扭曲校正过的经纬映射图像中具有相同的列坐标值,如图中h和p点在无扭曲的场景中具有相同的X坐标。经度越大的经线,其扭曲程度越大。对于图片垂直方向上任意一点像素坐标yi,从球面的左边界到右边界的角度差都是相等的,且与之对应的线段 d 在 X轴方向上均匀分割经度,使得在同一经度不同的yi上,X方向上的距离相等。同样,对照图1(b)纹理图像比较可知,最明显的变形就是水平方向的拉伸变形,在赤道上几乎没有拉伸变形,越接近南北极点,变形就越厉害,几乎拉伸到图像的整个宽度。图1给出鱼眼图像的单位球面上的P点和在经纬映射平面上的对应点的关系。

利用上面所讲的等角鱼眼投影[6]和经纬映射图像原理,可以得到简单的恢复算法。算法目标是推导目标图(恢复后的经纬映射图)和源图(鱼眼照片)像素之间的映射关系。如果从变形的鱼眼图像出发,计算每一点经过变换后到目标图的坐标,将该点的像素信息赋值给目标图上的点,这是最直观的方法。

图1 鱼眼图的单位球经纬度定位图和经纬映射平面图

2 鱼眼图像圆心和半径的寻找方法

首先需要先求出鱼眼图片的中心和半径,可以采用这种方法来求得。

根据鱼眼图像的特征, 对图像进行二值化(即只有黑色和白色)(如图2所示),二值化以后的鱼眼图像,其有效区域轮廓外形呈圆形,圆形轮廓以外全部呈现黑色,而轮廓以内的部分通常亮度较高。

根据这一特点,对得到的二值图像做轮廓跟踪,即分别对该鱼眼图像的二值图像从水平和垂直方向(即从上下左右)开始逐步扫描,检测每行或每列上各点的亮度值变化情况。亮度情况可以分为3类(见图3):

(1) 不穿过圆形轮廓的直线,由于其全部位于圆外的黑色部分,通常同一直线上的各点亮度均为0,因此该直线上的点的亮度变化次数为零,该直线予以舍弃;

(2) 圆形的割线,由于其穿入轮廓和穿出轮廓各一次,因此该直线上的点的亮度变化次数至少为2次,如果考虑到圆轮廓以内的有效图像的亮度变化,则该直线上的点的亮度变化次数更多,该直线予以舍弃;

(3) 圆形的切线,直线上的点的亮度变化次数刚好为一次,则记录下该直线。

图2 二值图

图3 轮廓跟踪亮度情况

由于存在一定的干扰和计算的不精确,通过上述方法求出的一组单一的数值可能存在的误差较大,通过求得多组切线,然后对它们取算术平均,具体算法如下:对鱼眼图像的二值图像顺时针转动一个固定的角度,设这个角度大小为θ ,每转动一次求出一组关于半径Ri和圆心坐标(xi, yi)的数值,设总共转动了M次,最后对这M组数值进行算术平均

这时得到的数值就是所要求的该鱼眼图像的半径R和圆心坐标(x, y)。

3 经纬映射图像校正鱼眼图像的具体算法

在对鱼眼图像求取中心点和进行形状校正之后,使用经纬映射图像的方法,把扭曲的半球鱼眼图像投射为普通照片的四方形状,也即通过投射降低图像的扭曲程度。从图1中可看出,若源鱼眼图像是单位球时,恢复后的经纬映射图比鱼眼照片的尺寸要大不少,用一一映射的方法,会在目标图上留下许多空隙点。所以采用从目标图像出发,反向计算源图像上对应点的坐标,使用多对一的映射关系取样像素。流程图如图4所示。

图4 经纬映射校正算法流程图

创建鱼眼投影需要知道照相机到实景中(球面上)每一点的向量,再由经纬映射图像上的点对球面上相应点进行纹理贴图。这就需要推导鱼眼投影平面到经纬映射图之间的关系。

假设鱼眼图像平面像素坐标(i, j)已经转换为范围在-1到1之间的规格化坐标(u, v)(图5(a))。从角鱼眼投影示意图可以看出,球面好像以一层一层同心圆的方式投影在鱼眼图像平面上。最后得到的在投影平面上的图像是圆形。设投影平面上任一点P(u, v),计算P到原点的距离r和P与U轴的夹角φ(图5(b))。

图5 两种坐标平面

在180°以上角鱼眼投影时,只有r≤1的点是有效的。计算r和φ的公式如下

r可以映射成球坐标系的, θ φ直接用于从照相机到实景方向向量的球坐标的ф,图6(a)中显示了鱼眼映射时的球坐标。θ角就是r乘以鱼眼视角 α(本文中选用的鱼眼图默认视角为π)的一半。即

假设球面半径为 1,从照相机(球原点)到实景中点的方向向量(x, y, z)为

由照相机到实景方向向量(x, y, z),就可以推导出在经纬映射图中对应的θ′Φ′坐标。由于在球面到经纬映射图时的球坐标和鱼眼映射时的极坐标不一样,因此,要进行重新选。

取球坐标系,采用图的球坐标系(θ′, Φ′),θ′是照相机到实景方向向量与y轴的夹角,Φ′是方向向量在XOZ平面上的投影与X负轴的夹角。图6 (b)描述球坐标系重新的选取。

图6 坐标系的重新选取

在新选取的球坐标系上,坐标(θ′,Φ′)公式如下

这样对于目标图像上每一点(i, j),通过一系列变换,可以映射到源图上的点(θ′, Φ′),经过目标图上每一点到源图的取样,这样鱼眼图像地校正算法就完成了。

4 实验结果及结论

角度模型是最基本的鱼眼投影模型;结合经纬映射图得到最简单的恢复算法。实验结果如下所示,图7、图8、图9展示了circular fisheye照片源图和校正后的对照。本算法不采用任何标定设备,使用方便,运算时间在十几秒之内。经纬映射图的特性决定,在南北两极的图像被严重拉伸。从实验结果看,由于没有精确的计算鱼眼镜头的视角大小,最终纠正的效果不是很令人满意,有些弯曲的地方未能调整为直线。

[1]Ying X, Hu Z, Zha H. Fisheye lenses calibration using straight-line spherical perspective projection constraint [C]//ACCV, 2006, Proc. of 7th Asian Conf.on Computer Vision. India:Hyderabad, ACCV, 2006:591-600.

[2]Mundhenk T N, Rivett M J, Liao X A. Techniques for fisheye lens calibration using a minimal number of measurements [C]//SPIE, 2000, Proc. of Intelligent Robotics and Computer Vision Conference. Boston:SPIE, 2000:181-190.

[3]容观澳. 计算机图像处理[M]. 北京:清华大学出版社, 2002:206-207.

[4]英向华, 胡占义. 一种基于球面投影约束的鱼眼镜头校正方法[J]. 计算机学报, 2003, 26(12):1702-1708.

[5]唐 俊, 赵为明, 谷 峰. 基于鱼眼图像的全景漫游模型[J]. 微机发展, 2003, 13(2):69-70.

[6]黄有度, 苏化明. 一种鱼眼图像到透视投影图像的变换模型[J]. 系统仿真学报, 2005, 17(1):29-32.

The Designing Methods of Fish-eye Distortion Correction Using Latitude-longitude Projection

YANG Ling1, CHENG Yun2
( 1. Binjiang College, Nanjing University of Information Science and Technology, Nanjing Jiangsu 210044, China;2. Department of Communication and Engineering, Hunan University of Humanities and Science and Technology, Loudi Hunan 417000, China )

For correcting the distortion caused by fish-eye lens, this paper proposes fish-eye distortion correction methods using Latitude-longitude projection image. The paper deduces the mathematic basis of eliminating distortion, summarizes and proposes a efficient fish-eye image distortion correction algorithm without any marking data. The use of Latitude-longitude image correction method can reduce the distortion of image in the way of projecting the distorted hemispheric fish-eye images into square shape as general photos, which greatly satisfies the practical requests.

computer graphics; latitude-longitude projection image; fish-eye image; fish-eye distortion correction

TP 391

A

1003-0158(2010)06-0019-04

2009-03-13

湖南省自然科学基金资助项目(07JJ6116);湖南省重点建设学科资助项目

杨 玲(1981-),女,湖南娄底人,讲师,硕士,主要研究方向为图形图像,信号处理。

猜你喜欢
鱼眼经纬球面
面向鱼眼图像的人群密度估计
经纬股份
关节轴承外球面抛光加工工艺改进研究
工会经纬
转体桥大直径球面平铰底部混凝土密实度控制
球面检测量具的开发
深孔内球面镗刀装置的设计
微信扫一扫马上看视频鱼眼视频 小程序每天带你看最有意思的摄影视频
市场经纬
鱼眼明目鱼头补脑是真的吗?