全景图的拼接
-
明确需求
- 稀疏特征;
- 图像拼接之后“漂移”。
-
参考链接
- 图像拼接算法的综述
- 计算机视觉的深度学习实战四:图像特征提取
- opencv-图像拼接与融合
- OpenCV探索之路(二十四)图像拼接和图像融合技术*
- OpenCV中的全景拼接例程*
- 使用Stitcher类,通过createDefault()方法创建拼接对象,通过stitch()方法执行默认的自动拼接。自动拼接和07年Brown和Lowe发表的论文描述的步骤基本一致,只不过使用的特征提取算法是ORB,而不是慢吞吞、有专利保护的SIFT和SURF。
- OpenCV 实现多张图像拼接
- opencv 基于sift的多张图片全景图拼接*
- 这里是基于sift来寻找特征点经行图像的匹配的原理来进行图像拼接的
- OpenCV实现两幅图片全景拼接
- 拼接图像得到全景图**
- 检测两张图像的关键点特征(DoG、Harris等)
- 计算不变特征描述符(SIFT、SURF或ORB等)
- 根据关键点特征和描述符,对两张图像进行匹配,得到若干匹配点对,并移除错误匹配;
- 使用Ransac算法和匹配的特征来估计单应矩阵(homography matrix);
- 通过单应矩阵来对图像进行仿射变换;
- 两图像拼接,重叠部分融合;
- 裁剪以获得美观的最终图像。
- 图像拼接OpenCV之实现拼接函数及拼接
- 利用OpenCV实现图像拼接例子*
- 图像拼接的完整流程如上所示,首先对输入图像提取鲁棒的特征点,并根据特征描述子完成特征点的匹配,然后根据已经匹配的特征点对得到相邻图像的位置关系从而进行图像配准,由于直接进行图像配准会破坏视场的一致性,因而先将图像投影在球面或者柱面上,最后计算相邻图像的拼缝并完成重叠区域的融合,得到最终的全景图像。
- CV进阶应用【10】——图像拼接全景图与平面跟踪的AR*
- 提取特征点有sift、surf、harris角点、ORB等常用方法
- 考虑到精确度、稳定性和速度,本实验中采用了SIFT和SURF的方法
- SURF精确度和稳定性不及SIFT,但是其综合能力还是优越一些,在速度方面有了明显的提高(速度是SIFT的3倍)
- 注:opencv stitch选择的特征检测方式第一选择是SURF,第二选择才是ORB
- 【OpenCV】 全景拼接——多张图像拼接*
- stitching_detailed 图像拼接流程
-
Python
-
技术调研
- Stitcher类
- sift
- 检测两张图像的关键点特征(DoG、Harris等)
- 计算不变特征描述符(SIFT、SURF或ORB等)