Обнаружение QRS ЭКГ в реальном времени

Этот пример показывает, как обнаружить комплекс QRS сигнала электрокардиограммы (ECG) в реальном времени. Проект, основанный на модели, используется для помощи в разработке, проверке и развертывании алгоритма.

Введение

Электрокардиограмма (ЭКГ) является записью потенциалов поверхности тела, генерируемых электрической активностью сердца. Клиницисты могут оценить индивидуума сердечное условие и общее состояние здоровья с помощью записи ЭКГ и выполнить дальнейшую диагностику.

Нормальная форма волны ЭКГ проиллюстрирована на следующем рисунке [1]. Из-за физиологической изменчивости комплекса QRS и различных типов шума, присутствующих в реальном сигнале ECG, трудно точно обнаружить комплекс QRS.

Источники Noise, которые повреждают необработанные сигналы ЭКГ, включают:

  • Базовый бродячий

  • Помехи от линий степеней (50 Гц или 60 Гц)

  • Электромиографический (ЭМГ) или мышечный шум

  • Программные продукты из-за движения электрода

  • Контактный шум электрода

Источник сигнала ЭКГ

Сигналы ЭКГ, используемые в разработке и проверке алгоритмов биомедицинской обработки сигналов, в основном из трех источников: 1) биомедицинские базы данных (например, [2]) или другие предварительно записанные данные ЭКГ; 2) симулятор ЭКГ; 3) Сбор данных ЭКГ в реальном времени.

В этом примере используются следующие предварительно записанные и моделируемые сигналы ЭКГ. Все сигналы имеют частоты дискретизации 360 Гц.

  • один набор зарегистрированных реальных данных ЭКГ, отобранных у здорового добровольца со средней частотой сердечных сокращений 82 удара в минуту (bpm). Данные ЭКГ были предварительно отфильтрованы и усилены аналоговым передним концом перед подачей их на 12- биты АЦП.

  • четыре набора синтезированных сигналов ЭКГ с различными средними частотами сердечных сокращений от 45 bpm до 220 bpm. [3] используется для формирования синтетических сигналов ЭКГ в MATLAB.

Вот настройки для генерации синтезированных данных ЭКГ:

  • Частота дискретизации: 360 Гц;

  • Присадка равномерно распределенная шум измерения: 0,005 мВ;

  • Стандартное отклонение частоты сердечных сокращений: 1 bpm.

Предварительная обработка и фильтрация сигналов ЭКГ

Алгоритм обнаружения QRS в реальном времени, который ссылки [1, lab one], [4] и [5], разработан в Simulink с предположением, что частота дискретизации входа сигнала ECG всегда 200 Гц (или 200 дискретизации/с). Однако зарегистрированные реальные данные ЭКГ могут иметь различные частоты дискретизации в диапазоне от 200 Гц до 1000 Гц, например, 360 Гц в этом примере. Чтобы соединить различные частоты дискретизации, блок преобразователя частоты дискретизации используется, чтобы преобразовать частоту дискретизации в 200 Гц. Буферный блок вставляется, чтобы гарантировать, что длина входного сигнала ECG является произведением, кратным вычисленному коэффициенту десятикратного уменьшения блока преобразователя частоты дискретизации.

Сигнал ЭКГ фильтруется, чтобы сгенерировать оконную оценку энергии в полосе частот QRS. Операция фильтрации имеет следующие шаги:

1. Полосовой фильтр конечная импульсная характеристика с полосой пропускания от 5 до 26 Гц

2. Взятие производной полосы пропускания фильтрованного сигнала

3. Взятие абсолютного значения сигнала

4. Усреднение абсолютного значения по окну 80 мс

Обнаружение QRS сигнала ECG в реальном времени

Блок обнаружения QRS обнаруживает peaks фильтрованного сигнала ECG в реальном времени. Порог обнаружения автоматически регулируется на основе средней оценки среднего пика QRS и среднего пика шума. Обнаруженный пик классифицируется как комплекс QRS или как шум, в зависимости от того, выше ли он порога.

Следующие правила обнаружения QRS ссылаются на основанный на PIC детектор QRS, реализованный в [5].

Правило 1. Игнорируйте весь peaks, которые предшествуют или следуют большому peaks менее чем на 196 мс (306 bpm).

Правило 2. Если происходит пик, проверяйте, содержит ли необработанный сигнал как положительный, так и отрицательный наклон. Если true, сообщите об обнаружении пика. В противном случае пик представляет базовый сдвиг.

Правило 3. Если пик больше порога обнаружения, классифицируйте его как комплекс QRS. В противном случае классифицируйте его как шум.

Правило 4. Если QRS не был обнаружен в течение 1,5 интервалов R-to-R, но существует пик, который был больше половины порога обнаружения, и этот пик последовал за предыдущим обнаружением по меньшей мере на 360 мс, классифицируйте этот пик как комплекс QRS.

Моделирование и развертывание

1. Откройте пример модели.

2. Измените текущую папку в MATLAB ® на папку с возможностью записи.

3. На панели инструментов модели щелкните Запуском, чтобы запустить симуляцию. Наблюдайте отображение HeartRate и необработанный и отфильтрованный сигнал ЭКГ в возможностях, который также иллюстрирует обновление peaks, порога и предполагаемого среднего частоты сердечных сокращений.

4. Откройте диалоговое окно блока ECG Signal Selector. Выберите средний пульс сигнала ЭКГ в раскрывающемся меню. Нажмите Применить и наблюдайте результаты обнаружения в реальном времени в возможностях видимости и отображении HeartRate.

5. Нажмите Stop, чтобы завершить симуляцию.

6. После выбора целевого компьютера можно сгенерировать код из подсистемы ECGSignalProcessing и развернуть его к цели.

Ссылки

[1] https://ocw.mit.edu/courses/health-sciences-and-technology/hst-582j-biomedical-signal-and-image-processing-spring-2007/index.htm

[2] https://www.physionet.org/physiobank/database/mitdb/

[3] https://www.physionet.org/physiotools/ecgsyn/

[4] J. Pan and W. Tompkins, A Real-Time QRS Detection Algorithm, IEEE Transactions on Biomedical Engineering, 32 (3): 230-236, March 1985

[5] Патрик С. Гамильтон, EP Limited: Open Source ECG Analysis Software, 2002