美文网首页
Windows 编译 FFTW 2/3 以及安装CurveLab

Windows 编译 FFTW 2/3 以及安装CurveLab

作者: 我的白衣年代 | 来源:发表于2019-03-17 09:30 被阅读0次

    曲波变换是在做信号处理是可能会用到的一种稀疏变换,其源程序包可在 CurveLab 下载,实现方式是基于快速傅里叶变换(FFTW)。截至目前,CurveLab发布的源程序包仍然是基于fftw-2.1.5,然而FFTW目前已全面支持fftw3,在Windows系统上并没有fftw2的版本支持。因此,本文将介绍如何在Windows上安装使用曲波变换。

    我们需要重源码编译 FFTW 以及 CurveLab。CurveLab 内提供有 matlab 版本程序以及 mex 混编程序,编译该部分则可以在MATLAB中使用C++的曲波变换,比 matlab 版本更加快速。

    操作系统:Win 10, 64位
    准备工作: 安装MinGW-w64, 安装MSYS2; 解压 fftw-2.1.5, 解压Curvelab-2.1.3;
    (如果是32位系统,安装MinGW即可)
    需要的工具: MinGW64, MSYS2, fftw-2.1.5,CurveLab-2.1.3

    1. MinGW-w64 及 msys2 安装
      下载安装程序按照官网教程安装即可。注意需要利用msys2安装上make,在msys2中,输入
      pacman -S make即可自动安装。
      将MingGW-w64以及msys2的bin目录添加到系统路径;比如我的是

      image.png
    2. 编译 FFTW
      2.1 打开cmd, 进入fftw-2.1.5路径。
      2.2 输入 sh 进入bash环境
      2.3 设置编译配置,输入
      ./configure --prefix=/your/install/path --with-pic
      其中/your/install/path 是你想要安装到的目录,这是一个绝对路径。比如我安装的位置是/d/Toolbox/fftw,意思是在D盘Toolbox文件夹下的fftw文件夹。
      2.4 输入make,进行编译,大概需要10分钟;
      2.5 输入make install,开始安装。

    3. 编译 CurveLab
      3.1 进入 CurveLab-2.1.3 解压文件夹,修改makefile.opt文件中FFTW_DIR 值为 fftw-2.1.5 解压文件的绝对路径 (上一步已在该文件夹下编译fftw)。如果需要编译 mex 文件以提供更快速的 matlab 版本曲波变换,则需要指定mex 编译器(修改MEX的值)。我的路径配置如下,大家根据自己的路径进行配置

      image.png
      3.2 在 shell 中输入make lib,编译静态链接库文件;
      3.3. 在 shell 中输入 make matlab, 编译mex 文件;
      image.png

    至此,所有编译工作已经完成。

    相关文章

      网友评论

          本文标题:Windows 编译 FFTW 2/3 以及安装CurveLab

          本文链接:https://www.haomeiwen.com/subject/tvplmqtx.html