当前位置:文档之家› 双目立体视觉SLAM研究

双目立体视觉SLAM研究

双目立体视觉SLAM研究
双目立体视觉SLAM研究

双目视觉成像原理

双目视觉成像原理 1.引言 双目立体视觉(Binocular Stereo Vision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法。融合两只眼睛获得的图像并观察它们之间的差别,使我们可以获得明显的深度感,建立特征间的对应关系,将同一空间物理点在不同图像中的映像点对应起来,这个差别,我们称作视差(Disparity)图。 双目立体视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场的在线、非接触产品检测和质量控制。对运动物体(包括动物和人体形体)测量中,由于图像获取是在瞬间完成的,因此立体视觉方法是一种更有效的测量方法。双目立体视觉系统是计算机视觉的关键技术之一,获取空间三维场景的距离信息也是计算机视觉研究中最基础的内容。 2.双目立体视觉系统 立体视觉系统由左右两部摄像机组成。如图一所示,图中分别以下标L和r标注左、右摄像机的相应参数。世界空间中一点A(X,Y,Z)在左右摄像机的成像面C L和C R上的像点分别为al(ul,vl)和ar(ur,vr)。这两个像点是世界空间中同一个对象点A的像,称为“共轭点”。知道了这两个共轭像点,分别作它们与各自相机的光心Ol和Or的连线,即投影线alOl和arOr,它们的交点即为世界空间中的对象点A(X,Y,Z)。这就是立体视觉的基本原理。 图1:立体视觉系统 3.双目立体视觉相关基本理论说明 3.1 双目立体视觉原理 双目立体视觉三维测量是基于视差原理,图2所示为简单的平视双目立体成像原理图,两摄像机的投影中心的连线的距离,即基线距为b。摄像机坐标系的原点在摄像机镜头的光心处,坐标系如图2所示。事实上摄像机的成像平面在镜头的光心后,图2中将左右成像平面绘制在镜头的光心前f处,这个虚拟的图像平面坐标系O1uv的u轴和v轴与和摄像机坐标系的x轴和y轴方向一致,这样可以简化计算过程。左右图像坐

视觉SLAM漫淡

视觉SLAM漫谈 1. 前言 开始做SLAM(机器人同时定位与建图)研究已经近一年了。从一年级开始对这个方向产生兴趣,到现在为止,也算是对这个领域有了大致的了解。然而越了解,越觉得这个方向难度很大。总体来讲有以下几个原因: ?入门资料很少。虽然国内也有不少人在做,但这方面现在没有太好的入门教程。《SLAM for dummies》可以算是一篇。中文资料几乎没有。 ?SLAM研究已进行了三十多年,从上世纪的九十年代开始。其中又有若干历史分枝和争论,要把握它的走向就很费工夫。 ?难以实现。SLAM是一个完整的系统,由许多个分支模块组成。现在经典的方案是“图像前端,优化后端,闭环检测”的三部曲,很多文献看完了自己实现不出来。 ?自己动手编程需要学习大量的先决知识。首先你要会C和C++,网上很多代码还用了11标准的C++。第二要会用Linux。第三要会cmake,vim/emacs及一些编程工具。第四要会用openCV, PCL, Eigen等第三方库。只有学会了这些东西之后,你才能真正上手编一个SLAM 系统。如果你要跑实际机器人,还要会ROS。 当然,困难多意味着收获也多,坎坷的道路才能锻炼人(比如说走着走着才发现Linux和C++才是我的真爱之类的。)鉴于目前网上关于视觉SLAM的资料极少,我于是想把自己这一年多的经验与大家分享一下。说的不对的地方请大家批评指正。 这篇文章关注视觉SLAM,专指用摄像机,Kinect等深度像机来做导航和探索,且主要关心室内部分。到目前为止,室内的视觉SLAM仍处于研究阶段,远未到实际应用的程度。一方面,编写和使用视觉SLAM需要大量的专业知识,算法的实时性未达到实用要求;另一方面,视觉SLAM生成的地图(多数是点云)还不能用来做机器人的路径规划,需要科研人员进一步的探索和研究。以下,我会介绍SLAM的历史、理论以及实现的方式,且主要介绍视觉(Kinect)的实现方式。 2. SLAM问题 SLAM,全称叫做Simultaneous Localization and Mapping,中文叫做同时定位与建图。啊不行,这么讲下去,这篇文章肯定没有人读,所以我们换一个讲法。 3. 小萝卜的故事 从前,有一个机器人叫“小萝卜”。它长着一双乌黑发亮的大眼睛,叫做Kinect。有一天,它被邪恶的科学家关进了一间空屋子,里面放满了杂七杂八的东西。

BumbleBee2 双目视觉系统技术说明

本文所包含的内容: 讲述了bumblebee 立体视觉的原理 讲述了bumblebee Demo 程序中各项参数的含义及如何调整 讲述了为什么在深度图像和重构的3D 图像中有无效的像素 本文的阅读方法: 红色字体是关键的地方 立体视觉 本文将试着去阐述立体视觉技术。阅读完本文后你将对数据如何在系统中流动和其间所有可调整的参数有一个更深入的了解。这将使你可以量身定做自己的系统来完成特殊的任务。 立体视觉的基本原理 立体视觉的任务是完成空间的测量,这种测量是基于空间上存在偏移的相机所采集到的图像的。立体视觉的处理过程可分为如下三步: 建立从不同观测角度所获得的同一场景图像特征的相关。 计算每幅图像中相同特征的相对位移 根据相机的几何结构,决定特征相对于相机的3D 位置 考虑如下两幅图片。这两幅图片取自一对存在水平偏移的Triclops 相机模型。我们可以在两幅图片中分别定义两个点A 和B 。点left A 对应于点right A ,同样的,点left B 对应于点right B 。 使用一把尺子,如果你测量一个点到图像边缘的水平距离,你会发现左图的这个距离比右图中对应点到图像边缘的水平距离要大。例如,左图中边缘到电话听筒的距离要大于右图中边缘到电话听筒的距离。我们就可以根据这个距离(也被叫做视差)来确定电话听筒到相机模型的距离。 我们把左图和右图中相同特征在各自坐标系中的值的差定义为视差。你会发现在两幅图中,图像上端到所匹配的特征的距离完全相同,这是因为相机是水平排列的,因此只有水平的位移。

于是特征A 的视差被定义成D(A) = x(A left ) – x(A right ),B 的则为D(B) = x(B left ) – x(B right ),其中x(A left )是A left 点的x 轴坐标。 如果你去计算D(A) 和D(B),你会发现 D(A)

基于双目立体视觉三维重建系统的制作流程

本技术公开了一种基于双目立体视觉三维重建系统,涉及三维重建系统技术领域;机箱的底部四角处均固定安装有行走轮,机箱的内部分别固定安装有蓄电池与处理计算机,机箱的上端分别固定安装有显示器与安装架,安装架上通过轴承座固定安装有主轴,主轴的下端固定安装有安装齿轮,安装齿轮与驱动齿轮相啮合,驱动齿轮固定安装有驱动电机的轴上,驱动电机通过螺栓安装在安装架上,主轴的上端固定安装有连接轴,连接轴为横向设置,连接轴的两端固定安装有双摄像头,连接轴的中上端固定安装有照明灯;本技术能够实现快速控制,稳定性高,且控制准确,操作简便,能够节省时间;使用方便,结构简单,且效率高,能够在检测时进行补光。 技术要求

1.一种基于双目立体视觉三维重建系统,其特征在于:包括机箱、行走轮、蓄电池、处理计算机、显示器、安装架、驱动齿轮、驱动电机、安装齿轮、主轴、连接轴、双摄像头、照明灯;机箱的底部四角处均固定安装有行走轮,机箱的内部分别固定安装有蓄电池与处理计算机,机箱的上端分别固定安装有显示器与安装架,安装架上通过轴承座固定安装有主轴,主轴的下端固定安装有安装齿轮,安装齿轮与驱动齿轮相啮合,驱动齿轮固定安装有驱动电机的轴上,驱动电机通过螺栓安装在安装架上,主轴的上端固定安装有连接轴,连接轴为横向设置,连接轴的两端固定安装有双摄像头,连接轴的中上端固定安装有照明灯,蓄电池通过导线与处理计算机、显示器的电源端电连接,双摄像头通过导线与处理计算机的输入端电连接,处理计算机的输出端分别与驱动电机、照明灯电连接,显示器与处理计算机的输入、输出端电连接。 2.根据权利要求1所述的一种基于双目立体视觉三维重建系统,其特征在于:所述显示器为触摸式显示屏。 3.根据权利要求1所述的一种基于双目立体视觉三维重建系统,其特征在于:所述行走轮为减震式万向行走轮。 4.根据权利要求1所述的一种基于双目立体视觉三维重建系统,其特征在于:所述驱动电机为低速电机。 5.根据权利要求1所述的一种基于双目立体视觉三维重建系统,其特征在于:所述照明灯为LED灯。 技术说明书 一种基于双目立体视觉三维重建系统 技术领域 本技术属于三维重建系统技术领域,具体涉及一种基于双目立体视觉三维重建系统。 背景技术

双目视觉成像原理讲解学习

双目视觉成像原理

双目视觉成像原理 1.引言 双目立体视觉(Binocular Stereo Vision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法。融合两只眼睛获得的图像并观察它们之间的差别,使我们可以获得明显的深度感,建立特征间的对应关系,将同一空间物理点在不同图像中的映像点对应起来,这个差别,我们称作视差(Disparity)图。 双目立体视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场的在线、非接触产品检测和质量控制。对运动物体(包括动物和人体形体)测量中,由于图像获取是在瞬间完成的,因此立体视觉方法是一种更有效的测量方法。双目立体视觉系统是计算机视觉的关键技术之一,获取空间三维场景的距离信息也是计算机视觉研究中最基础的内容。2.双目立体视觉系统 立体视觉系统由左右两部摄像机组成。如图一所示,图中分别以下标L和r标注左、右摄像机的相应参数。世界空间中一点A(X,Y,Z)在左右摄像机的成像面C L和C R上的像点分别为al(ul,vl)和ar(ur,vr)。这两个像点是世界空间中同一个对象点A的像,称为“共轭点”。知道了这两个共轭像点,分别作它们与各自相机的光心Ol和Or的连线,即投影线alOl和arOr,它们的交点即为世界空间中的对象点A(X,Y,Z)。这就是立体视觉的基本原理。

图1:立体视觉系统 3.双目立体视觉相关基本理论说明 3.1 双目立体视觉原理 双目立体视觉三维测量是基于视差原理,图2所示为简单的平视双目 立体成像原理图,两摄像机的投影中心的连线的距离,即基线距为b 。摄像机坐标系的原点在摄像机镜头的光心处,坐标系如图2所示。事实上摄像机的成像平面在镜头的光心后,图2中将左右成像平面绘制在镜头的光心前f 处,这个虚拟的图像平面坐标系O1uv 的u 轴和v 轴与和摄像机坐标系的x 轴和y 轴方向一致,这样可以简化计算过程。左右图像坐标系的原点在摄像机光轴与平面的交点O1和O2。空间中某点P 在左图像和右图像中相应的坐标分别为P1(u1,v1)和P2(u2,v2)。假定两摄像机的图像在同一个平面上,则点P 图像坐标的Y 坐标相同,即v1=v2。由三角几何关系得到: c c 1z x f u = c c 2z )b -x (f u = v 1 c c 21z y f v v ==

双目立体视觉的水下应用

双目立体视觉的水下应用 从图像预处理、相机标定、立体匹配三个方面论述了双目视觉在水下场景的应用,比较了与空气环境中应用的不同,对水下双目视觉发展趋势做了分析。 标签:水下双目视觉;相机标定;立体匹配 Abstract:This paper discusses the application of binocular vision in underwater scene from three aspects of image preprocessing,camera calibration and stereo matching,compares the application of binocular vision with that in air environment,and analyzes the development trend of underwater binocular vision. Keywords:underwater binocular vision;camera calibration;stereo matching 引言 双目立体视觉技术利用视差理论恢复像素的深度信息和三维坐标,通过获取左右两个视角下同时采集的两幅图像恢复三维场景信息,还原真实的三维世界,为导航提供目标的位置信息描述,是被动式视觉测量技术的一种。作为计算机视觉的一个重要分支,双目立体视觉技术模型简洁,运算高效,有着广阔的应用前景。而随着海洋科学技术的发展和人类对海洋资源探索的逐渐深入,双目视觉技术逐渐被应用到海洋探测,在对水下目标的监控、海底地形测绘、海流测量、水下军事设施的探测和侦查等方面都有着广泛的应用。 双目立体视觉系统模拟人眼,通过三角测量原理来获取图像的视差,进而得到目标三维信息,一般由以下几个功能模块组成:图像采集,相机标定,立体匹配,三维重建。常规的双目视觉大多是在单一介质的空气中,而由于水下环境的特殊性,往往存在光的散射,吸收效应等不利因素的干扰,相关技术方法也应随环境作适应性调整。本文从图像处理,相机标定,立体匹配这三个方面在水下场景的应用做了论述,阐明了与单一空气介质环境中的不同,并对水下双目立体视觉技术的发展做了展望。 1 成像模型 双目立体视觉用到的模型一般是线性的针孔模型,该模型是双目立体视觉中成像的基本模型,将相机理想化,并把空间点投影视为中心,投影未考虑镜头畸变和环境等其他因素,所以也叫线性摄像机模型。而水下成像模型则是考虑到折射的影响,对此做相应补偿和修正。 在双目立体视觉系统中,为了研究空间点和像点的投影关系,通常会用到4个坐标系:世界坐标系OW-XWYWXW、相机坐标系O-xyz、图像物理坐标系O-XY和图像像素坐标系Of-uv。

双目视觉原理

Bumblebee 双目测量基本原理 一.双目视觉原理: 双目立体视觉三维测量是基于视差原理。 图 双目立体成像原理 其中基线距B=两摄像机的投影中心连线的距离;相机焦距为f 。 设两摄像机在同一时刻观看空间物体的同一特征点(,,)c c c P x y z ,分别在“左眼”和“右眼”上获取了点P 的图像,它们的图像坐标分别为(,)left left left p X Y =,(,)right right right p X Y =。 现两摄像机的图像在同一个平面上,则特征点P 的图像坐标Y 坐标相同,即 left right Y Y Y ==,则由三角几何关系得到: () c left c c rig h t c c c x X f z x B X f z y Y f z ?=???-=???=? ? (1-1) 则视差为:left right D isparity X X =-。由此可计算出特征点P 在相机坐标系下的三维坐标为: left c c c B X x D isp a rity B Y y D isp a rity B f z D isp a rity ? =???= ?? ?= ?? (1-2) 因此,左相机像面上的任意一点只要能在右相机像面上找到对应的匹配点,就可以确定出该点的三维坐标。这种方法是完全的点对点运算,像面上所有点只要存在相应的匹配点,

就可以参与上述运算,从而获取其对应的三维坐标。 二.立体视觉测量过程 1.图像获取 (1) 单台相机移动获取 (2) 双台相机获取:可有不同位置关系(一直线上、一平面上、立体分布) 2.相机标定:确定空间坐标系中物体点同它在图像平面上像点之间的对应关系。 (1)内部参数:相机内部几何、光学参数 (2)外部参数:相机坐标系与世界坐标系的转换 3.图像预处理和特征提取 预处理:主要包括图像对比度的增强、随机噪声的去除、滤波和图像的增强、伪彩色处理等; 特征提取:常用的匹配特征主要有点状特征、线状特征和区域特征等 4.立体匹配:根据对所选特征的计算,建立特征之间的对应关系,将同一个空间物理点在不同图像中的映像点对应起来。 立体匹配有三个基本的步骤组成:1)从立体图像对中的一幅图像如左图上选择与实际物理结构相应的图像特征;2)在另一幅图像如右图中确定出同一物理结构的对应图像特征;3)确定这两个特征之间的相对位置,得到视差。其中的步骤2是实现匹配的关键。 5.深度确定 通过立体匹配得到视差图像之后,便可以确定深度图像,并恢复场景3-D信息。 三.Triclops库中的数据流程 Triclops库中的数据流程如下图所示。系统首先从相机模型中获得raw格式的图像,最终将其处理成深度图像。在系统中有两个主要的处理模块。第一个处理模块是一个应用了低通滤波、图像校正和边缘检测的预处理模块。第二个处理模块用来做立体匹配、结果确认和亚像素插值。最后的处理结果就是一幅深度图像。 1.预处理(Pre-processing)

