硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知

上传人:痛*** 文档编号:43256444 上传时间:2021-11-30 格式:DOC 页数:59 大小:5.02MB
收藏 版权申诉 举报 下载
硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知_第1页
第1页 / 共59页
硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知_第2页
第2页 / 共59页
硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知_第3页
第3页 / 共59页
资源描述:

《硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知》由会员分享,可在线阅读,更多相关《硕士论文移动机器人基于三维激光测距与单目视觉的室内场景认知(59页珍藏版)》请在装配图网上搜索。

1、硕 士 学 位 论 文移动机器人基于三维激光测距与单目视觉的室内场景认知The Mobile Robot Indoor Scene Cognition Using 3D Laser Scanning and Monocular Vision 大连理工大学Dalian University of Technology大连理工大学学位论文独创性声明作者郑重声明:所呈交的学位论文,是本人在导师的指导下进行研究工作所取得的成果。尽我所知,除文中已经注明引用内容和致谢的地方外,本论文不包含其他个人或集体已经发表的研究成果,也不包含其他已申请学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的贡献

2、均已在论文中做了明确的说明并表示了谢意。若有不实之处,本人愿意承担相关法律责任。学位论文题目: 移动机器人基于三维激光测距和单目视觉的室内场景认知 作 者 签 名 : 日期: 年 月 日大连理工大学硕士学位论文摘 要机器人在工作中需要实时获取环境信息,而如何实现对这些环境信息的有效理解和认知是实现其自主环境适应的关键。激光传感器具有抗干扰能力强、受光线影响小等特点,适于三维空间几何信息的获取。而视觉传感器是一种获取图像信息的成熟手段。本文以激光测距仪和单目视觉作为移动机器人的外部传感器,研究移动机器人在室内三维环境中的场景认知问题。在室内环境中,地面、墙壁等室内场景的框架具有结构化的特性,可以

3、使用简单的平面等几何特征来表示。平面特征的提取可以借助激光数据的存储顺序首先从中提取出线段特征,然后利用相邻线段的关系将其合并从而得到完整的平面区域。本文使用了一种基于区域扩张的平面特征提取算法,从室内场景的激光数据中提取出平面特征。利用平面特征的自身属性及其相互间的空间关系,完成室内场景框架的认知。在剔除室内场景框架之后,剩余数据中物体的形状具有不确定性和不规则性,难以使用简单的几何特征来描述。本文提出一种基于点云连续性的物体分割算法,实现室内场景中物体的有效分割。Markov随机场是一种普遍应用于图像处理和计算机视觉领域的理论。本文利用室内场景框架及物体之间的邻域关系,将已完成认知的场景框

4、架元素及分割后的物体作为Markov随机场的结点,提出了一种基于MAP-MRF体系的场景室内物体认知算法。物体结点特征的选择和设计是实现物体有效认知的关键和难点。本文使用物体的高度信息作为区分物体的基本特征。为了更准确的描述物体,本文提出了一种描述物体形状的形状直方图,有效的表达了物体的三维信息。三维激光数据虽然精确地表达了物体结点的空间信息,但却缺乏基本的图像和颜色信息。为了准确的使用摄像头获取的图像信息,本文将单目视觉与激光测距数据在像素级进行准确融合。本文在HSI颜色空间下,统计物体点云的颜色分布并构建物体的颜色直方图,将物体的颜色信息用于物体结点的认知。移动机器人基于场景框架与物体的认

5、知结果可实现室内语义地图的构建。利用实际机器人平台所获得的实验结果验证了所提方法的有效性。关键词:三维激光测距,数据融合,MAP-MRF,场景认知,语义地图- I -The Mobile Robot Indoor Scene Cognition Using 3D Laser Scanning and Monocular VisionAbstractMobile robot need to acquire environment information in real time during its movement, so how to implement effective understa

6、nding and cognition about the environment information is of great importance. Laser range finder is extensively used to acquire 3D information from environment for its high abilities of prevent interference and low influence of light. Additionally,camera has mature application in image acquisition.

7、This paper takes laser range finder and camera as robot visual system and studies the indoor environment cognition problem for mobile robot.For the structure of indoor environment is structural, it can be represented by simple geometry feature. Line features can be extracted from the laser data by i

8、ts storage order, and then neighbor lines are combined to get plane features. In our work, planes are extracted from 3D laser data using regional expansion algorithm, and the properties as well as the relationship of these planes are used for structure cognition. When the structure of the indoor sce

9、ne is removed, the shapes of the objects in the remaining data are uncertain and rregular so it is hard to represent by simple geometry feature. We propose an object segment algorithm based on the continuity of the points, to implement effective segmentation of the objects in the indoor scene.Markov

10、 Random Filed theory is widely used in image processing and computer vision. According to the relations of the neighbored structures and objects of the scene, this paper takes the structure elements and segmented objects as the MRF nodes and propose an indoor scene object segment algorithm base on M

11、AP-MRF. The selection and design of the object nodes is essential for the effective cognition of the objects. This paper takes height as the basic feature for the object. To describe the object more accurately, we propose a shape histogram to represent the 3D shape of the object. Although 3D laser d

