问题描述:已知两幅图像Image1和Image2,计算出两幅图像的重叠区域,并在Image1和Image2标识出重叠区域。
算法思想:
若两幅图像存在重叠区域,则进行图像匹配后,会得到一张完整的全景图,因而可以转换成图像匹配问题。
图像匹配问题,可以融合两幅图像,得到全景图,但无法标识出在原图像的重叠区域。
将两幅图像都理解为多边形,则其重叠区域的计算,相当于求多边形的交集。
通过多边形求交,获取重叠区域的点集,然后利用单应矩阵还原在原始图像的点集信息,从而标识出重叠区域。
算法步骤:
1.图像匹配计算,获取单应矩阵。
2.根据单应矩阵,计算图像2的顶点转换后的点集。
3.由图像1的顶点集合和图像2的转换点集,计算多边形交集。
4.根据单应矩阵的逆,计算多边形的交集在图像2中的原始点集。
代码实现如下所示:
View Code
其中,多边形求交集可参考:
最终,程序运行的示意图如下:
分类: ,