多维度对比激光SLAM与视觉SLAM

多维度对比激光SLAM与视觉SLAM SLAM(同步定位与地图构建),是指运动物体根据传感器的信息,一边计算自身位置,一边构建环境地图的过程,解决机器人等在未知环境下运动时的定位与地图构建问题。目前,SLAM 的主要应用于机器人、无人机、无人驾驶、AR、VR 等领域。其用途包括传感器自身的定位,以及后续的路径规划、运动性能、场景理解。 由于传感器种类和安装方式的不同,SLAM 的实现方式和难度会有一定的差异。按传感器来分,SLAM 主要分为激光SLAM 和VSLAM 两大类。其中,激光SLAM 比VSLAM 起步早,在理论、技术和产品落地上都相对成熟。基于视觉的SLAM 方案目前主要有两种实现路径,一种是基于RGBD 的深度摄像机,比如Kinect;还有一种就是基于单目、双目或者鱼眼摄像头的。VSLAM 目前尚处于进一步研发和应用场景拓展、产品逐渐落地阶段。 激光SLAM:早在2005 年的时候,激光SLAM 就已经被研究的比较透彻,框架也已初步确定。激光SLAM,是目前最稳定、最主流的定位导航方法。 激光SLAM 地图构建 VSLAM(基于视觉的定位与建图):随着计算机视觉的迅速发展,视觉SLAM 因为信息量大,适用范围广等优点受到广泛关注。 (1)基于深度摄像机的Vslam,跟激光SLAM 类似,通过收集到的点云数据,能直接计算障碍物距离; (2)基于单目、鱼眼相机的VSLAM 方案,利用多帧图像来估计自身的位姿变化,再通过累计位姿变化来计算距离物体的距离,并进行定位与地图构建; 视觉SLAM 地图构建,图片来源:百度AI 一直以来,不管是产业界还是学术界,对激光SLAM 和VSLAM 到底谁更胜一筹,谁是未来的主流趋势这一问题,都有自己的看法和见解。下面就简单从几个方面对比了一下

