///输入图像矩阵 Mat I = imread(argv[1], CV_LOAD_IMAGE_GRAYSCALE); //转换数据类型 Mat fI; I.convertTo(fI, CV_64F); ///傅里叶变换 Mat F; dft(fI, F, DFT_COMPLEX_OUTPUT); ///傅里叶改变逆矩阵 Mat iF; dft(F, iF, DFT_REAL_OUTPUT DFT_INVERSE DFT_SCALE); //计算的iF浮点型,转化为cv_8u Mat II; iF.convertTo(II, CV_8U); //最终得到的II和I 矩阵是一样的
但说到傅里叶的转换,据一位博主说,所有的周期函数都通过三角函数。傅里叶的转换是从图像到实矩阵,再到复矩阵,再到傅里叶,再到原矩阵,再到原矩阵 。 涉及到傅里叶变换的原理,参考下面,写的真的很好,但是我还没看懂,先用。 https://blog.csdn.net/guyuealian/article/details/72817527?ops_request_misc=&request_id=&biz_id=102&utm_term=傅里叶变换有什么用?&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-3-72817527.142v33new_blog_fixed_pos,185v2control&spm=1018.2226.3001.4187