我需要自动对齐图像 B 到另一张图像 A 的顶部,使得图像的内容尽可能匹配。
图像可以在 x/y 方向上平移,并且在 z 轴上旋转最多 5 度,但它们不会被扭曲(即缩放或梯形校正)。
也许有人可以推荐一些关于此主题的好链接或书籍,或者分享一些关于如何完成图像对齐的想法。
如果没有旋转问题,那么我可以简单地尝试用暴力方法比较像素行,直到找到匹配项,然后我就知道偏移量并可以对齐图像。
我需要为此使用人工智能吗?
我很难找到关于图像处理的资源,这些资源详细介绍了这些对齐算法的工作原理。
回答:
所以人们在这种情况下通常会先在图像中找到匹配的点,然后用最小二乘法计算最佳变换矩阵。 点匹配不是特别简单,通常你只需使用人工输入来完成这项任务,你必须一直这样做来校准相机。 无论如何,如果你想完全自动化这个过程,你可以使用特征提取技术来找到匹配的点,关于这个主题已经有很多研究论文了,任何标准的计算机视觉教材都会有一章介绍它。 一旦你有 N 个匹配点,求解最小二乘变换矩阵就非常简单了,而且同样可以在任何计算机视觉教材中找到,所以我会假设你已经掌握了它。
如果你不想寻找点对应关系,你可以直接使用最速下降法优化旋转和平移,问题是这是非凸的,所以不能保证你能找到正确的变换。你可以在此基础上进行随机重启或模拟退火或任何其他的全局优化技巧,这很可能奏效。我找不到任何关于这个问题的参考资料,但这基本上是一个数字图像稳定算法,当我学习计算机视觉的时候,我不得不实现它,但那是很多年前的事了,这里有一些相关的幻灯片,看看 “stabilization revisited”。是的,我知道这些幻灯片很糟糕,我没有制作它们:) 然而,确定梯度的方法非常优雅,因为有限差分显然是棘手的。
编辑:我终于找到了这篇论文,它介绍了如何做到这一点这里,这是一篇非常棒的论文,它很好地解释了 Lucas-Kanade 算法。此外,这个网站有很多关于图像对齐的材料和源代码,可能会很有用。