当前位置:   article > 正文

matlab+PYTHON 时频分析1D信号转换为2D时频图像_cqt matlab

cqt matlab

一:工具包安装

1、首先下载工具箱,http://download.csdn.net/detail/makenothing/6969447。(免费链接:http://download.csdn.net/detail/makenothing/9734266)下载后解压放在matlab的toolbox工作路径下TFTB文件夹。

2、打开matlab,选择File- Set Path- Add with Subfolders-你刚才下载的工具箱(package_emd)点进去- Save- Close。

3、此时选择work下package_emd文件夹作为工作路径,即是C:\Program Files\MATLAB\R2010a\toolbox\TFTB 。
4、在Command Window里面输入mex -setup回车,

情况一:问是否选择已有的编译器你选y回车,再问选择哪个编译器,你可以选择C++的那个选择相应的编号(如 2)回车,然后让你核对是否选择对了编译器等等,你输入y回车。就安装成功了

情况二:如果系统显示没有编译器,返回的提醒为

没有安装任何编译器或者SDK则找不到任何编译器

5.安装编译器,(matlab的版本不能是2017a之前,不然不支持第三方安装)
(1):下载TDM-GCC(注意看清是32位还是64位),TDM-GCC的安装路径不要包括空格; http://tdm-gcc.tdragon.net/download

(2):新建环境变量MW_MINGW64_LOC,设置为TDM-GCC-64的安装位置;

(3):在MATLAB命令行内运行命令setenv(‘MW_MINGW64_LOC’,folder),folder为TDM-GCC的安装位置,要加单引号; 最后,重启一下MATLAB;

二:时频函数

1.在matlab的说明文档里找到所用的函数,可以看例子学习

2.以cqt为例,代码为:

  A = xlsread('D:\research_data\轴承\CWRU\初始信号\data.xlsx','A');
A=A';
fs=12000;
for i=301:310
    cqt(A(:,i),'SamplingFrequency',fs);
    set(gca,'position',[0 0 1 1])
    fname=['D:\gcc\image\','BF',num2str(i-300),'.png'];
    saveas(gcf,fname);   
    end
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
3. set(gca,'position',[0 0 1 1]) 这行代码操作的目的是去除坐标轴及标题栏等,得到一个纯图像,结果如下,图片占满全部空间
  • 1

4.用python将图片压缩为指定分辨率,即像素×像素形式

代码如下

def produceImage(file_in, width, height, file_out):
    image = Image.open(file_in)
    resized_image = image.resize((width, height), Image.ANTIALIAS)
resized_image.save(file_out)
  • 1
  • 2
  • 3
  • 4

5.最后结果,例如是RGB,240×240

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/324924
推荐阅读
相关标签
  

闽ICP备14008679号