12、ata describe the 3D information, it lacks image and color information. To utilize the image from camera precisely, we fuse the information of 3D laser scanner and monocular vision in pixel level. Under HSI color space, we build color histogram of the object by computing the color distribution of the

13、 object points. As the result of scene cognition, the semantic map can be constructed by mobile robot autonomously. Experiment results implemented on real mobile robot platform show the validity of the proposed method. Key Words:3D laser scanning, data fusion, MAP-MRF, scene cognition, semantic map-

14、 III -目 录摘 要IAbstractII1 绪论11.1 研究背景与意义11.2 室内场景认知的现状与发展趋势21.3 本文的主要工作及创新点31.3.1 本文的主要工作31.3.2 本文的主要创新点42 三维环境信息的获取及数据处理62.1 三维激光数据的获取62.1.1 激光测距仪62.1.2 三维激光测距原理72.2 单目视觉与三维激光数据的融合82.3 数据处理113 室内场景框架的认知和室内物体分割143.1 平面特征的提取143.1.1 基于线段合并的平面特征提取143.1.2 基于区域扩张的平面特征提取173.2 室内场景框架的认知203.3 室内场景物体的分割234 基于

15、Markov随机场的室内场景认知264.1 Markov随机场理论264.1.1 Markov随机场概念274.1.2 MAP-MRF体系284.2 物体结点的特征选择294.2.1物体的高度特征304.2.2物体的颜色特征314.2.3物体的形状特征354.3 基于MAP-MRF的室内场景认知374.3.1 基于MAP-MRF的室内场景认知过程374.3.2室内场景认知实验结果404.3.3基于场景认知的室内语义地图构建42结 论44参 考 文 献46攻读硕士学位期间发表学术论文情况49课题资助情况49致 谢50大连理工大学学位论文版权使用授权书511 绪论1.1 研究背景与意义随着人类计算

16、机科学和科技的进步,机器人的技术的发展日趋成熟。机器人的应用涉及到工业、农业、救援和军事等等领域1。移动智能机器人相对于工业机器人来说,可以融合当今先进的人工智能技术,能够完成复杂的自主运动、路径规划等行为,有着更广阔的应用场景。与一般机器人相比,移动机器人具有移动功能,在危险、恶劣、辐射和有毒的环境以及人类所不及的宇宙、水下环境中,它可以代替人进行操作,具有很大的灵活性、机动性。近年来,美国等发达国家已经将移动机器人应用于扫雷等军事领域。在地震发生后的后续救援中,移动机器人可以代替人直接进入现场,完成移动、定位、目标搜索、救援等行动,保证了救援人员的人身安全。移动机器人涉及的基本技术有传感器

17、、控制和人工智能等方面。本文使用的机器人侧重于人工智能,机器人的运动主要基于其对环境自主的理解。 图1.1 两种具有不同运动机构的移动机器人Fig. 1.1 Two mobile robots with different movement mechanism移动机器人自主的运动,需要获取其前方环境的信息,所以它离不开视觉系统的支持。激光传感器和摄像头都可以作为机器人的视觉系统。在当今的科学领域中,激光传感器的测距技术逐渐成熟。相对于红外,超声等传感器,激光测距具有精度高,受环境干扰小等优点。激光测距的基本原理是发射激光脉冲并回收,利用之间的时间差计算传感器与目标点的距离。将激光安装在可旋转的

18、云台上,利用云台及激光的一些硬件参数标定,可以将测得的距离转化成三维的激光坐标。将多组激光数据按照一定顺序存储,即得到了被扫描环境的三维数据。使用普通的数码相机获得的图像是按照行列存储的像素,激光测距系统获取的数据存储于图像类似。不同的是在每一个激光点存储的不是像素,而是一个三维的坐标。相对于激光传感器,单目视觉是另一个可以作为移动机器人视觉的方案。视觉是人类与世界沟通的最重要手段,人类获取的信息中大部分都来自眼睛获取的视觉信息。随着传感器以及计算机科学的进步,使用摄像机可以实现人类的部分视觉模拟。借助于计算机数字技术,摄像机获取的输入转化为数字信号,并可以在计算机内部进行分析、处理、辨识和识

19、别,使得移动机器人能够对视觉信息进行理解并做出相应的决策。由此也形成了一门独立的科学,即计算机视觉。借助于环境的视觉图像信息,移动机器人可以实现对场景一定程度上的认知。对于一幅场景的激光数据,激光点的个数往往数以万计。虽然这在很大程度上高精度的表达了场景的表面信息,但是这在计算机中将占据很大空间,使用起来也会对计算机的性能要求苛刻。另一方面,移动机器人对于离散的激光点云数据是无法理解的。正是因为这些原因,激光点的精简,激光数据中几何特征的提取,以及基于激光数据的场景认知在这个领域中显得十分重要。在移动机器人领域,激光传感器充当了机器人的视觉系统。安装在移动机器人上的激光传感器对周围环境的有效观

