目录
1.全景拼接
将SIFT应用到图像拼接上,根据特征点匹配的方式,则利用这些匹配的点来估算单应矩阵使用RANSAC算法,也就是把其中一张通过个关联性和另一张匹配的方法。通过单应矩阵H,可以将原图像中任意像素点坐标转换为新坐标点,转换后的图像即为适合拼接的结果图像。
可以简单分为以下几步:
- 根据给定图像/集,实现特征匹配。
- 通过匹配特征计算图像之间的变换结构。
- 利用图像变换结构,实现图像映射。
- 针对叠加后的图像,采用APAP之类的算法,对齐特征点。(图像配准)
- 通过图割方法,自动选取拼接缝。
- 根据multi-band blending策略实现融合。
2.RANSAC算法
RANSAC[1] (随机抽样一致)是一种迭代算法,该算法从一组包含“外点(outlier)”的观测数据中估计数学模型的参数。“外点”指观测数据中的无效数据,通常为噪声或错误数据,比如图像匹配中的误匹配点和曲线拟合中的离群点。与“外点”相对应的是“内点(inlier)”,即用来估计模型参数的有效数据。因此,RANSAC也是一种“外点”检测算法。此外,RANSAC算法是一种非确定算法,它只能在一定概率下产生可信的结果,当迭代次数增加时,准确的概率也会增加。
RANSAC算法是用来找到正确模型来拟合带有噪声数据的迭代方法。
基本思想:数据中包含正确的点和噪声点,合理的模型应该能够在描述正确数据点的同时摈弃噪声点。
RANSAC的基本思想和算法流程如下:
- 随机采样K个点,K是求解模型参数的最少点个数;
- 使用K个点估计模型参数;
- 计算剩余点到估计模型的距离,距离小于阈值则为内点,统计内点的数目;
- 重复步骤1~3,重复次数M且保留数目最多的内点;
- 使用所有的内点重新估计模型。
举例:RANSAC拟合直线
1.随机选取K=2个点
2.拟合直线
3.统计内点个数
4.重复步骤1-3,重复次数M且保留数目最多的内点