毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc

上传人:laozhun 文档编号:3976999 上传时间:2023-03-30 格式:DOC 页数:26 大小:1.11MB
返回 下载 相关 举报
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc_第1页
第1页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc_第2页
第2页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc_第3页
第3页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc_第4页
第4页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现.doc(26页珍藏版)》请在三一办公上搜索。

1、本科生毕业论文(设计)题 目: RoboCup中型组机器人 全维视觉预处理算法设计及实现 姓 名: 学 院: 工学院 专 业: 农业电气化与自动化 班 级: 电气41 学 号: 指导教师: 职称: 副教授 2008 年 6 月10 日目 录摘要1关键词1ABSTRACT1KEY WORDS11.1 ROBOCUP简介21.2 ROBOCUP中型组规则概述21.3 软硬件平台介绍31.3.1 实验平台简介31.3.2 ROBOCUP中型组机器人介绍42 问题的提出52.1 机器人视觉系统处理过程52.2 存在的问题62.3 提出的解决方案63 算法的实现73.1 原始图像的采样73.1.1 BM

2、P图像格式的介绍73.1.2 BMP格式文件存储的的C+实现83.2 RGB图像空间与HSI图像空间的关系93.2.1 RGB图像介绍93.2.2 HSI彩色空间介绍93.3 对图像的初步分析103.3.1 图像的无效区域分析103.3.2 几个相关坐标系的说明及分析103.3.3 图像无效区域的特征分析123.4 算法的C+实现153.4.1 实现框图153.4.2 主要代码153.4.3 将算法导入主程序154 结果分析165 发展与展望16致谢17参考文献18附录一19附录二20RoboCup中型组机器人全维视觉预处理算法设计及实现农业电气化与自动化学生 指导老师 摘要:足球机器人的视觉

3、系统是整个足球机器人比赛的关键,通过视觉系统,能够识别出球、球门等特征以及机器人的色标,确定本方机器人、对方机器人以及球的位置和角度,从而为比赛决策提供信息。本文主要设计了一个对RoboCup中型组机器人的全维视觉的预处理算法。先采集全维视觉的全景图像,分析该全景图像,找到将要影响诸如点球,避障等一系列后续工作的无效区域,通过MATLAB分析该无效区域特征,设计了一种全向视觉预处理算法,去除无效区域的干扰,以提高机器人对目标标定的精度。实验结果表明,经改进后的视觉系统对目标标定的精确性得以很大改善。关键词: RoboCup中型组机器人;全维视觉;RGB空间;图像处理 The Design An

4、d Realization on Omni-directional Vision Preprocessing Algorithm of RoboCup Medium-sized RobotsStudent majoring in agricultural electrification and automation Chen QiaoshunTutor Ding YongqianAbstract: Soccer Robot Omni-directional Vision System is the key to the robot soccer competition. Through the

5、 Omni-directional Vision system, the robot can identify the ball, the goal and also the color code of the participated robots, the position and the angle of the ball, so that it can provide lots information in decision-making during the competition. the preprocessing algorithm is designed for RoboCu

6、p Medium-sized Robots Omni-directional Vision. After collecting the panoramic picture, some idle areas like avoiding obstacles in the subsequent process is found by analyzing the picture. Then on the basis of analyzing the characteristics of these idle areas by MATLAB, Ive designed the preprocessing

7、 algorithm and wiped off the interferences of the idle areas. In this case, it can improve the accuracy of Robots Aim-fixing. And verified by the experiment, the improved vision system has increased the accuracy of the robots aim-fixing.Key words: RoboCup Medium-sized Robots; Omni-directional Vision

8、; RGB space;Image processing 1 研究背景机器人是一种可编程和多功能的,用来搬运材料、零件、工具的操作机;或是为了执行不同的任务而具有可改变和可编程动作的专门系统。中国工程院前院长曾指出:“机器人学的进步和应用是21世纪自动控制最有说服力的成就,是当代最高意义上的自动化”。机器人技术综合了多门学科的发展成果,代表了高技术的发展前沿,它在人类生活应用领域不断扩大,引起了国内外学者的高度重视。1.1 RoboCup简介RoboCup的原意为机器人世界杯(Robot World Cup)。1997年正式成立,总部设在日本东京,正式注册瑞士伯尔尼。RoboCup自1997年