20、测和检测是实现其自主控制和路径规划的基础。移动机器人不仅要获取周围环境的原始激光数据,还要能够对这些数据进行进一步辨识和认知,以实现其对环境更高层次的理解。在室内搜索和救援的任务中,机器人需要实时的判别前方的路况是否满足行进的要求,并且能够有效地躲避障碍物准确的到达目标。另外,机器人还要能够识别搜寻目标,并规划出到达目标的路径。这些行为对机器人“大脑”,即软件算法的支持提出了很高的要求。本文正是研究了激光数据的认知和辨识算法,来支持移动机器人的环境认知及运动规划。1.2 室内场景认知的现状与发展趋势 如何实现针对场景中物体的有效分类与识别是移动机器人场景认知的核心问题。环境认知的基础是特征提取

21、。根据三维激光数据行列的存储方式,可以从中提取出最简单的直线特征,如文献2。由于场景中的一些物体如室外的地面,室内的墙壁包含平面特征,这些物体表面的激光数据中将会提取出许多直线特征。利用这些直线特征的近邻平行关系,可以将这些直线进行合并,这样最终会扩张出平面特征。这也是文献2中,提取激光数据中简单的平面几何特征的一种方法。另外一种广泛使用的提取平面的方法是,首先拟合局部邻域的一个平面片段,然后将这些平面片段进行合并生长,最终得到完整的平面特征,如文献3。RANSAC(Random Sample Consensus)算法4也是一种常用的拟合平面的方法5。基于视觉图像处理技术来进行场景的认知是该领

22、域的重要方法678。基于图像处理的物体识别与场景认知算法有很多种,但其通常计算复杂度高,难于满足移动机器人对实时性能的较高要求。此外图像处理算法受光线变化影响较大,特别是在光线较暗的场景更难以应用。与视觉传感器相比,三维激光测距具有精度较高且不受光线影响等特点,因而近些年引起国内外很多学者的关注,并开展了一系列的相关研究。其中A. Nüchter和J. Hertzberg等学者将获取的三维激光数据转化为二维图像,并使用支持向量机从这些二维图片中训练并识别出物体9,但该方法训练过程较为繁琐。M. Himmelsbach等学者利用栅格的思想分割物体,然后在原始激光数据上提取特征,并使用S

23、VM分类器对物体进行分类10。D. Anguelov等人完整的描述了一种基于Markov随机场的物体分类方法11。该方法将整幅场景视为一个Markov随机场,每一个激光点视为一个结点,在激光点上提取特征。相比较,论文12中虽然也采用Markov随机场模型来对物体进行认知,但是该方法首先利用激光点的邻居关系从激光数据中提取多边形集,然后以此作为结点进行物体的分类处理。激光测距数据虽然提供了丰富的场景三维空间量测信息,但也存在着环境信息单一的不足。考虑视觉传感器能够提供丰富的色彩信息,因而将三维激光与视觉信息进行有效融合,可实现两种传感器的优势互补,能够有效提高移动机器人进行三维场景认知的能力。例

24、如B. Douillard等学者就将激光和摄像头的获取的视觉信息融合在一起,利用多种传感器信息来实现场景中物体的有效识别13。1.3 本文的主要工作及创新点1.3.1 本文的主要工作本文工作属于国家863项目课题“基于多传感器的野外环境实时建模与自主控制”和国家重点实验室研究课题“废墟搜救机器人三维废墟环境自主建模与重构研究”的一个部分。使用美国先锋公司的Pioneer3-DX移动机器人为平台,本文实现了移动机器人基于三维激光测距和单目视觉的室内场景认知。借鉴上述研究工作,本文提出了一种基于三维激光和单目视觉的室内场景认知新方法。室内场景一般可视为封闭的三维空间,并且由室内场景框架(包括墙壁、

25、天花板、地面等框架元素)和各种不同形状物体构成。室内场景框架属于结构化环境,因此可以使用平面几何特征来表述。本文所提出的场景框架认知算法,首先利用区域扩张算法从三维激光数据中提取出平面特征,再利用平面特征的法向量和重心等属性及其空间关系将其分类,从而完成室内框架的认知。利用物体表面点云的连续性特点,提出一种物体分割算法,从室内框架认知剩余的激光数据中分割出相互独立的物体。本文将室内场景的框架信息(如墙体,地面等)和分割得到的物体视为结点。由于物体结点和框架信息结点之间具有邻域的关系,可以把这些结点看作是一个Markov随机场。于是物体的认知问题可以转化为Markov随机场中结点的语义标记问题。

26、由于已完成认知的框架结点可作为已知信息,因此这里只需要考虑物体结点的认知标记。本文提出了一种基于MAP-MRF体系的物体识别方法。作为识别的依据,物体结点特征的选择十分关键。本文不仅使用了物体的空间度量特征,而且还使用了与物体对应的视觉信息,构建了物体颜色的直方图,有效地提高了物体识别的准确性。通过对室内场景框架信息以及室内物体有效认知,可以构建室内环境的语义地图,这将有效地提高移动机器人与环境的交互能力。本文的主要内容及章节安排如下:第一章,绪论。主要讲述了本文的背景,室内场景认知的意义,以及室内场景认知的国内外现状和未来的发展趋势。第二章,三维环境信息的获取和数据处理。主要讲述了激光测距仪

