Тема: Генерация положения персонажа по скетч рисунку с использованием искусственных нейронных сетей
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1.1. Определение позы 3
1.2. Скетч рисунок 3
1.3. Методы глубокого обучения 5
2. Постановка задачи 7
3. Обзор литературы 8
3.1. Определение позы 8
3.2. Трансферное обучение 9
4. Генерация данных 11
4.1. Существующие наборы данных 11
4.2. Датасет Mixamo 13
4.3. Blender 14
4.4. Рендеринг 15
4.5. Создание синтетического набора данных 17
5. Обучение 19
5.1. Deep High-Resolution Net 19
5.2. Основные модели 20
5.3. Трансферное обучение 23
6. Результаты 26
6.1. Выбор гиперпараметра: вес ошибки дискриминатора .... 26
6.2. Выбор архитектуры дискриминатора 27
6.3. Численные результаты 28
6.4. Выводы и дальнейшее развитие 31
7. Заключение 35
8. Благодарность 36
Список литературы 37
📖 Введение
Определение позы - это классическая задача компьютерного зрения, суть которой состоит в нахождении нескольких ключевых точек, так называемого скелета, на изображении. Определение позы имеет множество практических применений в самых разных областях, начиная от занятий спортом и заканчивая кинематографом.
Значительный прогресс в решении этой задачи и в целом в области компьютерного зрения случился с приходом глубокого обучения и нейронных сетей. За последние десятилетия накопилось множество крупномасштабных наборов данных с размеченными фотографиями и видео из реального мира - что является основой любого метода глубокого обучения. Объём и разнообразие датасета сильно коррелирует с точностью модели - чем больше набор данных, тем лучше модель обобщается, и, соответственно, тем лучше производительность на практике. Обучаясь на датасетах с миллионами самых разных цветных изображений, нейронная сеть способна крайне точно выделить нужные признаки и на реальных фотографиях современные нейронные сети показывают очень высокие результаты.
1.2. Скетч рисунок
Однако часто аналогичные задачи возникают для нестандартных данных. Одним из таких примеров является определение положения по скетч рисунку. Скетч, то есть набросок рисунка, сильно отличается от реальной фотографии. Как правило, скетч - это чёрно-белый рисунок карандашом на белой бумаге, который состоит лишь из силуэта персонажа. То есть по своей сути - это набор нескольких чёрных линий на белом фоне. С точки зрения компьютера - это несравнимо малое количество информации по сравнению с цветной фотографией в высоком разрешении. Персонажи мультфильмов часто имеют нереалистичные или сильно искажённые пропорции. Сами художники также могут нарушать пропорции конечностей в зависимости от своего стиля рисования или просто из-за неточностей рисунка[1, 2, 3]. Помимо этого, художники часто используют нелинейную перспективу[4] в своих рисунках, которая не соотносится с перспективой, получаемой фото или видео камерой. Поэтому обучения на фотографиях из реального мира становится недостаточно. Реальные фотографии не покрывают то многообразие форм и конфигураций, которые могут нарисовать художники. Для данной задачи нужны более специфичные алгоритмы глубокого обучения, нестандартные подходы и подходящий обучающий набор данных.
При этом определение положения по скетч рисунку - это очень распространённая задача при создании анимации, например, для компьютерных игр, кинофильмов и мультфильмов, приложений для телефона и так далее. До создания анимации художник рисует эскиз персонажа, который впоследствии служит референсом для создания 3D модели на компьютере. Создание этой модели происходит вручную и занимает очень много времени. Кроме того, эта работа требует от художника дополнительной квалификации и часто не является его рабочим интересом, забирая на себя много ресурсов и сил и отвлекая его от более творческих занятий. Именно поэтому автоматизация данного процесса является очень востребованной на практике задачей. Получение готовой модели лишь по скетч рисунку повышает эффективность работы художника и избавляет его от монотонной деятельности, а также ускоряет процесс создания анимации.
В генерации модели по скетч рисунку есть несколько подзадач. Например, можно восстанавливать 2D или 3D скелет, то есть находить положение нескольких ключевых точек, взаимосвязанных между собой, в двумерном или трёхмерном пространстве соответственно. Более трудной задачей является восстановление всей 3D модели, то есть получение множества вершин в трёхмерном пространстве, сгрупированных в геометрические примитивы (например, в треугольники), и приближенно описывающих поверхность объекта. Один из подходов к решению этой подзадачи и её усложнениям предлагает наука фотограмметрия, которая занимается трёхмерной реконструкцией по фотографиям. Но алгоритмам фотограмметрии требуется набор из нескольких фотографий с разных ракурсов. Эти алгоритмы не предназначены для восстановления модели лишь по одной фотографии (или одному скетч рисунку)....
✅ Заключение
Был сгенерирован синтетический набор данных со скетч рисунками. На полученном датасете было обучено и протестировано несколько классических моделей задачи определения положения. Для улучшения результата были применены методы трансферного обучения, в результате чего классические модели были расширены дополнительным классификатором, были изменены функции обучения и валидации.
В ходе работы был проведён ряд эксперементов: обучение происходило с разными гиперпараметрами моделей, использовались разные архитектуры классификатора для трансферного обучения. Полученный набор моделей был протестирован. Модели были сравнены по разным метрикам, а также по полученным изображениям с предсказаниями.
Обучение на синтетических данных дало прирост в качестве по сравнению с обучением на классическом датасете, что доказало применимость данного метода в задаче определения положения и целесообразность дальнейших исследований.
Методы трансферного обучения позволили ещё сильнее увеличить качество предсказаний нейронной сети. В результате чего была получена модель, предсказывающая двумерный скелет персонажа по одному скетч рисунку, с отличным качеством, которое сильно выше качества классических моделей. Более того, качество полученной модели можно легко увеличивать, не тратя ресурсов на разметку реальных скетчей.
В завершение, были обсуждены возможные способы применения обученных моделей и дальнейшие пути улучшений и исследований.





