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

上传人:仙*** 文档编号:28925100 上传时间:2021-09-20 格式:DOC 页数:26 大小:1.14MB
收藏 版权申诉 举报 下载
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现_第1页
第1页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现_第2页
第2页 / 共26页
毕业设计(论文)RoboCup中型组机器人全维视觉预处理算法设计及实现_第3页
第3页 / 共26页
资源描述:

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

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

2、.3 提出的解决方案 .63 算法的实现 .73.1 原始图像的采样 .73.1.1 BMP 图像格式的介绍.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 发展与展望

3、 .16致谢 .17参考文献 .18附录一 .19附录二 .201RoboCup 中型组机器人全维视觉预处理算法设计及实现农业电气化与自动化学生 指导老师 摘要:足球机器人的视觉系统是整个足球机器人比赛的关键,通过视觉系统,能够识别出球、球门等特征以及机器人的色标,确定本方机器人、对方机器人以及球的位置和角度,从而为比赛决策提供信息。本文主要设计了一个对 RoboCup 中型组机器人的全维视觉的预处理算法。先采集全维视觉的全景图像,分析该全景图像,找到将要影响诸如点球,避障等一系列后续工作的无效区域,通过MATLAB 分析该无效区域特征,设计了一种全向视觉预处理算法,去除无效区域的干扰,以提高

4、机器人对目标标定的精度。实验结果表明,经改进后的视觉系统对目标标定的精确性得以很大改善。关键词: RoboCup 中型组机器人;全维视觉;RGB 空间;图像处理 The Design And Realization on Omni-directional Vision Preprocessing Algorithm of RoboCup Medium-sized RobotsStudent majoring in agricultural electrification and automation Chen QiaoshunTutor Ding YongqianAbstract: Socce

5、r Robot Omni-directional Vision System is the key to the robot soccer competition. Through the 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

6、 in decision-making during the competition. the preprocessing algorithm is designed for RoboCup 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

7、of analyzing the characteristics of these idle areas by MATLAB, Ive designed the preprocessing 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 acc

8、uracy of the robots aim-fixing.Key words: RoboCup Medium-sized Robots; Omni-directional Vision; RGB space;Image processing 1 研究背景机器人是一种可编程和多功能的,用来搬运材料、零件、工具的操作机;或是为了执行不同的任务而具有可改变和可编程动作的专门系统。中国工程院前院长曾指出:“机器人学的进步和应用是 21 世纪自动控制最有说服力的成就,是当代最高意义上的自动化” 。机器人技术综合了多门学科的发展成果,代表了高技术的发展前沿,它在人类生活应用领域不断扩大,引起了国内外学

9、者的高度重视。1.1 RoboCup 简介RoboCup 的原意为机器人世界杯(Robot World Cup) 。1997 年正式成立,总部设2在日本东京,正式注册瑞士伯尔尼。RoboCup 自 1997 年起每年举办一次机器人足球世界杯赛(The Robot World Cup)。RoboCup 是一个通过提供足球比赛这样一个标准问题来促进人工智能、机器人以及相关领域的研究而建立的国际组织。1997 年,首届RoboCup 比赛及会议在日本的名古屋举行,为实现 2050 年机器人足球队击败人类足球世界冠军的梦想迈出了坚实的第一步。 以后每年举办一届。1998 年在法国巴黎,1999 年在瑞

10、典斯德哥尔摩,2000 年在澳大利亚墨尔本,2001 年在美国西雅图,2002 年在日本福冈,2003 年在意大利帕多瓦,2004 年在葡萄牙里斯本,2005 年在日本福冈,2006 年在德国的不来梅,2007 年在美国的亚特兰大举行。2008 年将在中国的苏州举办,这是首次在中国举行的机器人足球世界杯。我国在机器人足球方面的研究虽然起步比较晚,但己经取得了比较显着的成果。我国有许多高校正在致力于这方面的研究工作,其中成绩比较突出的有清华大学,中国科技大学,哈尔滨工业大学,国防科技大学和华南理工大学等高校。1.2 RoboCup 中型组规则概述RoboCup 中型组当前的比赛规则允许每支球队最