27、获取环境三维激光数据的原理,使用摄像头获取图像信息的原理以及单目视觉与三维激光数据的融合。并且简述了激光与图像信息数据处理的上位机软件平台的构造,及软件系统与移动机器人的通讯等等。第三章,室内场景框架的认知和室内物体的分割。首先讲述了平面特征的两种提取方法,然后介绍了基于平面特征的室内场景框架的认知。然后进一步介绍了一种基于点云连续性的物体分割方法。第四章,基于Markov随机场的室内场景认知。这是本文的重点章节。首先介绍了Markov随机场的基本原理和MAP-MRF体系的推导过程。其次介绍了Markov随机场中物体结点的特征选择。最后着重讨论了基于MAP-MRF体系的室内场景认知和基于认知结

28、果的室内语义地图构建。最后是结论部分。对本文室内场景认知的方法进行了总结和分析,并对今后的工作方向进行了展望。1.3.2 本文的主要创新点国内外移动机器人领域涉及场景认知的方法有多种,针对室内环境的特点,本文将室内场景的认知分为室内框架和物体两个部分分别进行处理,主要创新点包含以下几个方面:(1)在室内场景框架完成认知以后,针对剩余数据中物体点云的特点,提出了一种基于物体点云连续性的物体分割算法,有效地完成了室内物体的分割。为了实现物体结点的有效识别,根据室内物体的特点,提出了一种描述三维物体形状的形状直方图,用于表达物体的三维空间特征。虽然三维激光数据精确的表达了场景的空间信息,但是缺乏图像

29、等信息的支持。本文将三维激光和单目视觉在像素级别实现准确的融合,将场景的图像信息用于室内物体的认知。(2)本文将Markov随机场理论成功的应用于室内场景的认知中。对于Markov随机场中结点的选择,以激光点为结点往往可提取的特征有限,且分类的结果区域界限不明显。本文首先实现室内场景框架元素和物体的分割,然后将他们作为Markov随机场的结点,大大增加了可提取的特征,物体认知的效果也有了很大改进。在完成室内物体的认知以后,本文提出一种置信度的方法,用于表示物体认知的程度。置信度的数值越高,则表示物体认知的结果越准确,认知的结果可信度越高。这可以有效的帮助机器人根据不同的置信度对不同的物体做出不

30、同的决策。2 三维环境信息的获取及数据处理本文移动机器人认知系统的框架图如图2.1所示。首先,激光传感器可以获取场景的三维激光数据。由于获取的数据仅仅是一个距离值,这需要通过硬件标定的方法将其转化成三维空间坐标,这个将在后面讲到。另外激光数据采集的过程中会产生失败的数据,比如发射的脉冲信号没有得到回收,这样的噪声数据需要使用程序对他们进行过滤,比如将他们统一转化成原点坐标。与此同时,安装在激光上面的摄像头可以获取当前场景的视觉图像,使用摄像头和激光标定的方法,可以确定图像和激光数据的位置关系,实现图像和激光数据的融合。在本文中,融合有图像信息的激光数据即是实现室内场景认知的数据源。图2.1 系

31、统框架图Fig. 2.1 The system framework激光和图像信息的获取是本文的基础,本章节将简要介绍三维激光测距的原理,激光的标定,以及视觉图像的获取和摄像头的标定等等。2.1 三维激光数据的获取2.1.1 激光测距仪激光测距仪具有高精度,高解析度的特点。其原理是它首先发射一束红外激光束脉冲,如果遇到物体则返回,并被激光测距仪的接收器所记录。由于激光测距仪与物体的距离和脉冲运行的时间成正比,可以通过计算时间的方法求出物体与激光测距仪之间的距离。为了使得激光测距仪的扫描范围增大,激光测距仪的内部安装了一个旋转光镜,旋转光镜的偏转使得周围环境形成了一个扇形的扫描区域。仅仅一个激光测

32、距仪在不借助电机的情况下扫描的结果为一条二维的轮廓线,如如图2.2右图所示。 图2.2 激光测距仪工作原理Fig. 2.2 The principles of laser scanning本文使用的激光测距仪为德国SICK公司生产的LMS 291。LMS可以对物体进行独立的非接触的精确位置测量,在工业现场和科学研究中有广泛的应用。固定静止的LMS291传感器可以在二维的范围内进行扫描,扫描的范围是180°,因此它是一个二维传感器(如图2.2右所示)。最大测量的距离可以设置为8m/32m/80m。角度和距离的分辨率可以达到0.5°/1°(对应的激光点扫描个数为361

33、/181)和10mm。扫描的周期为13.3ms。传感器获取的距离数据可以用极坐标的形式表示: (2.1)其中,N代表扫描激光点的个数。LMS系统获取的激光数据对光线并不敏感,因为它使用二值化的方法可以处理反射光的大小强度,这有效的减小了反射光强度不均带来的影响。对该系统能造成影响的主要是被测物体的材料以及表面光滑度等因素。激光传感器获取的激光数据通过高速的串行接口传送给上位机电脑进行处理,上位机同样也可以发送控制指令实现对激光传感器的实时控制。2.1.2 三维激光测距原理虽然单纯的激光测距仪仅仅能实现二维数据扫描,但是如果安装一个旋转方向与激光扫描方向垂直的电机,则可以实现对环境的三维扫描。本

