Zum Inhalt springen

Pan-Tompkins-Algorithmus

aus Wikipedia, der freien Enzyklopädie
Herzschlag im EKG

Der Pan-Tompkins-Algorithmus[1] wird häufig zur Erkennung von QRS-Komplexen in Elektrokardiogrammen (EKGs) verwendet. Der QRS-Komplex stellt die Depolarisation der Herzkammern dar und zeigt den stärksten im EKG-Signal sichtbaren Ausschlag (siehe Abbildung). Er eignet sich besonders gut für die Messung der Herzfrequenz, einem ersten Schritt, den Gesundheitszustand des Herzens zu bestimmen. Der idealtypische QRS-Komplex besteht aus einem kleinen Ausschlag nach unten (Q-Zacke) gefolgt von einem großen Ausschlag nach oben (R-Zacke) gefolgt von einem abschließenden kleinen Ausschlag nach unten (S-Zacke).

Der Pan-Tompkins Algorithmus wendet eine Reihe von Filtern an, um Störsignale zu beseitigen und den QRS-Komplex hervorzuheben. Dazu wird die Amplitude des Signals quadriert und das Signal gemittelt. Zuletzt werden adaptive Schwellenwerte angewendet, um die Ausschläge der R-Zacke von verbleibenden Signal zu trennen.

Der Algorithmus wurde 1985 von Jiapu Pan und Willis J. Tompkins in der Zeitschrift „IEEE Transactions on Biomedical Engineering“ vorgestellt.[1] Die Leistung der Methode wurde anhand einer beschrifteten Datenbank von Arrhythmien (MIT/BIH[2][3]), sowie mit Störsignalen getestet. Pan und Tompkins berichteten von 99,3 % korrekt erkannter QRS-Komplexe.[1]

Vorverarbeitung

[Bearbeiten | Quelltext bearbeiten]
Blockdiagramm der Vorverarbeitungs-Schritte des Pan-Tompkins Algorithmus

Störsignal-Unterdrückung

[Bearbeiten | Quelltext bearbeiten]

Als erster Schritt wird ein Bandpass-Filter angewendet um das Signal-Rausch-Verhältnis zu erhöhen. Ein Passband von 5–15 Hertz wird vorgeschlagen um den Signalbeitrag des QRS-Komplexes zu maximieren und Störungen z. B. durch Muskelbewegungen, niederfrequente Schwankungen (etwa durch die Atmung), Interferenzen der Netzspannung und die P- und T-Wellen zu verringern.[1] Im 1985 vorgestellten Algorithmus wurde der Bandpass-Filter durch eine Verkettung eines Tiefpass-Filters und eines Hochpass-Filters realisiert um die Filterung mit wenig Rechenleistung zu erreichen.

Für ein Signal mit einer Abtastrate von 200 Hertz schlugen Pan und Tompkins Filter mit den folgenden Übertragungsfunktionen vor:

  • für einen Tiefpass-Filter zweiter Ordnung mit einer Verstärkung von 36[1] und einer Verarbeitungs-Verzögerung von 5 Samples;[4]
  • für einen Hochpass-Filter mit einer Verarbeitungsverzögerung von 16 Samples.[4]

Als zweiter Schritt wird ein Ableitungsfilter angewendet, der Gradienten betont. Für ein Signal mit einer Abtastrate von 200 Hertz schlugen Pan und Tompkins die Folgende Übertragungsfunktion vor:[4]

für einen 5-Punkt Ableitungsfilter mit einer Verstärkung von 0,1 und einer Verzögerung von 2 Samples.

Als dritter Schritt wird die Amplitude der Ableitung quadriert. So werden die steileren Ausschläge des QRS-Komplexes besser von denen der T-Welle unterscheidbar.

Als vierter Schritt wird ein gleitender Mittelwert mit fester Breite gebildet. Daraus ergeben sich Informationen über die Breite des QRS-Komplexes. Die Anzahl der Samples für den Mittelwert wird empirisch bestimmt; Pan und Tompkins schlugen 150 Millisekunden vor. Für eine Abtastrate von 200 Hertz resultiert dies in einer Breite von 30 Samples, was zu einer Verzögerung von 14,5 Samples führt.[1]

Entscheidungsregeln

[Bearbeiten | Quelltext bearbeiten]
Beispiel für Pan-Tompkins Verarbeitung[5]

Alle lokalen Maxima des integrierten Signals werden als potenzielle QRS-Komplexe in Betracht gezogen. Zwischen QRS-Komplexen wird ein Mindestabstand von 200 ms festgelegt. Dies ergibt sich aus physiologischen Beschränkungen der Refraktärzeit, während der keine Depolarisation stattfinden kann.[1]

Um zu vermeiden Maxima der Störgeräusche als QRS-Komplex zu erkennen, wird jedes Maximum mit einem Schwellenwert (ThreasholdI) verglichen, der die Informationen über bisherige QRS-Komplexe und aktuelle Stärke der Störgeräusche einbezieht:

wobei NoiseLevelI die geschätzte Stärke der Störgeräusche des integrierten Signals darstellt und SignalLevelI dessen geschätzte Signalstärke.

Der Schwellenwert wird automatisch mit jedem Maximum des Signals aktualisiert, basiert auf der Einstufung des Maximums als Störgeräusch oder Signal-Maximum.