双目立体视觉技术的实现及其进展

双目立体视觉技术的实现及其进展 摘要:阐述了双目立体视觉技术在国内外应用的最新动态及其优越性。指出双目体视技术的实现分为图像获取、摄像机标定、特片提取、立体匹配和三维重建几个步骤,详细分析了各个步骤的技术特点、存在的问题和解决方案,并对双目体视技术的发展做了展望。 关键词:双目立体视觉计算机视觉立体匹配摄像机标定特征提取 双目立体视觉是计算机视觉的一个重要分支,即由不同位置的两台或者一台摄像机(CCD)经过移动或旋转拍摄同一幅场景,通过计算空间点在两幅国像中的视差,获得该点的三维坐标值。80年代美国麻省理工学院人工智能实验室的Marr提出了一种视觉计算理论并应用在双睛匹配上,使两张有视差的平面图产生在深度的立体图形,奠定了双目立体视觉发展理论基础。相比其他类的体视方法,如透镜板三维成像、投影式三维显示、全息照相术等,双目本视直接模拟人类双眼处理景物的方式,可靠简便,在许多领域均极具应用价值,如微操作系统的位姿检测与控制、机器人导航与航测、三维测量学及虚拟现实等。 1 双目体视的技术特点 双目标视技术的实现可分为以下步骤:图像获取、摄像机标定、特征提取、图像匹配和三维重建,下面依次介绍各个步骤的实现方法和技术特点。 1.1 图像获取 双目体视的图像获取是由不同位置的两台或者一台摄像机(CCD)经过移动或旋转拍摄同一幅场景,获取立体图像对。其针孔模型如图1。假定摄像机C1与C2的角距和内部参数都相等,两摄像机的光轴互相平行,二维成像平面X1O1Y1和X2O2Y2重合,P1与P2分别是空间点P在C1与C2上的成像点。但一般情况下,针孔模型两个摄像机的内部参数不可能完成相同,摄像机安装时无法看到光轴和成像平面,故实际中难以应用。 上海交大在理论上对会摄式双目体视系统的测量精度与系统结构参数之间的关系作了详尽分析,并通过试验指出,对某一特定点进行三角测量。该点测量误差与两CCD光轴夹角是一复杂的函数关系;若两摄像头光轴夹角一定,则被测坐标与摄像头坐标系之间距离越大,测量得到点距离的误差就越大。在满足测量范围的前提下,应选择两CCD之间夹角在50℃~80℃之间。 1.2 摄像机的标定 对双目体视而言,CCD摄像机、数码相机是利用计算机技术对物理世界进行重建前的基本测量工具,对它们的标定是实现立体视觉基本而又关键的一步。通常先采用单摄像机的标定方法,分别得到两个摄像机的内、外参数;再通过同一世界坐标中的一组定标点来建立两个摄像机之间的位置关系。目前常用的单摄像机标定方法主要有: (1)摄影测量学的传统设备标定法。利用至少17个参数描述摄像机与三维物体空间的结束关系,计算量非常大。 (2)直接线性变换性。涉及的参数少、便于计算。 (3)透视变换短阵法。从透视变换的角度来建立摄像机的成像模型,无需初始值,可进行实时计算。 (4)相机标定的两步法。首先采用透视短阵变换的方法求解线性系统的摄像机参数,再以求得的参数为初始值,考虑畸变因素,利用最优化方法求得非线性解,标定精度较高。 (5)双平面标定法。 在双摄像机标定中,需要精确的外部参数。由于结构配置很难准确,两个摄像机的距离

