77214

Cоздание дискретизирующего фильтра для обработки электроокулограмм. Обеспечение работы и настройки фильтра в режиме реального времени

Курсовая

Коммуникация, связь, радиоэлектроника и цифровые приборы

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

Русский

2015-02-02

512 KB

1 чел.

PAGE  9

Кафедра системного программирования

математико-механического факультета СПбГУ

Научный руководитель: Дмитрий Романович Белов,

доцент биолого-почвенного факультета СПбГУ, преподаватель.

Медведев Алексей Михайлович, 445 группа

Курсовая работа на тему:

«Cоздание дискретизирующего фильтра

для обработки электроокулограмм.

Обеспечение работы и настройки фильтра в режиме реального времени»

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

2009 г

1. Введение

В рамках научных исследований движений глаз человека сотрудниками биолого-почвенного факультета СПбГУ проводились эксперименты, в ходе которых на коже вокруг глаз человека закреплялось 4 электрода, с помощью которых снимались броски потенциала, возникающие на коже вокруг глаз при движениях глазного яблока (рис. 1).

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

Рис. 1. Расположение электродов на лице испытуемого

для снятия электроокулограмм

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

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

Рис. 2. Примеры отражения саккадических движений на ЭОГ

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

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

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

2. Постановка задачи

Несмотря на перечисленные трудности, сотрудниками биолого-почвенного факультета СПбГУ было принято решение о разработке описанного выше проекта управления компьютером без участия мыши на основе указанной методики распознавания движений глаз человека. Для программирования фильтров обработки получаемых с электродов электроокулограмм были привлечены студенты кафедры системного программирования математико-механического факультета СПбГУ.

Центральной частью данной работы была выбрана разработка дискретизирующего фильтра на основе «детектора ступеней» для комплексной обработки четверки сигналов ЭОГ. На вход такого фильтра должны поступать четыре сигнала ЭОГ, подвергнутые мягкой цифровой фильтрации при помощи динамического сглаживающего экспоненциального фильтра, в виде четырех массивов значений функции, описывающей зависимости величин бросков разности потенциалов от времени. Обработанные экспоненциальным фильтром графики ЭОГ показаны на рис. 3.

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

Рис. 3. Результат работы экспоненциального фильтра Колодяжного

В качестве важнейшего требования к фильтру была предъявлена необходимость работы алгоритма фильтра в режиме реального времени, то есть по ходу формирования ЭОГ и фильтрации ее экспоненциальным фильтром (который также отрабатывает «на ходу»). Далее, отфильтрованные таким образом сигналы должны были анализироваться следующим узлом системы на предмет взаимного расположения ступеней в рамках каждого ненулевого участка графиков. После этого на основе полученных результатов в режиме реального времени оставалось устанавливать амплитуду и направление движения глазных яблок испытуемого, классифицировать эти данные и направлять в нужную сторону курсор или запускать обработку события моргания.


3. Описание работы алгоритма

В основе алгоритма фильтра лежит механизм последовательного анализа значений бросков разности потенциалов с разбиением всего графика ЭОГ на участки и их классификацией по нескольким группам для дальнейшей обработки. Основными группами являются: участок затухания сигнала (в этом случае осуществляется сведение значений функции к нулю), участок роста или убывания (рост и убывание характеризуют броски взгляда в ту или иную сторону в горизонтальной или вертикальной плоскости; в этом случае организуется приведение графика к монотонно-ступенчатому виду), участок появления нового импульса (такой участок символизирует о вероятном последующем участке роста или убывания, поэтому на этом этапе производится подготовительная работа). Классификация по группам осуществляется на основе анализа предыдущих и текущего значений. Приведение графика к монотонно-ступенчатому виду осуществляется с помощью циклического буфера, в котором агрегируются значения до обработки на предыдущих моментах времени, что позволяет в нужный момент (это происходит как раз на этапе появления нового импульса) засечь начало ступени (высота текущей ступени будет равна текущему значению) и определенному настройками числу следующих точек графика придавать это значение (именно эта настройка регулирует длину ступени). В том случае, если в рамках одного участка роста или убывания сведение значений функции к величине высоты текущей ступени должно быть завершено по причине достижения этой ступенью ограничения по длине, засекается начало новой ступени. Работа над этим алгоритмом велась совместно с Храмцовой Еленой (математико-механический факультет СПбГУ, 445 группа). При таком подходе скорость роста монотонно-ступенчатой функции действительно зависит от величины броска разности потенциалов, а экстремум на соответствующем участке – от амплитуды движения глазных яблок. (Сами параметры величины броска потенциалов и амплитуды движения глазных яблок, очевидно, определяют вид исходных графиков ЭОГ).

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

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

