C#基于OpenCv(OpenCvSharp) 的 fftshift, ifftshift 函数的实现

本文实现基于OpenCvOpenCvSharp) 的 fftshift, ifftshift 函数。

fftshift 函数将信号频谱的零频分量移动到数组中心, 本质是分别对调一三象限数据。

ifftshift完成相反的操作,本质是二四象限的数据块。

OpenCV中没有这两个函数如果使用需要自己实现。

实现代码如下:

#region 方法 fftshift
        /// <summary>
        /// 方法 fftshift
        /// </summary>
        /// <param name="src"></param>
        /// <returns></returns>
        public static Mat fftshift(Mat src)
        {
            Mat dst = new Mat(src.Size(), src.Type());
            int x0 = src.Cols / 2;
            int x1 = src.Cols - x0;
            int y0 = src

猜你喜欢

转载自blog.csdn.net/qq_30725967/article/details/132023271