基于SFM的特征点检测及匹配算法研究毕业论文
2021-11-02 20:53:59
摘 要
三维重建技术在近几年飞速发展,而且逐步广泛应用与我们的生活中。而基于多视图的SFM算法也逐渐受到关注,且应用广泛,大至智慧城市、国防、医疗,小至手机导航。作为SFM算法的基础和重要步骤,特征点的检测与匹配深受研究者的关注,从20世纪就有相关算法问世,到今天为止,出现了很多改进优化的算法。现在使用最为广泛的、最经典的就是SIFT、SURF、ORB、BRISK等几种算法,这几种算法都有着各自的特点,在三维重建领域均发挥最重要作用,如何针对不同场景选择选择算法是一个非常重要的研究课题。
针对这4种算法,本文开展了如下研究工作:
一,通过对SIFT和SURF算法的原理深入研究,发现SIFT算法具有较强的局部不变性,SURF算法在保持良好的局部不变性和稳定性的前提上,提升了算法速度。并对ORB和BRISK算法简要了解,认为该两种算法速度较快。
二,从6个方面对4种特征点检测算法进行实验分析,得出SURF算法在在图片发生变换时,如不同角度的旋转、不同的模糊程度、不同比例的缩放、观察视角变换等方面具有最好的鲁棒性,且SURF算法更适用于大尺度场景,ORB和BRISK算法速度更快且更适合小尺度场景;
三,实验比较匹配算法,认为K近邻匹配优于暴力匹配;
四,实现RANSAC进行误匹配点剔除。
根据研究的结果,对不同的使用环境下,如何选择特征点检测匹配算法,提出针对性建议。
关键词:三维重建;SFM;特征点检测;RANSAC;
Abstract
In the past years, with the development of 3D reconstruction technology, it is gradually widely used in people's lives .The SFM algorithm based on multi-view has also gradually attracted attention, and it is widely used, ranging from smart cities, national defense, medical to mobile navigation. As the basis and important step of the SFM algorithm, the detection and matching of feature points are deeply concerned by researchers. Since the 20th century, there have been relevant algorithms. So far, there are a lot of improved optimization algorithms. There are some of most widely used and the most classic algorithms, including SIFT, SURF, ORB and BRISK. These algorithms have their own characteristics and have a major role in 3D reconstruction. So how to choose an algorithm for different scenarios is a very important research topic.
Aiming at these four algorithms, thesis carried out the following research work,
1) Through in-depth study of the principles of SIFT and SURF algorithms, it is found that SIFT algorithm has strong local invariance. SURF algorithm improves the speed of the algorithm on the premise of maintaining good local invariance and stability. And make a brief understanding of the ORB and BRISK algorithms, it is found that the two algorithms are faster.
2) The experimental analysis of the four feature point detection algorithms from 6 aspects shows that the SURF algorithm has the best robustness in rotation transformation, blur change, viewing angle change and scale change and it is more suitable for large-scale scenes. ORB and BRISK algorithm are much faster and more suitable for small-scale scenes.
3) By comparing the matching algorithms through experiments, it is considered that K nearest neighbor matching is better than brute force matching.
4) Programming to realize RANSAC to eliminate the mismatch points.
Putting forward targeted suggestions on how to select the feature point detection and matching algorithm in different usage environments through the results of the research.
Key Words:3D reconstruction; SFM; feature point detection; RANSAC
目 录
第一章 绪论 1
1.1研究背景与意义 1
1.2国内外研究现状 2
1.2.1特征点检测研究现状 2
1.2.2特征点匹配研究现状 2
1.3研究内容和技术路线 3
1.3.1 研究内容 3
1.3.2 技术路线 3
1.4论文组织结构 4
第二章 SFM及特征点检测和匹配相关理论 6
2.1三维重建和SFM相关理论介绍 6
2.1.1 三维建模 6
2.1.2 SFM相关理论 6
2.2 特征点检测与匹配相关理论 8
2.2.1 特征检测和匹配 8
2.2.2 尺度空间 8
2.2.3 图像金字塔 10
第三章 特征点检测及匹配算法研究 12
3.1 SIFT特征点检测算法 12
3.1.1 简述 12
3.1.2 SIFT具体实现步骤及原理 12
3.1.3 实验效果展示 16
3.2 SURF特征点检测算法 17
3.2.1 SURF算法原理及步骤 17
3.2.2 实验效果展示 20
3.3 ORB算法及BRISK算法 21
3.3.1 ORB算法原理及步骤 21
3.3.2 ORB实验效果展示 22
3.3.3 BRISK算法简述及实验结果 23
3.4 特征点匹配方法研究 24
3.4.1 匹配方法介绍 24
3.4.2 实验设计 25
第四章 特征点检测算法对比分析 26
4.1实验环境及安排 26
4.1.1 实验环境 26
4.1.2 对比角度 26
4.2 误匹配点剔除算法 27
4.3 实验结果分析 28
4.3.1 不同尺度图像的适用性 28
4.3.2 旋转尺度鲁棒性 29
4.3.3 模糊尺度鲁棒性 30
4.3.4 视角变换鲁棒性 32
4.3.5 尺度变换鲁棒性 33
4.3.6 运行速度对比 36
第五章 总结与展望 38
5.1总结 38
5.2展望 38
参考文献 40
致谢 42
第一章 绪论
1.1研究背景与意义
人类感受外部世界最主要的方式就是视觉,我们通过双目来观察万物,从中获取形状、颜色、位置等信息,在人脑中形成一幅幅图像,以此来认识所处客观世界。随着科技的发展,也出现了很多记录图像的工具,如绘画、相机等。我们生活的世界是一个三维的空间,人类的视觉可以直接三维信息,而现阶段的记录工具手机和相机所能获取的图像则是二维图像,然而随着需求的增加,需要能从二维图像中获取更多的信息,或者利用二维图像重现人眼所见、视觉所获,就要依赖于三维重建技术。所谓三维重建技术,是指通过计算机或者传感器进行三维信息的获取。
三维重建技术的应用非常广泛,比如VR、智慧城市[1]、导航、SLAM等领域。作为计算机视觉方面的一大研究重点,现阶段广泛使用的实现方法有3种。首先是现有的建模工具,如3Dmax等,使用这种方式进行建模成本较低,但是最终结果的精细程度与手工建模人员的操作有关,而且速度偏慢,所要耗费的人力多。第二种就是通过一些专业的扫描设备进行建模,比如激光扫描仪、激光测距仪等,这种方式精度高、速度快、耗费的人力资源少。他的劣势就是没有纹理特征,而且昂贵,设备的大小也会限制其在大场景的三维重建中作用不大。第三种方法以多视角的二维图像集群为输入,进而分析提取其中的三维信息,包括其纹理信息、结构信息等,以此来进行三维模型的重新构建[2]。无论是所要重建的范围大小、目标大小都可以使用该方法,最终重建的结果非常真实,人力投资也相对少,因此在越来越多的领域被应用。