Transcript Document
생체신호 및 처리 실습 2016. 05. 25 Chang-Hee Han (PhD student) Contents I. Electrocardiogram (ECG) ① What is the ECG? ② Why is signal processing important to obtain normal ECG? II. MATLAB practice Electrocardiogram ECG • 정의 – 심장 운동 시 발생하는 전기적 신호를 전극을 사용하여 간접적으로 그래프로 나타낸 것 • 역사 – 1903년 네덜란드의 ‘빌렘 아인트호벤’이 처음으로 고안함 – 1970~1980년대에 활발히 연구되었으며, 현재 ECG 기술은 완성형에 가까움 – 현재 E-Health / U-Health로 불리는 원격 모니터링/진단 시스템이 주목을 받으며, 최근 들어서 ECG가 다시 각광을 받고 있음 COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 1 ECG COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 2 ECG 심방 수축 심실 수축 COmputational NeuroEngineering (CoNE) Laboratory 심실 이완 Chang-Hee Han 3 ECG COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 4 ECG ECG는 심장에서 발생하는 전기적 신호를 간접적으로 측정함!! COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 5 ECG 고주파 성분 (전원 주파수 60Hz) 저주파 성분 (움직임, 호흡) 기타 잡파 COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 6 ECG ? COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 7 MATLAB practice MATLAB practice Mean RR interval / mean BPM (beat per min) COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 8 MATLAB practice Raw ECG Signal Low-pass Filter High-pass Filter (IIR with 3dB cutoff ~11Hz) (IIR with 3dB cutoff ~5Hz) Discrete derivative d dt Squaring x(t ) 2 Integration tu tu Decision COmputational NeuroEngineering (CoNE) Laboratory Adjusting Threshold Peak Detection Chang-Hee Han 9 MATLAB practice • Low-pass filter는 고주파 성분을 없애기 위해서 사용된다. (전원 노이즈 (60 Hz)나 muscle artifact 등…) y[n] 2 y[n 1] y[n 2] x[n] 2 x[n 6] x[n 12] • (1 z 1 ) 2 High-pass filter는 저주파 성분을 없애기 위해서 사용된다. (motion artifact, 호흡 등…) 1 y[n] ( 2 x[n] x[n 1] x[n 3] 2 x[n 4]) 8 • H (z) (1 z 6 ) 2 H (z) z 16 1 z 32 1 z 1 MATLAB에서는 다음과 같은 단계로 필터링을 수행한다. 필터 계수 입력 (bx, ay) filter(bx, ay, himpulse) COmputational NeuroEngineering (CoNE) Laboratory 신호와 filter 결과를 convolution Chang-Hee Han 10 MATLAB practice • Discrete derivative는 신호의 미분을 이산적으로 계산해줌으로써 신호의 slope정보를 제공한다. QRS신호의 급격한 기울기 정보를 얻는데 사용된 다. 1 y[n] ( 2 x[n] x[n 1] x[n 3] 2 x[n 4]) 8 • Squaring은 음의 값을 모두 양수화를 시켜준다. 해당 알고리즘에서는 신 호의 증폭과 고주파 성분을 강조하는데 쓰인다. y[n] ( x[n]) 2 • Integration(Moving-Window)는 지정된 샘플 길이 사이의 평균을 계산함 으로써 일종의 smoothing 작용을 한다. 해당 알고리즘에서는 R피크를 검 출하기 위하여 계산한 slope정보를 보충하기 위해서 쓰인다. y[n] 1 ( x[n] x[n 1] x[n 2] x[n 29 ]) 30 COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 15 11 신호 불러오기 및 그려보기 COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 12 DC 컴퍼넌트 제거 및 정규화된 ECG 신호 COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 13 Low-pass Filtering COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 14 High-pass Filtering COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 15 Derivative Filter COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 16 Squaring COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 17 Moving Window Integration 적절한 threshold를 설정하면 QRS complex가 있는 구간이 선택된다. COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 18 Thresholding COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 19 Find QRS peaks Left(1) Left(2) Left(3) Diff(함수) = x(i+1) – x(i) Right(1) Right(2) COmputational NeuroEngineering (CoNE) Laboratory Left(4) Right(3) Right(4) Chang-Hee Han 20 Find QRS peaks Left(i) R (Max) Q (Min) S (Min) Right(i) COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 21 Show found peaks COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 22 RR interval / bpm Mean RR = 813ms Bpm = 73 bpm COmputational NeuroEngineering (CoNE) Laboratory Chang-Hee Han 23