Модификация алгоритма распознавания QRS комплексов в реальном времени Пана-Томпкинсона

Модификация алгоритма распознавания QRS комплексов в реальном

времени Пана-Томпкинсона

А.В. Леонова, А.А. Агейченко Южный федеральный университет, Ростов-на-Дону

Аннотация: В статье рассматривается алгоритм Пана-Томпкинсона для распознавания QRS комплексов в реальном времени, при применении его на ПК для анализа записей не в реальном времени, а записанных заранее.

Пан и Томпкинсон разработали алгоритм реального времени для обнаружения QRS комплексов ЭКГ сигналов. Однако, в настоящем времени алгоритм достаточно сильно устарел. С помощью определенных изменений и современных возможностей, можно повысить параметры скорости работы и качества анализа.

Модифицированная версия алгоритма была разработана для использования в клиентском программном обеспечении мобильного многофункционального аппаратно-программного комплекса длительного кардиомониторирования и эргонометрии. Более качественный и точный анализ положения QRS комплексов в сигнале позволяет более точно производить оценку состояния сердечно-сосудистой системы человека, что является важным фактором при лечении и диагностике заболеваний сердца на ранних стадиях.

Ключевые слова: ЭКГ, точный анализ, обнаружение QRS, алгоритм Пана-Томпкинсона, сердечно-сосудистая система.

Введение

Основой программного обеспечения широкого круга диагностических и терапевтических систем поддержки деятельности Сердечнососудистой системы (ССС) человека является программный модуль регистрации и распознавания элементов электрокардиосигнала (ЭКС). От качества его работы в максимальной степени зависит качество диагностики состояния ССС и эффективность проводимой терапии. Современные аппаратно-программные комплексы регистрации ЭКС оперируют с длительностями регистрации порядка 24 и более часов, что соответствует 105 и более количествам QRS. При таком большом количестве анализируемых элементов сигнала качество распознавания должно быть очень высоким, например, 0,1 процента неверно распознанных QRS соответствует 100 комплексам, которые придется обрабатывать вручную. Существующие алгоритмы имеют качество распознавания даже ниже 0,1 процента, поэтому весьма актуальной

является задача распознавания QRS - комплексов с высоким уровнем чувствительности и специфичности.

Постановка задачи

Задача обнаружения QRS комплексов в ЭКС изучена достаточно хорошо, существует множество разработанных методов и способов, отличающихся различной погрешностью и временем обработки [1][2][3]. Из множества методов был выбран алгоритм Пана-Томпкинсона, как один из наиболее простых в реализации, быстрых по выполнению и дающих погрешность достаточно низкую, для проведения качественного анализа записей ЭКС [4] [5] [6]. Оригинальный алгоритм Пана-Томпкинсона при проверке на базе данных М1Т-В1Н дает погрешность в 0.675 процентов ложно обнаруженных и пропущенных комплексов [7]. Как сказано выше, это соответствует 600 - 800 комплексам в зависимости от ЧСС пациента при 24-часовом периоде наблюдения. Требуется улучшить чувствительность и специфичность алгоритма хотя бы до уровня 0,2 процента. Для этого необходимо более внимательно отнестись к участкам ЭКС, искаженным артефактами движения и электромагнитными наводками. Кроме того, состояние ССС не является стационарным процессом, а подвержено изменениям, поэтому базовая форма QRS - комплекса претерпевает определенные суточные изменения. Алгоритм должен это учитывать и адаптировать свои пороги и уставки в соответствии с этими изменениями. Для решения этой задачи необходимо выявить основные причины ложного распознавания и пропуска QRS - комплексов и разработать дополнения к алгоритму, реагирующие на эти причины.

Анализ ошибок и модификация алгоритма распознавания ОЯЗ

В результате работы было выявлено несколько способов по повышению качества анализа оригинального алгоритма [8].

При использовании данного алгоритма на практике, при анализе записей ЭКГ на ПК, был выявлен ряд недостатков, а именно:

1) Большой объем требуемой оперативной памяти при частоте дискретизации 400 Гц и выше [9];