11、多 6 个直径不超过 50cm 的中型机器人在 18 米12 米的场地上使用橙色足球进行比赛。所有的传感器都由机器人自身携带,机器人能使用无线网络与队友、场外 Coach 机进行通讯。除了机器人上下场外,不允许人类对比赛进行额外的干预。因此机器人是全分布式的和全自主的,机器人需要能够完全自主的通过传感器信息完成目标识别和自定位,决定自身采取的动作,控制电机和其它执行机构以完成比赛。每场比赛分成两个 15 分钟的半场。比赛过程由人类裁判控制,裁判具有绝对的权威贯彻比赛规则的执行。同时有一个助理裁判负责操作裁判盒程序,根据主裁判的判罚发出相应的指令如比赛开始、暂停、开球、任意球等给比赛双方球队的场

12、外 Coach 机,场外 Coach 机再将指令通过无线网络发送给场上比赛的机器人。 根据当前的规则,RoboCup 中型组比赛环境是高度颜色编码化的,因此场上各种目标可以通过它们独有的颜色信息来识别。但是从今年在苏州举行的 RoboCup 2008 开始,规则上将会有一些重大的变化。如有颜色的球门将会被替换成白色的球网,有颜色的立柱被取消等。同时 RoboCup 中型组还有进一步修改规则的计划,如允许机器人色标和车体使用任意颜色,比赛用球改为任意 FIFA 足球,机器人根据裁判哨音和手势进行比赛等。比赛规则如下: 规则一 比赛场地如图【1】RoboCup 中型组的场地表面必须是绿色的。场地上

13、方悬挂人造光源。场地上的灯光亮度在 300 勒克斯到 1200 勒克斯之间。场内测得的光亮最强点和光亮最弱点之差必须小于 300 勒克斯.场地的长度: 最小 8 米,最大 16 米;宽度: 最小 6 米,最大 12 米。3图【1】规则二 比赛所用球官方比赛用球是任意橙色国际足联标准尺寸 5 号球,球漆成橙色。规则三 比赛队员装备每个机器人队员尺寸必须符合下列约束:1. 如果机器人外形在地板上投影须符合下列尺寸:最小30cm 30cm,最大50cm 50cm,每个机器人必须拥有各自的配置和执行装置,2. 如果机器人外形在地板投影超过60cm 60cm,并非所有机器人需要自己的配置和执行机构。大部

14、分的比赛时间,机器人外形必须在50cm 50cm范围内,特别是在场内移动的时候。只有在射门或者带球的才可延伸至60cm 60cm限制内。3. 机器人必须不低于 40 厘米,不高于 80 厘米。4.机器人主要部分颜色必须是黑色的。为了减少反射,油漆或者使用的材料必须是不光滑的。 1.3 软硬件平台介绍 本文中,我们采用 VC+.net 对 RTC2006 平台进行二次开发,控制 RobotCup 中型足球机器人。1.3.1 实验平台简介 我们采用的软件平台是由华南理工大学的按照 RobotCup 中型足球机器人比赛标准开发的 RTC2006。运用该平台能直接参加 RTC2006 足球机器人中型组

15、比赛,用户也可以在此平台上用 VC+.net 进行二次开发。RTC2006 采用 Windows XP Professional操作系统,需要摄像头驱动程序和 IPM 运动控制板的动态链接库 TML_lib.dll、全向视觉动态库 visiondll.dll、模糊控制动态库 control.dll。推荐运行在 PC CPU 800MHz 以上、内存 256M 以上的硬件环境上。 运行于 RTC2006 上的程序从结构上可分为 4 个主要模块:视觉模块、决策模块、控制模块和网络通讯模块。除 RTC2006 程序外,还有一个监控程序(Monitor)用于远程控制和查看个机器人信息。RTC2006

16、运行在机器人的笔记本电脑中,负责机器人的视觉、决策、控制和通信:Monitor 运行在场外的计算机里,可同时监控多台机器人,并可以从裁判盒接受裁判指令。图【2】就是 RTC2006 的模块构成。4裁判盒控制显示通讯视觉决策通讯控制WorldModelMonitorWorldModelRTC2006-1通讯视觉决策控制WorldModelRTC2006-N图【2】 1.3.2 RoboCup 中型组机器人介绍1.3.2.1 机器人硬件说明该机器人严格按照国际比赛尺寸标准设计,长 500mm,宽 520mm,高 580mm.金属外壳,框架结构,模块化安装。有两个独立驱动轮,一个被动支撑轮,移动轮子

