Filtrace EKG signálu a detekce QRS komplexu

Na všechny zadané signály byla použita filtrace a následně byly zpracovány třemi algoritmy pro detekci QRS komplexu (popis algoritmů je dostupný v článku A Comparison of the Noise Sensivity of Nine QRS Detection Algorithms.:
1) Balda — algoritmus založený na 1. a 2. derivaci (v článku označený jako FS1)
2) Okada — algoritmus založený na digitálních filtrech. V případě tohoto algoritmu byla provedena detekce všech bodů QRS komplexu (v článku označený jako DF2)
3) Menard — algoritmus založený na 1. derivaci (v článku označený jako FD1)
Implementace algoritmů v Matlabu: [ stáhnout ]

Protože kromě reálného signálu sigcor1 nemá filtrace smysluplný efekt (signály jsou prakticky bez šumu), je uveden graf původního a filtrovaného signálu pouze pro tento signál (sigcor1).

Zdrojový kód v Matlabu: [ stáhnout ]

Výsledky


Signál: sigcor1

Původní a filtrovaný signál


Signál: signal126_1
Všechny použité algoritmy detekovaly QRS komplexy se 100% účinností.


Signál: signal126_2
Signál obsahuje 1121 QRS komplexů.
Algoritmem Balda bylo detekováno 1121, správně 1121 (100 %).
Algoritmem Okada bylo detekováno 1028, správně 1028 (92 %).
Algoritmem Menard bylo detekováno 1120, správně 1120 (99.9 %).


Signál: goldstandard
Všechny použité algoritmy detekovaly QRS komplexy se 100% účinností.


Závěr

Všechny použité algoritmy se osvědčily, k chybám v detekci QRS komplexu docházelo pouze v místech, kde byl signál zkreslen artefaktem, který se nepodařilo odfiltrovat (např. u signálu sigcor1). Potíže se objevily jen při zpracování signálu signal126_2, který má poměrně nestandardní podobu QRS komplexu. Problém byl vyřešen lepším nastavením prahovacích konstant pro tento typ signálu. Nejhoršího výsledku pak bylo dosaženo algoritmem Okada, který detekoval sice QRS komplexy správně, ale pouze 92 % z celkového počtu.