1. 什么是视觉

视觉是一个古老的研究课题,同时又是人类观察世界、认知世界的重要功能和手段。人类从外界获得的信息约有75%来自视觉系统,用机器模拟人类的视觉功能是人们多年的梦想。视觉神经生理学,视觉心里学,特别是计算机技术、数字图像处理、计算机图形学、人工智能等学科的发展,为利用计算机实现模拟人类的视觉成为可能。在现代工业自动化生产过程中,计算机视觉正成为一种提高生产效率和检验产品质量的关键技术之一,如机器零件的自动检测、智能机器人控制、生产线的自动监控等;在国防和航天等领域,计算机视觉也具有较重要的意义,如运动目标的自动跟踪与识别、自主车导航及空间机器人的视觉控制等。

人类视觉过程可以看作是一个从感觉到知觉的复杂过程,从狭义上来说视觉的最终目的是要对场景作出对观察者有意义的解释和描述;从广义上说,是根据周围的环境和观察者的意愿,在解释和描述的基础上做出行为规划或行为决策。计算机视觉研究的目的使计算机具有通过二维图像信息来认知三维环境信息的能力,这种能力不仅使机器能感知三维环境中物体的几何信息(如形状、位置、姿态运动等),而且能进一步对它们进行描述、存储、识别与理解,计算机视觉己经发展起一套独立的计算理论与算法。

2. 什么是计算机双目立体视觉

