王赛男 刘涛 左震宇

摘   要:鱼眼镜头的拍摄角度大,成像角度宽,但是在进行图像采集和成像的过程中存在大量畸变,直接使用采集而来的图像很难满足实际需求,因此需要对图像进行后续处理。本文根据摄像机参数和机器视觉技术进行鱼眼镜头图像畸变矫正算法的研究,首先介绍了鱼眼镜头的成像原理,然后介绍了常用鱼眼镜头校正算法,并基于经纬度的校正算法提出了一种基于圆分割的鱼眼图像畸变校正算法。通过Matlab验证算法表明:本算法可以对鱼眼镜头产生的畸变进行快速校正。

关键词:鱼眼镜头  桶形畸变  画圆弧曲线拟合  畸变校正算法

中图分类号:TP391                                 文献标识码:A                       文章编号:1674-098X(2020)06(b)-0009-02

鱼眼镜头是一种超广角镜头的特殊镜头,因与鱼的眼睛颇为相似而因此得名“鱼眼镜头”[1]。鱼眼镜头是建立全景视觉系统最有效的方法之一。它具有视角大、被摄范围广、结构紧凑、成像清晰等特点,因其视场很大经常应用在车载影像系统中,用于汽车全景影像的图像采集[2]。鱼眼镜头虽然具有超大视角特点,但是它也有严重的畸变,当距离很近的时候,镜头所产生的桶形畸变会明显增大。

1  常用畸变校正算法

1.1 经纬校正算法

经纬校正算法是运用逆向映射的方法,从二维平面目标图出发,逆向计算鱼眼图像上相对点的方法,然后通过双线性插值法计算对应像素值。其具体过程是首先将目标图像的坐标(i,j)进行坐标转化,转化为双精度值(α,β),然后将双精度值转化为球面三点坐标系坐标(x,y,z),根据球面坐标映射到鱼眼图像对应的坐标(u,v),最后利用双线性插值法得到目标图像点(i,j)的灰度值[3-4]。

1.2 边缘直线拟合算法

边缘直线拟合算法在相机参数已知的情况下,基于边缘直线拟合技术进行畸变校正[5]。采用边缘直线拟合算法时首先要对相机进行标定,采用黑白棋盘作为参照物求出眼相机镜头的光心,首先,建立一个容器(其数据类型为点的横、纵坐标值)。采集原图中棋盘格的特征点,其次,根据棋盘特征点,采用线性插值法,将原图中每一个点到光心的距离对应到校正图的距离中,将满足要求的特征点在校正图中的像素坐标保存在容器中。最后,将上述得到校正后的2D或3D点集输入到直线拟合函数中。

2  画圆弧曲线拟合畸变校正算法

基于经度坐标对鱼眼图像进行校正和边缘直线拟合算法是目前常用的鱼眼镜头畸变校正算法,但是经纬度坐标算法在垂直方向校正结果较好而在水平方向仍然存在严重畸变,而边缘直线拟合算法需要首先对镜头进行标定,针对这两点缺点,本文提出了一种画圆弧曲线拟合畸变校正算法,该算法在水平方向校正效果好,校正过程简单,可不对镜头进行标定,简化了校正流程,减少了校正时间,该算法拟通过对图像底部发生畸变最大的圆进分析,并引入带加权的偏差校正系数从而建立校正模型,最终实现鱼眼图畸变图像的校正。

假设鱼眼图像长W,宽H,图中点N的坐标为(x,y),图像中心点坐标为(W/2,H/2),设矫正后N点对应的图像坐标为(u,v),则在鱼眼图像中点N到图像中心点距离为r,根据距离公式可得由公式(1)得到r:

本算法利用坐标映射方法,建立一个容器,该容器存放位置点的横、纵坐标值,建立畸变图像与校正后图像的映射关系,将映射关系存储在容器中,采取一一映射的方法生成图像。本算法首先根据图像边缘最大畸变曲线进行椭圆拟合,获得边缘椭圆半径r',校正后的图像中像素的坐标与原图像中点坐标的映射函数如公式(2)、(3)所示:

u,v为畸变矫正后的像素坐标,β为校正偏差系数,偏差系数与被校正坐标的位置相关,z为,为调整系数,不同摄像头的调整系数不同。经过计算后,将原图中坐标点的像素灰度值赋到新求出的u,v坐标位置上。

3  仿真结果分析

图1所示为鱼眼镜头畸变校正前棋盘格置于鏡头前的图片,本算法首先将棋盘格置于镜头前,获取畸变最大的弧线,然后利用Matlab获取边缘畸变曲线的各个点坐标。图2所示为采用本算法后畸变校正后的图像,仿真结果表明,采用画圆弧法畸变校正算法后能够很好的校正鱼眼镜头产生的桶形畸变,尤其在图像边缘校正效果明显。

4  结语

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

参考文献

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

[2] 王赛男,孟显娇,鲜鑫.基于机器视觉的鱼眼镜头畸变校正算法[J].数字技术与应用,2018(10):141-142.

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