34、文使用LMS291激光传感器和安装有步进电机的旋转云台共同组成一个三维激光数据的采集系统(如图2.3左图)。 图2.3 3D激光测距系统(左)和坐标关系示意图(右)Fig. 2.3 3D laser ranging system (left) and the relationship of parameter coordinates如图2.3左图所示,本系统中激光传感器的二维扫描数据线是沿着竖直方向的。电机控制传感器沿着水平方面旋转,旋转的范围是任意的,所以它可以获取360°的三维全景激光数据。由激光测距仪获取的数据为极坐标形式的,为了计算方便,需要转换到直角坐标系下(如图2.3右图

35、),转换的公式如下: (2.1)其中,c为电机旋转中心到激光束发射中心投影到水平面上的距离,;为LMS激光扫描平面与两中心点所在直线的夹角,。为激光发射中心到测得物体的距离;为激光束在扫描平面上的偏向角度;为电控旋转台旋转的角度。将激光数据按照扫描顺序保存到二维容器中: (2.2)其中表示第i行、第j列个激光点。表示激光点的空间坐标值。M表示电机旋转方向激光行数,N表示每一行激光扫描的激光点的个数。2.2 单目视觉与三维激光数据的融合通过激光测距仪获取三维场景信息有其自身的不足,它能准确获取场景的距离信息但无法得到场景的颜色信息。摄像头可以获取场景的视觉信息,弥补了这一缺陷。摄像头可以分为模拟

36、和数字两种,现在人们使用的大多数是数字式的摄像头。摄像头工作的基本原理是:场景通过镜头生成光学图像并投影到图像传感器的表面,由此转换成电信号,经过模数转换器转换为数字图像信号,即可获取现实场景的数字图像。将数字图像传输到计算机上,可以实现图像的处理等操作。本文使用的是FlyCapture 单目摄像头(如图2.4所示)。其图像可选为1600×1200,1024×768,800×600,320×240,160×120等。采集图像格式为可选:RGB, BGR, YUV422, YUV444等。摄像头采集速率可选:60fps, 30fps, 15fps

37、, 7.5fps, 3.75fps, 1.875 fps。本文选用1024×768RGB图像,采集速率为1.875fps。图2.4 FlyCapture 摄像头Fig. 2.4 FlyCapture Camera为了弥补三维激光信息的不足,这里对激光信息和图像信息进行融合。本文通过对摄像头和三维激光测距仪的标定完成激光场景染色以实现两传感器的像素级信息融合。标定过程分为两步:摄像机内标定和摄像机激光外标定。内标定获取摄像机内参数以确定摄像机坐标到图像坐标的转换对应关系,使用小孔成像模型作为摄像机的投影模型(如图2.5所示),它是被普遍采用的视觉成像的一个理想模型14。图2.5 针孔摄

38、像机模型Fig. 2.5 Pinhole camera model外标定用来确定摄像机和激光测距仪之间,也就是摄像机坐标和世界坐标之间的转换对应关系。通过内外参数的标定,最终确立激光测距仪获取到得激光点云和摄像机获取到得图像间的对应关系。然后将颜色信息投射到激光点云上,完成激光点的染色。图像和摄像机坐标间的对应关系转换为公式(2.3),其中矩阵A包含了摄像机全部的6个内参数,称A为摄像机内参数矩阵。内参数是由摄像机本身结构决定的,但这些参数可能会随着温度、湿度、气压等环境因素的变化而改变,因此本文使用张正友提出的方法15进行摄像机内参标定。 (2.3)摄像机内标定完成后,就可以确定摄像机坐标系

39、到图像坐标系的转换对应关系。为了进一步确定激光测距仪所在的世界坐标系同摄像机坐标系的对应关系,还需要进一步对摄像机和三维激光测距仪进行外标定,求出旋转矩阵和平移矩阵。 (2.4)在已知内参数的前提下,可以使用多种标定的方法求取外参数。本文采用手动点选的方式获取图像和激光数据间的对应点对,然后采用最大似然估计的方法来优化计算和。有了旋转平移矩阵,摄像头获取的图像可以准确的匹配到场景的激光数据中,实现激光与视觉的融合,即激光点云的染色。如图2.6所示为一幅室内场景和室外场景的激光数据染色效果: 图2.6 室内点云数据染色效果(左),与室外点云数据染色效果(右)Fig. 2.6 Colored 3D

40、 laser of indoor scene and outdoor scene2.3 数据处理移动机器人的控制,离不开软件的支持。为了实现对移动机器人发送控制指令和通讯,实现场景的可视化与人机交互,以及三维激光数据的预处理和认知,研究小组开发了移动机器人基于windows操作系统的软件系统。本软件的环境为visual studio 2005,使用了MFC框架,使用的编程语言为面向对象的C+。如图2.7所示,软件的主要模块为移动机器人硬件通讯模块,室内场景认知模块和三维场景显示与人机交互模块等等。 图2.7 系统模块Fig.2.3 Modules of software system硬件通讯模

