智能机器人

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

创新园地返回项目名称:基于机器视觉的追踪机器人项目负责人:徐侨荣02001108基于机器视觉的追踪机器人一、绪论1.1引言机器视觉系统是指通过机器视觉产品将被摄取目标图像信号转变成数字化信号,然后由图像处理系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作,即机器视觉就是用机器代替人眼来做测量和判断。目前机器视觉系统是实现仪器设备的精密控制、智能化、自动化的有效途径,堪称现代工业生产的“机器眼睛”。目前如何让机器也拥有人一样的视觉,让机器人更好的服务于人类,以及如何更好的运用机器视觉已经成为当今科学及工业运用领域的前沿技术,已经成为一门内容丰富的综合性学科。随着机器视觉技术的不断发展,未来机器视觉将在人类生活的各个方面将发挥举足轻重的作用,为此发展机器视觉将具有重要的科学价值和意义。基于机器视觉的追踪机器人就是利用TI公司的DSPC6711开发平台和自行设计的硬软件来构建机器视觉开发平台,来开发和运用机器视觉。1.1.1机器视觉的构成及优点机器视觉由图像采集、图像处理、特征提取及判决和控制四大部分组成,即用图像采集设备来将图像转换成数字格式并传入计算机存储器中,用图像处理的不同的算法来提取对结论有重要影响的图像要素,再由特征提取来识别并量化图像的关键特性,而由判决和控制来做出结论。机器视觉系统的特点是提高生产的柔性和自动化程度。目前机器视觉具有非接触性、连续性、成本效率高、灵活性及具有较宽的光谱响应范围等优点,同时还由于机器视觉系统可以快速获取大量信息,而且易于自动处理,也易于同设计信息以及加工控制信息集成,因此目前机器视觉也是实现计算机集成制造的基础技术。1.2机器视觉的发展前景虽然当今的机器视觉技术还不是特别的发达,但目前机器视觉已经成为一门内容丰富的综合性学科,它在现代工业、国防、医学、空间技术等领域都有着广泛的运用前景。未来机器视觉不论在图像的采集设备上,还是在图像处理算法上都将会有革命性的突破,同时机器视觉的运用将不仅仅局限于工业领域,而将渗透到人类生活的方方面面。二、系统的硬件设计2.1硬件设计综述基于机器视觉的追踪机器人是利用机器视觉来完成对已知目标的自主追踪。追踪机器人的系统架构如图1所示:图1机器视觉硬件架构如上图所示。追踪机器人系统包括图像采集、图像处理、特征提取和判决控制部分,因而要完成本系统的设计就要包含以下三部分的硬件设计。(1)图像采集、图像处理硬件设计(2)追踪机器人的车体结构设计(3)追踪机器人的驱动控制系统设计即采用图像采集、图像处理硬件来完成图像的采集、图像的分割、目标物体的特征提取、目标物体的方位提取及发送追踪指令;由驱动控制系统来响应图像采集、图像处理硬件所发送的追踪指令,驱动追踪机器人实施追踪;而由追踪车的车体来搭载追踪机器人的所有设备和能源。以上的三部分是按阶段分步完成的,下面将对上述的三部分硬件设计分别给予介绍。2.2图像采集、图像处理设备通过分析和比较,本系统的图像采集、图像处理设备最终采用的是TI公司的DSPC6711图像处理开发平台,DSPC6711为TMS320C67xx浮点系列DSP芯片,采用浮点数字信号处理器,支持32位浮点运算,采用2级Cache,外频为100MHZ~150MHZ,运算速度达到900MFLOPS。图2DSPC6711开发平台2.3追踪车的驱动模式及架构如图3所示。追踪机器人采用的是两轮驱动模式的万向转动平台,该驱动模式具有转向灵活、低能耗、简化控制及简化设计加工等优点。而追踪车的车体架构采用的是有机玻璃板构建的三层架构设计,这种设计使得在有限的体积下,能尽可能的拓展其承载空间,来搭载DSPC6711开发平台、驱动控制系统及电源。同时简化了设计及加工,外表也较为美观。图3追踪机器人的车体架构图4驱动电路板2.4追踪机器人的驱动控制系统设计如图4所示。追踪机器人的驱动控制系统采用AT89S52单片机控制,驱动电路采用桥式驱动电路,拥有PWM脉宽调速功能。同时为了更好的实现驱动控制,驱动控制系统采用遥控和自主双模式。遥控模式用来实现人机交互,加强人对追踪机器人运动状态的控制和速度控制。自主模式用来响应DSP的指令控制,实现自主追踪。目前该电路已经能很好完成预先的设计要求,具有遥控和自主双。模式下能实现灵活的驱动控制和脉宽调速,自主模式下实现灵活的自主追踪。同时其具有驱动功率大、发热量小、能耗低、面积较小、模电和数电分离具有一定的抗干扰能力。2.5硬件系统的最终构成通过上述三部分硬件的分步设计,构成机器视觉的三大部分已经全部完成,然而在整个系统的运行过程中除了上述设备外,还要一台PC机在系统启动时加载程序。这是由于TI公司的c6711开发平台只是一个学习板,其Flashmemory只有128k,而最小的图像处理程序也有300k,显然无法烧写到Flash里,故不能采用从ROM启动模式,因而本系统采用主机加载启动模式,即系统上电后,从PC机上将程序加载到c6711开发平台的SDRAM上,然后脱机运行。系统的硬件架构如图5:图5基于机器视觉的追踪机器人的硬件架构最终基于机器视觉的追踪机器人的总装图如图6:图6基于机器视觉的追踪机器人三、系统的软件设计3.1采用彩色图像处理的原因及要求由于彩色系统因其拥有着6700万种颜色,所以可以更好的表现实际存在的各种物体,并且能够提供更多的物体信息。同时由于彩色图像处理所涉及的颜色信息是在图像检索中使用最广泛的底层特征,它和图像中的物体和场景有着紧密联系,与其他底层特征相比,颜色特征对于图像缩放、旋转、遮挡及其他形变有着更强的鲁棒性。也就是说采用彩色图像处理将更易于实现非严格定义背景下的自主追踪。本系统的彩色图像处理目的就是通过颜色分割、提取目标物体、确定目标躯体的方位、实现追踪,通过采用彩色图像处理来减少追踪机器人对追踪背景的要求。但由于彩色图像的数据量比较大,为了满足系统的实时性要求,必须运用或者自行开发运行效率更高的算法,来提高算法的执行效率,缩短执行时间。3.2彩色图像处理流程本系统的彩色图像处理流程如图7所示:图7彩色图像处理流程3.3颜色分割图像分割是按照具体的运用要求和具体图像的内容将图像分割成一块块区域,目的就是理解图像的内容,提取出我们感兴趣的对象,图像分割是模式识别和图像分析的预处理阶段。在本系统中的图像分割方法是采用聚类分割方法,其假设是图像中组成我们所感兴趣的对象的象素具有相同的颜色。本系统所追踪的目标物体为已知的橙红色乒乓球,系统利用相关性较低的YCrCb颜色模型来进行颜色分割,利用Y值来去除背景中的暗红色干扰。而用Cb值来去除背景中大部分的蓝色背景,再通过Cr来提取目标物体。背景如图8所示,图像分割结果如图9所示。图8彩色图像处理的背景图图9彩色分割结果3.4目标提取方案通过上述的颜色分割后,图像中会出现一系列的图像噪声,为了消除噪声对后期图像处理的影响,本系统采用类膨胀收缩算法来除去大部分的背景干扰,尽管如此,还有成块的背景干扰存在,如果不加以除去,提取的目标方位将产生严重偏差。同时除了上述的噪声外,由于光照的不均匀和背景的不确定,将造成图像在经颜色分割时有一部分的图像将被分离掉并在图像内部出现空洞和断层。如图10所示。即分割的效果将随着光源及背景的改变而改变。图10光照和背景对图像分割的影响本系统为了实现在非严格定义背景下的自主追踪,就要减少特征提取算法对光源和背景的灵敏度。由于圆形模板匹配法适用的前提是:背景中不会出现圆形的干扰,图像的边界处不会出现断层。而弧度特征提取算法的前提是:所要提取的目标图像不能在边缘和内部出现断层和空洞。由于这两种算法的前提在本系统中不一定成立,所以在实践的过程中被否定。最终本系统所采用的特征提取算法为基于面积最大假设的快速区域参数提取算法。该算法是采区域标签化的原理,即将目标图像中不同的区域的参数存入相应的数组元素中,该数组元素记录了区域的大小、方位,这个过程相当于把不同的区域打上不同的标号,当图像扫描完成后,查看数组中区域的记录,提取面积最大的区域,默认该区域就是目标区域。该算法是建立在对背景有一定的要求的基础上的,即其建立在目标图像中不会出现比所要提取的目标更大的干扰。该算法虽然对背景有一定的要求,但由于其没有对所要提取的目标图像的边缘和内部有过多的要求,所以对背景和光源变化不是特别敏感,故非常适用于该追踪机器人平台上。3.5快速区域参数提取算法3.5.1算法的具体实现过程快速区域参数提取算法是通过比较各个区域的面积大小,取出其中面积最大的区域。计算区域的过程是在主程序中建立一个结构数组“find[81]”,“find[]”数组的每一个成员都是结构体,其中的元素包含“rowvalue”、“istart”、“iend”、“inum”、“ivalue”,分别用来存放该区域的最后一行所处在图像中的行值,该行的起始“i”值,终止的“i”值,区域的象素个数以及“i”值总和。“find[]”数组的元素个数为81个,那是因为本系统彩色图像的分辨率为,即640列,480行,而颜色模型采用YCrCb的颜色模型和采用Cr、Cb进行颜色分割,同时由于DSP一次运算32位,所以系统扫描每一行图像要运算次。我们将每次运算所对应的4个相邻的Cr或Cb列称作一个扫描列,则“find[]”数组中的0~79的每一个元素都将唯一对应一个扫描列,如图11。图11数组和图像扫描列的对应关系在定义完结构数组之后,系统将区域的参数提取出来,并将其存入到相应的结构数组成员中,实现参数提取。3.5.2快速区域参数提取算法与传统的图像标签化算法的不同之处1)标签化的方式不同传统的区域标签化算法是在已经二值化的图像中将相邻的象素点打上相同的标号。而本系统的快速区域参数提取算法是从已经二值化的图像中提取区域的参数,如区域的大小、处在图像中的方位及区域最后一行的参数,并将这些参数存入相应的“find[]”数组,它的原理同区域标签化相同,但方法不同。2)扫描方式不同传统的区域标签化算法是以象素点为单位进行标签化,而快速区域信息提取算法是以象素行为单位进行区域参数提取,一个象素行可能包含一个或多个象素点。3)执行的效率更高在传统的区域标签化算法中,由于每一个象素点都要将周围的8个象素点进行扫描,对于每一个区域就意味着要将图像扫描8遍,如果有N个区域,就意味着要将图像扫描遍。而本系统所采用的快速区域参数提取算法只提取区域参数。其在对图像进行参数提取时,不论图像中有多少个区域,都只要将图像扫描一遍就可以。相比于传统的区域标签化其执行效率将更高。同时由于其不用把图像另作保存,从而减少了对存储空间的要求。图12传统的区域标签化3.5.4算法总结由于本系统是一个移动的平台,存在背景和关照条件的不稳定性问题,要在这样的不稳定条件下实现对目标物体的追踪,就要求降低算法对背景和关照的敏感性,同时要求算法的实时性要好。通过上述一系列的理论分析、实践和比较,最终本系统采用的是自己设计开发的快速区域参数提取算法。该算法是通过提取区域的参数,通过比较不同的区域,提取其中面积最大的区域,将该区域当成目标区域。虽然该算法对背景的要求比较高,要求背景中不能出现比目标物体更大的同颜色的物体,但该算法在减少了对背景和光源的要求的同时,大大的提高了目标物体提取的速度,即有很好的实时性,因而能很好的满足本系统的追踪要求。3.6目标物体方位的提取和追踪3.6.1目标方位的提取在经过上述处理后,要提取目标物体的方位信息,最简单、最快速的方法就是采用矩计算,即求型心法,其通用的方程式如下:即在目标提取的过程记录目标象素的所在行的“ivalue”值和区域象素个数“inum”,并将“ivalue”和“inum”加到find[]数组中的“find[i].ivalue”和“find[i].inum”中,再用来求得x轴坐标,该就是目标所在摄像机中的X轴方位信息。目标物体的方位提取如图13所示。其中的黑线是系统提取目标方位后的输出。图13目标物体的方位提取图14目标搜索的原理3.6.2追踪目标物体在本系统中,将物体所在摄像

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功