Matalb读取TDMS文件并提取13个频谱特征

本文使用MATLAB读取TDMS文件,并详细计算了13个频谱特征,包括频谱均值、谱幅值标准差、谱幅值偏度、谱幅值峭度、重心频率、谱频率均方根值、谱根4/2矩比、谱频率标准差、谱变异系数、谱频率偏度、谱频率峭度等。
摘要由CSDN通过智能技术生成

 提取了十三个特征

clc;clear ;close all
nor=convertTDMS(0,'Tr.tdms');%读取文件
data1=nor.Data.MeasuredData(3).Data;    %选择几通道
   
Fs = 2560;%采样频率
N=length(data1);
data1 = abs(data1);
%频谱均值
F1 = mean(data1);
%谱幅值标准差
F2 = std(data1);
%谱幅值偏度
F3 = sum((data1-F1).^3)/((N-1)*F2^3);
%谱幅值峭度
F4 = F3 = sum((data1-F1).^4)/((N-1)*F2^4);
%计算重心频率
f = Fs* [1:N ]/N;
py = 2 * data1 /N;
% FC=sum(f.*py)/sum(data1)
F = sum(data1);
q = sum(f.*py);
F5=sum(q)/F;

%谱频率均方根值
FZ=sum(f.^2.*py);
F6 = sqrt(sum(FZ)/F);

%谱根4/2矩比
Fj=sum(f.^4.*py);
F7 = sqrt(sum(Fj)/sum(FZ));

%FT1
F8 = sum(FZ)/sqrt(F*sum(Fj));

%谱频率标准差
FB = sum((f-F5).^2.*data1);
F9 = sqrt(sum(FB)/F);

%谱变异系数
F10 = F9/F5;
%FT2
F11 = sum(abs((f-F5))/F);
%谱频率偏度
F12 = sum(sum((((f-F5)/F9).^3).*data1/F));
%谱频率峭度
F13 = sum(sum((((f-F5)/F9).^4).*data1/F));

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值