Кроме того, был разработан механизм для изменения параметров фильтра (прежде всего длины ступеней) в режиме онлайн, то есть по ходу работы фильтра.

4. Полученные результаты

В конечном итоге был разработан прототип на платформе Borland C++ Builder 6, удовлетворяющий поставленным требованиям, участок результата работы которого представлен на рис. 4.

 

Рис. 4. Результат работы дискретизирующего фильтра

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

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


 

А также другие работы, которые могут Вас заинтересовать

21042. Виртуальные машины 207.5 KB
  Опять же необходимо указать имя и место сохранения создаваемого диска. Поэтому сразу выберите место для сохранения с учетом достаточности свободного пространства на реальном разделе жесткого диска. Отмечу некоторые особенности: к системе можно подключить три жестких диска. Напоследок рассмотрим процедуру создания нового виртуального жесткого диска.
21043. УСТАНОВКА ВИРТУАЛЬНОЙ МАШИНЫ и ОС WINDOWS XP 763 KB
  Представьте как это удобно если вы хотите разрешить виртуальной машине полный доступ к вашим файлам на реальной машине. При выборе этого пункта создается лишь файл виртуальной машины без дефолтного железа после чего открывается окно настройки и на образ навешиваются и настраиваются дополнительные виртуальные комплектующие сетевые адаптеры образа дисков и прочее. Нажмите кнопку Next На третьем экране нам предлагают ввести имя нашей виртуальной машины и место где мы ее разместим на физическом диске компьютера.
21044. Работа с файлами и дисками в ОС Windows XP 161.46 KB
  В 32битной ОС Windows XP в виде командной оболочки методом эмуляции реализован режим MSDOS позволяющий выполнять все указанные выше действия по работе с файлами и дисками. Подготовка к выполнению лабораторной работы К числу основных команд и служебных утилит используемых при работе с файлами дисками и томами в ОС Windows XP посредством командной оболочки относятся: Assoc Attrib Cacls Cd Chdir Chkdsk Chkntfs Comp Compact Convert Copy Date Del Dir Diskcomp Diskcopy Erase Fc Find Findstr Format Label Md Mkdir Move...
21045. Патофизиология гемостаза 37.5 KB
  Этиология патогенез и патогенетическая терапия наследственной и приобретенной патологии сосудистотромбоцитарного гемостаза. Этиология патогенез и патогенетическая терапия вторичных нарушений коагуляционного гемостаза. Функции системы гемостаза: В норме поддержание жидкого состояния крови При патологии повышение свертываемости крови Патология гемостаза делится на 2 группы: гиперкоагуляция гипокоагуляция МЕХАНИЗМЫ ГЕМОСТАЗА а тромбоцитарнососудистый б коагуляционный Оба механизма включаются одновременно.
21046. Патофизиология почек и кислотно-щелочного равновесия 19 KB
  ПЛАН ЛЕКЦИИ : Определение и классификация почечной недостаточности. Этиология патогенез принципы диагностики и патогенетической терапии острой почечной недостаточности. Этиология патогенез принципы диагностики и патогенетической терапии хронической почечной недостаточности. Классификация почечной недостаточности по этиопатогенезу: Преренальная характеризуется нарушением притока крови по a.
21047. Патофизиология язвенной болезни, голодание 54.5 KB
  Цель лекции: Изучить этиологию патогенез и принципы терапии язвенной болезни желудка и двенадцатиперстной кишки. Язвенная болезнь – это заболевание с наследственной предрасположенностью с полигенным типом наследования основным морфологическим субстратом которой является формирование одиночного либо множественных язвенных дефектов на слизистой желудка либо ДПК. Наиболее часто язвенные дефекты формируются в антральном отделе желудка и в луковице ДПК. Язвы тела и дна желудка наблюдаются редко и рассматриваются как предраковые изменения.
21048. Патофизиология экстремальных состояний 23 KB
  Рассмотреть вопросы этиологии патогенеза и патогенетической терапии шока коллапса комы и обморока. Определение виды патогенез принципы патогенетической терапии шока. Характеристика шока. Классификация шока.
21049. Общий адаптационный синдром (стресс) 17 KB
  Дать патофизиологическую оценку стадиям стресса. Определение стресса виды стресса. Патофизиологическая характеристика Дистресса. Впервые описал оси стресса и дал их патофизиологическую оценку.
21050. Предмет, методы и задачи патологической физиологии. История патологической физиологии. Общая нозология 31 KB
  Характеристика этиологии патогенеза цепи патогенеза определение понятий здоровье и болезнь. В его основе лежит цепь патогенеза. Цепь патогенеза: стержневой механизм формирования болезни. Следующие друг за другом важнейшие факторы патогенеза связанные между собой причинноследственными взаимоотношениями.