双目立体视觉系统的分析

时间:2022-10-20 09:09:11

双目立体视觉系统的分析

摘 要:视觉系统是机器人最重要的一个传感器。它被机器人使用以获取关于世界的信息并且能够为机器人导航。双目立体视觉的研究一直是机器视觉中的热点和难点。使用双目立体视觉系统可以确定任意物体的轮廓,并且可以很容易地确定机器人与在其附近的对象之间的距离。因此双目立体视觉系统可以应用在多个领域。本文讨论了双目立体视觉系统,它使机器人定位一个物体,确定其与物体的方向,并接近该物体。解决这一任务的主要步骤如下:把边缘检测结果应用于立体图像,然后解析边缘形式,本论文边缘的计算采用Hough变换;并使用三角计算导出机器人与物体之间的距离。最后,运用几何公式计算,确定物体的方向并最终完成接近物体的任务。

关键词:机器视觉 机器人 边缘检测

中图分类号: TP24 文献标识码:A 文章编号:1007-3973 (2010) 03-81-02

1引言

在现代世界机器人技术正在获得越来越多的意义。机器人视觉是一个很广泛的科学领域。它的研究范围包括:视觉伺服,模式识别,立体视觉等。立体视觉系统是机器人最重要的部分之一,因为它体现了机器人在非结构化环境中移动过程的重要意义。

以视觉系统为基础的三维外形轮廓的非接触式、高速测量是一个重要的研究方向,双目立体视觉方法是其中一种最常用的方法。本文介绍了一种使用双目立体视觉系统作为导航而设计的在未知环境中工作的拟人机器人。主要讨论的重点在于探测和接近具有直角边的物体,并进行了系统的分析和方法介绍。

2机器视觉要素

本章介绍了一些机器视觉的基本要素,这些要素将在本文后面中运用到。例如边缘检测,特征提取和三角测量。

2.1边缘检测

边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。在数字信号的情况下,梯度计算近似下列公式:

(1.1)

(1.2)

其中和是两个相邻样本的水平和垂直距离(通常等于1)。那个幅度和梯度方向可以表达如:

(1.3)

2.1.1Canny算子

Canny算法,除了梯度计算外,还包含改善检测结果的其他步骤。它的显著标志是双阈值,即高阈值与低阈值。这些将在下面解释。该算法可分为6个步骤:

(1)第一,数字高斯滤波器应用于图片以抑制可能发出的噪音。

(2)在消声之后,二维梯度使用扩展矩阵卷积。

(3)梯度大小和方向的计算利用公式(1.3)得出。

(4)在第四个步骤,边缘的梯度方向分为4组。例如,水平,竖直,45度方向和135度方向。

(5)非最大值抑制,即遍历图像,若某个像素的灰度值与其梯度方向上前后两个像素的灰度值相比不是最大,那么这个像素值置为0,既不是边缘。

(6)凡是大于高阈值的一定是边缘。凡是小于低阈值的一定不是边缘。如果检测结果大于低阈值又小于高阈值,那就看这个像素的邻接像素中有没有超过高阈值的边缘像素,如果有就是边缘,否则就不是边缘。

2.2 Hough变换

在本文中Hough变换用于提取出的解析表达式。我们知道,一条直线的参数方程可以写成:Xcos+ ysin= r. (2.1)

其中r是坐标原点(0,0)到直线的长度,而 是交线和x轴之间的角度。对于任何点在一个特定的线条, r和 的值是常数。

图1参数描述图

用这种方法,Hough变换投影的(x,y)的空间变成(r, )的空间。Hough变换就是把图像平面上的点对应到参数平面上的线,最后通过统计特性来解决问题。通过采用参数方程的表示方法形式的一个方程y =ax+b。其中参数如下:

(2.2)

2.3立体视法

立体视法是一种用3D手段考察对象的方法。它的目标是能够确定物体在场景里的距离,深度,对象的比例等。三角计算是一个家喻户晓的计算出物体的距离和角度的方法,用这种方法,将会得出有关物体距离的信息,这正是立体视法中最重要的元素。

