Pull to refresh

Comments 53

В видео используется playstation eye, а это значит что похоже требуется что-то большее чем ноутбучная камера или китайская камера за 500 рублей.
Нужна очень хорошая видеокарта, чтобы формировать изображение в реальном времени, анализируя данные с камеры. CPU такое явно не потянет.
чтобы нарисовать этого персонажа? ой да не шутите — по уровню графики это даже не бабочки от nVidia, которая шла на древнющих GeForce FX 5700/5800 — а в разы проще
Это вы, батенька, не шутите: чтобы мимику отслеживать вам придется довольно муторную работу провести…
Никогда не видели на флеше игры с вебкамерой? Они распозрабт вас и вы учавствуете в игре в реальном времени своим лицом/руками итд. Справятся прекрасно цпу и даже не первой свежести.
А на html5test.com для них пишут:
> Access the webcam » No ✘
Для кого для них? Вы точно прочитали что я писал выше?
sorry, не туда написал.

В подобных «играх» просто определяются опорные точки (зрачки, губы) и отслеживаются в дальнейшем. А вот чтобы мимику повторять, замучаетесь обрабатывать.
А вы на видео не видели опорных точек? Он не точно повторяет мимику, просто рот открыт, и на аватаре открывает (по верзхней губе определяет, улыбку по кончикам губ, брови по одной точке итд). Все довольно просто, чуть сложней чем во флешевых играх, но всеравно ничего запредельного в расчетах нет.
А, значит, извиняюсь: я-то думал, там полноценный повтор мимики идет.
А для этого — либо жуткие вычисления, либо наносить на лицо координатную сетку ☺
А 3D Action игры не в реальном времени мир отрисовывают?
Wiki говорит, что
Камера работает с частотой кадров в 60 герц при разрешении 640х480 пикселей, а с частотой 120 герц – 320х240 пикселей.

Не ахти какие запредельные показатели, имхо.
Тем не менее ноутбучные камеры не могут похвастаться одновременно и такими показателями и нормальным фпс. (не в районе 15 и меньше) А эта система ой как сильно зависит от фпс камеры я чувствую.
будет большой лаг (секундный), а так работать будет конечно же.
Почему же секундный? 66мс + время на обсчет. Плюс можно сглаживать и предсказывать, в сетевых играх технологии лагкомпенсации уже давно отработаны, задача аналогичная.
если внимательно посмотреть, то там есть лаг, при чем довольно заметный (например с 00:42)
Живенько себе представил, как на кладбище какой-нить мморпг про эльфов скачут и корчат рожи беснующиеся вновьприбывшие.
Заодно представьте, как они в реальной жизни будут потом смайлики корчить (
Мне кажется, это здорово оживило бы игру. Еще можно придумать влияние мимики на игровой процесс, скажем, если игрок испуган, у персонажа трясутся руки, если зол, персонаж входит в раж и т.п.
Мда… желтоватый заголовок. Если честно не вижу ничего сложного в этой реализации. Обычный детектор лица и отслеживание положения. + мега супер пупер камера. Я то думал оно и речь распознает…
Ничего особо нового, но я бы себе в скайп прикрутил… Не люблю видеоконференции, а это неплохой компромисс.
ага, представляю себе деловые скайп-совещания в модных стартапах будущего )
Например в камере www.logitech.com/ru-ru/webcam-communications/webcams/4528 есть такая фича. Она заменяет лицо персонажем, который реагирует на повороты лица, частично мимику рта и моргание глазами. Скорее такое есть и в более новых вебках.
И да, и нет. Ничего революционного в этой разработке действительно нет — вспомнить тот же kinect, который недавно научился работать с лицами. Однако реализация гораздо сложнее, чем обычный детектор лица. Дело в том, что стандартные детекторы/распознаватели лиц (такие как хааровский классификатор, включённый по-дефолту в OpenCV) абсолютно не умеют понимать выражения лиц. То есть научить их, конечно, можно, но точность определения выражения лица всё равно будет ниже плинтуса. Для facial expression tracking на сегодняшний день чаще все используются active appearance models (плюс в карму тому, кто знает, как это красиво перевести на русский). Создание активных аватаров — это далеко не самый интересный пример использования этих моделей, вот, например, что-то похожее на аватары, но с животными (представьте, насколько проще с такой технологией снимать мультфильмы!), а вот здесь показано, как мгновенно перевоплотиться в Стива Джобса, Мерелин Монро или даже Ленина, причём не на мониторе, а практически в реальной жизни. Хотя мой любимый пример — это Being John Malkovich — приложение для очень правдоподобного контроля лица другого человека. Представьте: ваши товарищи включают видеоконференцию по скайпу, а перед ними вместо вас сидит Владимир Владимирович. Тут рисованные девочки отдыхают.
Кстати, для работы большинства реализаций AAM вполне достаточно обычной веб-камеры ноутбука, не надо никаких супер-пупер заморочек. Ну а распознавание голоса — так это вообще смешно, вроде как уже давно победили такую задачу.
Active appearance models — активное моделирование внешности?
AAM, условно говоря, состоит из двух частей — shape и appearance, где под shape подразумевается статистическая модель формы (ну, т.е. например, относительное положение точек, отвечающих за брови, глаза, нос, рот и т.д. на лице, или за то, чтобы квадрат был квадратным, а треугольник — треугольным), а под appearance — интенсивность цветов пикселей внутри формы. А это как-то не очень соответствует понятию «внешность» в русском языке — внешность есть только у людей, а указанная модель может описывать любой предмет. «Внешний вид» — ещё куда ни шло, но «модель активного внешнего вида» звучит убого.
Модель активного образа (как вариант, облика). Подойдет? Исходный термин, ИМХО, не очень удачен, поэтому и адекватный перевод подобрать трудно.
А вот это уже довольно точно, спасибо.
Не согласен, что сильно сложнее. Хаар хорошо использовать для предварительного вычисления положения. А анализируя дальнейшую картинку в области выделения лица достаточно просто выцепить глаза и остальные интересующие части. Примерное положение на лице их известно, достаточно натянуть на модель. Например такие штуки на основе классического Хаара собираются за несколько дней (раз два).
Хотя, конечно, отладка до полностью рабочего и стабильного состояния займет не один месяц. Но если вопрос именно в том, чтобы показать результат на одном человеке — это будет быстро.
Сообственно, Хаар и используется для поиска ROI для дальнейшего сопоставления со статистической моделью. Модели для детектирования глаз, губ, и т.д. в стандартной поставке OpenCV также есть, поэтому большинство видео с тытрубы на эту тему — это просто демонстрация работы встроенных средств.