双目视觉地图像立体匹配系统说明书文档

双目视觉的图像立体匹配系统文档 1 引言 计算机视觉技术的发展将光与影的艺术和计算机的逻辑性紧密结合起来,而双目立体视觉技术更将这种结合从平面二次元上升到立体的角度,为我们的生产生活提供了新的技术和工具,例如已经被普遍运用的3D电影技术,研发中的虚拟现实、谷歌视觉眼镜、汽车自动驾驶技术,即将上市的淘宝虚拟实景购物等,不断改变着我们的生活,另外双目立体视觉在军事、医学、工业等领域都有其重要的作用,是机器感知物体几何层级的基础,因此对双目视觉的理论研究成为推动立体视觉乃至计算机视觉技术在各个领域创造更高价值的重要因素。 在双目视觉的研究和运用中,最重要的一个阶段无疑为将平面图像转化为可计算机可识别的立体模型,这里将用到立体匹配技术,目前双目视觉研究领域用到的立体匹配算法及其衍生算法有很多种,算法的效率和匹配精度将直接影响到算法运用的响应时间和准确度[1],当今各种视觉智能设备的发展需要将立体匹配过程直接嵌入到单片机中,这种场景下,算法的效率和匹配精度将直接决定不同运算性能的嵌入式设备的选择和产品推广后的用户体验度,也将直接决定设备成本,因此研究出更加速度快、精度高的立体匹配算法在各领域都具有划时代的重要意义。 2 系统方案设计 2.1 双目视觉的图像立体匹配系统 说起立体视觉系统,要从人的双眼说起,人眼是一个典型的双目视觉系统,每只眼睛是一个摄像机,两只平行的眼睛是两台平行的摄像机,因为两只眼睛的位置不同,看到的图像是有差异的,这个差异就是立体视觉的基础,视觉信号传入大脑,大脑利用其强大的匹配能力,就可以基本确定图像中的物体的立体信息,或者叫做图像的深度信息。随着人们知识和生产生活的发展,需要通过仿真立体视觉的原理,让计算机获取到图像从2D向3D发展,即获取图像的深度信息,以实现一些和空间视觉有关的需求,这就出现了机器立体视觉技术。

