|
Matrix<float> debris_dft=new Matrix<float>(debris_gray.Rows,debris_gray.Cols);
CvInvoke.BitwiseAnd(debris_gray, debris_gray, debris_dft); ;
Matrix<float> forwardDft = new Matrix<float>(debris_dft.Rows, debris_dft.Cols,2);
CvInvoke.Dft(debris_dft, forwardDft, DxtType.Forward, 0);
CvInvoke.cvSetImageCOI(forwardDft, 1);
Image<Gray, Byte> outReal = new Image<Gray, Byte>(debris_dft.Size);
Image<Gray, Byte> outIm = new Image<Gray, Byte>(debris_dft.Size);
CvInvoke.cvCopy(debris_dft, outReal, IntPtr.Zero);
我用emgu cv 3.2 执行离散傅立叶变换时,在执行“CvInvoke.Dft(debris_dft, forwardDft, DxtType.Forward, 0);”的时候发生了“未处理CvException:OpenCV: type == CV_32FC1 || type == CV_32FC2 || type == CV_64FC1 || type == CV_64FC2“的错误,不知道什么原因。按道理,我的数据类型没有问题呀。哪位哥哥能帮帮忙。
|
|