9、起每年举办一次机器人足球世界杯赛(The Robot World Cup)。RoboCup是一个通过提供足球比赛这样一个标准问题来促进人工智能、机器人以及相关领域的研究而建立的国际组织。1997年,首届RoboCup比赛及会议在日本的名古屋举行,为实现2050年机器人足球队击败人类足球世界冠军的梦想迈出了坚实的第一步。 以后每年举办一届。1998年在法国巴黎,1999年在瑞典斯德哥尔摩,2000年在澳大利亚墨尔本,2001年在美国西雅图,2002年在日本福冈,2003年在意大利帕多瓦,2004年在葡萄牙里斯本,2005年在日本福冈,2006年在德国的不来梅,2007年在美国的亚特兰大举行。20

10、08年将在中国的苏州举办,这是首次在中国举行的机器人足球世界杯。我国在机器人足球方面的研究虽然起步比较晚,但己经取得了比较显着的成果。我国有许多高校正在致力于这方面的研究工作,其中成绩比较突出的有清华大学,中国科技大学,哈尔滨工业大学,国防科技大学和华南理工大学等高校。1.2 RoboCup中型组规则概述RoboCup中型组当前的比赛规则允许每支球队最多6个直径不超过50cm的中型机器人在18米12米的场地上使用橙色足球进行比赛。所有的传感器都由机器人自身携带,机器人能使用无线网络与队友、场外Coach机进行通讯。除了机器人上下场外,不允许人类对比赛进行额外的干预。因此机器人是全分布式的和全自

11、主的,机器人需要能够完全自主的通过传感器信息完成目标识别和自定位,决定自身采取的动作,控制电机和其它执行机构以完成比赛。每场比赛分成两个15分钟的半场。比赛过程由人类裁判控制,裁判具有绝对的权威贯彻比赛规则的执行。同时有一个助理裁判负责操作裁判盒程序,根据主裁判的判罚发出相应的指令如比赛开始、暂停、开球、任意球等给比赛双方球队的场外Coach机,场外Coach机再将指令通过无线网络发送给场上比赛的机器人。 根据当前的规则,RoboCup中型组比赛环境是高度颜色编码化的,因此场上各种目标可以通过它们独有的颜色信息来识别。但是从今年在苏州举行的RoboCup 2008开始,规则上将会有一些重大的变

12、化。如有颜色的球门将会被替换成白色的球网,有颜色的立柱被取消等。同时RoboCup中型组还有进一步修改规则的计划,如允许机器人色标和车体使用任意颜色,比赛用球改为任意FIFA足球,机器人根据裁判哨音和手势进行比赛等。比赛规则如下: 规则一 比赛场地如图【1】RoboCup中型组的场地表面必须是绿色的。场地上方悬挂人造光源。场地上的灯光亮度在300勒克斯到1200勒克斯之间。场内测得的光亮最强点和光亮最弱点之差必须小于300勒克斯.场地的长度: 最小 8米,最大16米;宽度: 最小6米,最大12米。图【1】规则二 比赛所用球官方比赛用球是任意橙色国际足联标准尺寸5号球,球漆成橙色。规则三 比赛队

13、员装备每个机器人队员尺寸必须符合下列约束:1. 如果机器人外形在地板上投影须符合下列尺寸:最小30cm 30cm,最大50cm 50cm,每个机器人必须拥有各自的配置和执行装置,2. 如果机器人外形在地板投影超过60cm 60cm,并非所有机器人需要自己的配置和执行机构。大部分的比赛时间,机器人外形必须在50cm 50cm范围内,特别是在场内移动的时候。只有在射门或者带球的才可延伸至60cm 60cm限制内。3. 机器人必须不低于40厘米,不高于80厘米。4. 机器人主要部分颜色必须是黑色的。为了减少反射,油漆或者使用的材料必须是不光滑的。 1.3 软硬件平台介绍 本文中,我们采用VC+.ne

14、t对RTC2006平台进行二次开发,控制RobotCup中型足球机器人。1.3.1 实验平台简介 我们采用的软件平台是由华南理工大学的按照RobotCup中型足球机器人比赛标准开发的RTC2006。运用该平台能直接参加RTC2006足球机器人中型组比赛,用户也可以在此平台上用VC+.net进行二次开发。RTC2006采用Windows XP Professional操作系统,需要摄像头驱动程序和IPM运动控制板的动态链接库TML_lib.dll、全向视觉动态库visiondll.dll、模糊控制动态库control.dll。推荐运行在PC CPU 800MHz以上、内存256M以上的硬件环境上

