Heart Sound Segmentation: A Stationary Wavelet Transform Based Approach Author: Nuno Marques Advisors: Rute Almeida Miguel Coimbra
Classifying Heart Sounds PASCAL Challenge The challenge had 2 tasks: Segmentation and Classification and Anomaly Detection This work describes what i did in the first task: Segmentation and Classification
44100 Hz 20 auscultations istethoscope Datasets Digiscope 4000 Hz 80 auscultations Non-controlled environment No expert! Who was auscultated? Controlled environement Done by expert! Auscultation were performed on infants exclusively!
Heart Sounds We want to detect and distinguish these two peaks! (which are the heart sounds!)
How do you detect and distinguish heart sounds?
Heart Sound Segmentation Cardiac Segmentation algorithms can be successfully divided in 4 phases: Preprocessing Segmentation Representation Classification
P Preprocessing
P Preprocessing
R Préprocessamento Representation
R Préprocessamento Representation Segmentação
Préprocessamento Segmentation Segmentação S
Préprocessamento Segmentation Segmentação S
S Préprocessamento Segmentation
S Préprocessamento Segmentation
Préprocessamento Classification Segmentação S1/S2/sistole/diastole?! C
Préprocessamento Classification Segmentação S1 sistole S2 diastole S1 C
P Manual Annotation
P Manual Annotation
Fourier Transform P Mediana 1 Mediana 2...
P Spectral Analysis
Pre-Processing Just downsampled istethoscope! P
R Representation A good cardiac signal representation should have 2 characteristics g 1 e g 2
R g 1. Accentuate the difference between S1/S2 and sistole/diastole sistole diastole S1 S2
R g 2. Accentuate the difference between S1 and S2 S1 S2
Representation Shannon Energy Envelope Shannon Entropy Envelope R Domínio do tempo
R Shannon Energy Envelope
R Shannon Energy/Entropy
Representations Continuous Wavelet Transform Discrete Wavelet Transform Stationary Wavelet Transform S-Transform Empirical Mode Decomposition Hilbert-Huang Transform R Time-Frequency Domain
R Digiscope Results
R istethoscope Results
Segmentation We can divide the Segmentation phase into 2 sub-phases: Peak Detection Boundary Detection S
S Peak Detection
S Boundary Detection
S Convolution
Idea! Use a filter in the SWT that looks like the S1/S2 in order to determine their boundaries! S
Stationary Wavelet Transform g 3 [n] Scale 3 Coeffs g 1 [n] g 2 [n] h 2 [n] h 3 [n] Scale 2 Coeffs x[n] h 1 [n] Scale 1 Coeffs g j [n] 2 g j+1 [n] Daubechies 38 h j [n] 2 h j+1 [n] S
Problem g 3 [n] Scale 3 Coeffs g 2 [n] h 3 [n] g 1 [n] h 2 [n] Scale 2 Coeffs x[n] g j [n] h j [n] 2 2 h 1 [n] g j+1 [n] h j+1 [n] Scale 1 Coeffs Stationary Wavelet Transform S
Problema... x[n] g 1 [n] g 9 [n] ( ) h 10 [n] S Signal becomes completely deformed!
Solution Lets use the Convolution s Associative property!... x[n] g 1 [n] g 9 [n] h 10 [n] ( ) =... x[n] g 1 [n] g 9 [n] h 10 [n] ( ) S
Solution x[n]... g 1 [n] g 9 [n] h 10 [n] ( ) S
Signal Transformation: Digiscope x[n] Shannon energy (x[n]) S
Signal Transformation: istethoscope x[n] Shannon entropy (x[n]) S
S Shannon Energy
S Wavelet Coefficients
S Inflection Points
Segment Descriptors - Maximum S
Segment Descriptors - S1/S2 - Sistole/Diastole S
S
S PASCAL Challenge Results
S Determining Boundaries
Determining Boundaries Variation between Segments Longest Increasing/Decreasing Sub-sequence S
Variation Between Segments(a 1 ) Maximum length of segment Minimum length Of segment S
Longest Increasing/Decreasing Sub-sequence(a 2 ) Longest Increasing Sub-Sequence Longest Decreasing Sub-Sequence S
Baseline Method(a 3 ) Maior sub-sequência crescente Maior sub-sequência decrescente S
Results Média +- desvio padrão (ms) S
Classification
Préprocessamento Classification Segmentação S1/S2/sistole/diastole?!
Individual descriptor - Máximo This segment s descriptor C
Expanded Descriptor - Máximo This segment s descriptor C
Combination of descriptors: - Máximo Individual This segment s descriptor C
Combination of descriptors: - Máximo Expanded This segment s descriptor C
Results: Combination of Descriptors C
Conclusion
Conclusion Spectral Analysis Evaluation of different types of Representations New peak detection algorithm 2 new boundary detection algorithms Article publication in Computing in Cardiology 2013
Thank you!