Pengolahan Sinyal Biomedis
Achmad Rizal
Biomedical Signal Processing & Instrumentation RG (BioSPIN RG)
School of Electrical Engineering, Telkom University
Short Bio
Outline
• Teori Sinyal Biomedis
• Teknik Dasar Pengolahan Sinyal Biomedis
• Pengolahan Sinyal Biomedis pada Domain Waktu
• Pengolahan Sinyal pada Domain Frekuensi dan Waktu Frekuensi
• Pengolahan Sinyal pada Domain Wavelet
Pendahuluan
• Sinyal Biomedis sinyal yang dihasilkan oleh proses fisiologi dalam tubuh manusi
• Sinyal biomedis Informasi kesehatan
• Sifat dasar ampitudo rendah, frekuensi rendah, stokasticquasi periodic
• Pengembangan metode analisis berbasis computer metode yang tepat
• Perlu pemahaman karaktistik sinyal dan system fisiologi terkait
Biomedical signal classification
On the basis of
– signal characteristics
technical point of view – signal source
from where and how the signal is originated and measured – biomedical application
cardiology, neurophysiology, monitoring, diagnosis,…
Classification may be helpful in the selection of processing methods...
Biomedical signal classification
Biomedical signal classification
Classification by source
• Bioelectric signals
• Biomagnetic signals
• Bioacoustic signals
• Biomechanical signals
• Biochemical signals
• Bioimpedance signals
• Biooptical signals
Biomedical Signal Examples
Measurement Range Frequency, Hz Method
Blood flow 1 to 300 mL/s 0 to 20 Electromagnetic or ultrasonic Blood pressure 0 to 400 mmHg 0 to 50 Cuff or strain gage
Cardiac output 4 to 25 L/min 0 to 20 Fick, dye dilution Electrocardiography 0.5 to 4 mV 0.05 to 150 Skin electrodes Electroencephalography 5 to 300 V 0.5 to 150 Scalp electrodes Electromyography 0.1 to 5 mV 0 to 10000 Needle electrodes
Electroretinography 0 to 900 V 0 to 50 Contact lens electrodes
pH 3 to 13 pH units 0 to 1 pH electrode
pCO2 40 to 100 mmHg 0 to 2 pCO2 electrode
pO2 30 to 100 mmHg 0 to 2 pO2 electrode
Pneumotachography 0 to 600 L/min 0 to 40 Pneumotachometer Respiratory rate 2 to 50
breaths/min 0.1 to 10 Impedance
Arterial Blood Pressure EEG
Biomedical Signal Examples
:Biomedical signal processing application domains
• Information gathering
– measurement of phenomena to understand the system
• Diagnosis
– detection of malfunction, pathology, or abnormality
• Monitoring
– to obtain continuous or periodic information about the system
• Therapy and control
– modify the behaviour of the system and ensure the result
• Evaluation
– objective analysis: proof of performance, quality control, effect of treatment
Problems in biomedical signal processing
• Accessibility
– Patient safety, preference for noninvasiveness – Indirect measurements (variables of interest
are not accessible)
• Variance
– Inter-individual, intra-individual
• Inter-relationships and interactions among physiological system
– Subsystem of interest may not be isolated
• Acquisition interference
– Instrumentation and procedures modify the system or its state
Problems in biomedical signal processing
• Artefacts and interference
– Interference from other physiological systems (e.g. muscle artifacts in EEG recordings) – Low-level signals (e.g. microvolts in EEG) require very sensitive
amplifiers; they are easily sensitive to interference, too!
– Limited possibilities for shielding or other protection
• Nonlinearity and obscurity of the system under study
– basically all biological systems exhibit nonlinearities while most of the methods are based on the assumption of linearity → approximation
– exact structures and true function of many physiological systems are often not known
Pokok Bahasan 2
Pengolahan Sinyal Biomedis pada Domain Waktu
Sinyal Biomedis pada Domain Waktu
• Sifat sinyal secara alami f(t)
• Beberapa proses yang dilakukan:
• Proses Normalisasi: DC removal, normlaisasi amplitudo
Normalisasi Filtering Ekstraksi
ciri Klasifikasi
Sinyal Biomedis pada Domain Waktu
Filtering = removing unwanted frequency component (noise) from the signal
• Linear Filter : LPF, HPF, BPF, BSF, notch filter
• FFT Filter : use FFT to remove signal IFFT
• Non Linear Filter phase-locked loops, detectors
• Mixers, median filters, ranklets
• Adaptive filter RLS, LMS, etc
Perancangan filter
• Parameter perancangan filter
• Frekuensi sampling
• jenis filter (LPF, BPF, dsb), (Butterworth, Chebychef atau Elliptic)
• Frekuensi yang akan dihilangkan (frekuensi stop band, frekuensi passband)
• Ripple pada pass-band dan ripple pada stopband
• Keluaran perancangan filter
• orde filter
• koefisien filter
• Respon frekuensi
Perancangan filter
Example 1:
% For data sampled at 1000 Hz, design a lowpass filter with less than
% 3 dB of ripple in the passband defined from 0 to 40 Hz and at least
% 60 dB of ripple in the stopband defined from 150 Hz to the Nyquist
% frequency (500 Hz):
Wp = 40/500; Ws = 70/500;
Rp = 3; Rs = 60;
[n,Wp] = cheb1ord(Wp,Ws,Rp,Rs) % Gives minimum order of filter [b,a] = cheby1(n,Rp,Wp); % Chebyshev Type I filter
freqz(b,a,512,1000); % Plots the frequency response
Perancangan filter
Example 2:
% Design a 6th-order Elliptic band-pass filter which passes
% frequencies between 0.2 and 0.5, and with 5 dB of ripple in the
% passband, and 80 dB of attenuation in the stopband
[b,a]=ellip(6,5,80,[.2,.5]); % Bandpass digital filter design h = fvtool(b,a); % Visualize filter
Ekstraksi ciri
• Ciri statistic : max, min, mean, variance, entropy, skewness, kurtosis
HJORTH DESCRIPTOR
• Hjorth Descriptor (Hjorth 1970) Variasi sinyal orde 1
Variasi sinyal Orde 2
Pengukuran Entropy
• Shannon Entropy
• Spectral Entropy
• Renyi Entropy
• Tsallis Entropy
Pengukuran Entropy
• Wavelet Entropy
• Approximate entropy
• Sample entropy
Ekstraksi ciri
Time domain feature
• Zero-crossing
• Root mean square
• Log detector
• Mean Absolute value (MAV)
𝑍𝐶 =
𝑛=1 𝑁
𝑠𝑖𝑔𝑛 𝑥 × 𝑥𝑛+1 ∩ 𝑥 − 𝑥𝑛+1 ≥ 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑
𝑠𝑔𝑛 = 1, 𝑖𝑓 𝑥 ≥ 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 0, 𝑜𝑡ℎ𝑒𝑟 𝑤𝑖𝑠𝑒
𝑅𝑀𝑆 = 1 𝑁𝑛=1
𝑁
𝑥𝑛2
𝐿𝑂𝐺 = 𝒆𝑵1 𝑛=1𝑁 log 𝑥𝑛
1 𝑁
Ekstraksi ciri
Time domain feature
• Waveform length (Wave)
• Standard deviation (STD)
• Slope-sign change (SSC)
𝑉𝐴𝑅 = 1 𝑁 − 1
𝑛=1 𝑁
𝑥𝑛2 𝑊𝐿 =
𝑛=1 𝑁
𝑥𝑛+1 − 𝑥𝑛
𝑆𝑇𝐷 = 𝑉𝐴𝑅
𝑁
1, 𝑖𝑓 𝑥 ≥ 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑
Contoh Aplikasi
• ECG signal classification using Hjorth Descriptor
A. Rizal and S. Hadiyoso, “ECG signal classification using Hjorth Descriptor,” in 2015 International Conference on Automation, Cognitive Science, Optics, Micro Electro-Mechanical System, and Information Technology
Contoh Aplikasi
• T. Yingthawornsuk, “Classification of ECG Signals using Modified Hjorth Descriptors,” in 2018 14th International Conference on
Signal-Image Technology & Internet-Based Systems (SITIS), 2018, pp. 345–350.
• S.-H. Oh, Y.-R. Lee, and H.-N. Kim, “A Novel EEG Feature Extraction Method Using Hjorth Parameter,” Int. J. Electron. Electr. Eng., pp.
106–110, 2014.
• A. Rizal, R. Hidayat, and H. A. Nugroho, “Entropy Measurement as Features Extraction in Automatic Lung Sound Classification,” in the 3rd International Conference on Control, Electronics, Renewable Energy, and Communications 2017 (ICCEREC 2017), 2017.
Pokok Bahasan 3
Pengolahan Sinyal Biomedis pada Domain
Frekuensi dan Time Frekuensi Domain
Mathematical Transformation
• Why
• To obtain a further information from the signal that is not readily available in the raw signal.
• Raw Signal
• Normally the time-domain signal
• Processed Signal
• A signal that has been "transformed" by any of the available mathematical transformations
• Fourier Transformation
• The most popular transformation
Transformasi Fourier
• One way to find the frequency content
• Tells how much of each frequency exists in a signal
N Nkn
n
W n
x k
X
1
0
1 1
N Nkn
k
W k
N X n
x
1
0
1 1 1
j N
N e
w
2
f x t e dt
X 2jft
t X f e df x 2jft
Sinyal EKG
Sinyal Suara Paru
Sinyal suara paru
• Stridor & specturm
Fitur pada domain frekuensi
• Peak frequency
• Quantile frequency
• Mean frequency
• Median frequency
• Maximum to Minimum Drop in Power Density Ratio
• Signal to noise ratio
• Power Spectrum deformation
• Signal to Motion artifact ratio etc
Praktek Matlab
t = 0:.001:.25;
x = sin(2*pi*50*t) + sin(2*pi*120*t); plot (t,x);
%tambah random sinyal dengan standard deviasi 2 y = x + 2*randn(size(t));
plot(y(1:50))
title('Noisy time domain signal')
%analisis komponen frekuensi Y = fft(y,256);
Pyy = Y.*conj(Y)/256;
f = 1000/256*(0:127);
figure;
plot(f,Pyy(1:128))
• %zoom hanya sampai 200Hz plot(f(1:50),Pyy(1:50))
title('Power spectral density') xlabel('Frequency (Hz)')
SFORT TIME FOURIER TRANSFORM (STFT)
• Dennis Gabor (1946) Used STFT
• To analyze only a small section of the signal at a time -- a technique called Windowing the Signal.
• The Segment of Signal is Assumed Stationary
• A 3D transform
t f x t t t e j ftdt
t
* 2
X ,
STFT
t : the window function
A function of time and frequency
DRAWBACKS OF STFT
• Unchanged Window
• Dilemma of Resolution
• Narrow window -> poor frequency resolution
• Wide window -> poor time resolution
• Heisenberg Uncertainty Principle
• Cannot know what frequency exists at what time intervals
Via Narrow Window Via Wide Window
Stockwell Transform
• S-Transform : special case of STFT
• General equation :
• Window size depend on frequency
Cohen’s Class Distribution
• General equation:
• g(v,f) = 2D filter to reduce cross-product
• Wigner-Ville distribution (WVD), g(v,f) = 1
• Drawback of WVD cross-product
• Other Cohen’s Class Dist : ZAM, Choi-William, Rihazcek, etc
Contoh aplikasi
• Classification of Pulmonary Crackle and Normal Lung Sound using
Spectrogram and Support Vector Machine (ICEBEHI 2021, accepted)
• Segmentasi : 25-20/250-200/500-475
• FFT : 256, 512
Analisis Wavelet
PRINCIPLES OF WAELET TRANSFORM
• Split Up the Signal into a Bunch of Signals
• Representing the Same Signal, but all Corresponding to Different Frequency Bands
• Only Providing What Frequency Bands Exists at What Time Intervals
DEFINITION OF CONTINUOUS WAVELET TRANSFORM
• Wavelet
• Small wave
• Means the window function is of finite length
• Mother Wavelet
• A prototype for generating the other window functions
• All the used windows are its dilated or compressed and shifted versions
dt
s t t
s x s
s x
x
1 *
, ,
CWT
Translation
(The location of the window)
Scale
Mother Wavelet
RESOLUTION OF TIME & FREQUENCY
Frequenc y
Better time resolution;
Poor
frequency resolution
Better
frequency resolution;
COMPARSION OF TRANSFORMATIONS
SUBBABD CODING ALGORITHM
• Halves the Time Resolution
• Only half number of samples resulted
• Doubles the Frequency Resolution
• The spanned frequency band halved
0-1000 Hz
D2: 250-500 Hz
D3: 125-250 Hz Filter 1
Filter 2
Filter 3
D1: 500-1000 Hz
A3: 0-125 Hz A1
A2
X[n]
512
256
128
64 128
256
S S
A1
A2 D2
A D
D1
Multiskala
Proses Multiskala
• Proses mendekomposisi menjadi beberapa sinyal pada skala/level/subband yang berebda
• Coarse grained procedure (Costa et.al 2002)
Hasil coarse-grained procedure
Proses Multiskala
Proses multiskala yang lain
• Dekomposisi wavelet DWT, WPD subband
• Empirical mode decomposition IMFs (Huang et al., 1998)
• Variasi lain dari EMD EEMD, VMD etc
• Multidistance signal level difference (MSLD) dan variasi nya (Rizal et al, 2017, Rizal et al, 2019 )
EMD
• Empirical Mode Decomposition (EMD) (Huang, 1998)
membentuk deretan intrinsic mode function (IMF) dari sinyal Langkah-langkah
1. Hitung upper dan lower envelope sinyal, hitung rata-ratanya, 2. Jika h1(t) bukan IMF, ulangi langkah 1 dan hitung
EMD
3. Jika terjadi IMF, m1k 0 maka h1k(t) = c1(t) atau IMF pertama 4. Akan didapat res1(t)= x(t)-c1(t). Selanjutnya res1(t) akan menjadi
masukan untuk mencari IMF selanjutnya, sampai envelope monotonik
5. Sinyal x(t) dapat dinyatakan sebagai:
Dengan c1(t)+…+ck(t) adalah IMF
Hasil Empirical Mode Decomposition
Suara Bronchial 5 IMF
Strategi pengukuran kompleksitas sinyal multiskala
Sinyal didekomposisi Sinyal tetap
Contoh Penerapan Strategi 1
Rizal, Hadiyoso, Wijayanto, 2020
Rizal, A., Hidayat, R., & Nugroho, H. A. (2019b). Lung Sound Classification Using Hjorth Descriptor Measurement
Contoh Penerapan Strategi 2
Rizal, A., Estananto, E., & Atmaja, R. D. (2019). Epileptic EEG Signal Classification Using Multiresolution Higuchi Fractal Dimension. International Journal of Engineering Research and Technology, 12(4), 508–511.
Rizal, A, Hidayat, R., & Nugroho, H. A. (2018). Multilevel wavelet packet entropy: A new strategy for lung sound feature extraction based on wavelet entropy. In Proceeding of 2017 International
Beberapa Metode Multiscale dan
Pengukuran Kompleksitas Sinyal
MSLD dan multiskala lainnya
GLDM
Sinyal 2D
H(g|θ) = |x(i±d,j) – x(i,j±e)| H(g|0) = |x(i) – x(i+D)|
Modified GLDM
Sinyal 1D, θ = 0
Multidistance Signal
level difference (MSLD-A)
𝑦𝐷 𝑖 = 𝑥 𝑖 − 𝑥(𝑖 + 𝐷 ,) 𝐷 = 1, 2, … , 𝐾
Sejumlah K sinyal baru hasil nilai
absolut selisih sampel sinyal pada jarak D
MSLD-B
𝑦𝐷 𝑖 = 𝑥 𝑖 − 𝑥(𝑖 + 𝐷 ,) 𝐷 = 1, 2, … , 𝐾
Sejumlah K sinyal baru hasil selisih sampel sinyal pada jarak D
MStepLD
𝑦𝐷 𝑖 = |𝑦𝐷−1 𝑖 − 𝑦𝐷−1 𝑖 + 𝐷 | 𝑦1 𝑖 = 𝑥 𝑖 − 𝑥(𝑖 + 1)
𝐷 = 1, 2, … , 𝐾
MSDownLD
𝑦𝐷 𝑖 = | 𝑥 𝑖 − 𝑥 𝑖 + 𝐷 | ↓ 𝐷, 𝐷 = 1, 2, … , 𝐾
Proses downsampling untuk meniru
Variansi MSLD dan Variansinya
Multilevel signal complexity
• E1 = energy of D1
• E2 = energy of D2
• E3 = energy of D3
• E4 = energy of A3
• Etot = ∑Ei i = 1,…,4
Level 1
Level 2
Level 3 A3
Original Signal
D1
A2 D2
D3 A1
Wavelet Entropy (Rosso et al., 2001): contoh perhitungan WE level 3
𝑀𝑊𝐸
𝑁= 𝑊𝐸
1, 𝑊𝐸
2, … , 𝑊𝐸
𝑁Multilevel wavelet entropy :
Multilevel signal complexity
𝑀𝑊𝑃𝐸𝑁 = 𝑊𝑃𝐸1, 𝑊𝑃𝐸2, … , 𝑊𝑃𝐸𝑁
Wavelet entropy DWT
Wavelet packet entropy WPD
Multilevel packet wavelet entropy :
Rizal, Hidayat, Nugroho, 2017
Hasil MWE dan MWPE untuk Suara Paru
Multilevel wavelet entropy dan multilevel wavelet packet entropy
Aplikasi untuk sinyal lainnya
• PVC pada sinyal ECG MWE
A. Rizal, R. Riandini, and T. Tresnawati, “Premature Ventricular Contraction Classification based on ECG Signal using Multilevel Wavelet entropy,” in The 2018 International Conference on Enhanced Computer Research, Engineering, and Advanced Multimedia, 2018, pp. 1–5.
Aplikasi untuk sinyal lainnya
Epileptic EEG EMD+Entropy
Kemungkinan Pengembangan
• Penentuan skala dan subband wavelet menggunakan metode yang lebih baik
• Reduksi ciri dilakukan menggunakan FSS
• Kolaborasi ML yang lebih maju untuk klasifikasi
• Modifikasi pengolahan citra untuk pengolahan sinyal biologi
• Pemanfaatan untuk kasus yang lain (bearing fault, machine diagnostic system, speech)
Penutup
• Pengolahan sinyal digital memerlukan pemahaman karakteristik dari sinyal
• Signal complexity salah satu cara memahami sifat sinyal biomedis
• Sifat multiskala dari sinyal biomedis menarik untuk di eksploitasi lebih lanjut
• Gabungan pengolahan sinyal dan AI akan powerful dalam memecahkan masalah klasifikasi sinyal biomedis
•
WPD orde N
• T = wpdec(x,3,'db2')
Wavelet packet decomposition
Sinyal Suara Paru
Sinyal suara paru
• Stridor & specturm