双目立体视觉

双目立体视觉 双目立体视觉的研究一直是机器视觉中的热点和难点。使用双目立体视觉系统可以确定任意物体的三维轮廓,并且可以得到轮廓上任意点的三维坐标。因此双目立体视觉系统可以应用在多个领域。现说明介绍如何基于HALCON实现双目立体视觉系统,以及立体视觉的基本理论、方法和相关技术,为搭建双目立体视觉系统和提高算法效率。 双目立体视觉是机器视觉的一种重要形式,它是基于视差原理并由多幅图像获取物体三维几何信息的方法。双目立体视觉系统一般由双摄像机从不同角度同时获得被测物的两幅数字图像,或由单摄像机在不同时刻从不同角度获得被测物的两幅数字图像,并基于视差原理恢复出物体的三维几何信息,重建物体三维轮廓及位置。双目立体视觉系统在机器视觉领域有着广泛的应用前景。 HALCON是在世界范围内广泛使用的机器视觉软件。它拥有满足您各类机器视觉应用需求的完善的开发库。HALCON也包含Blob分析、形态学、模式识别、测量、三维摄像机定标、双目立体视觉等杰出的高级算法。HALCON支持Linux和Windows,并且可以通过C、C++、C#、Visual Basic和Delphi 语言访问。另外HALCON与硬件无关,支持大多数图像采集卡及带有DirectShow和IEEE 1394驱动的采集设备,用户可以利用其开放式结构快速开发图像处理和机器视觉应用软件。 一.双目立体视觉相关基本理论说明 1.1 双目立体视觉原理 双目立体视觉三维测量是基于视差原理,图1所示为简单的平视双目立体成像原理图,两摄像机的投影中心的连线的距离,即基线距为b。摄像机坐标系的原点在摄像机镜头的光心处,坐标系如图1所示。事实上摄像机的成像平面在镜头的光心后,图1中将左右成像平面绘制在镜头的光心前f处,这个虚拟的图像平面坐标系O1uv的u轴和v轴与和摄像机坐标系的x轴和y轴方向一致,这样可以简化计算过程。左右图像坐标系的原点在摄像机光轴与平面的交点O1和O2。空间中某点P在左图像和右图像中相应的坐标分别为P1(u1,v1)和P2(u2,v2)。假定两摄像机的图像在同一个平面上,则点P图像坐标的Y坐标相同,即v1=v2。由三角几何关系得到: 上式中(xc,yc,zc)为点P在左摄像机坐标系中的坐标,b为基线距,f为两个摄像机的焦距,(u1,v1)和(u2,v2)分别为点P在左图像和右图像中的坐标。 视差定义为某一点在两幅图像中相应点的位置差: 图1 双目立体成像原理图图3 一般双目立体视觉系统原理图

双目视觉成像原理

双目视觉成像原理 1、引言 双目立体视觉(Binocular Stereo Vision)就是机器视觉得一种重要形式,它就是基于视差原理并利用成像设备从不同得位置获取被测物体得两幅图像,通过计算图像对应点间得位置偏差,来获取物体三维几何信息得方法。融合两只眼睛获得得图像并观察它们之间得差别,使我们可以获得明显得深度感,建立特征间得对应关系,将同一空间物理点在不同图像中得映像点对应起来,这个差别,我们称作视差(Disparity)图。 双目立体视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场得在线、非接触产品检测与质量控制。对运动物体(包括动物与人体形体)测量中,由于图像获取就是在瞬间完成得,因此立体视觉方法就是一种更有效得测量方法。双目立体视觉系统就是计算机视觉得关键技术之一,获取空间三维场景得距离信息也就是计算机视觉研究中最基础得内容。 2、双目立体视觉系统 立体视觉系统由左右两部摄像机组成。如图一所示,图中分别以下标L与r标注左、右摄像机得相应参数。世界空间中一点A(X,Y,Z)在左右摄像机得成像面C L与C R上得像点分别为al(ul,vl)与ar(ur,vr)。这两个像点就是世界空间中同一个对象点A得像,称为“共轭点”。知道了这两个共轭像点,分别作它们与各自相机得光心Ol与Or得连线,即投影线alOl与arOr,它们得交点即为世界空间中得对象点A(X,Y,Z)。这就就是立体视觉得基本原理。 图1:立体视觉系统 3、双目立体视觉相关基本理论说明 3.1 双目立体视觉原理 双目立体视觉三维测量就是基于视差原理,图2所示为简单得平视双目立体成像原理图,两摄像机得投影中心得连线得距离,即基线距为b。摄像机坐标系得原点在摄像机镜头得光心处,坐标系如图2所示。事实上摄像机得成像平面在镜头得光心后,图2中将左右成像平面绘制在镜头得光心前f处,这个虚拟得图像平面坐标系O1uv得u轴与v轴与与摄像机坐标系得x轴与y轴方向一致,这样可以简化计算过程。左右图像坐标系得

