机器人视觉测量与控制

机器人视觉的基本概念

1.摄像机标定(Camera Calibration):对摄像机的内部参数、外部参数进行求取的过程。

2.视觉系统标定(Vision System Calibration):对摄像机和机器人之间关系的确定。

3.手眼系统(Hand-Eye System):又摄像机和机械手构成的机器人视觉系统。

4.Eye-in-Hand:摄像机安装在机械手末端并随机械手一起运动的视觉系统。

5.Eye-to-Hand:摄像机不安装在机械手末端,不随机械手运动的视觉系统。

6.视觉测量(Vision Measure/Visual Measure):根据摄像机获得的视觉信息对目标的位置和姿态进行的测量。

7.视觉控制(Vision Control/Visual Control):根据视觉测量获得目标的位置和姿态,将其作为给定或者反馈对机器人的位置和姿态进行的控制。

8.视觉伺服(Visual Servo/Visual Servoing):利用视觉信息对机器人进行的伺服控制,是视觉控制的一种。

9.平面视觉(Planar Vision):被测对象处在平面内,只对目标在平面的信息进行测量的视觉测量与控制。

10.立体视觉(Stereo Vision):对目标在三维笛卡尔空间内的信息进行测量的视觉测量与控制。

11.结构光视觉(Structured Light Vision):利用特定光源照射目标,形成人工特性,由摄像机采集这些特征进行测量。结构光视觉可简化图像处理中的特征提取,大幅度提高图像处理速度。

12.主动视觉(Active Vision):对目标主动照明或者主动改变摄像机参数的视觉系统。

13.被动视觉(Passive Vision):被动视觉采用自然测量,如双目视觉。

关于跟踪的问题与方法:

一、引言:在需要监控的环境里,如何能够判断出进入特定区域的目标,并且能够跟踪目标的轨迹。分为两种情况:一是静态背景下的目标跟踪;二是动态背景下的目标跟踪。

二、静态背景下的目标跟踪方法

1、单目标:目标跟踪还可以分为单目标的跟踪和多目标的跟踪。单目标的静态背景下的目标跟踪指的是摄像头是固定在某一方位,其所观察的视野也是静止的。通常采用背景差分法,即先对背景进行建模,然后从视频流中读取图像(我们称之为前景图像),将前景图像与背景图像做差,就可以得到进入视野的目标物体。对于目标的描述,通常用目标连通区域的像素数目的多少来表达目标的大小,或者用目标区域的高宽比等。目标的位置信息可采用投影的方式来定位。

2、多目标:静态环境下的多目标跟踪,需要确定每个目标的特征,位置,运动方向,速度等信息。

3、预处理:由于获得的图像总会有着噪声,需要对图像做一些预处理,如高斯平滑,均值滤波,或者进行一些灰度拉伸等图像增强的操作。

三、动态背景下的目标跟踪

摄像头在云台控制下的旋转,会使得他所采集的图像时可在变化,所以,对于整个目标跟踪过程来说,背景是变化,目标也是在整个过程中运动的,所以跟踪起来较有难度。

目前课题组提出的方案是:跟踪过程:在摄像头不同偏角情况下取得若干背景图片,建立背景图片库――>摄像头保持固定时,取得当前帧图片,与图片库中的背景图像匹配,背景差分(灰度差分?),获得目标――>目标特征提取――>实时获得当前帧图片,采用跟踪算法动态跟踪目标。

提取特征是一个难点,课题组提出多颜色空间分析的方法。根据彩色图像在不同的颜色空间里表征同一物体呈现出的同态性,可以把目标物体在不同的颜色空间里进行分解,并将这些关键特征信息进行融合,从而找出判别目标的本质特征。

跟踪过程中采用的各种方法说明:

1)在0-360度不同偏角时,获得背景图片,可进行混合高斯背景建模,建立图片库,以俯仰角和偏转角不同标志每张背景图片,以备匹配使用;

2)背景差分获得目标后,对差分图像需要进行平滑、去噪等处理,去除干扰因素;

3)对目标采用多颜色空间(HSV、YUV)特征提取,对不同颜色空间的特征相与(AND),得到目标特征,以更好的在当前帧图片中找到目标;

4)实时得到的当前帧图片,进行混合高斯建模,排除树叶摇动等引起的背景变化;

5)跟踪算法可采用多子块匹配方法、camshift方法等。

四、相关理论介绍

近几年来,一种名为CamShift的跟踪算法凭借其在实时性和鲁棒性方面良好的表现,正受到越来越多的关注。现阶段CamShift算法已经广泛应用到感知用户界面中的人脸跟踪中,以及一些半自动的运动目标跟踪。一方面,CamShift算法应该属于基于区域的方法,它利用区域内的颜色信息对目标进行跟踪;另一方面,CamShift算法却是一种非参数技巧,它是通过聚类的方式搜寻运动目标的。