2) Сильное влияние артефактов на качество распознавания [10];

Наибольший вклад в ошибку, при распознавании комплексов с

помощью оригинального алгоритма, вносили артефакты и сильные шумы[11]. Для снижения влияния артефактов и шумов на распознавание комплексов было принято решение о необходимости обнаружения артефактов до анализа, а их границы учитывать при анализе [12]. Алгоритм обнаружения артефактных участков следующий:

3) На неартефактном участке, границы которого должны быть заданы, к fe отсчетам применить БПФ, проанализировать спектральную мощность сигнала в частотах 5 - 11 Гц, принять это значение как нормальное;

4) Принять текущий отсчет равным 0;

5) Начиная с текущего отсчета, к fe отсчетам сигнала применить БПФ, подсчитать спектральную мощность сигнала в частотах 5 - 11 Гц, если спектральная мощность превышает нормальную более чем в 2.3 раза, то принять данный отрезок длинной в А отсчетов как артефактный [13][14];

6) Нарастить текущий отсчет на А;

7) Перейти к пункту 3.

Переменные fe и А вычисляются экспериментально, fe должна быть наиболее близкой степенью двойки не меньше А. Разница в 2.3 раза получена опытным путем.

После вычисления артефактных участков, необходимо произвести фильтрацию сигнала [15] [16]. В оригинальном алгоритме использовался

j

полосовой фильтр 5-11 Гц 2го порядка, разработанный для применения в режиме реального времени. Вместо этого, было принято решение использовать полосовой фильтр Чебышева 1го типа, 4го порядка [17][18]. Модифицированная версия алгоритма содержит следующие этапы:

1) Вычисление 32-х значений производной и квадрата функции [19]

у[1]=

2) Вычисление первого значения интегрирующей функции

30

40] = 2 уш

j=0

3) Вычисление последующих значений интегрирующей функции

z[i] = z[i-1]-y[0] + y[31]

4) Сдвиг функции производной и квадрата функции на 1 элемент

y[i-1] = y[i]

5) Вычисление нового 32-го значения функции производной и квадрата функции по формуле 1

6) Если конец записи, то перейти к шагу 7, иначе, перейти к шагу 3

7) На неартефактном участке сигнала, длительностью от 8 до 16 секунд [20], вычислить максимальные и минимальные значения функции интегрирования, вычислить порог распознавания

TRESHHOLD = min +

где min это минимальное значение функции на данном участке, max максимальное значение функции на данном участке

8) Принять PEAKI, равный текущему отсчету Х

9) Если текущий отсчет Х > TRESHHOLD перейти к пункту 10, иначе, к пункту 20.

10) Проверить, не принадлежит ли данный отсчет к артефактному участку сигнала, в случае его принадлежности к артефактному

участку пропустить N отсчетов и перейти к пункту 8, иначе, перейти к пункту 11. N - длительность данного артефактного участка [21]

11) Найти в точке сигнала, соответствующей текущему отсчету интегрирующей функции, локальный максимум, радиус поиска не должен превышать количество отсчетов, соответствующее 0.1 секунде реального времени.

12) Принять данный максимум как точку R пика QRS комплекса

13) Найти локальные минимумы слева и справа от точки R пика, радиус поиска принимать исходя из частоты дискретизации, должен соответствовать 0.03 - 0.05 секундам реального времени сигнала [22]

14) Принять данные локальные максимумы как Q и S пики QRS комплекса

15) Принять в качестве текущего ЯЯ интервала разницу между текущим и предыдущим R пиком

16) Принять в качестве среднего интервала среднее арифметическое от последних 8ми интервалов

17) Принять в качестве РЕАК1 точку интегрирующей функции, соответствующую точке R пика данного комплекса

18) Рассчитать новые значения SPKI по формуле 6 и TRESHHOLD по формуле 7

19) Пропустить Ъ отсчетов и перейти к пункту 8. Ъ вычисляется экспериментально, должна обеспечивать пропуск оставшейся части комплекса и Т пика

