Назад в библиотеку

Разработка тренажерного комплекса «Виртуальная шахта» на базе платформы Microsoft Kinect

Авторы: Бабков В.С., Гузий Н.В., Подлинный А.С.
Источник: Четверта міжнародна науково-технічна конференція “Моделювання та комп’ютерна графіка” — Донецьк, ДонНТУ — 5-8 жовтня 2011 р. http://ea.donntu.ru:8080/jspui/bitstream/123456789/2890/1/c_05.pdf

Аннотация

Бабков В.С., Гузий Н.В., Подлинный А.С. - Разработка тренажерного комплекса «Виртуальная шахта» на базе платформы Microsoft Kinect Описана задача построения тренажерных систем для обучения персонала шахты действиям в условиях аварийных ситуаций. Описан выбор платформы для построения системы, приведена архитектура тренажера, а также описана реализация базовой версии-прототипа.

Введение

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

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

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

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

В данной работе описывается построение тренажерного комплекса «Виртуальная шахта» с использованием современных платформ виртуальной реальности.

Выбор платформы для реализации системы

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

Толчком к появлению недорогих и функциональных решений в данной области послужило бурное развитие игровой индустрии. В 2010 г. компания Microsoft выпустила на рынок продукт «Kinect» [1].

Устройство было спроектировано и разработанный компанией Microsoft как контроллер для игровой консоли Xbox 360 Он разрешает взаимодействовать с Xbox с помощью устных команд, поз тела, мимики лица.
Платформа Kinect представляет собой сочетаний устройства и комплекта библиотек и драйверов, обеспечивающих программный доступ к устройству.
На данный момент платформа Kinect обеспечивает:

- построение карты глубины помещения и отделение силуэта человека от фона;

- отслеживание объектов (идентификацию отдельных персон и идентификация их перемещения);

- скелетирование (построение виртуального скелета человека);

- распознавание и отслеживание перемещения отдельных частей тела с предоставлением координат в пространстве;

- идентификацию простых жестов;

- считывание и запись видео и фото данных с камер устройства;

- дистанционное перемещение камер с помощью сервопривода и обеспечение обратной связи с помощью акселерометра.

В качестве программных библиотек могут быть использованы открытые решения, например, библиотека OpenNI [2] или закрытое решение от Microsoft (Kinect SDK) [1].

Все вышесказанное приводит к тому, что платформа Kinect выглядит оптимальным решением для построения интерфейса человек-система в рамках разрабатываемого тренажерного комплекса. Дополнительным аргументом в пользу данного выбора является огромное количество открытых проектов и каркасов для обработки данных от устройства Kinect c помощью, например библиотеки Open CV [3].

Архитектура системы

Для реализации тренажерного комплекса была предложена следующая структурная схема: рис. 1.
структурная схема
Рисунок 1 – Общая схема тренажерного комплекса
На первом этапе разработки тренажер предлагается представить в виде программной системы, обеспечивающей формирование виртуального мира и его визуализацию на экране компьютера или проектора. Исходными данными для работы системы является модель виртуального мира и данные о положении человека, непрерывно подаваемые на вход программы от устройства Kinect.

Таким образом, первая базовая версия комплекса представляет собой простейший симулятор с бесконтактной реализацией интерфейса человек-система, без средств обратной связи.
Подробная структура программной части комплекса показана на рис. 2.
структура программной части комплекса

Рисунок 2 – Структура программных модулей системы

Данные о модели виртуального мира представляют собой топологию шахты (геометрию выработок и т.п.) и сценарий (множество артефактов виртуального мира, условия взаимодействия с пользователем и т.п.). Топология шахты сохраняется в БД (на данный момент используется СУБД FireBird [4]). Основу системы составляет так называемый игровой движок, которые реализует построение модели текущего участка мира, отрабатывает заданный сценарий и помещает данные о персонаже в виртуальный мир. Для реализации разнообразных физических эффектов используется движок PhysX [5]. Данные о положении человека в пространстве считываются через драйвер и библиотеку OpenNI и обрабатываются разработанной библиотекой обработки жестов. На данный момент система реализует такой набор команд управления
-наклон туловища вперед - перемещение вперед;

- наклон туловища назад - перемещение назад;

- наклон туловища влево - перемещение влево;

- наклон туловища вправо - перемещение вправо;

- поворот туловища влево - поворот влево;

- поворот туловища вправо - поворот вправо;

- наклон главы назад - поворот головы вверх;

- наклон главы вниз - поворот головы вниз.

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

Выводы

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

Список литературы

1. Kinect for Windows SDK from Microsoft Research [Электронный ресурс] – Режим доступа

http://research.microsoft.com/en-us/um/redmond/projects/

2. OpenNI framework [Электронный ресурс] – Режим доступа:

http://www.openni.org/.

3. OpenCV library [Электронный ресурс] – Режим доступа:

http://sourceforge.net/projects/opencvlibrary/.

4. FireBird – unversal open-source database [Электронный ресурс] – Режим доступа:

http://www.firebirdsql.org/.

5. PhysX technology [Электронный ресурс] – Режим доступа:

http://www.nvidia.com/object/physx_new.html.