【发布时间】:2013-12-15 03:44:01
【问题描述】:
我正在尝试对齐从手持相机拍摄的两张图像。
起初,我尝试使用基于 SIFT/SURF 特征点的 OpenCV warpPerspective 方法。问题是当图像质量很高(3000x4000)时,特征提取和匹配过程可能会非常慢。我试图在找到特征点之前缩小图像,结果不如以前好。(从findHomography生成的Mat不应该受到缩小图像的影响,对吧?)有时,由于缺乏良好的特征点匹配,结果很奇怪。
搜索了这个话题,似乎解决傅里叶域的问题会加快注册过程。我找到了this question,它把我带到了code here。
唯一的问题是代码是用 numpy 用 python 编写的(甚至不使用 OpenCV),这使得使用 OpenCV 重写为 C++ 代码非常困难(在 OpenCV 中,我只能找到 dft 并且没有fftshift 和 fft 的东西,我对 NumPy 不太熟悉,我也没有勇气简单地忽略缺失的方法)。所以我想知道为什么没有这种使用C++的傅里叶域图像注册实现?
你们能给我一些关于如何实现的建议,或者给我一个已经实现的 C++ 版本的链接吗?或者帮我把python代码转成C++代码?
非常感谢!
【问题讨论】:
标签: c++ image opencv image-processing numpy