- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Основные положения
- •Задание на выполнение работы
- •Порядок выполнения работы
- •Содержание отчета
- •Вопросы для самоконтроля
- •Содержание
МИНОБРНАУКИ РОССИИ
–––––––––––––––––––––––––––––––––––––
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ»
–––––––––––––––––––––––––––––––––––––
МЕТОДЫ ОБРАБОТКИ БИОМЕДИЦИНСКИХ СИГНАЛОВ
Учебно-методическое пособие
Санкт-Петербург Издательство СПбГЭТУ «ЛЭТИ»
2019
МИНОБРНАУКИ РОССИИ
–––––––––––––––––––––––––––––––––––––
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ»
–––––––––––––––––––––––––––––––––––––
МЕТОДЫ ОБРАБОТКИ БИОМЕДИЦИНСКИХ СИГНАЛОВ
Учебно-методическое пособие
Санкт-Петербург Издательство СПбГЭТУ «ЛЭТИ»
2019
1
УДК 681.2:57.089
Методы обработки биомедицинских сигналов: Учебно-методическое пособие / Сост.: А. Н. Калиниченко. СПб.: Изд-во СПбГЭТУ «ЛЭТИ», 2019. -- с.
Содержит описания лабораторных работ по выполнению математических расчетов, связанных с автоматическим анализом биомедицинских данных, с использованием программного пакета MATLAB.
Предназначено для бакалавров, обучающихся по направлению 12.03.04 «Биотехнические системы и технологии», а также может быть полезно аспирантам по специальности 05.11.17 – «Приборы, системы и изделия медицинского назначения» и научным работникам и инженерам, специализирующимся в области компьютерной обработки биомедицинских сигналов и данных.
Утверждено редакционно-издательским советом университета
вкачестве учебно-методического пособия
©СПбГЭТУ «ЛЭТИ», 2019
2
ВВЕДЕНИЕ
Настоящие методические указания предназначены для выполнения лабораторных работ по дисциплинам «Методы обработки и анализа биомедицинских сигналов и данных» и «Программные средства обработки биомедицинских данных» студентами вузов, обучающимися по направлению подготовки бакалавров 12.03.04 «Биотехнические системы и технологии»..
Целью выполнения лабораторных работ является освоение современных методов компьютерной обработки и автоматического анализа медико-био- логических данных с использованием программного пакета MATLAB.
Цикл лабораторных работ, представленный в данных методических указаниях, включает двенадцать работ и рассчитан на выполнение в течение одного учебного семестра.
Студенты осваивают работу с популярным программным пакетом MATLAB, получают представление о наиболее широко используемых методах и алгоритмах автоматической обработки биомедицинских сигналов и данных, а также на практике знакомятся с типичными задачами, связанными с ис-
пользованием компьютеров в медико-биологических исследованиях.
В методических указаниях лабораторные работы расположены в порядке нарастания сложности выполнения, поэтому рекомендуется в ходе учебного процесса придерживаться этого порядка.
Цикл работ рассчитан на интенсивное освоение учащимися возможностей пакета MATLAB и приемов работы с ним, а также на знакомство учащихся с базовыми сведениями по методам автоматической обработки сигналов. В связи с этим, для усп ешного выполнения работ учащимся может потребоваться использование дополнительных учебных пособий (см. список рекомендованной литературы).
Перед тем как приступать к выполнению работ, необходимо внимательно ознакомиться с разделом «Общие указания», в котором приведены наиболее важные предварительные сведения и рекомендации.
3
Общие указания
Цикл работ рассчитан на использование пакета MATLAB версии R2014 или выше. Кроме того, для выполнения работ необходим комплект файлов с записями реальных электрофизиологических сигналов (см. приложения).
Так как работы рассчитаны на интенсивное освоение пакета MATLAB, то для их успешного выполнения необходима предварительная подготовка к каждому занятию, включающая ознакомление с рассматриваемыми методами обработки биомедицинских сигналов, а также с теми функциями и возможностями MATLAB, которые используются в данной работе.
Важно, чтобы учащиеся с первых же занятий освоили такие базовые элементы пакета MATLAB, как создание и выполнение М-файлов, работа с переменными в рабочем пространстве (Workspace), а также средства отладки (в частности – пошаговый режим и использование точек остановки). Желательно использование какого-либо из учебников по пакету MATLAB.
Для выполнения лабораторных работ необходимо организовать на жестком диске отдельную папку, которая будет использоваться в качестве рабочей. В эту папку перед началом работы должны записываться необходимые файлы с исходными данными, а в ходе выполнения работы – создаваемые программы, а также полученные результаты (графики и файлы с данными).
Для оформления отчетов по выполненным работам учащиеся должны по окончании каждой работы сохранять полученные результаты (согласно указаниям данного методического пособия) в виде файлов в сети Интернет или на устройствах флэш-памяти. Рекомендуется также снабжать получаемые графики пояснительными надписями (см. лаб. раб. 1), а также сохранять их под такими именами, которые содержат нумерацию лабораторных работ.
Внимание: ввиду того, что пакет MATLAB не адаптирован к русскому шрифту, необходимо особо отметить, что во избежание затруднений следует избегать использования русских букв в именах переменных или файлов. Кроме того, используемые имена файлов не должны начинаться с цифр, а также содержать какие-либо символы, кроме английских букв, цифр и символа «_» (подчеркивание).
Также рекомендуется в самом начале всех программ, являющихся сценариями (то есть, не начинающихся с ключевого слова “function”), использовать следующие команды:
close |
all |
% |
Закрытие |
всех |
открытых ранее графических |
окон |
clear |
all |
% |
Удаление |
всех |
созданных ранее переменных |
|
4
В конце методических указаний для каждой из работ приведены вопросы для самоконтроля, предназначенные для подготовки к защите. Кроме того, для успешной защиты любой из работ обучающиеся должны быть готовы к ответу на приведённые ниже общие вопросы, относящиеся ко всем работам:
1.Какой метод обработки биомедицинских сигналов и данных иллюстрирует данная работа?
2.Опишите алгоритм реализации используемого метода (последовательность действий, формулы).
3.Что показано на каждом из полученных графиков, какие величины отложены по осям координат, в каком масштабе и в каких единицах измерения?
4.Какие биомедицинские сигналы используются в данной работе, каково их происхождение, какой у них диапазон возможных значений и частотный состав, в каких единицах они измеряются?
5.Чему равняется частота дискретизации и интервал дискретизации сигналов, используемых в работе?
6.Что означает каждая из команд программы, какие действия она выполняет, что является входными и выходными данными команды?
5
Лабораторная работа 1. ТЕОРЕМА ОТСЧЕТОВ И ЭФФЕКТ НАЛОЖЕНИЯ
Цели работы: получение первоначальных навыков работы с системой MATLAB; исследование теоремы отсчетов и эффекта наложения.
Основные положения
Суть теоремы отсчетов (теоремы Котельникова) состоит в следую-
щем: действительный непрерывный сигнал со спектром, ограниченным в полосе частот 0 < f < Fm, может быть восстановлен по его дискретным отсчетам
при условии, что частота дискретизации Fs > 2Fm.
Эффект наложения состоит в том, что при нарушении теоремы отсчетов (т. е. при выборе недостаточно высокой частоты дискретизации) некоторые частотные составляющие становятся неразличимыми.
Задание на выполнение работы
•Освоить основы работы в системе MATLAB в командном режиме и в режиме использования сценариев (М-файлов). Освоить простейшие способы расчета значений функций и их вывода в графической форме.
•Выполнить исследование эффекта наложения на тестовых синусоидальных сигналах.
•Выполнить исследование эффекта наложения на фрагменте ЭКГ.
Порядок выполнения работы
Основы работы в системе MATLAB. Для выполнения данной и всех последующих работ необходимо организовать на жестком диске отдельную папку, которая будет использоваться в качестве рабочей. В эту п апку перед началом работы должны записываться необходимые для ее выполнения исходные файлы, а в ходе выполнения работы – создаваемые программы, а также полученные результаты (графики и файлы с данными).
1.Запустите систему MATLAB.
2.В главном окне установите путь к рабочей папке.
Команды в MATLAB можно вводить двумя способами: непосредственно в командном окне (Command Window) или в редакторе М-файлов (см. далее).
6
При работе в командной строке команды выполняются непосредственно после их введения, например:
>>d=1+2
d =
3
>>f=d+50
f =
53
Если команда завершается точкой с запятой, то численные результаты (если они имеются) не выводятся в командном окне.
3. Выполните простейшие расчеты по аналогии с показанными выше. Работа в командной строке затрудняется, если требуется вводить много
команд и часто их изменять. Самым удобным способом выполнения команд в MATLAB является использование так называемых М-файлов (или программ), в которых можно набирать команды, выполнять их все сразу или частями, сохранять в файле и использовать в дальнейшем. Для работы с М-файлами предназначен редактор М-файлов. Он вызывается с помощью пункта New на панели инструментов основного окна MATLAB (New→Script).
В редакторе М-файлов программа набирается целиком, а затем запускается командой Run (зелёный значок ► на панели инструментов). Если при наборе сделана ошибка и MATLAB не может распознать команду, то программа выполняется до неправильной команды, а затем в командном окне красным шрифтом выводится сообщение об ошибке.
Расчет функций и вывод графиков. Ниже показана программа, кото-
рая вычисляет и строит график функции, задаваемой формулой y = sin(3x).
X=0:0.02:2*pi; % Создание массива (вектора) значений
%аргумента “X” в диапазоне от 0 до 2π
%с шагом 0,02
Y=sin(3*X); |
% Вычисление массива значений функции |
||
figure(1) |
% Создание окна для вывода |
графиков |
|
plot(X,Y) |
% Вывод графика кривой, координаты точек |
||
title ('Signal’) |
% |
которой заданы массивами |
“X” и “Y” |
% |
Заголовок графика |
|
Пояснения, расположенные правее знака %, являются комментариями, не оказывающими никакого влияния на выполнение программы.
4. В окне редактирования М-файлов наберите текст этой программы (без комментариев) и сохраните его в файле с расширением m.
7
5.Нажав кнопку ► на панели инструментов, выполните программу.
6.Добавьте в программу строку вычисления второго массива по форму-
ле y = 2cos(5x).
7.Чтобы вывести вторую рассчитанную функцию на том же графике, воспользуйтесь следующим образцом:
hold |
on |
% |
сохранение прежнего |
изображения на графике |
plot |
(X,Y2,‘r’) |
% |
график массива “Y2” |
красным (‘r’) цветом |
8.Создайте заголовок графического окна с помощью поля Figure Name панели свойств, которое открывается при выборе в меню графического окна пункта Edit→Figure Properties (не используйте русских букв!)
9.Сохраните график в файле с расширением “png” или “bmp” с помо-
щью пункта меню графического окна File→Save As.
В одном графическом окне может быть размещено несколько полей для вывода графиков. Например, такое окно создается командами:
figure % Создание нового графического окна subplot(3,2,1) % Создание в окне шести полей графиков
% (три ряда по два графика в каждом)
Нумерация полей вывода графиков в графическом окне представлена на рисунке.
График в каком-либо из полей строится
следующим образом:
subplot(3,2,4) % Сделать активным % поле с номером “4”
plot (Y) % Построение графика % значений массива “Y”
1 2
3 4
5 6
10.Дополните программу, создав новое окно с двумя расположенными рядом полями, и выведите в них графики функций, рассчитанных перед этим.
11.Создайте заголовок окна, сохраните графики в файле с расширением “png” или “bmp”, а также текст программы.
Исследование эффекта наложения на тестовых сигналах. Далее при-
водится текст программы, в которой на поле одного графика строятся две кривые: синусоида с частотой F = 30 Гц и амплитудой A = 10, дискретизованная с частотой отсчетов Fs1 = 500 Гц (заведомо достаточной по теореме
отсчетов), и такая же синусоида, дискретизованная с частотой отсчетов Fs2 = = 100 Гц. Диапазон изменения аргументов (t1 и t2) обеихкривых – от 0 до 0,1 с.
8
F=30; |
% Частота колебаний синусоиды (Гц) |
A=10; |
% Амплитуда синусоиды |
tmax=0.1; |
% Верхний предел изменения аргумента (с) |
Fs1=500; |
% Первая частота дискретизации (Гц) |
Fs2=100; |
% Вторая частота дискретизации (Гц) |
T1=1/Fs1; |
% Интервал дискретизации для частоты “Fs1” |
t1=(0:T1:tmax); |
% Диапазон изменения аргумента 1-го графика |
T2=1/Fs2; |
% Интервал дискретизации для частоты “Fs2” |
t2=(0:T2:tmax); |
% Диапазон изменения аргумента 2-го графика |
Y1=A*cos(2*pi*F*t1);% Расчет синусоиды для 1-го графика |
|
figure |
% Создание окна для отображения графиков |
plot(t1,Y1) |
% Построение первого графика |
hold on |
% Сохранение графического окна |
Y2=A*cos(2*pi*F*t2);% Расчет синусоиды для 2-го графика |
|
plot(t2,Y2,'r') |
% Построение второго графика |
12.Откройте новый М-файл и сохраните его под каким-нибудь именем.
13.Используя в качестве образца приведенный пример, создайте программу, которая рассчитывает и отображает в трех расположенных друг под другом графических полях одного окна графики синусоид с амплитудой A и частотами F, Fs2 + F и Fs2 – F (соответственно – в верхнем, среднем и ниж-
нем полях) для частот дискретизации Fs1 и Fs2. Значения величин F, A, tmax, Fs1 и Fs2 для конкретного варианта возьмите из табл. П.1 приложения.
В случае правильного выполнения последнего задания на графиках должно быть видно, что при более низкой частоте дискретизации (Fs2) сигна-
лы в точках взятия отсчетов одинаковы для всех трех случаев (т. е. не ра зличимы между собой), что и иллюстрирует эффект наложения.
14.Создайте заголовок окна, разверните окно на весь экран, сохраните графики в файле с расширением “png” или “bmp”, а также текст программы.
Исследование эффекта наложения на сигнале ЭКГ. В файлах, имена которых указаны в табл. П.1, содержатся фрагменты записей ЭКГ при искусственной электрокардиостимуляции сердца. Для всех записей частота дискретизации Fs = 1200 Гц.
15.В рабочую папку перепишите файл с записью ЭКГ.
Ниже приведена команда чтения фрагмента ЭКГ из файла “W1_00.txt”:
Y=load('W1_00.txt'); % Чтение значений из файла в массив “Y”
9
Путем прореживания отсчетов их частота может быть понижена. Ниже приведен фрагмент программы, где выполняется прореживание исходного сигнала и построение графика:
LY=length(Y);% Определение числа прочитанных отсчетов
Fs=1200; |
% Частота отсчетов ЭКГ |
|
T=1/Fs; |
% Интервал дискретизации для исходной частоты |
|
tmax=LY*T; |
% Размер фрагмента сигнала (с) |
|
K1=6; |
% Коэффициент прореживания |
|
Fs1= Fs/K1; |
% Более низкая частота (здесь Fs1=1200/6=200 Гц) |
|
T1=1/Fs1; |
% Интервал дискретизации для частоты “Fs1” |
|
t1=0:T1:tmax-T1; |
% Диапазон изменения аргумента для "Fs1" |
|
LY1=LY/K1; |
|
% Размер массива для частоты "Fs1" |
for i=1:LY1 |
|
% Цикл для “i” от 1 до “LY1”, в |
Y1(i)=Y((i-1)*K1+1); % котором создается массив прореженных |
||
end |
|
% в “K1” раз отсчетов |
plot(t1,Y1) |
% Построение графика прореженного сигнала |
16. Создайте программу, которая читает заданный для варианта файл и отображает в трех расположенных друг под другом графических полях сигнал с исходной частотой 1200 Гц и сигналы, прореженные в K1 и K2 раз (ко-
эффициенты прореживания возьмите из табл. П.1).
17. Разверните графическое окно на весь экран. Если на полученных графиках масштабы по оси y получились разными, приведите их к одинаковым значениям, пользуясь пунктом меню графического окна Properties. То же самое можно сделать и непосредственно из программы при помощи команды set, например:
set(gca,‘YLim’,[-1.5 1.5]).
Здесь gca означает обращение к текущему активному графику (get current axis), ‘YLim’ – свойство графика, определяющее пределы по оси “Y”, а значения
вквадратных скобках – конкретные устанавливаемые пределы.
Вслучае правильного выполнения данного задания на графиках должно быть видно, что при понижении частоты дискретизации в сигнале начинают пропадать высокочастотные элементы (в частности – импульсы электрокардиостимулятора), что свидетельствует о недостаточно высокой частоте отсчетов (т. е. о нарушении условий теоремы Котельникова).
18.Создайте заголовок окна, сохраните графики в файле с расширением “png” или “bmp”, а также текст программы.
10