[4] 刘亿静,苗长云,杨彦利.基于经纬映射的径向畸变快速校正算法的研究[J].激光杂志,2015(1):1-4.

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

作者简介:王赛男(1987,6—),女,汉族,辽宁沈阳人,硕士研究生,讲师,研究方向:图像处理。

鱼眼图像畸变校正matlab,鱼眼镜头畸变校正算法的设计相关推荐

  1. 鱼眼校正c语言算法,一种鱼眼图像逆向经纬映射的快速校正算法

    1. 引言 鱼眼镜头因其焦距短,视场大,拍摄图像信息量大等优点,在安防监控.360度汽车成像仪等领域中得到广泛应用.但鱼眼镜头在获得大视场的同时,会产生严重的图像畸变问题 [1] [2] .通过鱼眼镜 ...

  2. matlab鱼眼镜头,普通镜头,单目双目相机标定校正(四)

    写这篇文章的目的,是记录相机标定过程和问题,经过试验,记录问题 1.单目相机与双目相机的标定.区别.目的 2.相机拍照时,距离标定板的距离 3.填写参数时.黑白格的大小有影响? 4.参数的设置 5.拍 ...

  3. 【图像提取】基于matlab鱼眼图像有效区域提取【含Matlab源码 2186期】

    一.鱼眼图像 1 鱼眼图像研究 随着信号处理和图像处理技术的发展,基于鱼眼全景监控摄像头的视觉处理技术得到快速发展,中国已于2013年底发射"嫦娥三号",搭载的"玉兔号& ...

  4. 【6】opencv采用映射技术实现鱼眼镜头校正和鱼眼镜头还原全景图。

    相关文章: [1]windows下安装OpenCV(4.3)+VS2017安装+opencv_contrib4.3.0配置 [2]Visual Studio 2017同时配置OpenCV2.4 以及O ...

  5. 图像处理--鱼眼图像

    鱼眼镜头--最开始(1919)是源于摄影的需求--因为鱼眼图像存在几何畸变>>>鱼眼校正的需求 发展: 装满水的针孔摄像机>>>半球形玻璃>>>在 ...

  6. 一种新型鱼眼图像轮廓提取算法

    from: http://www.scimao.com/read/2307651     摘 要:提取鱼眼图像轮廓是利用鱼眼图像的前提.传统提取鱼眼图像轮廓的扫描线逼近法对噪点抑制能力不强,精度差.本 ...

  7. 鱼眼图像畸变校正——透视变换

    本文转自:[opencv]鱼眼图像畸变校正--透视变换 http://m.blog.csdn.net/article/details?id=50786782 原图 球面透视投影(以空间左手坐标系,x轴 ...

  8. 鱼眼相机的成像模型与畸变校正

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨11号线人 来源丨十一号组织 "800万像素","250m测距能力 ...

  9. 鱼眼镜头畸变校正方法

    原文链接: http://blog.csdn.net/kfqcome/article/details/9411711 一 摄像机成像模型 成像的过程实质上是几个坐标系的转换.首先空间中的一点由世界坐标 ...

最新文章

  1. 民政部部长李纪恒:适龄人口生育意愿偏低,总和生育率破警戒线
  2. pyqt5教程13:客户定制组件
  3. Spark-SQL从MySQL中加载数据以及将数据写入到mysql中(Spark Shell方式,Spark SQL程序)
  4. python打开浏览器怎么写_使用python调用浏览器并打开一个网址的例子
  5. 海岸鸿蒙2018年标准物质,海岸鸿蒙——20年权威的标准物质研制单位
  6. oracle 两表两列数据对比_Oracle、PostgreSQL与Mysql数据写入性能对比
  7. 文本分类模型_多标签文本分类、情感倾向分析、文本实体抽取模型如何定制?...
  8. 兼容所有浏览器的设为首页收藏本站js代码,推荐使用
  9. phpstorm 2017.1 激活
  10. 蓝桥杯 ALGO-82 算法训练 输出米字形
  11. DIV CSS BackGround属性研究
  12. Android UI学习之Gallery
  13. Atitit TPL(事务处理语言 目录 1.1. 事务隔离级别 1 1.2. Savepoint技术 1 2. Tpl 1 2.1.  打开事务 START TRANSACTION; 1 2.2.
  14. matlab对数组切片操作
  15. Basic Sensor Calibration (1) -- 加速计传感器校准
  16. easyphp 12 mysql 启动_EasyPHP启用MYSQL报错
  17. Stata连享会:分享一大堆资料
  18. Android省市县三级联动 真实项目抽出 调用只需3行代码
  19. 苹果召回MacBook Air 内地官网声明用英文遭指责
  20. linux下write()和read()函数详解

热门文章

  1. Hudson插件开发入门体验
  2. 东野圭吾《梦幻花》读后感
  3. 人声计算机音乐,如何去除音乐中的人声?
  4. Accurately Say CocaCola!
  5. Windowbuilder中Swing的数据绑定
  6. SharePoint 2010 网站备份还原简单介绍
  7. Love Story
  8. 财务盈利、偿债能力指标
  9. fastapi获取访客真实ip
  10. 【Python基础第8期】任务1打卡