(wenn PEAKI ein Signal-Maximum ist)

(wenn PEAKI ein Störgeräusch ist)

wobei PEAKI das lokale Maximum ist.

Zu Beginn der Erkennung benötigt der Algorithmus ca. 2 Sekunden um SignalLevelI und NoiseLevelI zu initialisieren. Dafür werden maximale und durchschnittliche Amplitude des Signals verwendet.

Wenn PEAKI kleiner ist als ThresholdI, wird PEAKI als Störgeräusch betrachtet und NoiseLevelI wird aktualisiert. Andernfalls wird PEAKI als Signal-Maximum betrachtet und SignalLevelI aktualisiert.

Zeitgleich wird das Eingabe-Signal vor der Ableitung, also nach dem Bandpass-Filter, betrachtet. Hier gelten folgende Werte:

(wenn PEAKF ein Signal-Maximum ist)

(wenn PEAKF ein Störgeräusch ist)

Rückwärtssuche nach falsch-negativen QRS-Komplexen

[Bearbeiten | Quelltext bearbeiten]

Der Algorithmus geht ebenfalls darauf ein, dass ThresholdI und ThresholdF zu hoch sein könnten. Dafür wird der durchschnittliche Abstand der letzten R-Zacken (RR-Intervall) betrachtet:

wobei RRn das zuletzt gemessene RR-Intervall ist.

wobei RR'n das zuletzt gemessene RR-Intervall ist, welches in den zulässigen Bereich fällt:

Wenn innerhalb eines Zeitraums von RRMissedLimit kein QRS-Komplex gefunden wurde, wird im Zeitraum seit dem letzten QRS-Komplex anhand der halbierten Schwellenwerte nach einem QRS-Komplex gesucht.

Wenn die letzten 8 RR-Intervalle alle in den zulässigen Bereich fallen, werden die entsprechenden Herzschläge als regulär interpretiert. Dies ist der Fall für einen normalen Sinus-Rhythmus.

Unterscheidung von T-Wellen

[Bearbeiten | Quelltext bearbeiten]

Wenn ein RR-Intervall kleiner als 360 ms ist, muss entschieden werden, ob es sich tatsächlich um einen QRS-Komplex handelt oder ob es sich eigentlich um eine T-Welle handelt. Letzteres wird angenommen, sobald die maximale Steigung des Ausschlags weniger als halb so groß ist, wie die des vorherigen QRS-Komplexes.

Automatisierte Erkennung von QRS-Komplexen ist unmittelbar nützlich für Langzeit-EKGs und für präventiv Maßnahmen von Herzschrittmachern (präventives Pacing). Durch das RR-Intervall lässt sich die Herzfrequenz berechnen:

wobei RR in Sekunden angegeben wird. Die Herzfrequenz selbst wird in Schlägen pro Minute (beats per minute – bpm) angegeben. Aus der Herzfrequenz lässt sich außerdem die Herzfrequenzvariabilität berechnen, welche Anwendung sowohl in der Diagnose und Überwachung von kardiologischen Erkrankungen und ihrer Heilung findet[6], als auch in der Forschung zur Bestimmung emotionaler Zustände von Menschen.[7]

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. a b c d e f g Jiapu Pan, Willis J. Tompkins: A Real-Time QRS Detection Algorithm. In: IEEE Transactions on Biomedical Engineering. BME-32, Nr. 3, März 1985, S. 230–236, doi:10.1109/TBME.1985.325532, PMID 3997178.
  2. G.B. Moody, R.G.Mark: The impact of the MIT-BIH Arrhythmia Database. In: IEEE Engineering in Medicine and Biology Magazine. Band 20, Nr. 3, 2001, S. 45–50, doi:10.1109/51.932724, PMID 11446209.
  3. Ary L. Goldberger, Luis A.N. Amaral, Leon Glass, Jeffrey M. Hausdorff, Plamen Ch. Ivanov, Roger G. Mark, Joseph E. Mietus, George B. Moody, Chung-Kang Peng, H. Eugene Stanley: PhysioBank, PhysioToolkit, and PhysioNet. In: Circulation. Band 101, Nr. 23, 13. Juni 2000, doi:10.1161/01.CIR.101.23.e215.
  4. a b c A Real-Time QRS Detection Algorithm (errata corrige). (PDF; 4,5 MB) Abgerufen am 26. Juni 2025 (englisch).
  5. Complete Pan Tompkins Implementation ECG QRS detector. Archiviert vom Original am 18. September 2024; abgerufen am 26. Juni 2025 (englisch).
  6. Task Force of the European Society Electrophysiology: Heart Rate Variability. In: Circulation. Band 93, Nr. 5, März 1996, S. 1043–1065, doi:10.1161/01.CIR.93.5.1043.
  7. Mimma Nardelli, Gaetano Valenza, Alberto Greco, Antonio Lantana, Enzo Pasquale Scilingo: Recognizing Emotions Induced by Affective Sounds through Heart Rate Variability. In: IEEE Transactions on Affective Computing. Band 6, Nr. 4, 1. Oktober 2015, ISSN 1949-3045, S. 385–394, doi:10.1109/TAFFC.2015.2432810.