17、直径为210mm;控制驱动板是 IPM100。1.3.2.2 机器人视觉系统的构成该机器人视觉模块具有目标识别、跟踪、定位、通讯等多种功能。可适用于単目视觉、全景视觉等视觉系统。全景视觉系统由摄像机和全向镜两部分组成,周围的景物通过全向镜的反射投影到摄像机中得到全景图像。其中不同的全向反射镜设计将直接影响到全景成像的效果,因此选择一种合适的镜面形状至关重要。常用的镜面形状包括锥面、球面、抛物面和双曲面等,因其特点不同分别适用于不同的应用场合,根据比赛的特定要求也可以设计专门的组合镜面。我们的机器人采用的是双曲面镜面,因为双曲线镜面具有单视点、变形小、分辨率高、体积小等特点,能很好的满足比赛的要

18、求。单视点是全景视觉系统的一个非常重要的属性,通常期望一个全景视觉系统具有单视点,即唯一的投影中心。在单视点的条件下,图像中的每一个像素都对应着经过视点的一条入射光线。若已知折反射系统的光路,就可以反推出每个像素对应的入射光线5的方向。因此,可以将全景图像的像素点投影到离视点任意距离的某个平面上形成平面投影图像。由此可见,单视点的重要性在于它允许将全景图变换成平面投影图,看起来与普通摄像机得到的图像并无差别,而观察视角更大,从而可以使用一般的处理投影图的方法进行图像分析和处理。图【3】是单视点成像的原理图:图【3】如图:镜面可以采集到场地全景,场景的入射光线经过镜面的反射,到达摄像镜面。摄像机

19、就会将场地全景全部拍摄到!图【4】是我们的机器人摄像头拍下的场地全景图像:图【4】2 问题的提出2.1 机器人视觉系统处理过程数字图像处理的过程可分为以下几个步骤:1. 图像原始信息的采集,通过视觉传感器采集图像信息,数字化原始图像;2. 图像的预处理,对原始的信息进行优化,以方便图像的后期处理;3. 图像单个对象特征的提取,对图像进行区域划分,提取个体对象的图像属性如:边缘,轮廓等,4. 图像高级处理,通过执行通常与人类视觉相关的感知函数,来对识别的对象进行总体确认。针对本系统,视觉线程循环过程主要执行以下任务:61) 摄像头的视频采集。2) 全向图像分析处理,包括颜色分类、颜色模型转换、图

20、像识别、距离转换 等。3) 将分析处理后的视觉信息,赋值到视觉与决策模块的共享对象 WorldModel。视觉线程循环流程图如图【6】:图【6】2.2 存在的问题以图【6】为例,主要要解决的问题是在全向视觉图像处理之前,修改无效区域,方便设计诸如点球,避障等一系列后续工作。由于实验平台硬件上设计的缺陷性,导致视觉摄像头的采集了大量的冗余信息,如外围的黑色区域中间的机器人机身以及起固定作用支架等都不是有效的视觉信息区域,在原始的视觉处理算法中并没有考虑到这些区域对有用信息采集产生的影响,这些无效视觉信息区域大多是接近黑色的,对其余有效黑色区域的识别产生了严重的干扰,如其它机器人的位置信息的提取。

21、而只有有了其它机器人的位置信息,才可以设计诸如点球,避障等一系列后续工作。换言之,就是将无效区域的黑色干扰去除,便于对有效区域的标定。因此,图像预处理结果的好坏直接影响到图像后期的处理的效果,进而对整个系统的控制产生不良的后果。 2.3 提出的解决方案如图【9】所示,就是将无效区域(黑色)改变成其他颜色,除了场内有效的颜色,如球门,球,队友等的颜色,在此,我们用场地的颜色(绿色)来替换。然后才可以标定队友机器人、足球、球门等一系列的有效区域。7本文中,我们讨论一种图像预处理算法来解决上面的问题,这个算法必须符合下面的要求:1.这个算法必须的实时的,足球机器人是个要求实时性很高的系统,所以这个算

22、法不能占用太多的时间,要在很短的时间里完成预处理操作。2.这个算法必须是有效的,由于视觉系统是整个系统的最主要的输入,它所采集到的信息正确与否直接影响到系统能否正常的运行。所以这个算法不能干扰有效信息的提取,也不能留有太多的无效信息。3.这个算法必须是可行的,由于这个算法将要应用与实际,所以它必须是要是易于实现,易于编程,可以在实验平台的主控程序中实现的。3 算法的算法的实现实现 为了能够实现上述方案,必须对原有的图像进行分析,从而找出图像中无效区域存在的规律,进而通过编程实现这个算法。3.1 原始图像的采样为了方便对原始图像的特征进行分析,这里要对图像进行采样,图像本身是动态变化的一个 M*

