了解一个新提出的STA / LTA算法

45视图(30天)
下面是修改后的STA / LTA方程。
从我的理解我制定如下的代码。请通过代码和纠正我如果我的想法是错误的
clc
清晰的所有
% %数据输入
错误使用importdata
无法打开文件。
Acc_EW = importdata (“ADIB.HHE.dat”)
Acc_NS = importdata (“ADIB.HHN.dat”);
Acc_ver = importdata (“ADIB.HHZ.dat”);
Fs = 100;%采样频率
% %信号预处理
%滤波器设计
digfilt = designfilt (“lowpassiir”,“PassbandFrequency”,20岁,“StopbandFrequency”25岁的“PassbandRipple”, 1“StopbandAttenuation”现年60岁的“SampleRate”,200);
%过滤数据
Acc_EW_filt =过滤器(digfilt Acc_EW);
Acc_NS_filt =过滤器(digfilt Acc_NS);
Acc_ver_filt =过滤器(digfilt Acc_ver);
佛罗里达州公路巡警部门的= 0.8;%高通滤波器cutofff频率
(b1, a1) =黄油(3,当天/ Fs,“高”);%三阶巴特沃斯高通滤波器
fildat =过滤器(b1、a1、Acc_ver);%加速度数据过滤
韦尔= cumtrapz (fildat)。/ Fs;%集成加速度数据的速度
(b2 a2) =黄油(3,当天/ Fs,“高”);%三阶巴特沃斯高通滤波器
fildat1 =过滤器(b2, a2,韦尔);%过滤速度数据
说= cumtrapz (fildat1)。/ Fs;%整合速度位移数据
peakToPeakRange = max (fildat) - min (fildat);
dt = 1 / f;%采样时间
元=长度(fildat);%输入信号的长度
时间= (1:nt)。* dt;%的时间输入信号
% % STA-LTA算法气油比纵波检测
stw = 0.2;%短时间窗长度
ltw = 70;%长时间窗口长度
打= 3;%的阈值
thresh1 = 4;
% t = 1;
问=修复(ltw / dt);%。长时间数据点的窗口
ns =修复(stw / dt);%。短时间内数据点的窗口
元=长度(fildat);
sra = 0(1元);
% %这地方我已经修改根据摘录论文——“框架
% %为自动化的地震事件检测基于自适应去噪
% %过滤器的
本地语言+ k = 1: nt
staz (k, 1) = (1 / ns) * trapz (abs (fildat (k - n, k)));
ltaz (k, 1) = (1 / nl) * trapz (abs (fildat (k-nl: k)));
sta (k, 1) = (1 / ns) * ((staz (k - 1) * ns) -fildat (k - n) -fildat (k)];
英国网球协会(k, 1) = (1 / nl) * ((ltaz (k - 1) * nl) -fildat (k-nl) -fildat (k)];
结束
l =问+ 1:nt
sra (l) = sta(左)/ lta(左);
结束
itm =找到(sra >打);
如果~ isempty (itm)
itmax = itm (1);
结束
tp = itmax * dt;% p波到达时间
流(“纵波检测时间阈值4 = % f第二\ n '、tp);
itm1 =找到(sra > thresh1);
如果~ isempty (itm1)
itmax1 = itm1 (1);
结束
tp1 = itmax1 * dt;% p波到达时间
流(“纵波检测时间阈值3 = % f第二\ n '、tp1);
% %横波到达时间
pkHts = 0.72;% 10%
[pk2, t22] = findpeaks (Acc_NS_dlycompensated Fs,“MinPeakHeight”,pkHts *马克斯(Acc_ver_dlycompensated),“Npeaks”1);
[pk3, t33] = findpeaks (Acc_EW_dlycompensated Fs,“MinPeakHeight”,pkHts *马克斯(Acc_ver_dlycompensated),“Npeaks”1);
显示器(sprintf (横波在电子战的组件在% f秒和NS % f秒组合,”、t33 t22));
如果(t22 < t33)
显示器(“南北组件横波检测到第一”);
其他的
显示器(“东西方组件横波检测到第一”);
结束
ts = min (t22 t33);
线([ts, ts], [min (get (gca),“Ylim”))),“线型”,“——”,“线宽”2,“颜色”,“红色”);
% % Tauc, Pd和大小的计算
vel_sq =韦尔。^ 2;
dis_sq =说。^ 2;
r1 = trapz (vel_sq ((itmax): (itmax + 300)));
r2 = trapz (dis_sq ((itmax): (itmax + 300)));
r = r1 / r2;
tauc = 2π/√(r);
pd = max (dis ((itmax): (itmax + 300)));
mag_tauc =(日志(tauc) + 3.45) / 0.47%系数因地区而异
mag_pd =(0.873 *((日志(pd) + 6.3) / 0.513)) + 4.74%系数因地区而异
7评论
PARVATHY NAIR
PARVATHY NAIR 2023年1月27日
把你的时间,请帮助我。
你可以避免硬件implementaation focud前2 - 3页。
很抱歉打扰你 @Mathieu诺 ,谢谢你的合作

登录置评。

答案(0)

类别

找到更多的在图和网络算法帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!