Computational optimization of wave detection algorithms for the electrocardiogram
Niemi, Topi (2024)
Niemi, Topi
2024
Teknis-luonnontieteellinen DI-ohjelma - Master's Programme in Science and Engineering
Tekniikan ja luonnontieteiden tiedekunta - Faculty of Engineering and Natural Sciences
This publication is copyrighted. Only for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-05-28
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202405236244
https://urn.fi/URN:NBN:fi:tuni-202405236244
Tiivistelmä
According to the World Health Organization (WHO), cardiovascular diseases are the leading cause of death worldwide. Often the first occurence of such a disease is a sudden cardiac arrest. In this challenging environment, early detection of cardiovascular abnormalities is critical for effective preventive care. In addition to clinical aspects, the measurement of physiological signals is increasing in the wellness market. For example, sports enthusiasts wish to improve their performance with wearable devices, such as watches and belts.
The heart can be studied by monitoring its electrical activity in the form of electrocardiogram (ECG), which has a crucial role in offering insights on the condition of the heart. In order for this data to reach the perceiver, be it a physician or an athlete, robust detection algorithms capable of discerning subtle waveforms amidst noise and artifacts are required.
This Master's Thesis covers different signal processing methods often applied in ECG noise removal and waveform detection and introduces an algorithm that utilizes these methods in order to calculate the characteristic peaks of the ECG signal. A simple Butterworth filtering approach is proposed as an alternative to an empirical mode decomposition approach and the algorithm's computational time is decreased by a factor of 1360 while simultaneously reducing the RAM consumption by a factor of 18. Median adaptive thresholding is also proposed as a more robust method for peak detection, compared to the maximum adaptive thresholding. We achieve a recall score of 0.9965, precision score of 0.9951 and a F1-score 0.9958 for MIT-BIH arrhythmia database, making our algorithm comparable with other approaches in this field.
We apply the results of our algorithm in sleep analysis, where we use polysomnography data from National Sleep Research Resource Sleep Heart Health Study 1. The R peaks determined by our algorithm are converted into subsequent RR intervals from which heart rate (HR) is calculated. Dynamic detrended fluctuation analysis (DDFA) is performed on the heart rate for different times and scales in order to achieve mean heart rates and standard deviations, which we refer to as features.
Every 30 s timestamp has a sleep stage associated with it and we utilize simple machine learning classification in order to predict the sleep stage based on DDFA features. The sleep stages are simplified into a 3-class problem of wake, rapid-eye-movement (REM) sleep and non-REM sleep. Random forest, nearest neighbour and support vector machines are used as classification methods, of only which the latter gives promising results. A deep learning approach with convolution neural networks is proposed as a future consideration for improvement. Maailman terveysjärjestön (WHO) mukaan sydän- ja verisuonitaudit ovat maailman yleisin kuolinsyy. Usein tällaisen taudin ensimmäinen ilmentymä on äkillinen sydänpysähdys. Tällöin sydämeen ja sen toimintaan liittyvien poikkeavuuksien varhainen löytäminen on tehokkaan ennaltaehkäisevän hoidon kannalta tärkeää. Kliinisen näkökulman lisäksi fysiologisten signaalien tutkimus on yhä kasvava ala hyvinvointimarkkinoilla, kun urheiluharrastajat haluavat tehostaa suorituksiaan reaaliajassa käyttämällä päälleen puettavia laitteita kuten älykelloja tai sykevöitä.
Sydäntä voidaan tutkia seuraamalla sen sähköistä toimintaa sydänsähkökäyrän (EKG) avulla, joka toimii keskeisenä välineenä sydämen tilan ymmärtämisessä tänäkin päivänä. Jotta tämä data tavoittaisi havaitsijan, olipa hän lääkäri tai urheilija, tarvitaan vahvoja tunnistusalgoritmeja, jotka pystyvät erottamaan hienovaraiset aaltomuodot kohinasta ja häiriöistä.
Tässä diplomityössä tarkastellaan erilaisia signaalinkäsittelymenetelmiä, joita usein hyödynnetään EKG-kohinan poistamisessa ja aaltomuotojen tunnistamisessa, ja esitellään algoritmi, joka hyödyntää näitä menetelmiä laskemaan EKG-signaalin karakterisia huippuja. Työssä ehdotetaan yksinkertaista Butterworth-suodinta vaihtoehtona empiiriselle moodinpurulle. Näin voidaan vähentää algoritmin laskenta-aikaa 1360-kertaisesti sekä samanaikaisesti vähentämään RAM-kulutusta 18-kertaisesti. Työssä ehdotetaan myös mediaaniadaptiivista kynnysarvoa virhekestävämpänä ratkaisuna huippujen tunnistamiselle verrattuna maksimiadaptiiviseen kynnysarvoon. Saavutamme MIT-BIH-rytmihäiriötietokannassa herkkyydeksi 0.9965, tarkkuudeksi 0.9951 ja F1-arvoksi 0.9958, mikä tekee algoritmistamme vertailukelpoisen muiden lähestymistapojen kanssa tällä alalla.
Sovellamme algoritmimme tuloksia unen analysoinnissa, missä käytämme unipolygrafiamittauksia National Sleep Research Resource Sleep Heart Health Study 1 tietokannasta. Algoritmimme määrittämät R-huiput muutettiin peräkkäisiksi RR-väleiksi, joista lasketaan syke. Sykkeelle suoritetaan dynaaminen trendit poistava fluktuaatioanalyysi (DDFA) eri aika- ja mittaskaaloilla ominaisuuksien, eli keskisykkeiden ja keskihajontojen, saavuttamiseksi.
Jokaiselle 30 s aikasegmentille on liitetty univaihe, ja hyödynnämme yksinkertaista koneoppimisluokittelua univaiheen ennustamiseksi DDFA-ominaisuuksien perusteella. Univaiheet yksinkertaistetaan kolmeksi luokaksi: valveillaolo, REM-univaihe ja non-REM-univaihe. Luokittelumenetelminä käytetään satunnaismetsää (random forest), lähintä naapuria (nearest neighbour) ja tukivektoreita (support vector machine), joista vain jälkimmäinen antaa lupaavia tuloksia. Syväoppimiseen perustuvaa lähestymistapaa konvoluutioneuroverkoilla esitetään kehitysehdotukseksi.
The heart can be studied by monitoring its electrical activity in the form of electrocardiogram (ECG), which has a crucial role in offering insights on the condition of the heart. In order for this data to reach the perceiver, be it a physician or an athlete, robust detection algorithms capable of discerning subtle waveforms amidst noise and artifacts are required.
This Master's Thesis covers different signal processing methods often applied in ECG noise removal and waveform detection and introduces an algorithm that utilizes these methods in order to calculate the characteristic peaks of the ECG signal. A simple Butterworth filtering approach is proposed as an alternative to an empirical mode decomposition approach and the algorithm's computational time is decreased by a factor of 1360 while simultaneously reducing the RAM consumption by a factor of 18. Median adaptive thresholding is also proposed as a more robust method for peak detection, compared to the maximum adaptive thresholding. We achieve a recall score of 0.9965, precision score of 0.9951 and a F1-score 0.9958 for MIT-BIH arrhythmia database, making our algorithm comparable with other approaches in this field.
We apply the results of our algorithm in sleep analysis, where we use polysomnography data from National Sleep Research Resource Sleep Heart Health Study 1. The R peaks determined by our algorithm are converted into subsequent RR intervals from which heart rate (HR) is calculated. Dynamic detrended fluctuation analysis (DDFA) is performed on the heart rate for different times and scales in order to achieve mean heart rates and standard deviations, which we refer to as features.
Every 30 s timestamp has a sleep stage associated with it and we utilize simple machine learning classification in order to predict the sleep stage based on DDFA features. The sleep stages are simplified into a 3-class problem of wake, rapid-eye-movement (REM) sleep and non-REM sleep. Random forest, nearest neighbour and support vector machines are used as classification methods, of only which the latter gives promising results. A deep learning approach with convolution neural networks is proposed as a future consideration for improvement.
Sydäntä voidaan tutkia seuraamalla sen sähköistä toimintaa sydänsähkökäyrän (EKG) avulla, joka toimii keskeisenä välineenä sydämen tilan ymmärtämisessä tänäkin päivänä. Jotta tämä data tavoittaisi havaitsijan, olipa hän lääkäri tai urheilija, tarvitaan vahvoja tunnistusalgoritmeja, jotka pystyvät erottamaan hienovaraiset aaltomuodot kohinasta ja häiriöistä.
Tässä diplomityössä tarkastellaan erilaisia signaalinkäsittelymenetelmiä, joita usein hyödynnetään EKG-kohinan poistamisessa ja aaltomuotojen tunnistamisessa, ja esitellään algoritmi, joka hyödyntää näitä menetelmiä laskemaan EKG-signaalin karakterisia huippuja. Työssä ehdotetaan yksinkertaista Butterworth-suodinta vaihtoehtona empiiriselle moodinpurulle. Näin voidaan vähentää algoritmin laskenta-aikaa 1360-kertaisesti sekä samanaikaisesti vähentämään RAM-kulutusta 18-kertaisesti. Työssä ehdotetaan myös mediaaniadaptiivista kynnysarvoa virhekestävämpänä ratkaisuna huippujen tunnistamiselle verrattuna maksimiadaptiiviseen kynnysarvoon. Saavutamme MIT-BIH-rytmihäiriötietokannassa herkkyydeksi 0.9965, tarkkuudeksi 0.9951 ja F1-arvoksi 0.9958, mikä tekee algoritmistamme vertailukelpoisen muiden lähestymistapojen kanssa tällä alalla.
Sovellamme algoritmimme tuloksia unen analysoinnissa, missä käytämme unipolygrafiamittauksia National Sleep Research Resource Sleep Heart Health Study 1 tietokannasta. Algoritmimme määrittämät R-huiput muutettiin peräkkäisiksi RR-väleiksi, joista lasketaan syke. Sykkeelle suoritetaan dynaaminen trendit poistava fluktuaatioanalyysi (DDFA) eri aika- ja mittaskaaloilla ominaisuuksien, eli keskisykkeiden ja keskihajontojen, saavuttamiseksi.
Jokaiselle 30 s aikasegmentille on liitetty univaihe, ja hyödynnämme yksinkertaista koneoppimisluokittelua univaiheen ennustamiseksi DDFA-ominaisuuksien perusteella. Univaiheet yksinkertaistetaan kolmeksi luokaksi: valveillaolo, REM-univaihe ja non-REM-univaihe. Luokittelumenetelminä käytetään satunnaismetsää (random forest), lähintä naapuria (nearest neighbour) ja tukivektoreita (support vector machine), joista vain jälkimmäinen antaa lupaavia tuloksia. Syväoppimiseen perustuvaa lähestymistapaa konvoluutioneuroverkoilla esitetään kehitysehdotukseksi.