23、N*3 的数组,可以直接将这个数组保存在一个文本文档中,但是这样不便在 WINDOWS 平台下进一步对图像的特征进行分析。由于 BMP 文件格式是 Windows 环境中交换与图有关的数据的一种标准,因此在 Windows 环境中运行的图形图像软件都支持 BMP 图像格式,而且,BMP 图像格式能将图像的原始数据最大限度无损保存。所以,我们把图像信息以 BMP 格式保存。3.1.1 BMP 图像格式的介绍BMP 是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP 文件所占用的空间很大,但是它能最大限度的保存图像的原始信息

24、,这对我们后期的处理非常有利。BMP 文件的图像深度可选 lbit、4bit、8bit 及 24bit。在这里,我们把数据保存成 24bit,以确保数据的完整性。BMP 文件存储数据时,存储扫描方式是按从左到右、从下到上的顺序。 BMP 文件的存储结构:BMP 文件由文件头、位图信息头、颜色信息和图形数据四部分组成。 1:BMP 文件头 BMP 文件头数据结构含有 BMP 文件的类型、文件大小和位图起始位置等相关信息。 其结构定义如下: typedef struct tagBITMAPFILEHEADERWORD bfType; / 位图文件的类型,必须为 BMDWORD bfSize; /

25、位图文件的大小,以字节为单位WORD bfReserved1; / 位图文件保留字,必须为 0WORD bfReserved2; / 位图文件保留字,必须为 0DWORD bfOffBits; / 位图数据的起始位置,以相对于位图i./ 文件头的偏移量表示,以字节为单位 BITMAPFILEHEADER;82:位图信息头 BMP 位图信息头数据用于说明位图的尺寸等相关信息。typedef struct tagBITMAPINFOHEADERDWORD biSize; / 本结构所占用字节数LONG biWidth; / 位图的宽度,以像素为单位LONG biHeight; / 位图的高度,以像

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

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

28、0 RGBQUAD;颜色表中 RGBQUAD 结构数据的个数有 biBitCount 来确定:当 biBitCount=1,4,8时,分别有 2,16,256 个表项;当 biBitCount=24 时,没有颜色表项。而位图信息头和颜色表组成位图信息,BITMAPINFO 结构定义如下:typedef struct tagBITMAPINFO BITMAPINFOHEADER bmiHeader; / 位图信息头RGBQUAD bmiColors1; / 颜色表 BITMAPINFO;4:位图数据 位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上。位图的一

29、个像素值所占的字节数: 当 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+实现9 由于开发平台是 VC+.NET,这里使用 C+语言来实现,用 MFC 下的 CFile 类实现对文件的读写操作,其具体代码见附录一。 3.2 RGB 图像空间与 HSI 图像空间

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

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

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

33、域,这些区域反映的是足球机器人本身在图像中的位置,按照定义,这块区域是无效区域;3. 圆形区域中三个小扇形区域,这三个扇形实际上反光镜的支架经反光镜反射生成的,显然这也是无效区域。为了方便说明,这里我们把这三个区域分别标记为:区域 A,区域 B,区域 C。如图【9】:图【9】3.3.2 几个相关坐标系的说明及分析3.3.2.1 坐标的定义11为了方便描述图像中的无效区域以及场地上的物体相对于机器人的的位置,这里定义了一个机器人坐标系() ,图像坐标系()和镜头坐标系() 。xOyxO yx O y1.机器人坐标系() ,如图【10】:xOy以摄像头的中心点位坐标原点,以平行于机器人两轮的轴线方

34、向为 X 轴,以垂直于机器人两轮的轴线方向为 Y 轴,单位长度为 1mm 这个坐标系主要为机器人的控制提供参考依据。图【10】2. 图像坐标系(),如图【11】:xO y以图像的左上方的第一个点为坐标原点,以水平方向为 X 轴,以垂直方向为 Y 轴,单位长度为 1 像素,这个坐标系是为了方便图像的索引而建立的。图【11】123. 镜头坐标系() ,如图【12】:x O y以图像上镜头的中心点为坐标原点,以水平方向为 X 轴,以垂直方向为 Y 轴,单位长度为 1 像素,这个坐标系是为了方便预处理算法而建立的。图【12】3.3.2.2.坐标系之间的联系镜头坐标系()和图像坐标系()之间的关系可以由

