Векторкардиограмма

Тип работы:
Лабораторная работа
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Векторкардиограмма

Цель работы: ознакомление с методом векторкардиографии.

Основные положения

Векторкардиография — это метод исследования сердца, основанный на регистрации изменений за сердечный цикл суммарного вектора электродвижущих сил сердца в проекции на плоскость. Векторкардиографическая кривая строится по трем отведениям X, Y и Z (система отведений Франка), которые являются ортогональными отведениями, т. е. их оси перпендикулярны друг другу. Синхронная запись ортогональных сигналов в векторкардиографии позволяет выявить наиболее существенные пространственно-временные эволюции биоэлектрической активности сердца и, следовательно, порождающего его электрофизиологического процесса.

Задание на выполнение работы

· Построение графиков ЭКГ в трех ортогональных отведениях.

· Построение двумерных и трехмерных ВКГ для всей записи ЭКГ.

· Построение ВКГ для фрагментов ЭКГ, содержащих кардиоциклы классов «норма» и «патология».

Обработка результатов

вариант

Имя файла

8

R0908. txt

Данная лабораторная работа была организована с помощью четырех программ — головной и трех функциональных.

Головная программа (lab9prog1) выполняет построение графиков ЭКГ в трех отведениях, установку маркеров, а так же вызывает на выполнение остальные три функции.

векторкардиограмма сердце сердечный цикл

Для организации процедуры построения ВКГ используется программа lab9prog2, которая представляет собой функцию, выполняющую построение ВКГ для того участка ЭКГ, который в данный момент отмечен маркерами.

Две оставшиеся программы (get_t1 и get_t2) вызываются при вводе новых значений в поле редактирования головной программы. Каждая из этих программ выполняет следующие действия:

считывает и преобразовывает в число введенное значение;

проверяет значение на допустимость;

удаляет ранее нарисованный маркер;

рисует маркер в новом положении;

строит ВКГ для нового положения маркера.

Эти программы используются для построения ВКГ для различных фрагментов записи ЭКГ.

· lab9prog1

global hAxes3 hAxes4 hAxes5 hAxes6 hAxes7 X Y Z T t1 t2 Lim Mark1 hEdit1 N hEdit2 Mark2

Fd=250;

tmax=8;

T=1/Fd;

t=0: T: tmax-T;

x0=50;

y0=70;

w0=1200;

h0=600;

figure ('Position', [x0,y0,w0,h0])

x1=160;

y1=50;

w1=80;

h1=40;

w3=1080;

h3=300;

w4=180;

h4=180;

w7=250;

h7=230;

dx=100;

dy=55;

hAxes3=axes ('Units','pixels','Position', [x1,y1+h4+dy+30,w3,h3])

hAxes4=axes ('Units','pixels','Position', [x1,y1,w4,h4])

hAxes5=axes ('Units','pixels','Position', [x1+w4+dx, y1, w4,h4])

hAxes6=axes ('Units','pixels','Position', [x1+2*w4+2*dx, y1, w4,h4])

hAxes7=axes ('Units','pixels','Position', [x1+3*w4+3*dx, y1−10,w7,h7])

hEdit1=uicontrol ('Style', 'edit', 'Position', [x1,y1+h4+2*dy+h3,w1,h1], 'Backgroundcolor', [1 1 1], 'HorizontalAlignment','left');

hBtn1=uicontrol ('Style', 'pushbutton', 'String', 'Mark1', 'Position', [x1+w1+10,y1+h4+2*dy+h3,w1, h1], 'Callback', 'get_t1');

hEdit2=uicontrol ('Style', 'edit', 'Position', [x1+2*w1+20,y1+h4+2*dy+h3,w1,h1], 'Backgroundcolor', [1 1 1], 'HorizontalAlignment','left');

hBtn2=uicontrol ('Style', 'pushbutton', 'String', 'Mark2', 'Position', [x1+3*w1+30,y1+h4+2*dy+h3,w1, h1], 'Callback', 'get_t2');

XYZ=load ('R0908. txt');

N=length (XYZ);

X=XYZ (:, 1);

Y=XYZ (:, 2);

Z=XYZ (:, 3);

axes (hAxes3)

plot (t, X);

hold on

plot (t, Y-1. 2,'r')

hold on

plot (t, Z-2. 2,'g')

hold on

t1=0;

t2=t (N);

Lim=get (hAxes3,'YLim')

Mark1=plot ([t1 t1], [Lim (1) Lim (2)],': k');

Mark2=plot ([t2 t2], [Lim (1) Lim (2)],': k');

set (hEdit1,'String', num2str (t1));

set (hEdit2,'String', num2str (t2));

lab9prog2 ()

· lab9prog2

function lab9prog2 ()

global T t1 t2 hAxes4 hAxes5 hAxes6 hAxes7 X Y Z

i1=fix (t1/T) +1;

i2=fix (t2/T);

axes (hAxes4)

plot (X (i1: i2), Y (i1: i2))

title ('XY')

grid on

axes (hAxes5)

plot (X (i1: i2), Z (i1: i2))

title ('XZ')

grid on

axes (hAxes6)

plot (Y (i1: i2), Z (i1: i2))

title ('YZ')

grid on

axes (hAxes7)

plot3 (X (i1: i2), Y (i1: i2), Z (i1: i2))

title ('XYZ')

grid on

· get_t1

function get_t1 ()

global hAxes3 hAxes4 hAxes5 hAxes6 hAxes7 X Y Z T t1 t2 Lim Mark1 hEdit1 N

str=get (hEdit1,'String');

t1=str2double (str);

if t1< 0

t1=0;

elseif t1> t2

t1=t2;

end

axes (hAxes3)

delete (Mark1);

Mark1=plot ([t1 t1], [Lim (1) Lim (2)],': k');

set (hEdit1,'String', num2str (t1));

lab9prog2 ()

· get_t2

function get_t2 ()

global t1 t2 Mark2 hEdit2 hAxes3 t N Lim

str=get (hEdit2,'String');

t2=str2double (str);

if t2< 0

t2=0;

elseif t2> t2

t2=t2;

end

axes (hAxes3)

delete (Mark2);

Mark2=plot ([t2 t2], [Lim (1) Lim (2)],': k');

set (hEdit2,'String', num2str (t2));

lab9prog2 ()

end

ВКГ для всей записи целиком:

ВКГ для кардиоцикла фонового ритма сердца:

ВКГ для патологического кардиоцикла:

Выводы

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

Анализируя полученные результаты, можно сказать, что по графикам ВКГ отчетливо видна разница между нормальным сердечным ритмом и патологией.

ПоказатьСвернуть
Заполнить форму текущей работой