图2使用双目摄像头进行三角测量

知道了a和b的角度以及两个摄像机之间距离z,用下面的下面的方程可以得到与对象之间的距离: (2.3)

3仿真系统―虚拟场景

虚拟场景是一个三维的环境,这只是一个软件仿真。它包含的虚拟物体和虚拟的摄相机。摄相机是用来得到二维图像的一幕,就像在现实世界。

接下来,主要步骤将是解释如何进行仿真工作。第一步是从两个立体相机中获取图像,然后处理和分析,获得存在于场景中物体上的信息。在分析计算后,我们可以得出测量对象的方向以及它们与摄相机之间的距离。

3.1虚拟摄像机

知道摄相机图像上点的坐标,很容易在摄相机下确定它与物体之间的角度: 。通过这种方式,用三角计算得出必要的角度。这个相机与物体的视觉轴是平行的,其投影都在同一平面上。

3.2图像处理

探测后的第一步就是变换颜色,变换成灰度图像,因为Canny算子只能处理灰度图像。使用Canny算子进行Canny边缘检测。二进制图片(黑白)的边缘检测的块,通过霍夫变换在现场提取参数信息。

3.3计算角

应用于计算角度的该算法完全是基于几何方法。等式2.2表示了在知道了物体在摄相机中的图像位置,如何用公式来计算物体和机器人之间的角度。

为了让机器人能够接近物体,它必须知道在水平面内物体和他之间的夹角。这一角度,就是只有通过在图像中摄相机的倾斜角和摄相机的高度来计算出所求的 角。

图3角的计算

在一系列的几何公式的推导下,我们得出:

(3.1)

其中是图中的水平角度,是图中的垂直角度,是摄像机的倾斜角。

3.4 机器人行动的仿真

想要执行机器人靠近物体的行为,那么下面的信息是必要的:

•机器人和对象之间的水平角

•从中心点到物体之间的距离在直角坐标系上的投影

•角

仅仅只知道这些元素是不够的,机器人必须要先靠近物体,物体必须平行的线路连接两个摄像头,每一次机器人必须在恒定距离。在一般的情况下起始位置。如下:

图4计算操作长度

通过上图计算接近的操作长度和公式如下:

(3.2)

(3.3)

知道了这些,机器人能够执行以下行动。这些可以分为以下步骤:

图5机器人行动

在步骤a),机器人偏转一个90- 的角度为了与前方的物体轴平行。然后,在步骤b)中机器人向前移动。机器人应该行走的距离等于和一定的值之和。这个值是不确定的,所以机器人不能准确的到达物体的左边边缘,而是在物体中间某处。步骤c)是按照一定的角度转回去。按照这种方式,机器人是平行于物体前沿。最后一步是d),机器人通过的直线距离。

4结论

本文表明,提出的立体视觉系统是解决所需任务的一个可行方案。在只知道摄像机倾角和高度的情况下,利用立体图像解决接近物体的问题是完全可以的。再结合一些图像处理技术(如边缘侦测算法,霍夫变换等),会非常适合解决此类问题。

5下一阶段的研究方向

文中提出的视觉系统是为对具有直角边的物体而设计工作的。应该进一步研发现有算法并推广到使之能应用到不具有直边的对象中。然后,当机器人需要识别大范围的不同障碍物时,就需要开发出人工智能的认知系统。这将意味着机器人将能够对新的不熟悉的对象进行分类和从中学习认识。

参考文献:

[1]吕哲,王福利,常玉清.一种改进的Canny边缘检测算法 [J].东北大学学报.

[2]刘京诚.一种基于服务机器人的视觉系统设计[J]. 重庆大学学报.

[3]徐刚.基于图像的机器人视觉伺服控制系统研究[D].深圳大学.

[4]张斌,贺赛先.基于Canny算子的边缘提取改善方法[J].红外技术.

上一篇:基于M16C的嵌入式移动机器人硬件设计 下一篇:数字幅频均衡功率放大器的设计