15、。 运行于RTC2006上的程序从结构上可分为4个主要模块:视觉模块、决策模块、控制模块和网络通讯模块。除RTC2006程序外,还有一个监控程序(Monitor)用于远程控制和查看个机器人信息。RTC2006运行在机器人的笔记本电脑中,负责机器人的视觉、决策、控制和通信:Monitor运行在场外的计算机里,可同时监控多台机器人,并可以从裁判盒接受裁判指令。图【2】就是RTC2006的模块构成。裁判盒控制显示通讯视觉决策通讯控制WorldModelMonitorWorldModelRTC2006-1通讯视觉决策控制WorldModelRTC2006-N图【2】 1.3.2 RoboCup中型组机

16、器人介绍1.3.2.1 机器人硬件说明该机器人严格按照国际比赛尺寸标准设计,长500mm,宽520mm,高580mm.金属外壳,框架结构,模块化安装。有两个独立驱动轮,一个被动支撑轮,移动轮子直径为210mm;控制驱动板是IPM100。1.3.2.2 机器人视觉系统的构成该机器人视觉模块具有目标识别、跟踪、定位、通讯等多种功能。可适用于単目视觉、全景视觉等视觉系统。全景视觉系统由摄像机和全向镜两部分组成,周围的景物通过全向镜的反射投影到摄像机中得到全景图像。其中不同的全向反射镜设计将直接影响到全景成像的效果,因此选择一种合适的镜面形状至关重要。常用的镜面形状包括锥面、球面、抛物面和双曲面等,因

17、其特点不同分别适用于不同的应用场合,根据比赛的特定要求也可以设计专门的组合镜面。我们的机器人采用的是双曲面镜面,因为双曲线镜面具有单视点、变形小、分辨率高、体积小等特点,能很好的满足比赛的要求。单视点是全景视觉系统的一个非常重要的属性,通常期望一个全景视觉系统具有单视点,即唯一的投影中心。在单视点的条件下,图像中的每一个像素都对应着经过视点的一条入射光线。若已知折反射系统的光路,就可以反推出每个像素对应的入射光线的方向。因此,可以将全景图像的像素点投影到离视点任意距离的某个平面上形成平面投影图像。由此可见,单视点的重要性在于它允许将全景图变换成平面投影图,看起来与普通摄像机得到的图像并无差别,

18、而观察视角更大,从而可以使用一般的处理投影图的方法进行图像分析和处理。图【3】是单视点成像的原理图:图【3】如图:镜面可以采集到场地全景,场景的入射光线经过镜面的反射,到达摄像镜面。摄像机就会将场地全景全部拍摄到!图【4】是我们的机器人摄像头拍下的场地全景图像:图【4】2 问题的提出2.1 机器人视觉系统处理过程数字图像处理的过程可分为以下几个步骤:1. 图像原始信息的采集,通过视觉传感器采集图像信息,数字化原始图像;2. 图像的预处理,对原始的信息进行优化,以方便图像的后期处理;3. 图像单个对象特征的提取,对图像进行区域划分,提取个体对象的图像属性如:边缘,轮廓等,4. 图像高级处理,通过

19、执行通常与人类视觉相关的感知函数,来对识别的对象进行总体确认。针对本系统,视觉线程循环过程主要执行以下任务:1) 摄像头的视频采集。2) 全向图像分析处理,包括颜色分类、颜色模型转换、图像识别、距离转换 等。3) 将分析处理后的视觉信息,赋值到视觉与决策模块的共享对象 WorldModel。视觉线程循环流程图如图【6】:图【6】2.2 存在的问题以图【6】为例,主要要解决的问题是在全向视觉图像处理之前,修改无效区域,方便设计诸如点球,避障等一系列后续工作。由于实验平台硬件上设计的缺陷性,导致视觉摄像头的采集了大量的冗余信息,如外围的黑色区域中间的机器人机身以及起固定作用支架等都不是有效的视觉信