双目立体视觉(Binocular StereoVision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法。融合两只眼睛获得的图像并观察它们之间的差别,使我们可以获得明显的深度感,建立特征间的对应关系,将同一空间物理点在不同图像中的映像点对应起来,这个差别,我们称作视差(Disparity)图像,如图一。

双目立体视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场的在线、非接触产品检测和质量控制。对运动物体(包括动物和人体形体)测量中,由于图像获取是在瞬间完成的,因此立体视觉方法是一种更有效的测量方法。

双目立体视觉系统是计算机视觉的关键技术之一,获取空间三维场景的距离信息也是计算机视觉研究中最基础的内容。

双目立体视觉的开创性工作始于上世纪的60年代中期。美国MIT的Roberts通过从数字图像中提取立方体、楔形体和棱柱体等简单规则多面体的三维结构,并对物体的形状和空间关系进行描述,把过去的简单二维图像分析推广到了复杂的三维场景,标志着立体视觉技术的诞生。随着研究的深入,研究的范围从边缘、角点等特征的提取,线条、平面、曲面等几何要素的分析,直到对图像明暗、纹理、运动和成像几何等进行分析,并建立起各种数据结构和推理规则。特别是上世纪80年代初,Marr首次将图像处理、心理物理学、神经生理学和临床精神病学的研究成果从信息处理的角度进行概括,创立了视觉计算理论框架。这一基本理论对立体视觉技术的发展产生了极大的推动作用,在这一领域已形成了从图像的获取到最终的三维场景可视表面重构的完整体系,使得立体视觉已成为计算机视觉中一个非常重要的分支。

经过几十年来的发展,立体视觉在机器人视觉、航空测绘、反求工程、军事运用、医学成像和工业检测等领域中的运用越来越广。

3. 双目立体视觉系统

立体视觉系统由左右两部摄像机组成。如图二所示,图中分别以下标l和r标注左、右摄像机的相应参数。世界空间中一点A(X,Y,Z)在左右摄像机的成像面Cl和Cr上的像点分别为al(ul,vl)和ar(ur,vr)。这两个像点是世界空间中同一个对象点A的像,称为“共轭点”。知道了这两个共轭像点,分别作它们与各自相机的光心Ol和Or的连线,即投影线alOl和arOr,它们的交点即为世界空间中的对象点A(X,Y,Z)。这就是立体视觉的基本原理。

4. 博安盈双目立体视觉系统:平行光轴的系统结构

在平行光轴的立体视觉系统中(图三),左右两台摄像机的焦距及其它内部参数均相等,光轴与摄像机的成像平面垂直,两台摄像机的x轴重合,y轴相互平行,因此将左摄像机沿着其x轴方向平移一段距离b(称为基线baseline)后与右摄像机重合。

由空间点A及左右两摄像机的光心Ol、Or确定的极平面(Epipolar plane)分别与左右成像平面Cl、Cr的交线pl、pr为共轭极线对,它们分别与各自成像平面的坐标轴ul、ur平行且共线。在这种理想的结构形式中,左右摄像机配置的几何关系最为简单,极线已具有很好的性质,为寻找对象点A在左右成像平面上的投影点al和ar之间的匹配关系提供了非常便利的条件。

5. 双目立体视觉智能视频分析技术

恢复场景的3D信息是立体视觉研究中最基本的目标,为实现这一目标,一个完整的立体视觉系统通常包含六个模块:图像获取、摄像机标定、特征提取、立体匹配、三维恢复和视频分析(运动检测、运动跟踪、规则判断、报警处理)。

5.1. 图像获取(ImageAcquisition)

数字图像的获取是立体视觉的信息来源。常用的立体视觉图像一般为双目图像,有的采用多目图像。图像获取的方式有多种,主要由具体运用的场合和目的决定。立体图像的获取不仅要满足应用要求,而且要考虑视点差异、光照条件、摄像机性能和场景特点等方面的影响。

5.2. 摄像机标定(CameraCalibration)

立体视觉系统摄像机标定是指对三维场景中对象点在左右摄像机图像平面上的坐标位置al(ul,vl)、ar(ur,vr)与其世界空间坐标A(X,Y,Z)之间的映射关系的确立,是实现立体视觉三维模型重构中基本且关键的一步。

5.3. 特征提取(FeatureAcquisition)

特征提取的目的是要获取匹配赖以进行的图像特征,图像特征的性质与图像匹配的方法选择有着密切的联系。目前,还没有建立起一种普遍适用的获取图像特征的理论,因此导致了立体视觉研究领域中匹配特征的多样化。特征可以是像素相位匹配是近二十年才发展起来的一类匹配算法。相位作为匹配基元,本身反映信号的结构信息,对图像的高频噪声有很好的抑制作用,适于并行处理,能获得亚像素级精度的致密视差。但存在相位奇点和相位卷绕的问题,需加入自适应滤波器解决。或者是像素的集合,也可以是它们的抽象表达,如图像结构、图像目标和关系结构等。常用的匹配特征主要有点状特征、线状特征和区域特征等几种情形。

一般而言,尺度较大的图像特征蕴含较多的图像信息,且特征本身的数目较少,匹配效率高;但特征的提取和描述过程存在较大的困难,定位精度也较差。而对于尺度较小的图像特征来说,对其进行表达和描述相对简单,定位精度较高;但由于其本身数目较多,所包含的图像信息少,在匹配时需要采用较严格的约束条件和匹配策略,以尽可能地减少匹配歧义和提高匹配效率。总的来说,好的匹配特征应该具有要可区分性、不变性、唯一性以及有效解决匹配歧义的能力。

5.4. 图像匹配(ImageMatching)

在立体视觉中(图二、图三),图像匹配是指将三维空间中一点A(X,Y,Z)在左右摄像机的成像面Cl和Cr上的像点al(ul,vl)和ar(ur,vr)对应起来。图像匹配是立体视觉中最重要也是最困难的问题,一直是立体视觉研究的焦点。当空间三维场景经过透视投影(PerspectiveProjection)变换为二维图像时,同一景物在不同视点的摄像机图像平面上的成像会发生不同程度的扭曲和变形,而且场景中的光照条件、被测对象的几何形状和表面特性、噪声干扰和畸变、摄像机特性等诸多因素的影响都被集中体现在单一的图像灰度值中。显然,要对包含了如此之多不利因素的图像进行准确匹配是很不容易的。

5.5. 三维恢复(3DReconstruction)

在完成立体视觉系统的摄像机标定和图像匹配工作以后,就可以进行被测对象表面点的三维信息恢复。影响三维测量精度的因素主要有摄像机标定误差、CCD成像设备的数字量化效应、特征提取和匹配定位精度等。

5.6. 视频分析(运动检测、运动跟踪、规则判断、报警处理)

通过视差计算,得到全屏幕的视差图像后,采用背景建模的方式,得到运动前景物体的视差图像,再进行膨胀和腐蚀算法进行图像预处理,得到完整的可供分析的前景运动物体视差图。采用运动跟踪算法,全屏实时检测物体的大小、运动轨迹,并与事先设置的规则进行对比,如果有人进入或离开设置报警区域,系统则实时报警。

5.7. 视差效果图:


注:过滤掉距离地面60cm以内,200cm以上的视差值,即检测范围为60-200cm之间。故左边蹲下的人没有视差值。

双目立体视觉简单介绍相关推荐

  1. 基于深度学习算法和传统立体匹配算法的双目立体视觉

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 01 立体视觉是什么? 在开始之前,我相信很多站友都会有这个疑问, ...

  2. 教你如何提高双目立体视觉系统的精度

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 来源:https://blog.csdn.net/rs_lys/article/details/107 ...

  3. 聊聊三维重建-双目立体视觉原理

    原文首发于微信公众号「3D视觉工坊」--聊聊三维重建-双目立体视觉原理 作首:Tengfei Jiang https://zhuanlan.zhihu.com/p/81016834 本文已由原作者授权 ...

  4. 双目立体视觉及正交偏振 3D 显示

    人眼的双目立体视觉成像人类最神秘最完美的身体构造之一,了解人眼的基本构造和视觉成像处理过程,对于 3D 显示技术具有极大的启发.本文主要对人眼的基本构造.视觉成像系统进行简单介绍,并对基于此立体视觉原 ...

  5. 深度相机---(3)双目立体视觉

    导读 为什么非得用双目相机才能得到深度? 双目立体视觉深度相机的工作流程 双目立体视觉深度相机详细工作原理 理想双目相机成像模型 极线约束 图像矫正技术 基于滑动窗口的图像匹配 基于能量优化的图像匹配 ...

  6. 双目立体视觉 II:块匹配视差图计算

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:Ali Yasin Eser 编译:ronghuaiyang(AI 公园) 导读 双目立体视觉的 ...

  7. 双目立体视觉几何框架详解

    一.图像坐标系:世界坐标系 (1)图像坐标和世界坐标(A) 视觉系统的三大坐标系:世界坐标系,摄像机坐标系和图像坐标系.     世界坐标系(XW,YW,ZW):其是目标物体位置的参考系.除了无穷远, ...

  8. 双目立体视觉(双摄测距)

    基于双目立体视觉的深度相机类似人类的双眼,和基于TOF.结构光原理的深度相机不同,它不对外主动投射光源,完全依靠拍摄的两张图片(彩色RGB或者灰度图)来计算深度,因此有时候也被称为被动双目深度相机.比 ...

  9. 双目视觉焦距_深度相机原理揭秘--双目立体视觉

    深度相机原理揭秘--双目立体视觉 博文来源:http://www.sohu.com/a/203027140_100007727 导读 为什么非得用双目相机才能得到深度? 双目立体视觉深度相机的工作流程 ...

最新文章

  1. Linux概念架构的理解
  2. Linux echo 显示内容颜色
  3. python语句first、*middles_Python语句print('%d%%%d'%(3/2, 3%2))的运行结果是( 1 )。_学小易找答案...
  4. Winfrom窗体间传值
  5. SLAM: Orb_SLAM的使用小综述
  6. 音频光端机的必备要素有哪些?
  7. 计算机原理期中考试,计算机组成原理期中考试试题
  8. 计算机网络学习笔记(六)——网络层、虚电路和数据报交换、路由(距离矢量、链路状态算法)、IP编址、网络拥塞控制、网络互联
  9. 【转】js版的俄罗斯方块!!
  10. css-modules,可视化介绍CSS Modules是什么?
  11. fbx模型加载的材质球路径
  12. 利用Kafka发送/消费消息-Java示例
  13. 赚不到钱的5大原因!
  14. java jbpm工作流_[JAVA] Jbpm工作流引擎原理及Jbpm复杂流程实现视频课程
  15. 元器件保护必备知识——静电防护
  16. 关于平面设计知识,设计师需要懂得印刷常识——黎乙丙
  17. CMS漏洞检测工具 – CMSmap
  18. 基于python语言设计的词云定制器
  19. ROS安装与机器人环境配置总结
  20. 最新 PhpStorm 2018 安装及破解方法

热门文章

  1. 国外网络推广的方式有哪些?海外自媒体平台推广你真的会做吗?
  2. 云服务器与VPS的区别
  3. 在PyCharm中导入和使用arcpy
  4. 第1章 人机交互与用户体验
  5. Debian手动安装LNMPA环境及相关配置
  6. JAVA XML转对象 对象转XML
  7. 关于拦截器与过滤器使用场景、拦截器与过滤器的区别整理
  8. js删除json中指定的元素
  9. FreeRTOS-时间片与任务阻塞的实现
  10. 微信小程序制作简单的商品列表页,实现价格求和