首页 基于OpenCV的双目立体视觉测距

基于OpenCV的双目立体视觉测距

举报
开通vip

基于OpenCV的双目立体视觉测距 - 52 - 基于 OpenCV 的双目立体视觉测距 罗 丹 1 廖志贤 2 (1.桂林电子科技大学信息与通信学院,广西 桂林 541004; 2.广西师范大学电子工程学院,广西 桂林 541002) 【摘 要】双目立体视觉测距原理就是利用两台摄像机从两个视点获取目标点在不同视角下形成的图像坐标,利用成像几 何模型计算同名像点图像坐标偏差,来获取目标点的三维坐标,从而实现距离测量,它在高速公路安全车距测量上有着极大的 应用前景。当前的测距技术有主动测距法和被动测距法,论文采用的是基于...

基于OpenCV的双目立体视觉测距
- 52 - 基于 OpenCV 的双目立体视觉测距 罗 丹 1 廖志贤 2 (1.桂林电子科技大学信息与通信学院,广西 桂林 541004; 2.广西师范大学电子工程学院,广西 桂林 541002) 【摘 要】双目立体视觉测距原理就是利用两台摄像机从两个视点获取目标点在不同视角下形成的图像坐标,利用成像几 何模型计算同名像点图像坐标偏差,来获取目标点的三维坐标,从而实现距离测量,它在高速公路安全车距测量上有着极大的 应用前景。当前的测距技术有主动测距法和被动测距法,论文采用的是基于OpenCV 的被动测距法,得到摄像机标定的参数和 立体匹配的对应特征点后,该测距算法较容易实现。经过实验验证,该算法在一定测量范围内达到精度要求。 【关键词】双目立体视觉;摄像机标定;立体匹配;测距 【中图分类号】TN911.73 【文献标识码】A 【文章编号】1008-1151(2011)04-0052-02 (一)引言 基于计算机视觉理论的视觉测距技术是今后发展的一个 重要方向,它在机器人壁障系统、汽车导航防撞系统等领域 有着广泛的应用前景。目前的测距方法主要有主动测距和被 动测距两种方法。论文采用的是被动测距法。被动测距法是 在自然光照条件下,根据被测物体本身发出的信号(如光信号) 来测量距离,主要包括立体视觉测距法、单目测距法、测角 被动测距法等。立体视觉测距法是仿照人类利用双目感知距 离信息的一种测距方法,直接模拟人的双眼处理景物,简便 可靠,但该方法的难点是选择合理的匹配特征和匹配准则。 双目立体视觉系统采用两台摄像机同时从两个不同视点 获取同一景物的多幅图像,即立体图像对,通过测量景物在 立体图像对中的视差,再利用双目视觉成像原理就可以计算 出目标到摄像机的距离。立体匹配采用OpenCV库中的块匹配 立体算法,在得到摄像机参数和匹配点后再利用最小二乘法 即可算出三维信息。 (二)双目立体视觉模型 首先介绍双目视觉所涉及到三个坐标系:世界坐标系、 摄像机坐标系和图像坐标系。世界坐标系中的点坐标记为 ( )WWW ZYXP ,, ,摄像机坐标系用 ( )ccc zyx ,, 表示。图 像坐标为摄像机所拍摄到的图像的二维坐标,一般有两种表 示方法: ( )vu, 是以像素为单位的图像坐标, ( )yx, 是以毫米为 单位的图像坐标。建立以毫米为单位的图像坐标是因为 ( )vu, 坐标只表示了像素在数字图像中的行数和列数,并没有表示 出该像素在数字图像中的物理位置。 图1为平行双目视觉模型,即参数相同的两个摄像机平行 放置,两光轴互相平行且都平行于z 轴,x 轴共线,两摄像 机光心的距离为B(即基线距)。图中O1、O2为左右两摄像机 的焦点,I1 、I2为左右摄像机的像平面,P1 、P2 分别是空 间点P(X,Y,Z)在左右像平面上的成像点,f是摄像机的焦距。 若视差d 定义为│P 1- P2│,则点P到立体视觉系统的距离 为: |21| PP BfZ −= (1) 图 1 平行双目视觉模型 (三)摄像机标定 摄像机标定是为了建立三维世界坐标与二维图像坐标之 间的一种对应关系。系统采用两个摄像机进行图像采集,设 定好两个摄像机之间的距离(即基线距),用摄像机同时采集 放在摄像机前的标定物。摄像机标定采用的是张正友的标定 方法,棋盘格大小为 30mm×30mm,角点数为 11×7。标定板 的规格如图 2 所示。 图 2 平面标定板规格 张正友的标定方法需要摄像机从不同角度拍摄标定板的 多幅图像。由于两个摄像机是向前平行放置的,且基线距固 定,所以只需摆放标定板的位置变化即可。摄像机为针孔成 2011 年第 4期 大 众 科 技 No.4,2011 (总第 140 期) DA ZHONG KE JI (Cumulatively No.140) 【收稿日期】2011-01-09 【作者简介】罗丹(1985-),女(壮族),广西河池人,桂林电子科技大学信息与通信学院硕士研究生,研究方向为图像 信号处理;廖志贤(1986-),男(壮族),广西百色人,广西师范大学电子工程学院硕士研究生,研究方向为信号处理与自动 控制。 万方数据 - 53 - 像模型,则空间点 ( )WWW ZYXP ,, 与图像点 ( )vup , 之间的映射 关系为: [ ] ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ 1 1 321 w w w Z Y X trrrAv u s (2) 为方便计算,使标定板所在平面的 Z 坐标均为 0,即 Zw=0 的 平面,则上式可变为: [ ] [ ] [ ] ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ 11 1 0 1 21321 w w w w w w Y X tRAY X trrA Y X trrrAv u s 其中,A 为摄像机的内参矩阵, ( , )R t 为摄像机外参矩阵,s 为尺度因子。令 [ ]Tww YXM 1~ = , [ ]Tvum 1~ = ,则上式可写为: MHms ~~ = (3) 其中, [ ] [ ] ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ === 333231 232221 131211 32121 hhh hhh hhh hhhtrrAH 为透视投影矩 阵,它是标定板上的点和其像点之间的映射。在已知空间点 和 其 对 应 像 点 后 , 可 根 据 最 小 二 乘 方 程 , 采 用 Levenberg-Marquardt 算法求解得到 H矩阵,并求出摄像机的 内外参数矩阵。一般摄像机都存在镜头畸变,且畸变会影响 标定结果,特别是径向畸变,因此只考虑一阶和二阶的径向 畸变。 (四)立体匹配 1.立体匹配算法 立体匹配是通过寻找同一空间景物在不同视点下投影图 像中像素间的一一对应关系。 立体匹配是匹配两个不同的摄像机拍摄得到图像的三维 点。立体匹配采用的是 OpenCV 提供的块匹配立体算法 cvFindStereoCorrespondenceBM,该算法使用了一个叫“绝 对误差累计”的小窗口(SAD)来查找立体校正后左右两幅图 像之间的匹配点。这个算法只查找两幅图像之间的强匹配点 (即强纹理)。 块匹配立体算法有以下三个步骤: (1)预过滤,使图像亮度归一化并加强图像纹理。 (2)沿着水平极线用 SAD 窗口进行匹配搜索。 (3)再过滤,去除坏的匹配点。 匹配过程通过在整幅图像滑动 SAD 窗口来完成。对左图 像上的每个特征而言,搜索右图像中的对应行以找到最佳匹 配。校正之后,每一行就是一条极线,因此右图上的匹配位 置就一定会在左图像的相同行上(即具有相同的 y坐标)。如 果特征有足够多的可检测的纹理,并位于右摄像机的视图内, 就可以找出对应的匹配位置。 2.视差效果图 视差图是经过左右图像的对应点匹配后得到的,从视差 图可以看出匹配的效果。若图像中的匹配点比较稠密(即匹 配点多),则得到的视差图和原图相似度就大;若图像中的匹 配点比较稀疏,则得到的视差图和原图相似度就小。论文采 用的匹配方法得到的视差图如图 3所示,图 4为原图。 图 3 视差图 图 4 原图 (五)双目视觉测距 1.双目立体视觉测距算法 在已知摄像机的内外参数的情况下,计算得到透视投影 矩阵,根据图像坐标系与世界坐标系的关系,则可以求出距 离信息。在双目视觉中,摄像机同时拍摄到同一个物体不同 角度的两张图像,由同一点在两幅图像中位置信息可计算出 它在世界坐标中的三维坐标。 ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ 1 1 341331321311 24 1 23 1 22 1 21 1 14 1 13 1 12 1 11 1 11 1 Z Y X mmmm mmmm mmmm kv u (4) ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ 1 1 342332322312 24 2 23 2 22 2 21 2 14 2 13 2 12 2 11 2 22 2 Z Y X mmmm mmmm mmmm kv u (5) 根据(4)式和(5)式,消去比例系数 k1 和 k2,可得到如下四个 方程组: 34 2 224 2 23 2 33 2 222 2 32 2 221 2 31 2 2 34 2 214 2 13 2 33 2 212 2 32 2 211 2 31 2 2 34 1 124 1 23 1 33 1 122 1 32 1 121 1 31 1 1 34 1 114 1 13 1 33 1 112 1 32 1 111 1 31 1 1 )()()( )()()( )()()( )()()( mvmZmmvYmmvXmmv mumZmmuYmmuXmmu mvmZmmvYmmvXmmv mumZmmuYmmuXmmu −=−+−+− −=−+−+− −=−+−+− −=−+−+− 其中,[ ]1ZYX 是世界坐标系下 P点的坐标,[ ]111 vu 和 [ ]122 vu 是 P点在左右图像上的像点。由于标定误差及图 像噪声的存在,以上四个方程为非线性的,因此可用最小二 乘法求出 P点的三维坐标。 2.实验结果 论文采用一个摄像机进行实验,按照图一的方法,现在 左位置点拍摄一幅图像,此时标定板位置保持不变,然后让 摄像机只在 X 轴方向移动基线的距离,在 Y 和 Z 轴方向都没 有移动,再在右位置点拍摄一幅图像,在左右拍摄点都拍摄 图像后,再换标定板的摆放方式,继续在左右拍摄点拍摄得 到左右图像,依此类推。实验采用左右各 9 幅图像来标定, 图像大小为 2304*1728,得到的标定结果如下: ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = 10 0 878.9691856.67 0 1135.030 1856.85 lA , ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = 100 874.6551853.420 1128.2501855.11 rA 外参数为: ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = 1.00000.0026-0.0040 0.00261.00000.0038 0.0040-0.0038-0.9999 R , ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = 3.31 2.43371- 199.4809 T (下转第 71 页) 万方数据 - 71 - 图 2 单线接入红外感应电路原理图 电路 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 :传感信号放大电路采用现有的技术,具体是 以集成电路 BISS0001 为核心组建的电路,主要有电阻 R1~ R6、R10~R12、电容器 C1~C4、C8~C10 和二极管 D2~D4 构 成,R12 与 C4 组成开关电路的导通时间的控制。开关控制线 路由双向可控硅 Q1、电阻 R9 和电容 C12 构成。热释电红外传 感感器 P1 的输出端与集成电路 BIS0001 的信号输入端,即 14 脚连接,降压取电线路的输出端与集成电路 BISS0001 的电源 输入端,即 1 脚连接,开关控制线路的输入端,即双向可控 硅Q1的控制极通过电阻R9与集成电路BISS0001的控制信号 输出端 2脚连接,负端 LED 驱动器在双向可控硅 Q1 的第一阳 极与 220V 的交流电之间。 单线取电线路为升压变压器 T1,变压器 T1 的初级的一端 与双向可控硅 Q1 的第二阳极连接,另一端接地,变压器 T1 的次级与稳压线路的输入端连接。 稳压线路有整流器、滤波器和稳压集成电路组成,电路 中整流器为二极管桥式整流器BR1,滤波器为电容器C14、C15, 稳压集成电路为 X7805,桥式整流器 BR1 的输入端与变压器 T1 的次级连接,输出端与地线之间并联滤波电容器 C14、C15, 并与 X7805 的输入端连接,X7805 的输出端与集成电路 BIS0001 的电源输入端,即 1 脚连接。 不同的传感信号放大电路有可能要求的电源电压之间, 因此与之匹配的单线取电线路(即变压器 T1)和稳压线路特 别是其中的稳压集成电路 X7805,应根据需要提供的电压选 用。单线取电线路的输入端与开关控制线路路中的双向可控 硅的第二阳极连接,输出端与稳压线路的输入端连接。 (五)实验分析 通过对样机实验的验证,单线接入红外感应电路在检测 到的范围内,能够迅速地把热释电红外传感器检测到的信号 送到 BISS0001 中进行处理,并控制双向可控硅 Q1 使 LED 驱 动电路迅速的导通。在无人的条件下,光源断开的节能效果。 该系统是单路控制红外感应电路,可以增加其稳定性; 变压器可以把体积变得更小,延时更精确。其优点:被动式 热释电红外传感器本身不发任何类型的辐射,器件功耗很小, 可以串联进 220v 电路中,价格低廉。由于 BISS0001 芯片的 特殊设计,对噪声抗干扰能力强,技术性能稳定,较易推广、 普及。 缺点:容易受各种热源、光源干扰;被动红外穿透力差, 人体的红外辐射容易被遮挡,不易被探头接收;易受射频辐 射的干扰;环境温度和人体温度接近时,探测灵敏度明显下 降,有时造成短时失灵。 【参考文献】 [1] 肖景和.红外线热释电与超声波遥控电路[M].民邮政出版 社,2003. [2] Paul Scherz.电子元器件与电路基础[M].夏建生,王仲奕,等 译.北京:电子工业出版社,2009. [3] 张桂红.实用新型电子元器件[M].京电子工业出版社, 2005. [4] 马凯,高洪涛.一种热红外探头的节能自动开关[J].科技创新 导报,2009(17). [5] 陈淑静.基于热释红外探头的电灯节能自动开关[J].山西电 子技术,2009(01). (上接第 53 页) 而实际设置两摄像机之间的距离为 200mm,可见标定得到 的 T 的 X 方向上的坐标为 199.4809mm,与实际设置的距离 200mm 很接近,旋转矩阵 R基本接近单位阵,说明两摄像机之 间基本没有旋转,符合论文所要求的双目视觉模型。 标定好之后,再进行立体标定,然后进行立体匹配,立 体匹配后取某些对应的匹配点,采用前文介绍的测距算法, 得到如下实验数据: 表 1 测距结果 序号 点对 计算的距离值 实际测量的距离 误差 1 (448,806) (1187,809) 505.645 500 1.129% 2 (442,1031) (1183,1038) 506.162 500 1.2324% 3 (829,991) (1209,994) 993.944 1000 0.6056% 4 (830,843) (1208,845) 996.254 1000 0.3746% 5 (975,971) (1168,977) 1978.79 2000 1.0605% 6 (1055,973) (1248,978) 1984.86 2000 0.757% 7 (1269,598) (1355,605) 4407.53 4700 6.2228% 8 (1137,598) (1224,604) 4361.55 4700 7.2011% 注:单位为毫米 (六)结论 本文主要研究基于 Opencv 的双目立体视觉的距离测量, 它在车载摄像机、安全车距、机器人壁障等场景中得到应用 广泛,是目前及将来研究的热点之一。由实验数据可知,在 摄像机标定和立体匹配后,根据 OpenCV 的测距算法,在 2米 的距离内,误差都是小于 1.5%,可见该算法还是能达到一定 的精度。由于标定误差、人为误差及其他因素的影响,如立 体匹配时只查找两幅图像之间的强匹配点(即强纹理),这些 因素的影响导致了在距离摄像机越远的地方测量得到的距离 信息精度越差。 【参考文献】 [1] 赵勋杰,高稚允.光电被动测距技术[J].光学技术,2003, 29(6):652-656. [2] Okutomi M,Kanade T. A multiple-baseline stereo [J]. IEEE transactions on Pattern Anal & Mch Intell, 1993,15(4):353-363. [3] 马林.基于双目视觉的图像三维重建[D].山东:山东大学, 2008. [4] 陈胜勇,刘盛.基于 OpenCV 的计算机视觉技术实现[M].北 京:科学出版社,2008. [5] Zhengyou Zhang. A Flexible New Technique for Camera Calibration[J].Pattern Analysis and Machine Intelligence, IEEE Transactions on.2000,22(11):1330-1334. 万方数据 基于OpenCV的双目立体视觉测距 作者: 罗丹, 廖志贤 作者单位: 罗丹(桂林电子科技大学信息与通信学院,广西,桂林,541004), 廖志贤(广西师范大学电子工程学院,广西,桂 林,541002) 刊名: 大众科技 英文刊名: DAZHONG KEJI 年,卷(期): 2011(4) 本文链接:http://d.g.wanfangdata.com.cn/Periodical_dgkj201104022.aspx
本文档为【基于OpenCV的双目立体视觉测距】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_509929
暂无简介~
格式:pdf
大小:1MB
软件:PDF阅读器
页数:4
分类:互联网
上传时间:2011-10-01
浏览量:138