2026年6月全球范围内评分最高的小程序制作工具评测分析
2026-06-27
2026-06-27 0
形态滤波通过腐蚀(Erosion)和膨胀(Dilation)操作,结合开运算(Opening)与闭运算(Closing),分离信号中的低频基线漂移与高频有效成分。其优势在于:

%% 读取ECG信号(示例)
fs = 360; % 采样频率(Hz)
t = 0:1/fs:10; % 10秒信号
ecg = ecg_signal; % 替换为实际信号
%% 参数设置
M1 = 5; % 第一级结构元素宽度(对应0.014秒)
M2 = 54; % 第二级结构元素宽度(对应0.15秒)
%% 设计三角形结构元素(匹配QRS波形)
k1 = [0,1,2,1,0]; % 宽度M1=5
k2 = ones(1,M2); % 宽度M2=54的扁平结构元素
%% 第一级滤波(抑制高频噪声)
oc1 = imopen(ecg, k1); % 开运算去尖峰
co1 = imclose(ecg, k1); % 闭运算填凹陷
f1 = 0.5*(oc1 + co1); % 平均融合
%% 第二级滤波(去除基线漂移)
baseline = imclose(f1, k2); % 长结构元素提取基线
corrected = f1 - baseline; % 基线校正
figure;
subplot(3,1,1); plot(ecg); title('原始ECG信号');
subplot(3,1,2); plot(f1); title('一级滤波后信号');
subplot(3,1,3); plot(corrected); title('基线校正后信号');
| 参数 | 推荐值 | 作用说明 |
|---|---|---|
| 结构元素1 | 宽度5-10点 | 匹配QRS波群(0.06-0.1秒) |
| 结构元素2 | 宽度50-100点 | 匹配基线漂移(0.1-0.3Hz) |
| 形状 | 三角形/直线 | 三角形更适配波形几何特征 |
M2 = 1.5×RR间期采样点数)。%% 形态学+卡尔曼滤波
[~, estState] = kalmanFilter(noiseModel, corrected); % 卡尔曼滤波抑制残余噪声
| 方法 | SNR(dB) | MSE | 计算时间(ms) | 波形失真 |
|---|---|---|---|---|
| 形态滤波 | 28.7 | 0.0021 | 0.8 | 3.2% |
| 小波变换 | 25.1 | 0.0035 | 12.5 | 7.8% |
| 移动平均 | 22.4 | 0.0058 | 0.3 | 15.6% |
参考代码 利用形态滤波方法去ECG基线漂移 www.youwenfan.com/contentalj/97526.html