车载双目视觉环境感知系统研究毕业论文
2021-04-17 00:35:20
摘 要
近年来,为了减少交通事故、降低驾驶员劳动强度以及合理规划道路资源,无人驾驶技术的发展趋势愈演愈热。双目视觉技术凭借其稳定的表现效果和价格的优势广泛应用于无人驾驶领域,因此作为无人车环境感知的主要方法之一,以双目视觉为主的无人车识别环境技术已经成为当前研究范畴的热门。计算机视觉的关键技术之一是双目立体视觉,与之类似,立体匹配和三维重建是双目立体视觉中十分关键的环节,作为图像获取过程中的最后两步,一直是该领域研究的焦点。目前,如何建立有效的立体匹配和三维重建算法,提高算法对应的运算速度和准确率,仍然是一个值得关注、有待解决的问题。
本文整理和总结了国内外关于立体匹配和三维重建技术的研究现状,以经典的跨尺度代价聚合框架为基础,将其应用到立体匹配之中,完成三维重建的内容,主要工作如下:
1)介绍了一种特殊的立体匹配算法,其特点为跨尺度代价聚合。在分析传统立体匹配算法原理和现有主流数据集平台的基础上,通过提出的跨尺度代价聚合框架,作为稠密匹配省略了特征提取。实验对应的结果显示,本文介绍的跨尺度代价聚合的立体匹配算法很大程度上提高了一些传统匹配方法的工作性能,即使是简单的盒滤波方法也有明显的效果提升,为后续步骤打下了良好的基础。同时对上述框架金字塔层数的实验设置问题提出了可以大胆改进的地方。
2)介绍了一种三维重建的算法,其基于三角剖分。本文参考双目视觉图像获取的若干步骤,通过立体匹配获取的视差图计算三维空间坐标,利用三角剖分的方法对获取的空间点云进行网格化,最后使用OpenGL的纹理贴图功能生成对应的重构图。并通过获取的实验结果验证上述方法可以生成较为完整的3D重构图,同时,对重构图上纹理拉伸的区域进行问题分析,表明存在视差计算的错误,使得空间三维坐标偏离实际位置。文末,对实验运行结果存在的问题做出了相应的总结并且提出了一些可以改进提升的个人方案。
关键词:双目视觉、立体匹配、代价聚合、三维重建
Abstract
In recent years, in order to reduce traffic accidents, reduce the labor intensity of drivers, and rationally plan road resources, the development trend of driverless technologies has become increasingly hot. Binocular vision technology is widely used in the unmanned field due to its stable performance and price advantages. Therefore, as one of the main methods of environmental perception for unmanned vehicles, the environmental technology of unmanned vehicle recognition based on binocular vision has become a hot topic in the current research realm. One of the pivotal technologies of computer vision is binocular stereo vision. Approximatively, stereo matching and 3D reconstruction are the key steps in binocular stereo vision. As the last two steps in the image acquisition process, it has always been the focus of research in this field. At present, how to establish an effective stereo matching and 3D reconstruction algorithm, and improve the algorithm's corresponding operation speed and accuracy, is still a problem that is worthy of attention and remains to be solved.
This paper collates and summarizes the research status of stereo matching and 3D reconstruction technology both at home and abroad. Based on the classic cross-scale cost aggregation framework, it is applied to stereo matching to complete the content of 3D reconstruction. The main tasks are as follows:
1) A special stereo matching algorithm is introduced, characterized by cross-scale cost aggregation. Based on the analysis of the principle of traditional stereo matching algorithm and the existing mainstream data set platform, through the proposed cross-scale cost aggregation framework, feature extraction is omitted as dense matching. The experimental results show that the cross-scale cost aggregation stereo matching algorithm introduced in this paper improves the performance of some conventional matching methods to a large extent. Even a simple box filter method has a significant improvement in performance, laying a good foundation for subsequent steps. At the same time, the issue of experimental setup of the above-mentioned framework pyramid layers can be boldly improved.
2) A three-dimensional reconstruction algorithm is introduced, which is based on triangulation. This paper refers to the steps of binocular vision image acquisition, calculates the three-dimensional space coordinates through the disparity map obtained by stereo matching, uses the triangulation method to mesh the acquired spatial point clouds, and finally uses the OpenGL texture mapping function to generate the corresponding refactoring map. Through the experimental results obtained, it is verified that the above method can generate relatively complete 3D reconstruction maps. At the same time, it analyzes the problem of the stretched regions on the reconstructed maps, which shows that there are errors in disparity calculations and the three-dimensional coordinates of space are deviated from the actual positions. At the end of the paper, we summarized the problems existing in the experimental results, and put forward some personal solutions that can be improved.
Keywords: binocular vision, stereo matching, cost aggregation, 3D reconstruction
目 录
第1章 绪论 1
1.1研究背景与意义 1
1.1.1无人驾驶 1
1.1.2双目视觉 1
1.1.3立体匹配 1
1.1.4三维重建 2
1.2国内外研究现状 2
1.2.1无人驾驶 2
1.2.2双目视觉 3
1.2.3立体匹配 4
1.2.4三维重建 4
第2章 双目视觉环境感知系统 6
2.1视差原理 6
2.2约束条件 6
2.3视觉模型 7
2.4双目视觉步骤 8
第3章 双目视觉原理介绍 9
3.1相机标定原理 9
3.1.1常用坐标系 9
3.1.2摄像机模型 10
3.1.3摄像机标定方法 11
3.2立体匹配原理 11
3.2.1立体匹配算法分类 11
3.2.2立体匹配算法测试平台 12
3.2.3立体匹配步骤 12
3.3三维重建原理 16
3.3.1透视投影法 16
3.3.2三角测量法 17
3.3.3三维场景曲面可视化重建 18
3.3.4三维重建系统实现 18
第4章 双目视觉关键算法研究 20
4.1立体匹配 20
4.1.1方案综述 20
4.1.2方案流程 20
4.2三维重建 27
4.2.1方案综述 27
4.2.2方案流程 27
4.2.3世界坐标的计算 27
4.2.4三角剖分 28
4.2.5三角剖分定义 28
4.2.6 Delaunay剖分的算法 31
4.2.7三维重构 33
第5章 实验结果与分析 34
5.1立体匹配算法评测平台 34
5.2 Middlebury数据集 34
5.3三维重建 36
第6章 总结与改进 38
参考文献 39
第1章 绪论
1.1研究背景与意义
1.1.1无人驾驶
无人驾驶汽车,是通过控制电脑平台设置进而实现无人驾驶功能的新型智能化汽车[1]。其在AI技术、雷达、视觉处理计算、监控装配和全球定位系统协作下实现。当前,无人驾驶相关领域的科学技术飞速发展,按照有关数据表明,车祸在意外死亡总数中占比50%以上,全球因汽车交通事故而离世的人数至今已经超过3000万人,多于世界大战死亡人数[2]。因此,在安全和稳定性两方面,无人驾驶汽车具备很大的发展潜力。
1.1.2双目视觉
目前无人车行驶路线方面的问题基本上以高精度的卫星定位系统来解决[3],如北斗卫星导航系统、GPS等。但是高精度的GPS成本非常高,并且卫星定位和地图两个系统需要高精度地匹配,不益于无人车的广泛应用。无人车四周环境的信息也可以由3D激光、声波雷达等检测,但有着高成本的相同问题。机器视觉系统观察物体的方式受到人类眼睛的启发,以单目或者多目摄像机的组合来完成无人车附近环境的识别。同雷达系统和GPS相比,机器视觉有着较低的成本与组成。因此以机器视觉为主的无人驾驶领域开始逐渐成为科研工作人员关注的重点研究对象。
1.1.3立体匹配
当前,双目立体视觉研究的核心是两大关键步骤,即立体匹配和三维重建。其中,作为三维重建的基础,立体匹配结果的好坏对是否能够准确获取信息有着直接影响并且决定着三维重建结果的优劣。立体匹配的目的是要从不同视点图像中找到匹配的对应点,根据相应点坐标的偏差求出视差[4]。如今国内外大量学者与科研单位开展了关于立体匹配技术的研究,但仍有很多问题与不足需要完善。例如,由于环境光线强弱的改变以及场景噪声等原因从而造成相同点对应的灰度在左右两幅平面图像中有很大差别,最终导致视差图的精度降低。并且,图像中还存在着如重复纹理、被遮挡、弱纹理等容易发生误匹配的区域。显然,如何科学的减少上述区域的误匹配是科研工作者们亟须解决的问题。所以,立体匹配相关技术的研究显得十分重要并且有着深远的意义。
身为双目视觉中最关键的一个环节,立体匹配一直受到世界广大学者们的重视,但是其缺少一个可以很好的解决匹配速度和精度的算法疑惑至今仍未得到解答。通常来说,计算速度快的算法一般有着较低的精度,高精度的算法又是以牺牲计算速度为前提的,因此寻找一种高效稳定、“鱼和熊掌兼得”的匹配算法是当前立体匹配技术所侧重的研究目标。
1.1.4三维重建
三维重建技术既是当前研究领域的热门,也是目前研究攻关的难点。它涉及了与机器视觉相关的内容,并且对VR、AI等领域的研究起着关键性的作用。目前,获得3D信息的方法主要是图像视频重建、仪器获取、以及软件构造(如3DMax等)这三种方式。以双目视觉为主的三维重建属于上述的第一类方法。该方法使用两台安放位置不同的相机从两个视角拍摄场景,利用相机得到图像组包含的深度距离信息完成三维重建的工作。同其他两种方法比较可以发现,该方法并不需要其他设备辅助重建,只需要使用上述信息进行快速三维重建,具有低代价、高效能的优势。因此在三维重建方面受到了广大科研人员的密切关注。
1.2国内外研究现状
1.2.1无人驾驶
从上世纪五十年代开始,美英等发达国家便率先接触开展无人驾驶汽车领域的科学研究,并在该领域相关方面取得了若干成果和重要进展。美国Barrett电子公司于1950年顺利研发出当时世界首辆“无人驾驶”汽车,利用其自主导航功能成功行驶在对应设定的路线上。1987年,受到Benz公司资助的Munich National Defense大学研究室,独立设计了最高车速达到96km/h的VaMoRs智能车。1994年,欧洲成功研制出VITA-2和VaMP机器人车辆,该车辆在巴黎多车道高速公路上完成了600多英里的行驶测试,其中测试时的最高车速达到80mi/h,同时能够自主地执行跟踪行驶的工作[5]。2005年,在美国国防部牵头主办的无人驾驶挑战赛上,来自斯坦福大学的参赛选手们通过对大众途锐SUV进行改装,该车历时7个多小时顺利到达终点,完成了全程障碍赛[6]。2010年,Google通过对其自主研发的无人车进行主要城市的道路驾驶测试,从而证实该车具备较完整的感知能力和高水准的人工智能技术[7]。2014年,Google无人驾驶汽车的新产品亮相于Code Conference科技大会上,与普通汽车不同的地方是,Google公司研制的汽车没有方向盘和刹车结构[8]。考虑到德国、美国等发达国家较早开始无人驾驶技术研究工作的原因,它们无人车成熟的研发技术和可靠的生产流程的现象也显得十分合理。