20) Рассчитать новые значения №К1 по формуле 8 и TRESHHOLD по формуле 7

SPKI = 0.125 * РЕАК1 + 0.875 * SPKI

TRESHHOLD = №К1 + 0.20^РК! - №К!)

№К1 = 0.125 * РЕАК1 + 0.875 * №К!

21) Если с момента последнего комплекса прошло время превышающее значение 2*ЯЯМеап, где ЯЯМеап это последнее значение среднеарифметической длительности ЯЯ интервала, то провести повторный анализ участка с точки 1 - ЯЯМеап до текущей точки 1, с использованием порогового значения

ТЯЕ8ННОЬБ2 = ТКЕБННОЬБ / 2

22) Если выполняется условие

ТЯЕБННОЬБ < т1п +

То вычислить новое значение как

ТЯЕБННОЬБ = т1п +

23) Перейти к пункту 8

В формулах используются следующие переменные:

• РЕАК1 - локальный максимум;

• БРК1 текущая оценка максимума сигнала;

• КРК1 текущая оценка максимума шума;

• ТКЕБННОЬБ базовый порог распознавания ;

• ТКЕБННОЬБ2 вторичный порог распознавания. Проверка качества работы модифицированного алгоритма

Для испытания алгоритма были проанализированы записи из базы данных М1Т/В1Н. База данных содержит 48 получасовых записей по 2 канала каждый, те же самые, которые использовались при испытании оригинального алгоритма Пана-Томпкинсона. В таблице 1 приведены результаты анализа этих файлов [23, 24].

Таблица № 1

Результаты анализа файлов базы данных М1Т/В1Н

Номер записи Количество комплексов в записи, Ложно распознанные, шт. Пропущен ные, шт. Итоговая ошибка, шт. Итоговая ошибка, %.

100 2273 0 1 1 0,04%

101 1865 1 0 1 0,05%

102 2187 0 0 0 0,00%

103 2084 0 0 0 0,00%

104 2230 9 0 9 0,40%

105 2572 7 2 9 0,35%

106 2027 1 1 2 0,10%

107 2137 0 1 1 0,05%

108 1763 20 2 22 1,25%

109 2532 0 0 0 0,00%

111 2124 0 0 0 0,00%

112 2539 0 0 0 0,00%

113 1795 0 0 0 0,00%

114 1879 1 2 3 0,16%

115 1953 0 0 0 0,00%

116 2412 1 3 4 0,17%

117 1535 0 0 0 0,00%

118 2275 0 0 0 0,00%

119 1987 0 0 0 0,00%

121 1863 1 1 2 0,11%

122 2476 0 0 0 0,00%

123 1518 0 0 0 0,00%

124 1619 0 0 0 0,00%

200 2601 1 0 1 0,04%

201 1963 0 1 1 0,05%

202 2136 0 1 1 0,05%

203 2982 5 3 8 0,27%

205 2656 0 2 2 0,08%

207 1862 1 2 3 0,16%

208 2956 1 4 5 0,17%

209 3004 0 0 0 0,00%

210 2647 0 2 2 0,08%

212 2748 0 0 0 0,00%

213 3251 0 0 0 0,00%

214 2262 0 1 1 0,04%

215 3363 0 0 0 0,00%

217 2208 1 1 2 0,09%

219 2154 0 0 0 0,00%

220 2048 0 0 0 0,00%

221 2427 0 0 0 0,00%

222 2484 10 9 19 0,76%

223 2605 0 0 0 0,00%

228 2053 2 1 3 0,15%

230 2256 0 0 0 0,00%

231 1886 0 0 0 0,00%

232 1780 0 0 0 0,00%

233 3079 0 0 0 0,00%

234 2753 0 0 0 0,00%

48 116137 62 40 102 0,09%

Заключение