41、块负责上位机与移动机器人传感器之间传输激光和图像数据。另外移动机器人的控制信号通过软件界面按钮触发,并通过通讯模块发送给机器人。主要的控制信号有激光扫描控制信号,电机旋转控制信号,摄像头传输信号。数据融合模块涉及激光数据与图像的标定,以及激光数据的染色。融合后的数据是室内场景认知的数据源。室内场景认知模块是本软件的核心模块,主要实现室内场景的认知。三维场景显示与人机交互模块主要是实现程序结果及中间过程的可视化以及对移动机器人的控制提供操作界面。显示模块中主要利用了OpenGL开发库,来处理三维数据的显示。OpenGL全称是Open Graphics Library,它是一个跨编程语言、跨平台的

42、3D图形程序接口。OpenGL是一个与硬件无关的软件接口,可以在不同的平台之间进行移植。所以OpenGL具有很好的可移植性,可以获得广泛的使用。OpenGL具有的几大功能有:建模、变换、颜色模式设置、光照材质设置、纹理映射等等。OpenGL是一个开放的三维图形软件包,他可以与visual C+紧密的连在一起,实现本文中三维激光数据的计算和显示等功能。本软件分为在线和离线两种模式,在线状态下可以采集数据并处理,同时获取的数据可以保存在文件中。离线状态下,可以加载激光数据实现数据的离线处理,这些功能在文件存储模块中实现。 图2.8 实验中所使用的移动机器人平台(左图);环境认知软件(右图)Fig.

43、2.8 Mobile robot in experiment (left), software for environment cognition(right)如图2.8所示,左图为实验中使用的移动机器人平台,右图为本文使用的软件系统界面。软件界面中显示的是一幅室内全景的染色激光数据。在右侧的对话栏中,上半部分是与移动机器人的进行通讯的操作接口,包括激光和电机串口的选择,连接,以及激光扫描的各种参数等。下半部分窗口是摄像头获取视频的实时显示窗口,底部按钮可以对视频进行操作,包括截图,标定和对激光数据染色等功能。另外,经过切换,右侧对话栏可以显示点选的激光点坐标,并且可以实现和显示两点之间的测距

44、等功能。顶部菜单系统中可以导入或保存激光数据,程序退出等功能。视图菜单用于切换显示和隐藏工具栏,对话栏,并且切换不同的激光数据场景等。视觉染色用于激光数据和图像的融合。场景重构菜单中为三维激光数据的重构的触发按钮,包括栅格划分,路径规划,构建高程图,特征提取和室内场景认知等。训练按钮为后面将要介绍的室内物体分类参数的训练触发按钮。帮助菜单为程序使用的文档介绍。3 室内场景框架的认知和室内物体分割3.1 平面特征的提取平面特征的提取是室内框架信息提取的基础。许多文献都涉及到了平面特征的提取。文献2中提到了一种从激光数据中首先提取线段特征,然后由线段特诊合并得到平面特征的方法。一种比较普遍的方法是

45、,首先选取一个初始邻域平面,然后将周围相邻的邻域平面不断的迭代合并,得到完整的平面特征。另外一个著名的平面提取算法是RANSAC算法,RANSAC首先随机选取N个点,根据它们来估计一个平面的参数。然后计算满足该平面参数的点并归属到其中,以此来不断的扩张平面。因为篇幅限制,本文主要介绍两种提取平面的方法,一种是2中提到的基于线段合并的平面提取方法,另一种是3中涉及的基于区域扩张的平面提取方法。3.1.1 基于线段合并的平面特征提取由本文第2章可以得知,三维激光数据是以行列的方式存储的,每组激光数据有M×N个激光点。激光传感器每次扫描获取的激光点个数为361。图3.1为激光传感器完后曾一

46、次扫描的数据。从全局看,这一组扫描由若干条线段构成,具有简单的线段几何特征。但是通过局部放大(图3.1右)可以看出,激光点的分布是混乱和不完全规则的。 图3.1 一次扫描的激光点(左)以及放大后的点云分布(右)Fig. 3.1 Laser points on one scan line(left) and enlarged points distributing(right)为了从每一组扫描的激光数据中提取出线段特征,线段提取算法需要有对一定噪声的适应性。本文采用了将一组激光数据分段处理的线段特征检测的方法,如图3.2所示。该算法的核心思想是判断一个点到一条直线的距离,如果距离小于一定的阈值则

47、认为该点属于这一条直线。否则的话将这条直线以该点位中间点,把此条直线分为两段。以此不断的迭代处理,知道一组激光数据处理完毕。针对图3.2,算法的处理步骤为:Step 1:首先取得激光数据的起点和终点,即A点和B点。Step 2:依次计算A点和B点之间的点到AB连线的距离,并求取距离的最大值,假若最大值大于距离阈值,则将该点作为中间点,将整条线段分为AC和CB两段。Step 3:同理,计算AC之间的点到AC线段的距离,计算CB之间的点到线段CB的距离。最终迭代的结果是每一条线段之间的点到线段的距离都小于距离阈值。Step 4:根据线段的平行等特点将求得的线段进行合并,并存储。图3.2 线段提取示

