我拥有聚焦在不同距离的相同场景的图像。我想对齐图像,使每个图像中的每个特征在完全相同的位置。我如何使用opencv来做到这一点?在opencv中对齐图像
回答
其基本思想是基于它们的匹配特征点在X和Y方向上平面旋转图像及其2D平移。
检出Image Alignment Algorithms您可以在这里找到两种使用OpenCV(带代码)的方法。
您可以使用image stitching或feature machting算法的openCV。
特征匹配的主要步骤是:
- 提取特征(SURF或SIFT或其他...)
- 匹配功能(FLANN或暴力破解...)和过滤匹配数
- 找到几何变换(RANSAC或LMeds ...)
首先,您已确定图像之间的转换。它可以像移位一样简单,也可以像非线性翘曲一样复杂。对焦操作不仅可以移动,而且可以轻微缩放甚至剪切图像。在这种情况下,你必须使用Homography来匹配它们。
其次,您必须尝试的最简单方法是手动选择至少4个相应点的巴黎,记录它们的坐标并将它们输入到findHomography()函数中。得到的3x3转换可用于warpPerspective()以匹配图像。如果结果是好的,你可以通过使用SURF点并匹配它们的描述符来自动查找对应关系。
最后,如果结果不理想,则必须进行比单应性更一般的转换。我会尝试分段Affine尝试分别匹配各个图像。无论如何,有关您的输入和最终目标的更多信息将有助于正确解决问题。
结帐这些链接:
图像对齐(ECC)中的OpenCV(C++/Python)的,缓慢的,但它的工作原理:使用的OpenCV(Python的/ C++) http://www.learnopencv.com/image-alignment-ecc-in-opencv-c-python/
单应实例 http://www.learnopencv.com/homography-examples-using-opencv-python-c/
Github的代码: https://github.com/spmallick/learnopencv/tree/master/Homography
- 1. Android:使用OpenCV对齐图像
- 2. iOS和OpenCV:图像注册/对齐
- 3. 如何在OpenCV中对齐Kinect的RGB和深度图像?
- 4. 在MigraDoc中对齐图像
- 5. 在LinearLayout中对齐图像
- 6. 图像在div中对齐
- 7. 在HTML中对齐图像
- 8. OpenCV:移动/对齐脸部图像相对于参考图像(图像注册)
- 9. 图像对齐
- 10. 对齐图像
- 11. 对齐图像
- 12. Bootstrap 2列垂直对齐+ 1图像对齐左对齐+ 1图像对齐
- 13. 如何对齐图像中的图像
- 14. 对齐中间的图像
- 15. jpanel中的图像对齐
- 16. 中心对齐图像
- 17. Dreamweaver中的图像对齐
- 18. 对齐图像中心
- 19. 列中的图像对齐
- 20. 对齐图像中心
- 21. 对齐UITableView中的图像
- 22. 让图像中心对齐
- 23. 中心对齐图像
- 24. 中心对齐图像
- 25. Android:在TabHost中对齐中心图像
- 26. TinyMCE图像对齐
- 27. CSS图像对齐
- 28. CSS - 对齐图像
- 29. 图像框对齐
- 30. FPDF - 图像对齐
[这里](http://stackoverflow.com/a/40640482)是在Python和O完全工作示例penCV显示如何使用SIFT/SURF自动检测匹配点并在该数据上应用findHomography()和warpPerspective()函数。 –