简单的说,CamShift算法利用目标的颜色特征在视频图像中找到运动目标所在的位置和大小,在下一帧视频图像中,用运动目标当前的位置和大小初始化搜索窗口,重复这个过程就可以实现对目标的连续跟踪。在每次搜寻前将搜索窗口的初始值设置为运动目标当前的位置和大小,由于搜索窗口就在运动目标可能出现的区域附近进行搜寻,这样就可以节省大量的搜寻时间,使CamShift算法具有了良好的实时性。同时,CamShift算法是通过颜色匹配找到运动目标,在目标运动的过程中,颜色信息变化不大,所以CamShift算法具有良好的鲁棒性。由于RGB颜色空间对光照亮度变化比较敏感,为了减少光照亮度变化对跟踪效果的影响,CamShift
算法将图像由RGB 颜色空间转化到HSV 颜色空间进行后续处理。

CamShift 的算法流程如图3.4 所示。首先选择初始搜索窗口,使窗口恰好包含整个跟踪目标,然后对窗口中每个像素的H上的值采样,从而得到目标的色彩直方图,将该直方图保存下来作为目标的色彩直方图模型。在跟踪过程中,对视频图像处理区域中的每一个像素,通过查询目标的色彩直方图模型,可以得到该像素为目标像素的概率,图像处理区域之外的其他区域作为概率为0的区域。经上述处理,视频图像转换为目标色彩概率分布图,也称为目标颜色投影图。为便于显示,将投影图转化为8位的灰度投影图,概率为1 的像素值设为255,概率为0的像素值为0,其他像素也转换为相应的灰度值。所以,灰度投影图中越亮的像素表明该像素为目标像素的可能性越大。

图中虚线标示的部分是CamShift算法的核心部分,主要目标是在视频图像中找到运动目标所在的位置,这一部分被称为Mean Shift算法。由于Mean Shift是CamShift的核心,所以正确理解MeanShift就成了理解CamShift算法的关键,下面就重点讨论Mean Shift算法。

2、混合高斯模型

背景中当树叶在摇动时,它会反复地覆盖某像素点然后又离开,此像素点的值会发生剧烈变化,为有效地提取感兴趣的运动目标,应该把摇动的树叶也看作背景。这时任何一个单峰分布都无法描述该像素点的背景,因为使用单峰分布就表示己经假定像素点的背景在除了少量噪声以外是静止的,单模态模型无法描述复杂的背景。在现有效果较好的背景模型中有些为像素点建立了多峰分布模型(如混合高斯模型),有些对期望的背景图像进行预测,这些算法的成功之处在于定义了合适的像素级稳态(Stationarity )准则,满足此准则的像素值就认为是背景,在运动目标检测时予以忽略。对于特定的应用场景,要想对特定算法的弱点与优势进行评价,必须明确这种像素级稳态准则。

对于混 乱的复杂背景,不能使用单高斯模型估计背景,考虑到背景像素值的分布是多峰的,可以根据单模态的思想方法,用多个单模态的集合来描述复杂场景中像素点值的变化,混合高斯模型正是用多个单高斯函数来描述多模态的场景背景。

混合高斯模型的基本思想是:对每一个像素点,定义K个状态来表示其所

呈现的颜色,K值一般取3-5之间(取决于计算机内存及对算法的速度要求),

K值越大,处理波动能力越强,相应所需的处理时间也就越长。K个状态中每

个状态用一个高斯函数表示,这些状态一部分表示背景的像素值其余部分则

表示运动前景的像素值。

时间: 2024-10-13 13:24:59

机器人视觉测量与控制的相关文章

机器人视觉跟踪与控制研究(一)

研究背景: 机器人视觉,通过图像获得外界信息,用于机器人对环境的感知. 提高机器人智能性.环境适应性.自主行为的重要途径. 近年来机器人领域的研究热点之一. 研究内容: 视觉系统标定 目标分割与图像处理 视觉测量与视觉控制 视觉系统标定 1基于环境信息的自标定 ?利用环境中的正交平行线获得消失点,标定摄像机的内参数 ?利用环境中的正交平行线确定摄像机的姿态 ?提出了利用正交平行线可靠标定摄像机内参数的必要条件 2基于相对运动的自标定 利用机器人末端的至少两次平移运动,标定出立体视觉系统的参数 3

机器人学 —— 机器人视觉(基础)