48、意图Fig. 3.2 Schematic of line feature extraction在整个算法过程中,距离阈值的选择很关键。如果距离阈值选取过小,则线段划分过于精细,造成线段数量巨大,缺乏实际意义。如果距离阈值选择过大,则线段的划分过于粗略甚至错误,造成曲线划分为线段的情况。所以线段提取算法应该针对不同的数据选取合适的距离阈值。图3.3(c)是线段提取算法的实验效果。可以看出经过线段提取过程,激光数据在每组扫描的方向上提取出许多竖直的线段。这不仅仅使得散乱的激光点云实现了一个精简,只用一条线段的起点和终点就可以代表许多数据。平面提取的思想是线段的合并,这是以上一步的实验结果为基础的。

49、经过上一步的处理,激光数据简化为线段特征。如图3.4(c)可以看出,提取出的线段与线段之间是近似平行的,本文利用这种平行的关系将线段进行合并,最终得到平面特征。具体的步骤为:Step 1:遍历提取得到的线段特征。将第一条线段的两个端点作为一个新平面的两个端点并进行存储。Step 2:从继续遍历线段特征。判断本条线段与之前的平面特征中的线段是否满足合并条件,如果满足合并条件则将本条直线合并到原来的平面当中,实现平面的合并。如果不满足合并的条件则将本线段视为一个新平面的两个端点进行存储。Step 3:继续遍历剩余的线段并进行平面合并,直到线段特征处理完毕。在上述过程中,一个很关键的步骤是判断线段与

50、线段的合并的条件,这是一个影响平面提取效果的重要步骤,具体的条件如下:1、 当前线段与要匹配的线段要平行,如果二者夹角过大则视为不满足合并条件;2、 当前线段与要匹配的线段同侧的端点都要临近,即如果两条线段虽然平行但是发生严重错位,距离较远则同样不满足合并的条件。图3.3 线段合并示意图Fig. 3.3 Line feature combination线段合并完成之后即可得到平面特征,实验结果如图3.4(d)所示。本文使用了OpenGL以平面的端点为参数将平面结果绘制出来。不同的颜色代表不同的平面特征。可以看出该场景的地面墙壁等处平面特征的提取结果基本令人满意,但是天花板的平面提取效果不理想。

51、这主要由算法的局限性导致的。在线段合并的步骤并没有问题,线段的提取效果理想,但是在线段合并的阶段由于线段的类型多种多样,参差不齐,线段的同侧端点距离较远导致合并失败。尽管可以条件同侧端点距离的阈值,但是这样会导致其他问题的产生,例如一些小平面的线段合并误差过大甚至错误。另外线段之间的夹角也是问题产生的原因,如图可以看出,天花板处的线段与线段之间是不完全平行的。(a) (b) (c) (d)图3.4 (a)室内场景图片;(b)室内场景的激光数据;(c)线段提取结果;(d)平面提取结果Fig. 3.4 Image of indoor scene; (a) Laser data of indoor

52、scene; (b) Line feature extraction result; (c) Plane feature extraction result3.1.2 基于区域扩张的平面特征提取基于区域扩张的平面提取方法与基于线段的方法思想是不一样的。本文使用Ioannis Stamos3提到的方法拟合局部邻域平面,然后将局部平面合并得到完整的平面特征。由于激光数据存储在二维的容器中,每个激光点有8个邻居(边界除外),直接反映了激光在空间的邻域关系。定义一个的邻域,将邻域内的激光点进行平面拟合。可以根据实际情况取不同的值,一般情况下取。如图3.5中用蓝色方框和红色方框圈出的部分,即是两个的邻域

53、。其中,绿色的激光点表示为两个邻域的公共点云,公共点云是区域扩张算法的基础。图3.5 邻域平面拟合示意图Fig.3.5 Plane fitting of neighbor points每个邻域包含共个激光点,每个点用向量表示。设它们的重心为,有 (3.1)设拟合后平面的法向为单位化的,拟合的目标是使得下式取得最小值 (3.2)实际中为设置一个阈值,当时我们认为该邻域是一个平面。这是一个可以调节的地方,可以根据不同的场景设置不同的阈值。由于邻域平面只是一个平面的片段,相邻的邻域平面需要合并,以提取出完整的平面(见图3.5)。之所以称之为领域扩张是因为平面的合并是以相邻的平面为基础,不断的扩张而最

54、终实现平面特征的提取的。两个相邻的邻域如果都是平面则考虑它们是否可以合并。合并的条件是两邻域平面的法向夹角足够小。定义二维数组Nbr存储邻域内的点,定义一个Planes容器存储平面。于是邻域平面合并算法的伪代码可以如下所示:邻域平面合并算法:1:为每一个激光点添加一个标签,初始化为-1;2:for to ,为激光点云的行数3: for to ,为激光点云的列数4: 矩形框的激光点Nbr;5: if Nbr内点云拟合平面成功6: if Nbr内存在大于等于0的点7: if Nbr平面的法向与Planes法向平行8: 将Nbr内的点归属到Planes,将Nbr内点的标签更新为;9: end if1