Два видео, на которые вы указали, не сильно отличаюстя по сложности, но показанные программы ни разу не анализируют выражение лица. По пунктам.

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

Видео 2. Единственный интерес — определение направления взгляда. Вернее разделение на прямой и косой взгляд. В принципе, хааровский классификатор вполне подходит: haar-like features, используемые в нём, сводятся к сравнению регионов по количеству тёмных пикселей. В положении глаз «прямо» более тёмный регион будет находиться по середине, в других положениях — слева или справа. Отловить несложно. Для отслеживания положения бровей, улыбки, приподнятых бровей и т.д. хааровский классификатор абсолютно не заточен, хотя бы потому что возвращает прямоугольный регион (и степень схожести с паттерном, разумеется), а не какую-то заданную форму типа дуг бровей или овалов глаз.
Я прекрасно понимаю особенности обработки изображения. И приведённые аргументы того, почему оно всё криво — лишь часть. Ровно поэтому я и говорю, что отладка кода заёмёт не один месяц. В роликах выше показывается лишь принципиальный эффект. И тут он не сильно хуже того, что получилось у Японцев из этого топика.
Очевидно, что делая серьёзную работу логику нужно расширить относительно простого Хаара. Как минимум нужно добавить трэкинг ключевых точек через соседние кадры, работать не с цветами, а с производными яркостей, итд. итп.
А целиком анализ мимики делать на мой взгляд не надо (более того, я не думаю, что его делали в приведённой работе). Надо всего лишь вычислять изменения относительно базового положения. А на анализе этого легко понять, улыбнулся человек или нет, открыл рот или поднял брови (кстати, бровей в OpenCV по-моему тоже не было, хотя я в основном с EmguCV работал, там чуть по другому).
> Очевидно, что делая серьёзную работу логику нужно расширить относительно простого Хаара. Как минимум нужно добавить трэкинг ключевых точек через соседние кадры, работать не с цветами, а с производными яркостей, итд. итп.

Ну и в итоге вы всё равно придёте к модели формы, а Хаар так и будет использоваться только для изначального нахождения лица и его элементов. Толку то :)
А Xbox помоему что то вроде такого уже разрабатывал
kinect же. Только там не только простая камера используется, но и еще пара датчиков.
я не про kinect, а xbox rooms, что то вроде этого слышал, ну само собой там кинект используется.
просто классно! можно видео-касты писать тем у кого внешность скажем так — не очень презентабельна )
или да, как выше писали уже — в скайп )
Кстати, можно кучу времени таким образом сэкономить на создании мультов. Вместо многочасовой прорисовки все отыгрывать актерам))
Эм… А 3-d анимацию так и делают. Нет?
Без понятия. Сейчас загуглю. Но лично я себе представлял, что каждому персонажу отрисовывают каждую эмоцию, и что занимает это очень много-много времени. Если окажется что это не так это разрушит мой мир, в котором пони какают бабочками))
Все зависит от разработчка. Большая часть использует всякие facefx и прочий софт, который генерирует эмоции на основе анализа звукового файла, некоторые используют motion capture, и уж совсем большая редкость (я знаю только разработчиков Last of Us на ps3) анимируют лицо вручную по reference видео.
Подобным ютьюб болел с 3 года назад, много было роликов, где люди делали захват движение и в реальном времени анимировался 3д персонаж. У моей камеры logitech 2 летней давности есть даже подобная функция, правда чуть проще. Можно было выставить персонажа, откалибровать своё лицо, и в скайпе спокойно вместо себя показывать этого персонажа.

Японцы как всегда всё подхватывают, когда весь мир этим переболел, а журналисты потом пестрят желтизной, что вот уникальная разработка и тд.
UFO landed and left these words here
Не совсем понятно, кто здесь аватар :)
UFO landed and left these words here
Эх, добавить бы эту технологию в виртуальные миры SecondLife…
Возьму, пожалуй, аватару Чака Норриса и позвоню-ка по скайпу начальнику…
главное — не нарваться на аватарку Брюса Ли…
Похож на старый добрый facetracknoir, известный любителям авиа-симуляторов, только работает по другому алгоритму и отслеживает положение губ.

Судя по личному опыту, facetracknoir прилично отнимает CPU даже на 30fps, а также очень капризен к освещению. Неравномерное освещение (окно сбоку), и летать уже спокойно нельзя.
Sign up to leave a comment.

Articles