OpenCV多谱和dft自相关对称

时间:2018-08-28 12:32:20

标签: c++ opencv dft

我正在使用 dft mulSpectrums 在实值二维Mat上计算自相关。

我期望自相关结果具有中心对称性,但是得到不对称结果,尽管误差很小。

例如,可以通过以下代码观察不对称性:

#include <opencv2/opencv.hpp>
using namespace cv;

Mat samplef, psd, corr;
Mat sample(32, 32, CV_32F, Scalar(0));
Rect roi(2,2,3,3);
sample(roi)=0.7f;
dft(sample, samplef);
mulSpectrums(samplef, samplef, psd, 0, true);
dft(psd, corr, DFT_SCALE|DFT_INVERSE)

绘制3x3区域围绕corr中的相关峰,我得到:

 +1.9599995613 <<   +2.9399995804      +1.9599996805 
 +2.9399995804      +4.4099998474      +2.9399995804 
 +1.9599996805      +2.9399995804      +1.9599997997 <<

我做错什么了吗?这是一个已知问题吗?有没有办法在仍然使用浮点数的情况下避免这种不对称性?

0 个答案:

没有答案