有没有办法从复杂的马匹做一个dft

时间:2014-12-01 13:51:09

标签: c++ opencv mat

问题是四重变换(cv :: dft)一个带有四个描述符的信号。所以垫子应该是复数:(

但我的问题是如何制作复杂数字的垫子?请帮我找一个示例或其他任何显示如何将复数(RE + IM)存储到垫子的示例?

有没有办法使用合并?

我的代码

Mat koopa(contours5[0], true);
Mat re;
Mat im;
re.convertTo(re,CV_32SC1);
im.convertTo(re, CV_32SC1);
vector channel(2);
// split coordinates in two mat
split(koopa, channel);
re = channel[0];
im = channel[1];
Mat planes[] = { re, im };
Mat complexImg;
merge(planes, 2, complexImg);
dft(complexImg, complexImg);
split(complexImg, planes);

为什么不起作用?链接error picture

1 个答案:

答案 0 :(得分:0)

因为它需要CV_32FC或CV_64FC数据类型,但您需要提供CV_32SC。