问题是四重变换(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
答案 0 :(得分:0)
因为它需要CV_32FC或CV_64FC数据类型,但您需要提供CV_32SC。