fft的使用方法

简介: fft的使用方法

具体代码如下:

#include "mainwindow.h"
#include "math.h"
#include "fftw/fftw3.h"
#include <QApplication>
#include <stdio.h>
#define N 16
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    int i;
    fftw_complex *din,*out;
    fftw_plan p;
    din  = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);
    out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);
    if((din==NULL)||(out==NULL))
    {
        qDebug("Error:insufficient available memory\n");
    }
    else
    {
        for(i=0; i<N; i++)/*测试数据*/
        {
            din[i][0] = i+1;
            din[i][1] = 0;
        }
    }
    p = fftw_plan_dft_1d(N, din, out, FFTW_FORWARD,FFTW_ESTIMATE);
    fftw_execute(p); /* repeat as needed */
    fftw_destroy_plan(p);
    fftw_cleanup();
    for(i=0;i<N;i++)/*OUTPUT*/
    {
        qDebug("%f,%fi\n",din[i][0],din[i][1]);
    }
    qDebug("\n");
    for(i=0;i<N;i++)/*OUTPUT*/
    {
        qDebug("%f,%fi\n",out[i][0],out[i][1]);
    }
    if(din!=NULL) fftw_free(din);
    if(out!=NULL) fftw_free(out);
    getchar();
    MainWindow w;
    w.show();
    return a.exec();
}

执行效果如下:

相关文章
|
4月前
|
存储 Serverless Python
`quad()` 函数是 `scipy.integrate` 模块中的一个函数,用于计算一维函数的数值积分。其基本语法如下:
`quad()` 函数是 `scipy.integrate` 模块中的一个函数,用于计算一维函数的数值积分。其基本语法如下:
|
6月前
|
存储 计算机视觉 Python
【python版CV】-直方图 & 傅里叶变换
【python版CV】-直方图 & 傅里叶变换
|
6月前
|
机器学习/深度学习 算法 数据挖掘
【MATLAB】mlptdenoise分解+FFT+HHT组合算法
【MATLAB】mlptdenoise分解+FFT+HHT组合算法
75 0
【MATLAB】mlptdenoise分解+FFT+HHT组合算法
|
12月前
|
存储 算法 计算机视觉
PIL中ImageFilter模块几种图片滤波处理和使用方法
PIL中ImageFilter模块几种图片滤波处理和使用方法
88 0
|
存储 数据建模 API
[Eigen中文文档] 稀疏矩阵快速参考指南
本页面简要介绍了类SparseMatrix中可用的主要操作。在处理稀疏矩阵时,重要的一点是要了解它们的存储方式:即行优先或列优先,Eigen默认为列优先。对稀疏矩阵进行的大多数算术操作都会默认它们具有相同的存储顺序。
258 0
[Eigen中文文档] 固定大小的可向量化Eigen对象
本文主要解释 固定大小可向量化 的含义。
108 0
|
前端开发 Python
Python tkinter库之Canvas 根据函数解析式或参数方程画出图像
Python tkinter库之Canvas 根据函数解析式或参数方程画出图像
287 0
|
边缘计算 计算机视觉
图像梯度与Sobel滤波器---OpenCV-Python开发指南(20)
图像梯度与Sobel滤波器---OpenCV-Python开发指南(20)
398 0
图像梯度与Sobel滤波器---OpenCV-Python开发指南(20)
numpy的使用说明(六):一招帮你彻底搞懂axis=0和axis=1
numpy的使用说明(六):一招帮你彻底搞懂axis=0和axis=1
numpy的使用说明(六):一招帮你彻底搞懂axis=0和axis=1
|
机器学习/深度学习
【MATLAB】进阶绘图 ( Stairs 阶梯图 | stairs 函数 | Stem 离散序列数据图 | stem 函数 | 正弦函数采样 )
【MATLAB】进阶绘图 ( Stairs 阶梯图 | stairs 函数 | Stem 离散序列数据图 | stem 函数 | 正弦函数采样 )
391 0
【MATLAB】进阶绘图 ( Stairs 阶梯图 | stairs 函数 | Stem 离散序列数据图 | stem 函数 | 正弦函数采样 )