WETWARE – человеко–компьютерные интерфейсы, биологическая обратная связь, искусственный интеллект, психодиагностика, умный дом


Software

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

Основные блоки программного обеспечения:

1.Блок регистрации и первичной обработки. 
   В этот блок входят средства получения данных с приборов – как нашей собственной разработки, так  и некоторых других – например полисомнографов Sagura (Leonardo), приборов whitestone,  приборов типа «умный дом» X-10 или S10, данных с игровых манипуляторов и устройств ввода (джойстики, рули,  педали,  клавиатура, мышь)  получения данных с удаленных источников через Ethernet и internet (tcp-ip). На настоящий момент поддерживаются подключения приборов через последовательный порт, usb, Bluetooth. В разработке находится подключение системы отслеживания взгляда.Блок регистрации и первичной обработки позволяет получать данные с канала, осуществлять фильтрацию сигнала (FFT, FIR и IIR фильтры произвольной конфигурации визуализировать данные в виде графиков, а также сохранять  данные в различных форматах.

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

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

Б. Операции могут выполняться со значениями в окнах произвольного размера (например, значение виртуального канала является мощностью спектра реального канала в альфа-диапазоне, вычисляемого FFT  в окне размером в 3 секунды).   

С. Операции могут выполняться по условиям и с привязкой к маркерам – специальным отметкам, создаваемым пользователем, системой стимуляции, самой программой по условиям). Например, после появления события (превышения порога показателем) устанавливается маркер, по которому проводится вычисление параметров каналов и их сохранение).

Существует возможность использовать ранее сохраненные настройки виртуальных каналов а также наиболее часто использующиеся настрйоки – например, для расчета параметров КГР по Суходольскому или индексов вариабельности сердечного ритма по Баевскому.Количество каналов и операций ограничено только производительностью компьютера, на котором запущено ПО.

3. Блок импорта-экспорта, сохранения данных и базовой статистики

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

4. Блок хранения сценариев, данных об исследованиях.

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

5. Блок визуализации, обратной связи и стимуляции

Данный блок осуществляет весь спектр обратных связей по условиям в каналах. Каждый вид обратной связи в условиях отсутствия привязки к реальном сигналу является видом стимуляции. Условия могут быть двух видов:1.       Наступление события - преодоление порога показателями канала, появление маркера, наступления определенного момента времени и т.д.2.       Изменения сигнала канала, которому соответствует изменение характеристик обратной связи – например, изменение частоты работы светостимулятора пропорционально изменению мощности в диапазоне альфа-ритма ЭЭГ. Обратная связь, реализованная в программном обеспечении, подразделяется на несколько категорий:А. Акустическая обратная связь.  Включает в себяуправление громкостью и скоростью проигрывания звуковых файлов, балансом их проигрываниия в пространстве 5.1. Управление скоростью и последовательностью смены проигрываемых файлов (например, при увеличении показателей последовательно проигрывается файл 1.wav  2.wav и т.д.).  Управление независимой генерацией тонов для каждого канала. Управление характеристиками предъявляемых картинок – фотографий: размер в двух измерениях, контраст, цветовой баланс. Управление последовательностью  предъявления картинок. Управление характеристиками рисованных 2д и 3д фигур (размеры, цвет).Управление характеристиками проигрывания видеофайлов –в разработке.Б. Визуальная обратная связь. Включает в себя:В. Управление фотостимулятором и стандартными фотостимуляционными очками с помощью контроллера собственной разработки.Г. Управление шаговыми двигателями в широком диапазоне мощностей (независимые двигатели, шасси станка, моторизированная коляска) с помощью собственного контроллера.Д. Управление устройствами Х10 «Умный дом» - приводами жалюзей, комнатным освещением, блоками запуска сценариев, моторизированными клапанами отопления и водоснабжения. А также через релейные механизмы Х10 – любой бытовой и профессиональной аппаратурой, работающей от сети 220 вольт или интегрируемой с ней – например, виброплатформы, компрессоры и системы СИПАП , газобаллонное оборудование и т.д.Е. Управление вводом информации через традиционные средства ввода – с коррекцией или полным перехватом. Например, движение курсора мыши, ввод букв с клавиатуры, отклонение руля или джойстика.  Особенно эффективно как средство осуществления обратной связи во время компьютерной игры. 

6. Блок обработки паттернов и сложного распознавания

Блок находится в разработке. Функционал блока после окончания разработки:

 

  1. реализация на базе системы распознавания образов (например , нейросетевые алгоритмы) виртуальных каналов (вход – реальные каналы, выход – виртуальный канал на основе выхода нейросети).
  2. Использование параметров систем распознавания образов (например, валидности распознавания) в качестве триггеров и условий в работе других блоков.
  3. Формирование контуров адаптивной нелинейной обратной связи с автоматическим формированием сигнала обратной связи по результатам оценки эффективности.
  4. Вычисление паттернов регистрируемых параметров, соответствующих разного рода событиям (например паттерны ЭЭГ, соответствующие моментам ошибок в деятельности).  

 

7. Блок диагностики

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