- •Методы обработки биомедицинских сигналов и данных
- •Методы обработки биомедицинских сигналов и данных
- •Введение
- •Общие указания
- •Лабораторная работа 1. Теорема отсчетов и эффект наложения
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 2. Цифровая фильтрация экг
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 3. Корреляционный анализ ээг
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 4. Спектральный анализ экг
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 5. Адаптивный фильтр сетевой наводки
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 6. Анализ пульсоксиметрического сигнала
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 7. Расчет корреляционной матрицы ээг
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 8. Классификация экг с помощью вкф
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 9. Векторкардиограмма
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 10. Методы ритмокардиографии
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 11. Вариабельность сердечного ритма
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Лабораторная работа 12. Исследование ритмов ээг
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Список рекомендованной литературы
- •Приложение. Таблицы вариантов для работ
- •Содержание
- •1 97376, С.-Петербург, ул. Проф. Попова, 5
Содержание отчета
Название, цель и задачи работы.
Текст программы.
Объяснение полученных результатов и выводы.
Лабораторная работа 10. Методы ритмокардиографии
Цель работы: ознакомление с методами ритмокардиографии, построение графиков ритмограммы, гистограммы и скаттерограммы.
Основные положения
Ритмокардиография – это метод оценки ритма сердца, основанный на графическом представлении последовательности значений длительности кардиоцикла (RR-интервалов). Используются три вида графиков:
ритмограмма – зависимость значений длительности RR-интервала от порядкового номера цикла измерения;
гистограмма – относительное число RR-интервалов, относящихся к различным диапазонам значений их длительности;
скаттерграмма – двумерное отображение ритма сердца, которое строится как совокупность точек, координаты каждой из которых на плоскости соответствуют величинам двух смежных RR-интервалов.
Для количественной оценки вариабельности сердечного ритма рассчитываются некоторые статистические показатели, в частности:
среднее значение (RRср);
минимальное и максимальное значения (RRmax, RRmin);
вариационный размах (dRR, разность между RRmax и RRmin);
мода (Mo, наиболее часто встречающееся значение, соответствует максимуму гистограммы);
амплитуда моды (AMo, максимум гистограммы в %).
Задание на выполнение работы
Построить графики ритмограммы, гистограммы и скаттерграммы для реальных записей сигнала сердечного ритма.
Порядок выполнения работы
В файлах, имена которых указаны в табл. П.10 приложения, содержатся фрагменты реальных записей сигнала сердечного ритма.
Запустите систему MATLAB, установите в главном окне путь к рабочей папке и перепишите в нее файл с записью сигналов, соответствующий варианту.
Файл содержит три столбца (по 450 строк в столбце) значений RR-интервалов: в норме (первый столбец), при наличии желудочковых экстрасистол (второй столбец) и при мерцательной аритмии (третий столбец).
С
оздайте
новый М-файл и сохраните его под
каким-нибудь именем.
Создайте рабочее окно программы по образцу, приведенному на рисунке, и разместите на нем раскрывающееся меню выбора сигнала (поле 1, см. ниже) и 3 поля для вывода графиков (2–4). Рекомендуется задать ширину поля 2 равной 900 пикселам.
Раскрывающееся меню создается аналогично окну редактирования (см. лаб. раб. 5), но с указанием другого стиля объекта ('popupmenu'):
hMenu1=uicontrol('Style','popupmenu','Position',[x,y,w,h]);
set(hp,'BackgroundColor','white'); % Белый цвет фона
Укажите в качестве значения свойства ‘Callback’ имя программы, которая будет вызываться при выборе строки в этом меню, например:
set(hMenu1,'Callback','R10_P2');
Определите надписи для четырех строк меню, например:
set(hMenu1, 'String', {'No Signal','Normal Rhythm', ...
'Extrasystoles', 'Atrial Fibrillation'});
Здесь создаются строки меню для четырех следующих случаев: отсутствие сигнала, выбор нормального ритма, желудочковой экстрасистолии, мерцательной аритмии.
Загрузите заданный файл в какую-нибудь переменную при помощи команды load.
Процедуру построения графиков следует оформить в виде специальной функции, размещенной в отдельном файле. Задачей данной функции будет построение ритмограммы, гистограммы и скаттерграммы для выбранной при помощи меню записи сигнала. При выборе строки меню, соответствующей отсутствию сигнала, поля графиков должны очищаться.
Создайте новый М-файл и сохраните его под именем, совпадающим с указанным в качестве свойства ‘Callback’ раскрывающегося меню.
В качестве первого оператора должно стоять объявление функции. Название функции должно совпадать с именем M-файла, например:
function R10_P2() % Имя M-файла должно быть «R10_P2.m»
Определите номер выбранной строки раскрывающегося меню:
r=get(hMenu1,'Value');
В случае если номер строки равен 1, очистите все графические поля и выполните возврат из функции, например:
axes(hAxes2); % Активизация поля 2
cla % Очистка поля 2
... % По аналогии: активизация и очистка полей 3 и 4
return % Возврат из функции
Если выбраны строки меню 2–4, то программа должна строить графики для выбранного сигнала (столбца матрицы, загруженной из файла).
Прочтите выбранный столбец матрицы в отдельный массив:
RR=RR3(:,r-1); % Здесь RR3 – матрица, введенная из файла
Выполните расчет координат линий ритмограммы и ее построение:
axes(hAxes2); % Активизация поля 2
cla % Очистка поля 2
hold on
for i=1:450
x(1)=i; % Абсцисса начала линии
x(2)=i; % Абсцисса конца линии
R(1)=0; % Ордината начала линии
R(2)=RR(i); % Ордината конца линии
plot(x,R); % Построение очередной линии
end
Для получения более наглядного графика рассчитайте верхний предел по оси ординат как 1,2 от максимального RR-интервала и установите соответствующий предел для ритмограммы:
maxRR=max(RR)*1.2;
set(hAxes2,'YLim',[0 maxRR])
Постройте в поле 3 нормированную гистограмму RR-интервалов:
axes(hAxes3) % Активизация поля 3
dH=0.05; % Шаг гистограммы (50 мс)
X=0:dH:maxRR; % Переменная по оси абсцисс (RR-интервал, с)
H=histc(RR,X); % Расчет гистограммы
SH=sum(H); % Сумма гистограммы (число RR-интервалов)
PH=H/SH*100; % Получение гистограммы в %
bar(X,PH,'histc') % Построение гистограммы
Установите предел графика гистограммы по оси ординат равным 1,2 от максимума гистограммы
maxh=max(PH)*1.2;
Постройте в поле 4 график скаттерграммы
axes(hAxes4) % Активизация поля 4
NRR=length(RR); % Общее число RR-интервалов
plot(RR(1:NRR-1),RR(2:NRR),'.'); % Построение скаттерграммы
Установите пределы графиков скаттерграммы по обеим осям равными 1,2 от максимального RR-интервала.
Рассчитайте статистические параметры вариабельности сердечного ритма, описанные в разделе «Основные положения»:
RRsr=mean(RR); % Средний RR-интервал
RRmin=min(RR); % Минимальный RR-интервал
RRmax=max(RR); % Максимальный RR-интервал
dRR=RRmax-RRmin; % Вариационный размах
[AMo,iMo]=max(PH); % Амплитуда моды и индекс моды
Mo=iMo*dH; % Мода
В левом верхнем углу поля 3 выведите в столбец обозначения и значения всех рассчитанных величин, пользуясь следующим примером:
axes(hAxes3) % Активизация поля 3
xt=maxRR/20; % Отступ от левого края графика
yt=maxh; % Верхний край графика
dyt=maxh/15; % Отступ от верхнего края графика
% Вывод среднего интервала с преобразованием в текстовый вид:
text(xt,yt-dyt,['RRsr=' num2str(RRsr) ' c'])
... % Вывод по аналогии остальных величин
Не забудьте во всех подготовленных программах объявить как global переменные, являющиеся общими для этих программ (см. лаб. раб. 5).
Запустите основную программу. При помощи раскрывающегося меню выберите поочередно все три варианта сигналов сердечного ритма. Сохраните копии окна программы для всех вариантов.