双目立体视觉技术简介

双目立体视觉技术简介 1. 什么是视觉 视觉是一个古老的研究课题,同时又是人类观察世界、认知世界的重要功能和手段。人类从外界获得的信息约有75%来自视觉系统,用机器模拟人类的视觉功能是人们多年的梦想。视觉神经生理学,视觉心里学,特别是计算机技术、数字图像处理、计算机图形学、人工智能等学科的发展,为利用计算机实现模拟人类的视觉成为可能。在现代工业自动化生产过程中,计算机视觉正成为一种提高生产效率和检验产品质量的关键技术之一,如机器零件的自动检测、智能机器人控制、生产线的自动监控等;在国防和航天等领域,计算机视觉也具有较重要的意义,如运动目标的自动跟踪与识别、自主车导航及空间机器人的视觉控制等。人类视觉过程可以看作是一个从感觉到知觉的复杂过程,从狭义上来说视觉的最终目的是要对场景作出对观察者有意义的解释和描述;从广义上说,是根据周围的环境和观察者的意愿,在解释和描述的基础上做出行为规划或行为决策。计算机视觉研究的目的使计算机具有通过二维图像信息来认知三维环境信息的能力,这种能力不仅使机器能感知三维环境中物体的几何信息(如形状、位置、姿态运动等),而且能进一步对它们进行描述、存储、识别与理解,计算机视觉己经发展起一套独立的计算理论与算法。 2. 什么是计算机双目立体视觉 双目立体视觉(Binocular Stereo Vision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法。融合两只眼睛获得的图像并观察它们之间的差别,使我们可以获得明显的深度感,建立特征间的对应关系,将同一空间物理点在不同图像中的映像点对应起来,这个差别,我们称作视差(Disparity)图像,如图一。 图一、视差(Disparity)图像 双目立体视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场的在线、非接触产品检测和质量控制。对运动物体(包括动物和人体形体)测量中,由于图像获取是在瞬间完成的,因此立体视觉方法是一种更有效的测量方法。 双目立体视觉系统是计算机视觉的关键技术之一,获取空间三维场景的距离信息也是计算机视觉研究中最基础的内容。 双目立体视觉的开创性工作始于上世纪的60年代中期。美国MIT的Roberts通过从数字图像中提取立方体、楔形体和棱柱体等简单规则多面体的三维结构,并对物体的形状和空间关系

基于HALCON的双目立体视觉系统实现

基于HALCON的双目立体视觉系统实现 段德山(大恒图像公司) 摘要双目立体视觉的研究一直是机器视觉中的热点和难点。使用双目立体视觉系统可以确定任意物体的三维轮廓,并且可以得到轮廓上任意点的三维坐标。因此双目立体视觉系统可以应用在多个领域。本文将主要介绍如何基于HALCON实现双目立体视觉系统,以及立体视觉的基本理论、方法和相关技术,为搭建双目立体视觉系统和提高算法效率提供了参考。 关键词双目视觉三维重建立体匹配摄像机标定视差 双目立体视觉是机器视觉的一种重要形式,它是基于视差原理并由多幅图像获取物体三维几何信息的方法。双目立体视觉系统一般由双摄像机从不同角度同时获得被测物的两幅数字图像,或由单摄像机在不同时刻从不同角度获得被测物的两幅数字图像,并基于视差原理恢复出物体的三维几何信息,重建物体三维轮廓及位置。双目立体视觉系统在机器视觉领域有着广泛的应用前景。 HALCON是在世界范围内广泛使用的机器视觉软件。它拥有满足您各类机器视觉应用需求的完善的开发库。HALCON也包含Blob分析、形态学、模式识别、测量、三维摄像机定标、双目立体视觉等杰出的高级算法。HALCON支持Linux和Windows,并且可以通过C、C++、C#、Visual Basic和Delphi语言访问。另外HALCON与硬件无关,支持大多数图像采集卡及带有DirectShow和IEEE 1394驱动的采集设备,用户可以利用其开放式结构快速开发图像处理和机器视觉应用软件。 一.双目立体视觉相关基本理论介绍

1.1 双目立体视觉原理 双目立体视觉三维测量是基于视差原理,图1所示为简单的平视双目立体成像原理图,两摄像机的投影中心的连线的距离,即基线距为b。摄像机坐标系的原点在摄像机镜头的光心处,坐标系如图1所示。事实上摄像机的成像平面在镜头的光心后,图1中将左右成像平面绘制在镜头的光心前f处,这个虚拟的图像平面坐标系O1uv的u轴和v轴与和摄像机坐标系的x轴和y轴方向一致,这样可以简化计算过程。左右图像坐标系的原点在摄像机光轴与平面的交点O1和O2。空间中某点P在左图像和右图像中相应的坐标分别为P1(u1,v1)和P2(u2,v2)。假定两摄像机的图像在同一个平面上,则点P图像坐标的Y坐标相同,即v1=v2。由三角几何关系得到: 上式中(xc,yc,zc)为点P在左摄像机坐标系中的坐标,b为基线距,f为两个摄像机的焦距,(u1,v1)和(u2,v2)分别为点P在左图像和右图像中的坐标。 视差定义为某一点在两幅图像中相应点的位置差:

双目立体视觉

计算机双目立体视觉 双目立体视觉技术是仿照人类利用双目线索感知深度信息的方法,实现对三维信息的感知。为解决智能机器人抓取物体、视觉导航、目标跟踪等奠定基础。 双目立体视觉(Binocular Stereo Vision )是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点之间的位置偏差,来获取物体三维几何信息的方法。融合两只眼睛获取的图像并观察它们之间的差别,使我们可以获得明显的深度感,建立特征间的对应关系,将同一空间物理点在不同图像中的映像点对应起来,这个差别,我们称作为视差(Disparity )图像。 双目立体视觉系统 立体视觉系统由左右两部摄像机组成,如图,世界空间中的一点A(X,Y ,Z)在左右摄像机的成 像面1C 和r C 上的像点分别为)(111,v u a 和) (r r r v u a ,。这两个像点是世界空间中同一个对象点A 的像,称为“共轭点”。知道了这两个共轭像点,分别作它们与各自相机的光心1O 和r O 的连线,即投影线11O a 和r r O a ,它们的交点即为世界空间中的对象点A 。这就是立体视觉的基本原理。 双目立体视觉智能视频分析技术 恢复场景的3D 信息是立体视觉研究中最基本的目标,为实现这一目标,一个完整的立体视觉系统通常包含六个模块:图像获取、摄像机标定、特征提取、立体匹配、三维恢复和视频

分析(运动检测、运动跟踪、规则判断、报警处理)。 图像获取(Image Acquisition ) 数字图像的获取是立体视觉的信息来源。常用的立体视觉图像一般为双目图像,有的采用夺目图像。图像的获取方式有很多种,主要有具体运用的场合和目的决定。立体图像的获取不仅要满足应用要求,而且考虑视点差异、光照条件、摄像机的性能和场景特点等方面的影像。 摄像机标定(Camera Calibration ) 图像上每一点的亮度反映了空间物体表面某点反射光的强度,而该点在图像上的位置则与空 间物体表面相应点的几何位置有关。这些位置的相互关系由摄像机成像几何模型来决定。该几何模型的参数称为摄像机参数,这些参数必须由实验与计算来确定,实验与计算的过程称为摄像机定标。 立体视觉系统摄像机标定是指对三维场景中对象点在左右摄像机图像平面上的坐标位置)(111,v u a 和) (r r r v u a ,与其世界空间坐标A (X, Y , Z )之间的映射关系的确立,是实现立体视觉三维模型重构中基本且关键的一步。 特征提取(Feature Acquisition ) 特征提取的目的是获取匹配得以进行的图像特征,图像特征的性质与图像匹配的方法选择有着密切的联系。目前,还没有建立起一种普遍适用的获取图像特征的理论,因此导致了立体视觉研究领域中匹配特征的多样化。像素相位匹配是近二十年才发展起来的一类匹配算法。相位作为匹配基元,本身反映着信号的结构信息,对图像的高频噪声有很好的一直作用,适于并行处理,能获得亚像素级精度的致密视差。但存在相位奇点和相位卷绕的问题,需加入自适应滤波器解决。或者是像素的集合,也可以是它们的抽象表达,如图像的结构、图像的目标和关系结构等。常用的匹配特征主要有点状特征、线装特征和区特征等几种情形。 一般而言,尺度较大的图像特征蕴含较多的图片信息,且特征本身的数目较少,匹配效率高;但特征提取和描述过程存在较大的困难,定位精度也较差。而对于尺度较小的图像特征来说,对其进行表达和描述相对简单,定位的精度高;但由于特征本身数码较多,所包含的图像信息少,在匹配时需要采用较为严格的约束条件和匹配策略,一尽可能的减少匹配歧义和提高匹配效率。总的来说,好的匹配特征应该具有要可区分性、不变性、唯一性以及有效解决匹配歧义的能力。 图像匹配(Image Matching ) 在立体视觉中,图像匹配是指将三维空间中一点A (X, Y , Z )在左右摄像机的成像面1C 和r C 上的像点)(111,v u a 和) (r r r v u a ,对应起来。图像匹配是立体视觉中最重要也是最困难的问题,一直是立体视觉研究的焦点。当空间三维场景经过透视投影(Perspective Projection )变换为二维图像时,同一场景在不同视点的摄像机图像平面上成像会发生不同程度的扭曲和变形,而且场景中的光照条件、被测对象的几何形状和表面特性、噪声干扰和畸变、摄像机特性等诸多因素的影响都被集中体现在单一的图像灰度值中。显然,要包含了如此之多不利因素的图像进行精准的匹配是很不容易的。

双目立体视觉中的三维重建

西安邮电大学 毕业设计(论文)题目:双目立体视觉中的三维重建 系别:自动化学院 专业:测控技术与仪器 班级:测控0802班 学生姓名:吕海斌(07) 导师姓名:江祥奎职称:讲师 起止时间:2012年3月8日至2012年6月20

诚信声明书 本人声明:我将提交的毕业论文《双目立体视觉中的三维重建》是我在指导教师指导下独立研究、写作的成果,论文中所引用他人的无论以何种方式发布的文字、研究成果,均在论文中加以说明:有关教师、同学和其他人员对本文的写作、修订提出过并为我再论文中加以采纳的意见、建议,均已在我的致谢中加以说明并深致谢意。 论文作者吕海斌时间:2012年6 月7 日 指导教师已阅时间:年月日

西安邮电大学 毕业设计(论文)任务书 学生姓名吕海斌指导教师江祥奎职称讲师 院别自动化学院专业测控0802 题目双目立体视觉中的三维重建 任务与要求 本题目要求在搭建双目立体视觉平台的基础上,通过OpenGL和MATLAB联合编程实现三维重建功能。具体任务分解如下: 1.查找文献,学习和掌握三维重建方法; 2.完成三维重建的MATLAB编程,并对实验数据进行相关分析;3.通过OpenGL,实例编程实现三维重建; 4.通过OpenGL和MATLAB联合编程,完成三维重建; 开始日期2011年12月10日完成日期2012年6月25日 院长(签字) 2012 年12 月日

西安邮电大学 毕业设计 (论文) 工作计划 学生姓名__吕海斌_指导教师__江祥奎__职称__讲师_ 院别____自动化学院____专业____测控0802___ 题目_____ 双目立体视觉中的三维重建 工作进程

双目视觉传感器系统

双目视觉传感器系统 视觉检测广泛地应用于工件的完整性、表面平整度的测量:微电子器件(IC芯片、PC板、BGA)等的自动检测;软质、易脆零部件的检测;各种模具三维形状的检测;机器人的视觉导引等。最具有吸引力的是由视觉传感器阵列组成的大型物体(如白车身)空间三维尺寸多传感器视觉检测系统。 双目视觉传感器由两台性能相同的面阵CCD摄像机组成,基于立体视差的原理,可完成视场内的所有特征点的三维测量,尤其是其它类型的视觉传感器所不能完成的测量任务,如圆孔的中心、三棱顶点位置的测量等。因此,双目视觉传感器是多传感器视觉检测系统的主要传感器之一。要实现双目视觉传感器直接测量大型物体关键点的三维测量,就必须知道传感器的内部参数(摄像机的参数)、结构参数(两摄像机间的位置关系)及传感器坐标系与检测系统的整体坐标系的关系(即全局标定)。因此,在实际测量之前,先要对摄像机进行参数标定。一般方法是,传感器被提供给整个系统使用前,就离线完成传感器的内部参数及结构参数的标定,采用一标准二维精密靶标及一维精密导轨,通过移动导轨来确定坐标系的一个坐标,通过摄像机的像面坐标及三个世界坐标的对应关系求得这些参数。 这种方法的缺点是:标定过程中,需要精确调整靶标与导轨的垂直关系,而且需多次准确移动导轨;同时标定过程的环境与实际测量的情形有差异;传感器在安装的过程中,易引起部分参数的变化,需多次的拆卸;摄像机还需进行全局标定。由此可知标定的劳动强度大,精度难以保证。本文提出了一种现场双目传感器的标定方法,只需先确定摄像机的部分不易变化的参数,其它参数在摄像机安装到整个系统后进行标定。该方法大大地减少了上述因素的影响,能得到满意的标定精度。 双目视觉测量探头由2个CCD摄像机和1个半导体激光器组成,如下图所示。

Kinect视觉SLAM技术介绍 – 视觉机器人

Kinect视觉SLAM技术介绍–视觉机器人 本文介绍SLAM的历史、理论以及实现的方式,且主要介绍基于视觉(Kinect)的实现方式。 1. 前言 开始做SLAM(机器人同时定位与建图)研究已经近一年了。从一年级开始对这个方向产生兴趣,到现在为止,也算是对这个领域有了大致的了解。然而越了解,越觉得这个方向难度很大。总体来讲有以下几个原因: 1)入门资料很少。虽然国内也有不少人在做,但这方面现在没有太好的入门教程。《SLAM for dummies》可以算是一篇。中文资料几乎没有。 2)SLAM研究已进行了三十多年,从上世纪的九十年代开始。其中又有若干历史分枝和争论,要把握它的走向就很费工夫。 3)难以实现。SLAM是一个完整的系统,由许多个分支模块组成。现在经典的方案是“图像前端,优化后端,闭环检测”的三部曲,很多文献看完了自己实现不出来。 4)自己动手编程需要学习大量的先决知识。首先你要会C和C++,网上很多代码还用了11标准的C++。第二要会用Linux。第三要会cmake,vim/emacs及一些编程工具。第四要会用openCV, PCL, Eigen等第三方库。只有学会了这

