• 大小: 26KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: Matlab
  • 标签: FECG  胎儿心电  

资源简介

胎儿心电信号的预处理以及胎儿心率的提取算法,基于matlab代码实现

资源截图

代码片段和文件信息

% Mother & Fetus hearbeat detection example - Med2011
% By Igal
%% Init
% clear all; close all;
Fs = 4e3;
Time = 40;
NumSamp = Time * Fs;
load Hd;


%% Mom‘s Heartbeat
% In this example we shall simulate the shapes of the electrocardiogram 
% for both the mother and fetus. The following commands create an 
% electrocardiogram signal that a mother‘s heart might produce assuming 
% a 4000 Hz sampling rate. The heart rate for this signal is approximately 
% 89 beats per minute and the peak voltage of the signal is 3.5 millivolts.
x1 = 3.5*ecg(2700).‘; % gen synth ECG signal
y1 = sgolayfilt(kron(ones(1ceil(NumSamp/2700)+1)x1)021); % repeat for NumSamp length and smooth
n = 1:Time*Fs‘;
del = round(2700*rand(1)); % pick a random offset
mhb = y1(n + del)‘; %construct the ecg signal from some offset
t = 1/Fs:1/Fs:Time‘;
subplot(331); plot(tmhb);
axis([0 2 -4 4]);
grid;
xlabel(‘Time [sec]‘);
ylabel(‘Voltage [mV]‘);
title(‘Maternal Heartbeat Signal‘);

%% Fetus Heartbeat
% The heart of a fetus beats noticeably faster than that of its mother 
% with rates ranging from 120 to 160 beats per minute. The amplitude of the 
% fetal electrocardiogram is also much weaker than that of the maternal 
% electrocardiogram. The following series of commands creates an electrocardiogram 
% signal corresponding to a heart rate of 139 beats per minute and a peak voltage 
% of 0.25 millivolts.
x2 = 0.25*ecg(1725);
y2 = sgolayfilt(kron(ones(1ceil(NumSamp/1725)+1)x2)017);
del = round(1725*rand(1));
fhb = y2(n + del)‘;
subplot(332); plot(tfhb‘m‘);
axis([0 2 -0.5 0.5]);
grid;
xlabel(‘Time [sec]‘);
ylabel(‘Voltage [mV]‘);
title(‘Fetal Heartbeat Signal‘);

%% The measured signal
% The measured fetal electrocardiogram signal from the abdomen of the mother is 
% usually dominated by the maternal heartbeat signal that propagates from the 
% chest cavity to the abdomen. We shall describe this propagation path as a linear 
% FIR filter with 10 randomized coefficients. In addition we shall add a small 
% amount of uncorrelated Gaussian noise to simulate any broadband noise sources 
% within the measurement. Can you determine the fetal heartbeat rate by looking 
% at this measured signal?
Wopt = [0 1.0 -0.5 -0.8 1.0  -0.1 0.2 -0.3 0.6 0.1];
%Wopt = rand(110);
d = filter(Wopt1mhb) + fhb + 0.02*randn(size(mhb));
subplot(333); plot(td‘r‘);
axis([0 2 -4 4]);
%axis tight;
grid;
xlabel(‘Time [sec]‘);
ylabel(‘Voltage [mV]‘);
title(‘Measured Signal‘);

%% Measured Mom‘s heartbeat
% The maternal electrocardiogram signal is obtained from the chest of the mother. 
% The goal of the adaptive noise canceller in this task is to adaptively remove the 
% maternal heartbeat signal from the fetal electrocardiogram signal. The canceller 
% needs a reference signal generated from a maternal electrocardiogram to perform this 
% task. Just like the fetal electrocardiogram signal the maternal electrocardiogram 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       73509  2012-02-26 17:27  FECG_hdl_fix1.mdl
     文件        1583  2012-02-26 17:27  Hd.mat
     文件        1325  2012-02-26 10:34  license.txt
     文件        5854  2012-02-26 17:27  mom_and_fetus.m

评论

共有 条评论