К оригинальному алгоритму добавилась функция анализа артефактных участков, изменился фильтр, были изменены коэффициенты. В результате испытаний на записях базы данных М1Т/В1Н была получена ошибка 0.09%, что в 7 раз меньше ошибки оригинального алгоритма, которая составляла 0.67%. Так же, по сравнению с оригинальным алгоритмом снизилось время анализа. Проверка проводилась на ПК, путем реализации оригинального и модифицированного алгоритмов на языке С++ и последующим запуском синтезированных программ для анализа одинаковых записей.

Оригинальный алгоритм обрабатывает запись длительностью 0.5 часа в течение 36 секунд в среднем за 48 записей. Запись длительностью 24 часа

обрабатывается 14 минут. Время анализа одной записи модифицированным алгоритмом, длительностью 0.5 часа, происходит за 8 секунд, запись длительностью 24 часа обрабатывается за 7.5 минут, что в 2 раза меньше времени работы оригинального алгоритма.

Достоинства модифицированного алгоритма:

Сокращение требуемого количества времени для анализа записи ЭКГ, предварительный полуавтоматический анализ артефактных участков позволяет избежать их влияния на работу алгоритма, повышение точности анализа.

Недостатки модифицированного алгоритма:

Необходимость использования более сложной функции фильтрации и БПФ для анализа артефактов.

Результаты исследований, изложенные в данной статье, получены при финансовой поддержке Минобрнауки РФ в рамках реализации проекта "Создание высокотехнологичного производства по изготовлению мобильного многофункционального аппаратно-программного комплекса длительного кардиомониторирования и эргометрии" по постановлению правительства №218 от 09.04.2010г. Исследования проводились в ФГАОУ ВО ЮФУ.

Литература

1. Pan J., Tompkins W.J. A real time QRS detection algorithm. IEEE Trans. Biomed. Eng., Vol. BME-32, 1985. - pp. 230-236.

2. Шлее М. Qt 4.5 Профессиональное программирование на С++. Санкт-Петербург: БХВ-Петербург, 2010. - 883 с.

3. Барановский А. Л., Калиниченко А.Н., Манило Л.А. и др. Кардиомониторы. Аппаратура непрерывного контроля ЭКГ: Учеб. пособие для вузов / Под ред. А. Л. Барановского и А.П. Немирко. - М.: Радио и связь, 1993. - 247 с.: ил.

4. Ладяев, Д. А. Алгоритм обнаружения QRS-комплексов ЭКГ-сигналов на основе вейвлет- преобразования: автореф. дисс. на соиск. учен. степ. канд. техн. наук. - Саранск, 2007. - 22 с.

5. Diery A., Rowlands D., James D.A., Cutmore T. Nonlinear processing techniques for P-wave detection and classification: a review of current methods and applications. URL: aprs.org.au/anziis2003/Papers/paper173.pdf. (handling date: 25.03.2015).

6. Кривоногов Л.Ю. Методы и алгоритмы помехоустойчивой обработки электрокардио- графической информации: Дисс... канд. техн. наук. - Пенза, 2003. - 231 с.

7. Reza Sameni, Gari D. Clifford, Christian Jutten, Mohammad B. Shamsollahil Multichannel ECG and noise modeling: application to maternal and fetal ECG signals // EURASIP Journal on Applied Signal Processing. - Vol. 2007. - № 1. - pp. 94-110.

8. Нагин В. А. Распределенная компьютерная система сбора и математической обработки электрофизиологических сигналов: автореф. дис. канд. техн. наук. - М., 2002. - 27с.

9. Thakor N. V., Webster J. G., and Tompkins W. J. Design, implementation, and evaluation of a microcomputer-based portable arrhythmia monitor. - Med. Biol. Eng. Comput., vol. 22, pp. 151-159, 1984.

10. Valtino X. Afonso. ECG QRS Detection. URL: physik.uni-freiburg.de/~severin/ECG_QRS_Detection.pdf (handling date: 27.03.2015).

11. Савостин А. А. Преимущества методов оптимальной фильтрации при электрокардиологических исследованиях. URL: rusnauka.com/10_NPE_2010/Tecnic/62994.doc.htm (дата обращения: 27.03.2015).

