文件

从数据中删除趋势

测量信号可以显示对数据没有内在的整体模式。这些趋势有时可能阻碍数据分析,必须删除。

考虑具有不同趋势的两个心电图(ECG)信号。ECG信号对诸如电源干扰等干扰敏感。加载信号并绘制它们。

加载(全氟(MatlaBroot,'例子''信号''ecgsignals.mat'))t =(1:长度(ECGL))';子图(2,1,1)绘图(T,ECGL),网格标题'具有趋势的ECG信号,ylabel.'电压(MV)'子图(2,1,2)绘图(T,ECGNL),网格XLabel样本,ylabel.'电压(MV)'

第一绘图上的信号显示了线性趋势。第二信号的趋势是非线性的。要消除线性趋势,请使用MATLAB®功能诽谤

dt_ecgl = detrend(ecgl);

为了消除非线性趋势,将低阶多项式适合信号并减去它。在这种情况下,多项式是顺序6.绘制两个新信号。

opol = 6;[p,s,mu] = polyfit(t,Ecgnl,opol);f_y = polyval(p,t,[],mu);dt_ecgnl = ecgnl  -  f_y;子图(2,1,1)绘图(t,dt_ecgl),网格标题'贬低了ECG信号',ylabel.'电压(MV)'子图(2,1,2)绘图(t,dt_ecgnl),网格xlabel样本,ylabel.'电压(MV)'

趋势得到了有效的删除。观察信号如何不再显示基线班次。他们准备进一步处理。

也可以看看

||

相关话题