20、息区域,在原始的视觉处理算法中并没有考虑到这些区域对有用信息采集产生的影响,这些无效视觉信息区域大多是接近黑色的,对其余有效黑色区域的识别产生了严重的干扰,如其它机器人的位置信息的提取。而只有有了其它机器人的位置信息,才可以设计诸如点球,避障等一系列后续工作。换言之,就是将无效区域的黑色干扰去除,便于对有效区域的标定。因此,图像预处理结果的好坏直接影响到图像后期的处理的效果,进而对整个系统的控制产生不良的后果。 2.3 提出的解决方案如图【9】所示,就是将无效区域(黑色)改变成其他颜色,除了场内有效的颜色,如球门,球,队友等的颜色,在此,我们用场地的颜色(绿色)来替换。然后才可以标定队友机器人

21、、足球、球门等一系列的有效区域。本文中,我们讨论一种图像预处理算法来解决上面的问题,这个算法必须符合下面的要求:1.这个算法必须的实时的,足球机器人是个要求实时性很高的系统,所以这个算法不能占用太多的时间,要在很短的时间里完成预处理操作。2.这个算法必须是有效的,由于视觉系统是整个系统的最主要的输入,它所采集到的信息正确与否直接影响到系统能否正常的运行。所以这个算法不能干扰有效信息的提取,也不能留有太多的无效信息。3.这个算法必须是可行的,由于这个算法将要应用与实际,所以它必须是要是易于实现,易于编程,可以在实验平台的主控程序中实现的。3 算法的实现 为了能够实现上述方案,必须对原有的图像进行

22、分析,从而找出图像中无效区域存在的规律,进而通过编程实现这个算法。3.1 原始图像的采样为了方便对原始图像的特征进行分析,这里要对图像进行采样,图像本身是动态变化的一个M*N*3的数组,可以直接将这个数组保存在一个文本文档中,但是这样不便在WINDOWS 平台下进一步对图像的特征进行分析。由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows环境中运行的图形图像软件都支持BMP图像格式,而且,BMP图像格式能将图像的原始数据最大限度无损保存。所以,我们把图像信息以BMP格式保存。3.1.1 BMP图像格式的介绍BMP是一种与硬件设备无关的图像文件格式,使用非

23、常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大,但是它能最大限度的保存图像的原始信息,这对我们后期的处理非常有利。BMP文件的图像深度可选lbit、4bit、8bit及24bit。在这里,我们把数据保存成24bit,以确保数据的完整性。BMP文件存储数据时,存储扫描方式是按从左到右、从下到上的顺序。 BMP文件的存储结构:BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。 1:BMP文件头 BMP文件头数据结构含有BMP文件的类型、文件大小和位图起始位置等相关信息。 其结构定义如下: typedef struct tagBIT

24、MAPFILEHEADERWORD bfType; / 位图文件的类型,必须为BMDWORD bfSize; / 位图文件的大小,以字节为单位WORD bfReserved1; / 位图文件保留字,必须为0WORD bfReserved2; / 位图文件保留字,必须为0DWORD bfOffBits; / 位图数据的起始位置,以相对于位图i. / 文件头的偏移量表示,以字节为单位 BITMAPFILEHEADER;2:位图信息头 BMP位图信息头数据用于说明位图的尺寸等相关信息。typedef struct tagBITMAPINFOHEADERDWORD biSize; / 本结构所占用字节

25、数LONG biWidth; / 位图的宽度,以像素为单位LONG biHeight; / 位图的高度,以像素为单位WORD biPlanes; / 目标设备的级别,必须为1WORD biBitCount / 每个像素所需的位数,必须是1(双色),/ 4(16色),8(256色)或24(真彩色)之一DWORD biCompression; / 位图压缩类型,必须是 0(不压缩),/ 1(BI_RLE8压缩类型)或2(BI_RLE4压缩类型)之一DWORD biSizeImage; / 位图的大小,以字节为单位LONG biXPelsPerMeter; / 位图水平分辨率,每米像素数LONG b

26、iYPelsPerMeter; / 位图垂直分辨率,每米像素数DWORD biClrUsed; / 位图实际使用的颜色表中的颜色数DWORD biClrImportant; / 位图显示过程中重要的颜色数 BITMAPINFOHEADER;3:颜色表 颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色。RGBQUAD结构的定义如下: typedef struct tagRGBQUAD BYTE rgbBlue; / 蓝色的亮度(值范围为0-255)BYTE rgbGreen; / 绿色的亮度(值范围为0-255)BYTE rgbRed; / 红色