12. Natalia M. Arzeno. Analysis of First-Derivative Based QRS Detection Algorithms. URL: ncbi.nlm.nih.gov/pmc/articles/PMC2532677 (handling date: 01.04.2015).

13. Robbert J. de Winter. A New ECG Sign of Proximal LAD Occlusion. URL: nejm.org/doi/full/10.1056/NEJMc0804737 (handling date: 01.04.2015).

14. Michael P. Somers. The prominant T wave: Electrocardiographic differential diagnosis. URL: ajemjournal.com/article/S0735-6757(02)92193-5/abstract (handling date: 01.04.2015).

15. Истомина Т.В., Чувыкин Б.В., Щеголев В.Е. Применение wavelet-преобразования для задач обработки информации. - Пенза: Изд-во ПГУ, 2002. - 228c.

16. Diery A., Rowlands D., James D.A., Cutmore T. Nonlinear processing techniques for P-wave detection and classification: a review of current methods and applications. URL: aprs.org.au/anziis2003/Papers/paper173.pdf (handling date: 02.04.2015).

17. Torrence C., Combo G.P. A Practical Guide to Wavelet Analysis // Bulletin of the American Meteorological Society, 1998. - № 1. Vol. 79. pp. 61-78.

18. Дремин И. М., Иванов О. В. Вейвлеты и их применение // Успехи физических наук, 2001. - №5. - c. 465-501.

19. Гусев В.Г. Получение информации о параметрах и характеристиках организма и физические методы воздействия на него: Учебное пособие. - М.: Машиностроение, 2004. -597 с.

20. Breme N., Oggero E., Pagnacco G. Power spectrum characteristics of physiologic and pathologic tremor // Acta of Bioengeneering and Biomechanics. -1999. - Vol. 1, No. 1. - pp. 71-88.

21. Коваль В.Т., Окунь Б.В., Татаркина Н.Д., Коваль Е.В., Хорошун Р.М., Конорева Н.А. Техногенная этиология сердечно-сосудистых

заболеваний // Здоровье. Медицинская экология. Наука. - 2002. - № 1-2. - c. 47.

22. Джанашия П.Х., Шевченко Е.М., Олившенко А.В. Неотложная кардиология. - М.: Изд-во БИНОМ, 2010. - 288 с.

23. Ковтун Д.Г., Синютин С.А. Анализ алгоритмов подстройки порога срабатывания для QRS комплексов // Инженерный вестник Дона, 2014, №3 URL:ivdon.ru/ru/magazine/archive/n3y2014/2547.

24. Тарасова И. А., Леонова А.В., Синютин С.А. Алгоритмы фильтрации сигналов биоэлектрической природы // Инженерный вестник Дона, 2012, №4 (часть 2) URL: ivdon.ru/ru/magazine/archive/n4p2y2012/1481.

References

1. Pan J., Tompkins W.J. A real time QRS detection algorithm. IEEE Trans. Biomed. Eng., Vol. BME-32, 1985. pp. 230-236.

2. M. Schlee Qt 4.5 Professionalnoe programmirovanie v C ++ [Qt 4.5 Professional Programming in C ++]. St. Petersburg: BHV-Petersburg, 2010. 883 p.

3. Baranovsky A.L., A.N. Kalinichenko, L.A. Manilo et al. Kardiomonitory. Apparatura neprerivnogo kontrolya ECG [Pulse. Continuous monitoring of ECG equipment]: Proc. manual for schools. Pod red. AL Baranovsky i A.P. Nemirko. M .: Radio i Svyaz, 1993. 247 p.: s il.

4. Ladyaev, D.A. Algoritm obnaruzheniya QRS-kompleksov ECG signalov na osnove veivlet - preobrazovaniya [Detection algorithm QRS-complexes of ECG signals based on wavelet transform]: Author. diss. on soisk. uchen. step. cand. tehn. nauk. Saransk, 2007. 22 p.

5. Diery A., Rowlands D., James D.A., Cutmore T. Nonlinear processing techniques for P-wave detection and classification: a review of current methods and applications. URL: aprs.org.au/anziis2003/Papers/paper173.pdf.

