Найти тему
Академия Яндекса

Примерочная в твоем смартфоне. Студент МФТИ о технологии dense human pose estimation

Вот как это выглядит в реальности
Вот как это выглядит в реальности

Фильтры для чат-приложений и видеоконференций, маски и забавные эффекты для лиц не только стали обыденностью, но уже и откровенно раздражают своей навязчивостью. Хотя в действительности эта технология напрямую связана с глубинным обучением и компьютерным зрением: чтобы наложить на ваше лицо маску кошечки, программа должна уметь распознать, где находятся глаза. Следующий шаг в этой области — распознавание объема на видео и фотографиях. Это не только приложения для примерки одежды и обуви, но в будущем возможность анализировать мышечную массу человека, что создает возможности как для спортивных, так и для медицинских приложений. О технологии dense human pose estimation и о том, какие сложности представляет ее портирование на мобильные устройства, рассказал студент четвертого курса Физтеха Артем Куприянов.

Артем Куприянов
Артем Куприянов

На первом курсе Физтеха я открыл для себя курс Data Mining in Action, а также специализацию МФТИ и Яндекса «Введение в машинное обучение», и все как-то закрутилось. Потом я ходил на физтеховский Акселератор со своим проектом по спортивной аналитике и участвовал в первых хакатонах. Это логичным образом привело меня в Школу анализа данных, там очень много людей, которые с тобой на одной волне. Это меня и очаровало.

Так что сейчас я учусь на четвертом курсе кафедры анализа данных и на первом курсе ШАДа. Образую вокруг себя комьюнити заинтересованных людей, с которыми я активно участвую в хакатонах (на нашем счету около 15 побед), а также пытаюсь делать свои проекты.

Так сложилось, что из всех задач меня больше всего интересуют различные проблемы, связанные с анализом человека и его лица. Это довольно узкая область, но она требует хороших знаний компьютерного зрения в частности и всего глубинного обучения в целом, благо ШАД дает эти знания с лихвой.

Мой диплом в МФТИ как раз связан с компьютерным зрением. Я пытаюсь портировать решение задачи dense human pose estimation на мобильные устройства, а также провести исследование вычислительных свойств различных частей архитектуры для выбора оптимального решения. Если совсем просто, то это задача, в которой по изображению с людьми нужно отсегментировать, выделить каждого человека и выдать некоторую развертку 3D-представления, придать некоторый объем телу.

Анализ объема тела
Анализ объема тела

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

Наложение текстур
Наложение текстур

Dense pose estimation позволяет не только понять позу и определить движения, но и судить о текстуре. Мне больше всего нравятся такие примеры использования этой технологии, как концепт онлайн-примерочной от Amazon под названием Echo Look или WANNABY — приложение для примерки обуви. Мои наработки могут помочь улучшить качество в таких задачах и перейти от дорогих специализированных видеоустройств, которые используются у Amazon, к камерам мобильных телефонов.

Такая технология как dense pose estimation вообще является достаточно новой. Пару лет назад и задача pose estimation была в новинку. Кстати, разницу между ними можно понять из этих видео: здесь просто dense pose estimation, а здесь есть объем.

Для своих опытов я использую различные нейронные сети для детекции и сегментации, в основном изучаю передовые архитектуры и пытаюсь трансформировать их под мою задачу. Лично я вижу, что сейчас зарождается тренд с оптимизаций алгоритмов для различных устройств, а прорывом несомненно будет сделать алгоритм dense pose estimation с качеством специальных камер, но на простом смартфоне.