27、的亮度(值范围为0-255)BYTE rgbReserved; / 保留,必须为0 RGBQUAD;颜色表中RGBQUAD结构数据的个数有biBitCount来确定:当biBitCount=1,4,8时,分别有2,16,256个表项;当biBitCount=24时,没有颜色表项。而位图信息头和颜色表组成位图信息,BITMAPINFO结构定义如下:typedef struct tagBITMAPINFO BITMAPINFOHEADER bmiHeader; / 位图信息头RGBQUAD bmiColors1; / 颜色表 BITMAPINFO;4:位图数据 位图数据记录了位图的每一个像素值,记

28、录顺序是在扫描行内是从左到右,扫描行之间是从下到上。位图的一个像素值所占的字节数: 当biBitCount=1时,8个像素占1个字节;当biBitCount=4时,2个像素占1个字节;当biBitCount=8时,1个像素占1个字节;当biBitCount=24时,1个像素占3个字节;Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充, 3.1.2 BMP格式文件存储的的C+实现 由于开发平台是VC+.NET,这里使用C+语言来实现,用MFC下的CFile类实现对文件的读写操作,其具体代码见附录一。 3.2 RGB图像空间与HSI图像空间的关系由于摄像

29、头采集到的RGB空间的图像信息,而后期的图像特征提取是基于HSI空间的,这里必须讨论RGB空间与HIS空间的关系,以确保前期的预处理对后期的图像特征提取没有不良影响。3.2.1 RGB图像介绍一幅RGB图像就是彩色像素的一个M*N*3数组,其中每一个彩色像素点都是在特定空间的未知的彩色空间相对应的红、绿、蓝三个分量(见图【7】)。图【7】RGB也可以看成是一个由三幅灰度图像形成的“堆”,当将其送到彩色监视器的红、绿、蓝的输入端时,便在屏幕上产生了一幅彩色图像。RGB彩色空间常常用一个RGB彩色立方体加以图解展示,如图【8】这个立方体的顶点的光的原色(红、绿、蓝)和合成色(青、品红、黄)。图【8

30、】3.2.2 HSI彩色空间介绍当人们观察一个彩色的物体时,往往倾向于他的色调、饱和度、和明度来描述它。饱和度给出了纯彩色被白光冲淡程度的度量,而色调描述纯色的属性(如纯黄色、橙色、或红色)。明度是一个主观描述符,事实上几乎无法度量。它使非彩色的亮度概念得以具体化,并且是描述颜色感觉的一个关键因素。亮度(灰度级)是描述单色图像的一个最有用的描述符。因此,我们提出了HSI彩色空间模型。HSI(hue,色度;saturation,饱和度;intensity,亮度)彩色空间模型将亮度分量与一幅彩色图像中携带的彩色信息分开。形成一个HSI空间所需的色调、饱和度和亮度值可以通过RGB彩色立方体得到。也可

31、以这样说,可以将颜色从RGB转换为HSI, 也可以将颜色从HSI转换为RGB。有了这些颜色信息,我们才可以根据这些颜色信息实现颜色标定、区域分割、特征提取、自定位等等的算法设计。3.3 对图像的初步分析3.3.1 图像的无效区域分析这里所说的无效区域是指不含有中型组足球机器人场地信息的图像区域。这些区域主要是由于硬件设计上的缺陷造成的。无效区域主要包括:1. 除去图像中间圆形区域以外的黑色区域,这些区域反映的是反射镜附近对反射 镜起固定作用的固定座,按照定义,这块区域是无效区域;2. 圆形区域的中间的方形区域,这些区域反映的是足球机器人本身在图像中的位置,按照定义,这块区域是无效区域;3. 圆

32、形区域中三个小扇形区域,这三个扇形实际上反光镜的支架经反光镜反射生成的,显然这也是无效区域。为了方便说明,这里我们把这三个区域分别标记为:区域A,区域B,区域C。如图【9】:图【9】3.3.2 几个相关坐标系的说明及分析3.3.2.1 坐标的定义为了方便描述图像中的无效区域以及场地上的物体相对于机器人的的位置,这里定义了一个机器人坐标系(),图像坐标系()和镜头坐标系()。1.机器人坐标系(),如图【10】:以摄像头的中心点位坐标原点,以平行于机器人两轮的轴线方向为X轴,以垂直于机器人两轮的轴线方向为Y轴,单位长度为1mm这个坐标系主要为机器人的控制提供参考依据。图【10】2. 图像坐标系()

