Скачиваний:
30
Добавлен:
08.04.2022
Размер:
74.73 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Санкт-Петербургский государственный

электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина)

Кафедра БТС

отчет

по лабораторной работе №6

по дисциплине «Методы обработки и анализа биомедицинских сигналов и данных»

Тема: Анализ пульсоксиметрического сигнала

Вариант №1

Студентка гр. 7502

Екимова Н.В.

Студент гр.7502

Дегилевич А.А.

Студент гр.7502

Звягинцев Г.Р.

Преподаватель

Калиниченко А.Н.

Санкт-Петербург

2019

ЛАБОРАТОРНАЯ РАБОТА №6

«АНАЛИЗ ПУЛЬСОКСИМЕТРИЧЕСКОГО СИГНАЛА»

Цель работы: изучение метода расчета уровня насыщения артериальной крови кислородом по пульсоксиметрическому сигналу.

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

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

Для просвечивания используют два источника света:

  1. С длиной волны 600…700 нм (в области красного цвета). В этом диапазоне наблюдается наибольшая разница между оптическими плотностями окисления крови и крови с пониженным содержанием гемоглобина.

  2. С длиной волны 810…960 нм ( в инфракрасной области). В этом диапазоне наблюдается обратный эффект: оптическая плотность крови при ее насыщении кислородом увеличивается.

Параметр SaO2 может быть рассчитан по следующей формуле:

,

где α=Δ2ср1ср, а Δ1ср и Δ2ср – средние значения размаха колебаний сигналов, полученных при длинах волн 650 и 940 нм соответственно.

Размах колебаний пульсоксиметрического сигнала оценивается в интервале между двумя соседними сокращениями сердца. Для вычисления SaO2 используются величины размаха, усредненные по нескольким последовательным сердечным циклам. Границы каждого кардиоцикла могут быть найдены путем обнаружения QRS-комплексов и сигнале ЭКГ. Простейшим методом обнаружения QRS-комплексов является применение порогового правила к дифференцированному и взятому по модулю сигналу.

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

  • Подготовить программу, реализующую алгоритм обнаружения QRS-комплексов ЭКГ

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

РАСЧЕТ ФУНКЦИЙ И ВЫВОД ГРАФИКОВ

  1. Алгоритм обнаружения QRS-комплексов ЭКГ.

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

clc;

close all;

clear all;

X0=250;

Y0=100;

W0=1200;

H0=800;

figure('Position',[X0,Y0,W0,H0])

x1=60;

y1=60;

dx=20;

dy=30;

w=800;

w1=100;

h=150;

h1=30;

xT=x1+w+dx;

yT=y1+h+3*dy;

wT=50;

hT=50;

xE=x1+w+2*dx+wT;

wE=200;

xB=x1+w+3*dx;

yB=y1+h+dy;

hAxes1=axes('Units','pixels','Position',[x1,y1+3*h+3*dy,w,h]);

hAxes2=axes('Units','pixels','Position',[x1,y1+2*h+2*dy,w,h]);

hAxes3=axes('Units','pixels','Position',[x1,y1+h+dy,w,h]);

hAxes4=axes('Units','pixels','Position',[x1,y1,w,h]);

hTxt1=uicontrol('Style','text','String','SaO2=', 'FontSize', 20,...

'Position',[x1+w+dx,y1+2*h+2*dy,w1,h1],'Background',[1 1 1]);

hEd=uicontrol('Style','edit','Position',[x1+w+dx+w1,y1+2*h+2*dy,w1,h1],...

'Background',[1 1 1], 'FontSize', 20);

S=load('R6_01.txt');

N=length(S);

Fs=500;

T=1/Fs;

tmax=N*T;

t=0:T:tmax-T;

ECG=S(1:N,1);

Puls_R=S(1:N,2);

Puls_IR=S(1:N,3);

C=500;

B=[1 0 -1];

M=length(B);

y=zeros(1,N);

for n=M:N

y(n)=ECG(n)-ECG(n-2);

end;

absy=abs(y);

Limit=25;

XLimit(1)=0;

XLimit(2)=tmax-T;

YLimit(1:2)=Limit;

Jmax=100;

k=0;

j=Jmax;

for i=1:N

j=j+1;

if (absy(i)>Limit)&&(j>Jmax)

k=k+1;

QRS(k)=i;

j=0;

end

end

Расчет уровня насыщения крови кислородом:

D1=0;

for i=1:(k-1)

clear m1

m1=Puls_R(QRS(i):QRS(i+1));

D1=D1+(max(m1)-min(m1));

end

D1=D1/(k-1);

D2=0;

for i=1:(k-1)

clear m2

m2=Puls_IR(QRS(i):QRS(i+1));

D2=D2+(max(m2)-min(m2));

end

D2=D2/(k-1);

alp=D2/D1;

SaO2=(0.872-0.16*alp)*100/(0.14*alp+0.754);

axes(hAxes1)

plot(t,ECG);

axes(hAxes2)

plot(t,y);

axes(hAxes3)

plot(t,absy);

line(XLimit,YLimit)

axes(hAxes4)

plot(t,Puls_R);

hold on

plot(t,Puls_IR-C);

YLimits=get(hAxes4,'YLim');

for i=1:k

XLimits(1:2)=QRS(i)*T;

HLine=line(XLimits,YLimits);

set(HLine,'LineStyle','--')

end

set(hEd,'String',num2str(SaO2))

Вид программы отображен на Рисунке 1.

Рис.1 Графическое окно тестовой программы

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

Вывод

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

Соседние файлы в папке Лаба 6