55、0: else / Nbr内点的都小于011: 发现新平面,增加1,将Nbr内的点归属到新平面Planes;12: end if13: end if14: end for 15:end for为了方便后续使用,提取出的平面包含多种属性,如平面的重心,平面包含的点云,平面的法向,平面的数学方程等等。图3.6显示了基于平面扩张的平面特征提取结果。由于该算法只是将属于每个平面的点云归属到相应的平面当中,每一个平面的边缘并没有提取出来,所以图中显示的平面特征是以颜色区分的。不同的平面中的点云以不同的颜色表示。可以看出,相对于基于线段合并的方法,基于区域扩张的方法平面提取的结果较准确。地面,墙壁,天花板

56、和门等室内框架上面提取出了完整的平面特征。另外一些小的物体例如图中的红色凳子、纸箱等也提取了一些平面特征。(a) (b)图3.6 (a)室内场景的图片;(b) 平面特征提取结果 Fig.3.6 (a)Picture of indoor scene; (b)The result of plane feature extraction3.2 室内场景框架的认知在平面特征提取完毕之后,一个完整的平面可能由于物体遮挡或者激光数据缺失等因素被断开(例如已提取的多个平面可能归属于同一面墙),因此需要对这些平面进行合并。平面合并条件包括如下两个方面(如图3.7所示):条件1,待合并两平面A和B的法向量和的夹

57、角小于一定阈值;条件2,平面A的重心O到平面B的距离小于一定阈值。图3.7 平面特征合并示意图Fig.3.7 Combination of the planes平面合并步骤完成之后就具备了框架信息提取的基础。给出一幅办公室场景,其框架信息指的是该办公室内的墙,天花板,地面,门等特征,它们一般是固定不移动的建筑物表面。以提取的平面特征为基础,借助平面之间的空间关系与逻辑关系,以及平面自身的属性信息来判断其属于哪种框架元素(如图3.8所示)。图3.8 室内框架信息示意图Fig.3.8 Diagram of indoor structure获取的激光数据坐标系中,轴与地面垂直,平面与地面平行,方便了

58、语义特征的提取。利用前面的算法首先在办公室激光数据中提取出一个平面集合。遍历平面集合,按照如下方法确定办公室的框架语义信息:Step 1. 找出法向与轴平行的平面,设平面的重心高度为z,按照z的大小顺序将这些平面排序。Step 2. 将z值最小且包含点云数量超过一定阈值的平面标记为地面。Step 3. 同理,将z值最大且包含点云数量超过一定阈值的平面标记为天花板。如果查找失败,则分别从底部和顶部向z的中值趋近查找。另外按照一般建筑的特点,要求天花板距离地面的高度米。Step 4. 找出法向与z轴垂直的平面,求取其最低点和最高点。将满足平面顶部接近天花板,底部接近地面的平面标记为墙壁。Step

59、5. 根据经验知识,将满足如下条件的墙壁元素标记为门:1、该平面的高度米;2、该平面的底部接近于地面。Step 6. 将未标记的平面及无特征点云归为一类,用于后面物体的分割和识别。 (a) (b) (c) (d)图3.9 (a)室内场景的图片;(b)室内场景对应的激光数据;(c)平面特征提取结果;(d)室内场景框架认知结果Fig.3.9 (a)Image of indoor scene; (b)Laser data of indoor scene; (c) Result of plane feature extraction; (d)Cognition result of indoor sce

60、ne structure平面特征提取步骤完成后是框架信息提取的实验。图3.9(d)显示了该场景的框架信息提取效果(注意这里没有显示物体部分)。场景中地面以灰色显示,天花板以黄色显示,墙壁以蓝色显示,门以暗红色显示。可以看出,室内的各个框架部分被清晰的分割出来。3.3 室内场景物体的分割一幅室内场景的激光数据中,框架信息占据了大部分激光数据,前面完成框架特征的认知后将属于框架的激光数据忽略掉,只处理剩余的点云数据,从剩余的数据中提取出室内物体。去除背景框架信息后,物体之间往往有一定间隔,物体之间的点云是已经处理过的框架点云信息,使得物体点云具有如下性质:1、属于一个物体的点云是一个连续性的区域,

61、里面都是没有标记过的点云,没有标记为框架点云数据的干扰;2、物体点云区域之间有框架标记的点云隔开,是互相独立的。于是根据上述性质,本文提出了一种类似于3.1.2节的物体聚类算法,将属于一个物体的点云区域归属到一个物体,以提取出室内的各种物体。如图3.10所示,对于的室内场景激光数据,它们的标记属性可以按照他们的存储顺序在二维表中表示出来。示意图中框架点云为黑色,红色、绿色、蓝色点云分别是可能的物体点云。物体分割的目标是将属于物体的点云分别归属到各个物体中。图3.10 物体分割示意图Fig.3.10 Diagram of objects segmentation根据物体点云的特点,本文提出了一种基于点云连续性的算法用于室内物体的有效分割。算法首先定义的邻域,并判断该邻域内的点云是否属于物体点云的一个片段,即该邻域内的点云未标记过,且该邻域内的点云满足如下公式: (3.3)其中,和分别为邻域内的点和邻域的重心。即邻域内的点到重心的距离都应该小于阈值,邻域内的点云没有距离上的突变。如果一个邻域满足物体片段的条件,则需要将其与其他邻域合并以分

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