33、,如图【11】:以图像的左上方的第一个点为坐标原点,以水平方向为X轴,以垂直方向为Y轴,单位长度为1像素,这个坐标系是为了方便图像的索引而建立的。图【11】3. 镜头坐标系(),如图【12】:以图像上镜头的中心点为坐标原点,以水平方向为X轴,以垂直方向为Y轴,单位长度为1像素,这个坐标系是为了方便预处理算法而建立的。图【12】3.3.2.2.坐标系之间的联系镜头坐标系()和图像坐标系()之间的关系可以由用下面公式表示:设在图像坐标系()镜头坐标为()则 图像坐标系()与机器人坐标系()之间的关系机器人坐标系()图像坐标系()之间的关系可以由用下面公式表示 ( 是和物体实际位置坐标以及摄像头相关

34、的一个参数)3.3.3 图像无效区域的特征分析 由于这些区域都是硬件设计的不合理造成的,相对于机器人本身都是静止的,因此,这些无效区域在图像中都是固定不变的。并且区域的值大多是趋近于黑色区域的。除此之外,每个区域都由其本身的一些特征: 区域A: 区域A是一个矩形区域和圆形区域的差。这里设圆形区域为集合,整个图像区域为集合,则在图像坐标系()中: 区域A= 其中:M=;R=;区域B: 区域B实际上是机器人的机身,理论上应该是个矩形区域,但是,由于反射镜是个曲面,导致这块区域发生了扭曲,但是为了方便处理仍然近似认为这个区域是矩形的。则:区域B=;区域C: 区域C是起固定作用的三根支架经反射镜反射成

35、的像,这三个小扇形面积基本相等,位置基本上在圆的三等分线上。这个区域可以用下面公式表示:为了方便描述,这里在镜头坐标系()基础上建立极坐标系()它们之间的关系可以用下面公式表示:则:区域C=其中: r为圆形区域的半径; 为区域C中扇形的夹角;考虑到计算机计算的效率,我们采用直角坐标结合线性规划的思想进行处理,即在直角坐标下区域C的表示为:C=;其中:,的值为扇形边界直线的斜率,在实际处理时得出相应的值; w为图像的宽度; l 为为图像的长度。其中提到的一些参数我们可以通过MATLAB找到相应的点,得到实际的数值。具体操作如下:打开MATLABToolboxesImage ProcessingI

36、mage Tool(imtool),然后在出现的界面,打开一张以Bmp格式存储的图片,就可以找到相应的坐标点,如图【13】所标,具体的值如下:图【13】中心点坐标:三个柱子的坐标值:, , ,在处理过程中为了提高精确度,我们将中间的矩形区域分为上下两个小矩形,针对上面的矩形,对角点坐标为:,针对下面的矩形,对角点坐标为:,由以上坐标值,可以算出圆的半径为:三个柱子各边界的斜率为: 同理可得: ;以上值均为理论计算值,在实际程序编写和调试时,还要据实际情况不同而有变化。 3.4 算法的C+实现由上述分析的结果,我们可以设计出以下的算法。首先将RBG的值设为场地颜色,r=37,g=90,b=72。

37、然后根据设定的边界条件,依次找出区域A,B,C.将这些区域的RGB值改为初始设定的RGB(r=37,g=90,b=72)。3.4.1 实现框图实现框图如图【14】:图【14】3.4.2 主要代码 主要代码见附录二。3.4.3 将算法导入主程序 此算法必须在图像特征提取之前完成,所以这里我们将这个函数添加到全向视觉类(CRadiusScanImageProcess类 )作为其的成员函数,然后在视觉回调线程中调用此函数就可以完成相关预处理。其调用代码如下:imageCaptureTime.update();omniVisionCamera.CaptureImage(char*)(omniVisio

38、nImage.pBuffer); /图像预处理 omniVisionProcess. killbalck(BYTE*)(omniVisionImage.pBuffer)/图像识别omniVisionProcess.processImage();4 结果分析 图【15】处理之前 图【16】处理之后由图【15】和图【16】我们可以看到,处理之前的黑色无效区域经处理后,可变为场地色(绿色)。这样,后期对球门(蓝色或黄色)、球(橘黄)、队友(黑色)、对方(黑色)的标定的精确度得到了很大改善。在未处理之前,不能对有效区域进行精确标定,比如在点球射门时,机器人首先识别的是自身,就有可能不能有效的避开守门员

