От кино до биометрии: как в РФ улучшают технологию захвата и отслеживания движений
Тамбовские ученые усовершенствовали motion captureТехнология захвата движений (она же motion capture) активно применяется довольно долгое время.
Пока что ее применение ограничивается в основном развлекательной индустрией. С ее помощью делают анимации для персонажей в компьютерных играх, и, например, такие любимые многими мультфильмы и фильмы про нечисть и прочих сверхъестественных существ ( тот же Голлум из "Властелина колец" создан с помощью motion capture).
Авторы игр и фильмов не стесняются заходить еще дальше — использовать захват движений не только для создания хорошей картинки на экране, но и для управления внутри самой игры.
Правда, здесь разработчики сталкиваются с целым рядом ограничений, неудобств и просто подзадач, из-за которых захват движения пока что не смог заменить все остальные виды управления. Ключевая проблема — точность считывания движений, которую пока никому не удалось довести до уровня, который, позволил бы корректно считывать, например, мелкую моторику.
Со схожими проблемами сталкиваются и те разработчики, которые работают не над развлечениями, а над прикладными технологиями: помочь в быту инвалидам или создать интуитивно понятное управление для роботов, и много еще чего.
Возникает логичный вопрос — если основа для технологии уже есть, то как ее улучшить? Как сделать точнее, мощнее, проще, а главное — дешевле для всех?
В решении именно этой проблемы сделали важный шаг наши ученые из Тамбовского государственного технического университета. Сейчас расскажем, что же у них получилось.
Улучшение качестве захвата движений: постановка проблемы
Для начала технари проанализировали, какие методы захвата движений были уже разработаны, чтобы выбрать наиболее результативный.
Всего ученые таких систем насчитали пять:
- Системы, опирающиеся на инерционные датчики— эти системы опираются на то, что датчики передвигаемых частей считывают скорости и ускорения, и на основе этих вычислений говорят о том, куда именно этот датчик переместился. Чаще всего их можно заметить в развлекательной индустрии — если вы смотрите ролики про работу игроделов и киноделов «за кадром», то можете увидеть датчики на актерах, которые одеты в черные костюмы со множеством белых шариков.
- Лазерные системы позиционного слежения — в этом варианте датчики, испускающие инфракрасные лучи, ставятся на стенах. Перемещения тел, деталей и прочего отслеживаются за счет измерения прерываний луча, изменения его длины и прочих важных характеристик.
- Системы с магнитными датчиками — в этом варианте перемещения отслеживаются за счет изменения электромагнитных полей, которые воспринимают датчики.
- Оптические с маркерами — во многом похожи на системы с инерционными датчиками, однако перемещения в этом случае отслеживаются за счет трекинга маркеров заранее заготовленной камерой.
- Безмаркерные оптические системы — похожи на предыдущий вариант, только вместо поиска физических, заранее сделанных маркеров, камеры ищут любые объекты, которые необходимо просчитать по задачам, которые им поставили разработчиками.
Заметили общую для почти всех этих способов тенденцию? Все они, кроме одного, требуют большое количество оборудования, которое часто нужно надевать на человека или отслеживаемую технику.
Тамбовских ученых такой подход не вдохновил, поэтому они решили развить идеи с безмаркерными оптическими системами.
Что разработали ученые?
Определившись с методом, ученые придумали универсальный алгоритм, по которому камеры должны отслеживать движение конечностей человека.
Работа алгоритма была разбита на несколько этапов, базировалась на языке программирования Python, а также опиралась на программное обеспечение OpenCV и Matplotlib.
Первый из них — предварительная калибровка. Ее смысл заключается в создании первоначального пула фотографий объекта, который предполагается отслеживать. При этом снимки нужно сделать так, чтобы заранее выбранные точки в пространстве были максимально заметны. Это помогает правильно настроить камеру, чтобы потом она не глючила и не выдавала при отслеживании движений очевидную чушь.
Второй этап — реализация процедур обнаружения человека в кадре и расчет скелетных точек. На этом этапе камера вычисляет среди изображения объект, который нужно отслеживать, в нашем случае — тело человека. Важный нюанс этого этапа: объект не просто отображается целиком, а делится на составные части — то есть на «скелет» — чтобы отслеживание было как можно более подробным.
Третий этап — трехмерная реконструкция модели отслеживаемого объекта (тела человека). В отличие от второго этапа, машина не просто отображает перемещение различных точек в пространстве, а делает из них полноценную 3D-картинку, которая адекватно отображает все нюансы перемещения человека в кадре.
Благодаря математическим преобразованиям ученым удалось добиться высокой точности отслеживания движений — искажение составило всего несколько пикселей, что можно считать успехом.
Какие перспективы есть у новой разработки?
В первую очередь, разработка тамбовских ученых поможет дальнейшему развитию робототехники. С помощью motion capture в перспективе можно будет создать новые способы управления роботами, которые не потребуют джойстиков, пультов и других физических инструментов, кроме камеры.
Захват движений также может помочь в исследованиях биометрии — как для аутентификации (проверки подлинности личности), так и для сбора самих данных (это будет возможно благодаря возможности делать 3D-модели).
В целом, плюсы данной технологии очевидны. Теперь осталось главное — пустить её в массовое производство. Пожелаем тамбовским технарям с этим удачи.