机器人视觉是一种处理问题的研究手段.经过长时间的发展,机器人视觉在定位,识别,检测等多个方面发展出来各种方法.其以常见的相机作为工具,以图像作为处理媒介,获取环境信息. 1.相机模型 相机是机器人视觉的主要武器,也是机器人视觉和环境进行通信的媒介.相机的数学模型为小孔模型,其核心在于相似三角形的求解.其中有三个值得关注的地方: 1.1 1/f = 1/a + 1/b 焦距等于物距加上像距.此为成像定理,满足此条件时才能成清晰的像. 1.2 X  = x * f/Z 如果连续改变焦距f ,并同时移

机器人学 —— 机器人视觉(估计)

之前说到,机器人视觉的核心是Estimation.求取特征并配准,也是为了Estimation做准备.一旦配准完成,我们就可以从图像中估计机器人的位置,姿态.有了位置,姿态,我们可以把三维重建的东西进行拼接.从视觉信息估计机器人位姿的问题可以分为三个大类:1.场景点在同一平面上.2.场景点在三维空间中.3.两幅点云的配准. 所有问题有一个大前提就是知道相机内部矩阵K. 1.由单应矩阵进行位姿估计 单应矩阵原指从 R2--R2 的映射关系.但在估计问题中,如果我们能获得这种映射关系,就可以恢复从世

机器人学 —— 机器人视觉(特征)

上回说到机器人视觉的核心任务是estimation,理论框架是射影几何理论.在之前的作业中展现了单应变换的巨大威力.然而,整个estimation 的首要条件是已知像素点坐标,尤其是多幅图中对应点的像素坐标. 单幅图像的处理方法都是大路货了,不赘述.这篇博客想讲讲不变点检测与不变特征.由于机器人在不断运动,所以可能从不同方向对同一物体进行拍摄.而拍摄的距离有远近,角度有titled. 由于射影变换本身的性质,无法保证两幅图中的物体看上去一样.所以我们需要一种特征提取方法(特征点检测),能够保证检

机器人学 —— 机器人视觉(Bundle Adjustment)

今天完成了机器人视觉的所有课程以及作业,确实是受益匪浅啊! 最后一个话题是Bundle Adjustment. 机器人视觉学中,最顶尖的方法. 1.基于非线性优化的相机位姿估计 之前已经在拟合一篇中,已经补完了非线性最小二乘拟合问题.Bundle Adjustment,中文是光束平差法,就是利用非线性最小二乘法来求取相机位姿,三维点坐标.在仅给定相机内部矩阵的条件下,对四周物体进行高精度重建.Bundle Adjustment的优化目标依旧是最小重复投影误差. 与利用non-linear mea

机器人视觉系统笔记

机器人视觉系统研究 杭电图书馆 科学出版社 总页数:202 唯一QQ:1825587919 唯一WX:ly1825587919 PS:由于阅读效率原因,仅记录关键点 第一章  绪论 第二章 全向视觉系统 1.多摄像机拼接全向视觉系统 ringcam系统   五个摄像头2.鱼眼镜头全向视觉系统 短焦距,超广角镜头3.折反射式全向视觉系统 锥形,椭圆形,双曲线形,抛物线形 水平等比镜面,水平距离成像一样 垂直等比镜面,垂直距离成像一样 角度等比镜面 改进 由内到外 双曲,水平等比,垂直等比 标定方法

Unity3D第三视觉角色相机控制

经过一段时间的学习,学得以下第三视觉相机控制方法,当设置相机初始高度较高的状态下,相机有由高到低的效果,适合做为外景相机,如果是做室内相机,需要另外设计.将这个分享给大家,同时希望得到阅读者宝贵的意见,废话不多说,贴代码: /// <summary> /// Created by Hong Youwei /// Created in 2015.3.25 /// </summary> using UnityEngine; using System.Collections; publi

机器人视觉导航工作总结

1.SLAM技术 SLAM 全称 Simultaneous Localization and Mapping,中文名曰「同步定位与地图构建」,主要用于解决机器人在未知环境运动时的定位和地图构建问题.在SLAM理论中,第一个问题称为定位 (Localization),第二个称为建图 (Mapping),第三个则是随后的路径规划.SLAM的实现方式与难度和传感器密切相关.目前实现SLAM的传感器大体分为激光和视觉两大类.相比于图像,激光雷达可直接测量目标与传感器之间的相对位置,使得激光雷达SLAM技

move_base 控制机器人(1)

 本教程将具体涉及如下问题: 系列(1):move_base发出的控制指令是什么?该如何转化为移动机器人左右轮的速度. 系列(2):移动机器人的左右轮的编码器信息如何转化为ROS的/odom: 系列(3):navigation的几个坐标系(/map frame , /odom frame , /base_link frame)是什么,他们之间该如何建立tf转换:如何使用move_base在一个空白的地图(blank map)上完成对实际机器人的控制. 控制系统的架构: 关于机器人导航与定位的系统