39、而射门。而在于处理之后,自身的干扰被去除,在点球时就能有效地避开对方守门员射门。5 发展与展望 在本文中,虽然实现了预期的效果,而且不会占用太多的运算时间,响应快。但此算法只适用于机器人的摄像头、摄像头支架、机体之间的相对位置不变时的情况。当不小心使它们的位置发生变化时,必须重新设定算法中相应的参数值,抗干扰性比较差。针对此点有待改善。致谢四年本科学习即将结束,回顾过去四年感慨良多,有收获也有遗憾,而最难忘的是母校对我的培养和那些曾经给予过我关心与帮助的人。首先要感谢我的毕业设计指导老师丁永前老师,丁永前老师以其高度的敬业精神、严谨求实的治学态度、兢兢业业的工作作风对我产生重要影响。丁老师渊博

40、的知识、开阔的视野和敏锐的思维也给了我深深的启迪。没有他的悉心指导,也就没有我这篇论文的顺利完成。此外,我还要感谢在这次论文完成过程中给过我很大帮助的所有人。感谢在大学期间,所有给我任课的老师,让我圆满的完成了大学学业。感谢足球机器人小组所有成员,在许多理论方法上给了我很多指导:感谢同学董泽富在视觉理论及C+语言的指导;感谢同学崔振亚,在机器人通讯方面的指导;感谢芦静,张美娜等同学在控制方面的指导。感谢陪我度过大学生活的所有同学、朋友以及舍友,是你们陪我我编写了美好精彩的大学篇章。感谢远方的父母亲人,这些年对我的培养和关怀!借此机会,同样感谢在百忙之中抽出宝贵时间对本论文进行评审的各位专家们,

41、衷心恳请你们提出宝贵意见!参考文献1 刘伟. RoboCup中型组机器人全景视觉系统设计与实现D.长沙:国防科学技术大学研究生院,2004.2 卢惠民.机器人全向视觉系统自定位方法研究D.长沙:国防科学技术大学研究生院,2005.3 卢惠民,王祥科.基于全向视觉和前向视觉的足球机器人目标识别J.中国图像图形学报.2006,11(11):1687-1689.4 刘伟,刘斐,郑志强.用于机器人足球赛的全景视觉设计仿真J.计算机仿真,2005,22(11).5 Raiael C.Gonzalez .Richard e.Woods,数字图像处理M.阮秋琦,阮宇智,译.北京:电子工业出版社,2005.6

42、 华南理工大学智能软件与机器人研究室.RoBoCup中型组机器人视觉软件MVsion使用指南R.广州:华南理工大学,2006.7 舒文杰,耿丽娜,郑志强.RoBoCup仿真研究J.系统仿真学报,2004,10:2220-2222.8 杨淑莹.VC+图像处理程序设计M.北京:清华大学出版社,北京交通大学出版社,2006.9 周长发.精通VC+图像处理编程M.北京:电子工业出版社,2006.10 求是科技.VC+数字图像处理典型算法及实现M.北京:人民邮电出版社,2006.11 龚声蓉.数字图像处理与分析M.北京:清华大学出版社,2006. 附录一/ 将buff数据保存到BMP中去savebuff

43、tobmp(BYTE *pBuffer)BITMAPFILEHEADER bmpfile; BITMAPINFOHEADER bmpinfo; bmpfile.bfType = 0x4d42; / BM bmpfile.bfReserved1 = bmpfile.bfReserved2 = 0; bmpfile.bfOffBits = sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER); bmpfile.bfSize = bmpfile.bfOffBits+sizeof(pBuffer);/+10000-14;/m_nSize; /set bmpinfo bmpinfo.biSize = sizeof(BITMAPINFOHEADER); bmpinfo.biWidth =width; /m_nW; bmpinfo.biHeight = height; /m_nH; bmpinfo.biPlanes = 1; bmpinfo.biBitCount = 24; bmpinfo.biCompression = BI_RGB; bmpinfo.biSi

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号