35、用下面公式表示:x O yxO y设在图像坐标系()镜头坐标为()xO y00,xy则 00 yyyxxx1图像坐标系()与机器人坐标系()之间的关系xO yxOy机器人坐标系()图像坐标系()之间的关系可以由用下面公式表示xOyxO y ( , )0( , )0()()x yx yxkxxykyy2( 是和物体实际位置坐标以及摄像头相关的一个参数)( , )x yk133.3.3 图像无效区域的特征分析 由于这些区域都是硬件设计的不合理造成的,相对于机器人本身都是静止的,因此,这些无效区域在图像中都是固定不变的。并且区域的值大多是趋近于黑色区域的。除此之外,每个区域都由其本身的一些特征: 区

36、域 A: 区域 A 是一个矩形区域和圆形区域的差。这里设圆形区域为集合,整个图像区R域为集合,则在图像坐标系()中:MxO y 区域 A=MR 其中:M=;( ,)|0() 0()x yxwyl图像的宽度,图像的长度R=;222( , )| xyxyr区域 B: 区域 B 实际上是机器人的机身,理论上应该是个矩形区域,但是,由于反射镜是个曲面,导致这块区域发生了扭曲,但是为了方便处理仍然近似认为这个区域是矩形的。则:区域 B=;( ,)|()()x yxxwyyl机身的宽度,机身的长度区域 C: 区域 C 是起固定作用的三根支架经反射镜反射成的像,这三个小扇形面积基本相等,位置基本上在圆的三等

37、分线上。这个区域可以用下面公式表示:为了方便描述,这里在镜头坐标系()基础上建立极坐标系()它们之x O y, 间的关系可以用下面公式表示:*cos*sinxy则:区域 C=22( , )|0,(0,1,2)2323rkk k 其中: r 为圆形区域的半径; 为区域 C 中扇形的夹角;考虑到计算机计算的效率,我们采用直角坐标结合线性规划的思想进行处理,即在直角坐标下区域 C 的表示为:C=;12( , )|, ,(0,0)xyyk xyk xxwyl其中:,的值为扇形边界直线的斜率,在实际处理时得出相应的值;1k2k w 为图像的宽度;14 l 为为图像的长度。其中提到的一些参数我们可以通过

38、MATLAB 找到相应的点,得到实际的数值。具体操作如下:打开 MATLABToolboxesImage ProcessingImage Tool(imtool),然后在出现的界面,打开一张以 Bmp 格式存储的图片,就可以找到相应的坐标点,如图【13】所标,具体的值如下:图【13】中心点坐标:(178,129)o三个柱子的坐标值:,1(169,7)a2(179,7)a ,1(72,194)b2(77,201)b ,1(289,190)c2(293,182)c在处理过程中为了提高精确度,我们将中间的矩形区域分为上下两个小矩形,针对上面的矩形,对角点坐标为:,1(150.88)e2(207,11

39、9)e针对下面的矩形,对角点坐标为:,1(153,119)f2(205,144)f由以上坐标值,可以算出圆的半径为:22(7 129)(179 178)122r 三个柱子各边界的斜率为:1129713178 169ak15 同理可得: 2122()ak 近似为无穷大;10.6bk ;20.7bk ;10.5ck;20.2ck以上值均为理论计算值,在实际程序编写和调试时,还要据实际情况不同而有变化。 3.4 算法的 C+实现由上述分析的结果,我们可以设计出以下的算法。首先将 RBG 的值设为场地颜色,r=37,g=90,b=72。然后根据设定的边界条件,依次找出区域 A,B,C.将这些区域的RG

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

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

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

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

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

45、BoCup 中型组机器人视觉软件 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. 19附录一/ 将 buff 数据保存到 BMP 中去savebufftobmp(BYTE *p

46、Buffer)BITMAPFILEHEADER bmpfile; BITMAPINFOHEADER bmpinfo; bmpfile.bfType = 0 x4d42; / 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

47、.biSize = sizeof(BITMAPINFOHEADER); bmpinfo.biWidth =width; /m_nW; bmpinfo.biHeight = height; /m_nH; bmpinfo.biPlanes = 1; bmpinfo.biBitCount = 24; bmpinfo.biCompression = BI_RGB; bmpinfo.biSizeImage = 0; bmpinfo.biXPelsPerMeter = 0; bmpinfo.biYPelsPerMeter = 0; bmpinfo.biClrUsed = 0; bmpinfo.biClrI