6. Krivonogov L.Y. Metody I algoritmy pomehoustoichivosty obrabotky electrokardiograficheskoy informatsii [Methods and algorithms for processing electrocardiogram interference-graphical information]: Diss. cand. tehn. nauk. Penza, 2003. 231 p.

7. Reza Sameni, Gari D. Clifford, Christian Jutten, Mohammad B. Shamsollahil Multichannel ECG and noise modeling: application to maternal and fetal ECG signals. EURASIP Journal on Applied Signal Processing. Vol. 2007. № 1. pp. 94-110.

8. V.A. Nagin Raspredelennaya systema sbora i matematicheskoy obrabotky electrofiziologicheskih signalov [A distributed computer system for collecting and mathematical processing of electrophysiological signals]: Author. Dis. cand. tehn. Sciences. M., 2002. 27c.

9. Thakor N. V., Webster J. G., and Tompkins W. J. Design, implementation, and evaluation of a microcomputer-based portable arrhythmia monitor. Med. Biol. Eng. Comput., vol. 22, pp. 151-159, 1984.

10. Valtino X. Afonso. ECG QRS Detection. URL: physik.uni-freiburg.de/~severin/ECG_QRS_Detection.pdf.

11. A. A. Savostin. URL: rusnauka.com/10_NPE_2010/Tecnic/62994.doc.htm.

12. Natalia M. Arzeno. Analysis of First-Derivative Based QRS Detection Algorithms. URL: ncbi.nlm.nih.gov/pmc/articles/PMC2532677.

13. Robbert J. de Winter. A New ECG Sign of Proximal LAD Occlusion. URL: nejm.org/doi/full/10.1056/NEJMc0804737.

14. Michael P. Somers. The prominant T wave: Electrocardiographic differential diagnosis. URL: ajemjournal.com/article/S0735-6757(02)92193-5/abstract.

15. Istomina T.V., Chuvykin B.V., V.E. Shchegolev Primenenie wavelet-preobrazovaniya dlya zadach obrabotky informatsii [Application of wavelet-processing for tasks of information processing]. Penza Univ PSU, 2002. 228 p.

16. Diery A., Rowlands D., James D.A., Cutmore T. Nonlinear processing techniques for P-wave detection and classification: a review of current methods and applications. URL: aprs.org.au/anziis2003/Papers/paper173.pdf.

17. Torrence C., Combo G.P. A Practical Guide to Wavelet Analysis. Bulletin of the American Meteorological Society, 1998. № 1. Vol. 79. pp. 61-78.

18. Dremin I.M., Ivanov O.V. Uspehi fizicheskih nauk. 2001. №5. pp. 465-501.

19. Gusev V.G. Poluchenie informacii o parametrah I harakteristikah organizma I fizicheskie metody vozdeistviya na nego [Getting information about the parameters and characteristics of the body and physical methods of influence on him]: Uchebnoe posobie. M.: Mashinostroenie, 2004. 597 p.

20. Breme N., Oggero E., Pagnacco G. Power spectrum characteristics of physiologic and pathologic tremor. Acta of Bioengeneering and Biomechanics. 1999. Vol. 1, No. 1. pp. 71-88.

21. Koval V.T., Perch B.V., Tatarkina N.D., Koval E.V., Khoroshun R.M. Konoreva N.A. Zdorove. Medicinskaya ecologiya. Nauka. 2002. № 1-2. 47 p.

22. Janashia P.H., Shevchenko E.M., Olivshenko А.V. Neotlozhnaya kardiologiya [Emergency Cardiology]. M .: BINOM, 2010. 288 p.

23. Kovtun D.G., Sinyutin S.A. Inzenernyj vestnik Dona (Rus), 2014, №3 URL: ivdon.ru/ru/magazine/archive/n3y2014/2547.

24. Tarasova I.A., Leonova A.V., Sinyutin S.A. Inzenernyj vestnik Dona (Rus), 2012, №4 (part 2) URL: ivdon.ru/ru/magazine/archive/n4p2y2012/1481.