些东西之后,你才能真正上手编一个SLAM系统。如果你要跑实际机器人,还要会ROS。 当然,困难多意味着收获也多,坎坷的道路才能锻炼人(比如说走着走着才发现Linux和C++才是我的真爱之类的。)鉴于目前网上关于视觉SLAM的资料极少,我于是想把自己这一年多的经验与大家分享一下。说的不对的地方请大家批评指正。 这篇文章关注视觉SLAM,专指用摄像机,Kinect等深度像机来做导航和探索,且主要关心室内部分。到目前为止,室内的视觉SLAM仍处于研究阶段,远未到实际应用的程度。一方面,编写和使用视觉SLAM需要大量的专业知识,算法的实时性未达到实用要求;另一方面,视觉SLAM生成的地图(多数是点云)还不能用来做机器人的路径规划,需要科研人员进一步的探索和研究。以下,我会介绍SLAM的历史、理论以及实现的方式,且主要介绍视觉(Kinect)的实现方式。 2. SLAM问题 SLAM,全称叫做Simultaneous Localization and Mapping,中文叫做同时定位与建图。啊不行,这么讲下去,这篇文章肯定没有人读,所以我们换一个讲法。 3. 小萝卜的故事 从前,有一个机器人叫“小萝卜”。它长着一双乌黑发

相关主题
文本预览
相关文档 最新文档