48、mportant =0; CString s;s.Format(D:saveNO.%d .bmp,n);CFile file( s,CFile:modeCreate|CFile:modeWrite); file.Write(&bmpfile,sizeof(BITMAPFILEHEADER); 20file.Write(&bmpinfo,sizeof(BITMAPINFOHEADER); file.Write(pBuffer,320*240*3);file.Close();n+;if(n=10000)n=0;附附录录二二Killblack(BYTE *pBuffer) BYTE r,g,b;lo

49、ng index;int x0=179;/ int y0=129;/ int x1,y1;/新坐标系下的各点值 r=37; g=90; b=72;for(int y=0; yheight; y+) for(int x=0; x15625)/无效区域 A 的处理 index= (height-y-1)*width+x) * 3;pBufferindex=r; pBufferindex+1=g; pBufferindex+2=b; if(x150)&(x88)&(y153)&(x205)&(y119) / 无效区域 B 的处理 index= (height-y-1)*width+x) * 3; p

50、Bufferindex=r; pBufferindex+1=g; pBufferindex+2=b;if(y112.2*x1&x10) / 无效区域 C 处理21 index= (height-y-1)*width+x) * 3;pBufferindex=r; pBufferindex+1=g; pBufferindex+2=b; if(y1-0.6859*x1) / 无效区域 C 处理 index= (height-y-1)*width+x) * 3;pBufferindex=r; pBufferindex+1=g; pBufferindex+2=b; if(y10.5545*x1&y10.

51、4649*x1) / 无效区域 C 处理 index= (height-y-1)*width+x) * 3;pBufferindex=r; pBufferindex+1=g; pBufferindex+2=b; 本科生毕业论文(设计)成绩评定表本科生毕业论文(设计)成绩评定表(由指导教师填写由指导教师填写)学院工学院专业农业电气化与自动化姓名陈巧顺论文题目RoboCup 中型组机器人全维视觉处理算法设计及实现一、一、对待毕业实习的态度及实习期间遵守纪律情况优良(1511 分)一般(106 分)较差(50)二、二、观察、收集、整理、查阅资料及运用数据的水平优良(3021 分)一般(2011 分)

52、较差(100 分)三、三、学生的独立工作能力和动手能力优良(2016 分)一般(1511 分)较差(100 分)四、四、毕业论文写作的规范化程度优良(1511 分)一般(106 分)较差(50 分)五、五、毕业论文(设计)总体评价22优良(2016 分)一般(156 分)较差(50 分)评定意见、成绩及能否提交答辩: 指导教师签名: 单位公章: 年 月 日本科生毕业论文(设计)成绩评阅表本科生毕业论文(设计)成绩评阅表(由评阅教师填写由评阅教师填写)学院工学院专业农业电气化与自动化姓名陈巧顺论文题目RoboCup 中型组机器人全维视觉处理算法设计及实现一、一、论文选题的价值与合理性优秀(151

53、1 分)一般(106 分)较差(50)二、二、论文的难度、工作量大小和创新性优秀(3021 分)一般(2011 分)较差(100 分)三、三、数据资料分析、归纳、概括及运算的能力优秀(2016 分)一般(1511 分)较差(100 分)四、四、文字表达水平、文章的逻辑性优秀(1511 分)一般(106 分)较差(50 分)23五、五、论文写作的规范化程度优秀(2016 分)一般(156 分)较差(50 分)评阅意见、成绩及能否提交答辩: 评阅教师签名: 年 月 日本科生毕业论文(设计)答辩及综合评分表本科生毕业论文(设计)答辩及综合评分表(由答辩小组填写)(由答辩小组填写)学院工学院专业农业电

54、气化与自动化姓名陈巧顺论文题目RoboCup 中型组机器人全维视觉处理算法设计及实现一、一、内容的科学性、应用性和创新性优秀(3021 分)一般(2011 分)较差(100)二、二、论文写作水平及知识面掌握程度优秀(3021 分)一般(2011 分)较差(100 分)三、三、语言表达能力、逻辑思维能力、回答问题的正确性优秀(4031 分)一般(3011 分)较差(100 分)论文答辩成绩:答辩小组负责人(签名): 年 月 日24本科生毕业论文(设计)综合评定成绩本科生毕业论文(设计)综合评定成绩(由答辩委员会填写)(由答辩委员会填写)开题报告成绩10%中期检查成绩10%指导教师评定成绩 30%毕业论文(设计)评阅成绩 30%毕业论文(设计)答辩成绩 20%综合评定成绩 100%注:综合评定成绩等级:优秀(90-100) ,良好(80-89) ,中等(70-79) ,及格(60-69) ,不及格(60 分以下) 。答辩委员会负责人(签名): 年 月 日

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!