Detekcja zespołów QRS w sygnale elektrokardiograficznym 1 Wprowadzenie Zadaniem algorytmu detekcji zespołów QRS w sygnale elektrokardiograficznym jest określenie miejsc w sygnale cyfrowym w których znajdują się zespoły skurczowe serca. W rzeczywistości detekcja zespołów QRS sprowadza się do wyznaczenia kolejnych numerów próbek załamków R w sygnale cyfrowym. Na podstawie wyznaczonych załamków R następuje określenie numerów próbek punktów QRS-onset oraz QRS-end (Rys. 1). Detektor zespołów QRS powinien spełniać następujące założenia [1, 2]: tylko zespoły QRS są oznaczane, każdy zespół QRS oznaczany jest dokładnie jeden raz, punkt obliczony przez detektor leży w obrębie zespołu QRS, punkt detekcji dwóch identycznych zespołów leży w jednakowej odległości od punktu QRS-onset. QRS-end QRS-onset Rysunek 1: Porównanie morfologii uderzenia nadkomorowego i komorowego. Na przykładzie uderzenia nadkomorowego zaznaczono najważniejsze komponenty EKG. 1
2 Algorytm Pan-Tompkins Algorytm Pan-Tompkins jest jednym z najbardziej znanych i uniwersalnych podejść do detekcji zespołów QRS. Metoda opiera się na przekształceniach w dziedzinie czasu: analizie nachylenia krzywej, amplitudy i długości zespołów QRS. Algorytm składa się z pięciu następujących po sobie etapów [3] (Rys. 2). pasmowoprzepustowa Różniczkowanie Potęgowanie Całkowanie Progowanie i wyznaczenie załamków R Rysunek 2: Etapy algorytmu detekcji załamków R w algorytmie Pan-Tompkins. 1. pasmowoprzepustowa pasmowoprzepustowa 5-15 Hz ma na celu usunięcie zakłóceń podwstających pod wpływem drżenia mięśni 35 Hz, wpływu zakłóceń sieciowych 50/60 Hz, wpływu załamka T oraz pływającej izolinii elektrycznej (Rys. 3). Filtr może zostać zaprojektowany jako połączenie kaskadowe filtrów dolnoprzepustowego i górnoprzepustowego. Filtr dolno- (LP) i górnoprzepustowy (HP) o skończonej odpowiedzi impulsowej FIR (ang. Finite Impulse Response) można zaprojektować m.in. metodą okien: (a) wybór rodzaju filtra: LP/HP, rodzaju okna w[n] oraz znormalizowanej częstotliwości odcięcia f c = fc fs 2, gdzie f s [Hz] to częstotliwość próbkowania, natomiast f c [Hz] to częstotliwość odcięcia (Rys. 4). (b) analityczne wyznaczenie odpowiedzi impulsowej h(t) idealnego filtra: odpowiedź impulsowa dla idealnego filtra dolnoprzepustowego: sin(2πf ct), dla t 0 πt h lp (t) = 2f c, dla t = 0 (1) odpowiedź impulsowa dla idealnego filtra górnoprzepustowego: sin(2πf ct), t 0 πt h hp (t) = 1 2f c, t = 0 (2) (c) wymnożenie odpowiedzi impulsowej h(t) (odpowiednio h[n] w przypadku dyskretnym) przez wybrane okno parametryczne w[n] o nośniku zwartym (N = 2M + 1 współczynników filtra): h w [n] = h[n]w[n] (d) przesunięcie odpowiedzi impulsowej h w [n] o M próbek (etap opcjonalny w zależności od implementacji): h w [n] = h w [n M] Okna parametryczne wykorzystywane przy projektowaniu filtrów FIR metodą okien: okno prostokątne: w[n] = 1 n {0, 1,..., N 1} okno Bartletta: w[n] = 1 2 n N 1 2 N 1 n {0, 1,..., N 1} 2
Rysunek 3: (a) Rzeczywisty sygnał EKG, (b) estymowana izolinia elektryczna oraz (c) ostateczny sygnał powstały w wyniku z odjęcia estymowanej izolinii od rzeczywistego. okno Hamminga: w[n] = 0.54 0.46 cos ( ) 2πn N 1 n {0, 1,..., N 1} okno Blackmana: w[n] = 0.42 0.5 cos ( ) ( ) 2πn N 1 +0.08 cos 4πn N 1 n {0, 1,..., N 1} Filtrację cyfrowego x[n] za pomocą zaprojektowanego filtra FIR można zrealizować za pomocą splotu dyskretnego: y[k] = M 1 m=0 h[m] x[k m]. (3) gdzie h są współczynnikami filtra, natomiast y jest sygnałem przefiltrowanym. 2. Różniczkowanie Różniczkowanie ma na celu tłumienie niskoczęstotliwościowych komponentów (załamki P i T) oraz wzmocnienie wysokoczęstotliwościowych cech reprezentujących nachylenie zespołów QRS y[n] = 1 ( x[n 2] 2x[n 1] + 2x[n + 1] + x[n + 2]). (4) 8 3. Potęgowanie Potęgowanie tłumi jeszcze bardziej znacząco załamki P i T oraz wzmacnia próbki reprezentujące zespół QRS. Ujemne zespoły QRS 1 również są uwzględniane 1 Dla prawidłowej osi serca, w odprowadzeniu avr występują ujemne zespoły R 3
(a) (b) Rysunek 4: (a) Idealna charakterystyka filtra dolno- oraz (b) górnoprzepustowego. w dalszej analizie. y[n] = x 2 [n]. (5) 4. Całkowanie Całkowanie w oknie ruchomym ma na celu uzyskanie pojedynczej fali w obrębie zespołu QRS. y[n] = 1 N ( x[n (N 1)] +... + x[n] ). (6) Długość okna N powinna zostać dobrana w taki sposób, aby osiągnąć kompromis pomiędzy utworzeniem jednej fali, a brakiem połączena fal związanych za załamkami P i T. 5. Progowanie i wyznaczenie załamków R Ostatnim etapem algorytmu jest adaptacyjne progowanie i wyznaczenie numerów próbek odpowiadających załamkom R. 3 Ćwiczenie laboratoryjne W pliku ekg zasoby.tar.gz znajdują się trzy sygnały elektrokardiograficzne zarejestrowane u różnych osób. Sygnały pochodzą z ogólnodostępnej bazy MIT-BIH 2. rekord 100 mężczyzna, wiek 69, odprowadzenia II i V 5, rekord 102 kobieta, wiek 84, odprowadzenia V 2 i V 5, rekord 228 kobieta, wiek 80, odprowadzenia II i V 1. 1. Wczytaj za pomocą polecenia load -ascii nazwa pliku.dat kolejne pliki elektrokardiogramów *.dat do przestrzeni roboczej środowiska MathWorks Matlab. W celu wizualnej oceny i pracy wstępnej nad algorytmem sugerowane jest kilku zespołów QRS 2. Zaprojektuj odpowiednie filtry FIR (np. metoda okien) i przeprowadź dokładną analizę wyników filtracji. 3. Przygotuj funkcję detekcji załamków R na podstawie algorytmu Pan-Tompkins przedstawionego w sekcji (2). Zaproponuj algorytm adaptacyjnego progowania i oznaczania zespołu R w obrębie fali utworzonej w ostatnim kroku algorytmu Pan-Tompkins. 2 Baza MIT-BIH powstała ze współpracy Massachusetts Institute of Technology z Boston s Beth Israel Hospital. Zawiera 48 półgodzinnych, dwukanałowych zapisów EKG próbkowanych z częstotliwością 360 Hz i rozdzielczością przetwornika A/C 11 bitów. Baza zawiera adnotacje z miejscami wystąpień załamków R. W adnotacjach występują drobne różnice w stosunku do rzeczywistych umiejscowień załamków R. Baza dostępna jest pod adresem: http://www.physionet.org/physiobank/database/mitdb/ 4
4. Zaproponuj metodę detekcji punktów QRS-onset i QRS-end. Przygotuj funkcję, która na podstawie i wektora załamków R zwróci numery próbek w sygnale punktów QRS-onset i QRS-end. 3.1 Przygotowanie sprawozdania z ćwiczeń laboratoryjnych W sprawozdaniu powinny pojawić się następujące wyniki: propozycja metody detekcji załamków R (w tym progowania adaptacyjnego) oraz punktów QRS-onset i QRS-end, wyniki ilościowe i jakościowe detekcji załamków R w odniesieniu do bazy MIT-BIH oraz wyniki jakościowe detekcji punktów QRS-onset i QRS-end, transmitancje filtrów wyprowadzone w sposób analityczny, kolejne kroki etapu projektowania filtrów (używanie narzędzia fdatool lub pochodnych jest nieakceptowalne), parametry zaprojektowanych filtrów cyfrowych, charakterystyki amplitudowe i fazowe, wykresy przedstawiające nieprawidłowe detekcje zespołów QRS, wnioski dotyczące ćwiczenia. 3.2 Uwagi praktyczne do ćwiczenia W ćwiczeniu pomocne mogą okazać się następujące polecenia: conv(u, v, same ) splot liniowy v z sygnałem u, vector(k:m) wybór elementów z wektora vector począwszy od elementu k tego do m tego, vector3 = vector1.* vector2 punktowe mnożenie wektorów. Literatura [1] P. Augustyniak. Przetwarzanie sygnałów elektrodiagnostycznych. Uczelniane Wydawnictwa Naukowo-Dydaktyczne, Kraków, 2001. [2] P. Augustyniak. Elektrokardiografia dla Informatyka Praktyka. Wydawnictwo Studenckiego Towarzystwa Naukowego, Kraków, 2011. [3] J. Pan and W. J. Tompkins. A real-time QRS detection algorithm. IEEE Transactions on Biomedical Engineering, 32(3):230 236, 1985. 5