Скачиваний:
0
Добавлен:
12.02.2026
Размер:
771.2 Кб
Скачать

суммарную электрическую активность миокарда, позволяет рассчитать распределение потенциалов на поверхности тела. Этот метод – компромисс,

который обеспечивает ясную физическую интерпретацию (например, ось сердца) и относительно простые вычисления, хотя и является некоторым упрощением реальной сложной картины возбуждения.

Биофизические модели строго воспроизводят иерархию процессов от ионных токов в мембране отдельной клетки до распространения волны возбуждения по всей ткани сердца. Решая сложные системы дифференциальных уравнений (модели клетки типа Лоран-Руда, уравнения монодомена), они в итоге вычисляют кардиограмму через модель объемного проводника. Такие модели невероятно точны и позволяют изучать тонкие эффекты лекарств или патологий,

но требуют колоссальных вычислительных ресурсов и подробных геометрических данных.

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

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

11

Глава 2: Разработка системы или модели

Рассмотрим подробнее модель на основе функций Гаусса (Модель Мак-

Шери и Олкина), также известная как модель сглаженных псевдо-производных.

Ключевая идея заключается в том, что характерная форма кардиоцикла с высокой точностью аппроксимируется суммой математических функций – производных от функции Гаусса.

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

который описывается суммой несимметричных гауссовых функций:

 

 

 

( −

)2

 

 

 

 

 

 

 

( ) =

∙ [−

 

 

] (1)

 

2[

( )]2

 

{ , , , , , }

 

 

 

 

 

 

 

 

 

 

Где –параметры, отражающие ширину гауссовой волны, – параметры,

 

 

 

 

 

 

 

отражающие точку середины (пик) волны, – амплитуда волны, t

– время в

 

 

 

 

 

 

секундах, при ограничениях: 0 ≤ (1) < (2) (1) < (2) = (1) < (2)

= (1) <

(1) = (1) (2) (1)

< (2) 0

где 0— общая продолжительность (мс) ( ),

связанная с частотой FЧСС сердечных сокращений (уд/мин) соотношением:

60 1000

0 = ЧСС ,

а моменты начала (1) и окончания (2) каждого i -го фрагмента эталона, { , ,, , , }, связаны с параметрами (1), (2) и следующим образом:

(1) = − 3(1) ,(2) = + 3(2) .

Параметры и определяют значения амплитуд и моментов времени,

когда i-й информативный фрагмент эталона, { , , , , , }, принимает

12

максимальное значение при

> 0 или минимальное значение при < 0, а

параметры

 

 

 

 

()

(1)

 

 

