Мы неоднократно сообщали о новостях, связанных с ожидаемым игровым сообществом в целом и пользователями Xbox 360 в частности выходом Project Natal. Известно, что эта система позволяет взаимодействовать с объектами в виртуальном мире без необходимости держать в руках какие-либо манипуляторы. Несмотря на это, возможности технологии весьма впечатляющи: игрок сам превращается в "контроллер" - движения и головы, и рук, и ног отслеживаются и переносятся в игровую среду, а значит виртуальный теннисный сет или гонки на раллийных автомобилях становятся особенно реалистичными, ведь нажатия нескольких кнопок для совершения определённого манёвра уже недостаточно. Но что находится за "кулисами" Project Natal? Как инженеры Microsoft разрешили множество стоящих на пути реализации подобной функциональности проблем?
Нет необходимости говорить, что заставить работать Project Natal несколько сложнее, чем связать игру и перемещения в пространстве контроллера Wiimote или похожего устройства, ну а проводные геймпады и вспоминать нет смысла. Движения игрока фиксируются специальной 3D-камерой, основная же задача технологии - "понять", что именно запечатлено. Детали о камере, расположенной в небольшой приставке, не раскрываются, поскольку до выхода продукта на рынок пройдёт ещё не один месяц. Но известно, что измеряется относительная дистанция до объекта в пределах 0,8-4 м благодаря отражаемым от него инфракрасным волнам, излучаемым ИК-диодом (похожая реализация у системы от Quanta). Используется чёрно-белый сенсор.
Это аппаратная часть, основная же нагрузка лежит на "мозге" -программном обеспечении, которое в настоящий момент способно следить за 31 элементом (головой, торсом, бёдрами, локтями...), и его доработка продолжается до сих пор. Софтверный гигант решил обратиться к такой области искусственного интеллекта, как машинное обучение. Программисты не тратят усилия на написание кода с правилами для всех теоретически возможных положений частей тела человека. Вместо этого в систему загружают миллионы снимков людей и обучают её отличать ногу от руки и принципы их движения. Для большей точности применяются базовые анатомические знания, чтобы скрытая от камеры конечность не считалась "исчезнувшей".
Таким образом, сейчас идёт процесс "тренировки" и улучшения характеристик Project Natal. Обработка снимков людей осуществляется мощным кластером компьютеров. Есть место и ручной работе, причём достаточно трудоёмкой. Снимки берутся не из Интернета - сотрудники команды Project Natal записывают естественные движения каждого человека, затем на каждом кадре с отдельной "позой" маркируют все необходимые части тела, поскольку иначе изображение будет для компьютера "пустым". Но технологии автоматизации не забыты - также используется съёмка с заранее закреплёнными на теле маркерами, практикуемая разработчиками игр и спецэффектов для фильмов. В итоге общий массив данных занимает десятки терабайт, анализируемых программным обеспечением с помощью вероятностных и статистических алгоритмов. По завершении процесса получается 50-Мб ПО для системы Project Natal, ранний вариант которой демонстрируется на выставках и шоу.
Итак, что же происходит в "мозге" системы во время игры?
Шаг 1. Камера "видит" человека как облако точек в трёхмерном пространстве и определяет дистанцию до объекта. Формируется простейший "скелет" тела(показан слева).
Шаг 2. На базе собранной в результате описанной выше работы со снимками информации происходит определение расположения конкретных частей -рук, ног, головы. На изображении выше тёмные, светлые участки и цвета показывают, насколько успешно Project Natal удалось установить принадлежность некоторой области пространства к человеку. Например, красные квадраты означают высокую степень вероятности, что это "левое плечо", "левое колено" и "левый" локоть.
Шаг 3. На базе вероятностной оценки для каждой области генерируется массив всех возможных скелетов для данного положения тела и конечностей. Из них выбирается самый подходящий. Отчасти это достигается использованием статистического "опыта", отчасти -более формальных запрограммированных кинематических моделей.
Шаг 4. Как только получено достаточное количество данных о положении тела и выбран скелет, строится простой трёхмерный аватар. С некоторыми преобразованиями и добавлениями вроде одежды, волос и других атрибутов она становится тем персонажем, который отображается на экране. Все шаги повторяются десятки раз в секунду.
Источник новости: www.3dnews.ru
В ближайшее время будет как в фильме, все синие, сказочные джунгли, и планету переименуют для правдивости в Пандору
Спасибо за статью!
0 ответить