= {

 

 

 

 

(2)

 

>

 

 

 

 

 

 

при (1) (2) позволяют генерировать несимметричные фрагменты.

Известно, что даже у здоровых людей в состоянии покоя сердечный ритм подвержен значительным колебаниям. Для моделирования этого явления на основе эталона на последовательных временных интервалах:

0 = 0 (1 + ),

= 1, … ,

формируется последовательность циклов Z1(t)...ZN(t) по формуле:

 

 

 

 

( −

 

)2

 

( ) =

 

∙ [−

 

 

 

 

] , m = 1, … , N (2)

2[

 

( )]2

 

 

 

 

 

 

 

{ , , , , , }

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Изменение продолжительностей RR-интервалов моделируется искажением частоты сердечных сокращений (временного интервала 0) на основе использования реализаций независимой случайной величины , которая с нулевым математическим ожиданием распределена на ограниченном интервале

[− 0, ], 0 – фиксированное число, определяющее требуемые границы искажения частоты.

Для реализации модели ЭКГ был написан код на языке C++ и подобраны параметры гауссовых функций для моделирования нормального QRS комплекса,

комплекса с депрессией ST-сегмента, а также комплекса при желудочковой экстрасистолии.

Основную роль в коде играет класс EGC, состоящий подкласса Complex,

отражающего структуру шаблона одного кардиоцикла, массива объектов класса

Complex, содержащего набор различных параметров, используемых для

13

генерации сигнала, а также методов добавления и удаления объектов класса

Complex в набор данных и расчёта непосредственно сигнала ЭКГ в целом и каждого комплекса в отдельности. Рассмотрим их подробнее:

Каждый из подклассов Complex состоит из набора зубцов ЭКГ,

представляющих собой структуры имеющие параметры, необходимые для расчёта гауссовой функции: name – имя зубца (P, Q, R и т.д.), А, b1, b2 и u

соответственно.

Добавление и удаление объектов Complex в объект ECG осуществляется посредством функций push и del соответственно. Эти функции не представляют интереса с точки зрения расчёта, поэтому не будем заострять на них внимание.

Основной расчёт производится за счёт функции calculate, в которую передаются параметры: Fs – частота дискретизации, HR – частота сердечных сокращений, n – количество комплексов, которые необходимо сгенерировать, name – тип комплексов.

Если функция находит шаблон комплекса по названию, то создаёт вектор значений, который и является будущим сигналом. Функция проводит n итераций создания комплекса. В каждую итерацию производится копирование параметров шаблона комплекса и рандомизация параметров амплитуды, чтобы сделать каждый комплекс особенным. Далее производится расчёт конкретного комплекса за счёт функции do_ECG.

Внутри функции do_ECG на основе данных о частоте сердцебиения рассчитывается количество точек, которое будет занимать один кардиоцикл.

Длина каждого кардиоцикла также рандомизирована, однако отклонение составляет не более 5% от идеальной длины. Сама же функция рассчитывает несимметричную гауссову функцию по переданным в неё параметрам,

руководствуясь следующей логикой: для каждой точки в отдельности рассчитываются значения гауссовых функций, соответствующий данной точке во

14

времени, относительно точка начала кардиоцикла. При этом, если tтекущ < u, то для рассчёта используется параметр b1, иначе параметр b2.

После всех расчётов в функцию calculate возвращается готовый вектор значений одного кардиоцикла, которые добавляются в конец вектора значений сигнала. После генерации всех кардиоциклов готовый вектор значений сигналов возвращается обратно в программу.

Далее, для упрощения работы с сигналом, он выводится в текстовый файл формата .txt. Этот формат удобен, так как читается большинством редакторов,

мало весит и прост в обработке.

Для генерации различных типов комплексов вручную по форме сигналов из интернета были подобраны параметры, которые представлены в таблице 1:

Таблица 1 – Коэффициенты комплексов

Тип комплекса

Зубец

A

b1

b2

u

 

 

 

 

 

 

Нормальный

P

0.11

0.014

0.014

0.399

 

 

 

 

 

 

 

Q

-0.004

0.008

0.008

0.45

 

 

 

 

 

 

 

R

1.453

0.008

0.008

0.474

 

 

 

 

 

 

 

S

-1.053

0.007

0.007

0.495

 

 

 

 

 

 

 

ST

0.063

0.04

0.04

0.574

 

 

 

 

 

 

 

T

0.52

0.056

0.024

0.7

 

 

 

 

 

 

15

Продолжение таблицы 1

Тип комплекса

Зубец

A

b1

b2

u

 

 

 

 

 

 

 

Депрессия

ST

P

0.04

0.03

0.03

0.203

сегмента

 

 

 

 

 

 

 

Q

0

0.066

0.066

0.266

 

 

 

 

 

 

 

 

 

 

 

R

0.64

0.016

0.026

0.296

 

 

 

 

 

 

 

 

 

S

-0.1

0.03

0.03

0.4

 

 

 

 

 

 

 

 

 

ST

-0.23

0.15

0.2

0.45

 

 

 

 

 

 

 

 

 

T

0.06

0.1

0.08

0.7

 

 

 

 

 

 

 

Желудочковая

 

P

0

0.03

0.03

0.08

экстрасистолия

 

 

 

 

 

Q

0.3

0.01

0.03

0.1

 

 

 

 

 

 

 

 

 

 

 

R

1.3

0.04

0.04

0.2

 

 

 

 

 

 

 

 

 

S

-0.1

0.01

0.015

0.28

 

 

 

 

 

 

 

 

 

ST

-0.18

0.1

0.1

0.34

 

 

 

 

 

 

 

 

 

T

-0.19

0.04

0.04

0.39

 

 

 

 

 

 

 

16

Глава 3: Результаты

Для оценки работы программы были сгенерированы несколько файлов сигналов: один нормальный комплекс, один комплекс с депрессией ST сегмента,

одна желудочковая экстрасистола и со случайно комбинацией комплексов (80%

нормальный комплекс и по 10% на каждую патологию). Графики полученных сигналов можно увидеть на рисунках 6-9:

Рисунок 6 – Сигнал нормального комплекса

Рисунок 7 – Комплекс с депрессией ST-сегмента

17

Рисунок 8 – Комплекс желудочковой экстрасистолы

Рисунок 9 – Сигнал из случайных комплексов

На смешанном сигнале видно, что RR интервал между нормальным комплексом и перед комплексом желудочковой экстрасистолы значительно меньше среднего, а после – значительно больше среднего. Это доказывает правильность подобранных коэффициентов u для данного типа патологии.

Сравним формы сгенерированного экстрасистолического комплекса и с реальной ЭКГ пациента, взятой из базы данных MIT-BIH Arrhythmia Database

ресурса PhysioNet (запись 106) (рис. 10):

18

Рисунок 10 – Сравнения синтезированного (сверху)

и реального (снизу) комплексов

Как видно на рисунке, комплексы имеют практически одинаковую форму,

которая тем не менее может варьироваться в зависимости от разных отведений.

Тем не менее, основные составляющие комплексов находятся на одинаковых местах, что говорит о работоспособности модели с данными параметрами.

Можно сделать вывод, что сконструированный генератор синтетической ЭКГ выполняет свою функцию и синтезирует ЭКГ-подобный сигнал с разными типами комплексов. Основная задача выполнена.

Тем не менее, модель можно улучшить: добавить больше разных классов патологических комплексов, связать разные комплексы с разными отведениями,

так как на разных отведениях комплексы могут иметь разные характеристики,

добавить генерацию помех вроде сетевой помехи, помехи «электрод-кожа»,

миографическую помеху и помехи, связанные с дыханием. Также стоит добавить вариацию параметров комплексов, связанную с разными биопроцессами.

19

Глава 4: Заключение

В ходе работы были рассмотрены способы генерации ЭКГ-подобного сигнала разными методами. Среди них была выбрана модель на основе функций Гаусса (Модель Мак-Шери и Олкина), также известная как модель сглаженных псевдо-производных.

Для реализации данной модели, была разработана программа на языке

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

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

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

помехи «электрод-кожа», миографическую помеху и помехи, связанные с дыханием. Также стоит добавить вариацию параметров комплексов, связанную с разными биопроцессами.

20

Соседние файлы в папке Модель ЭКГ