Youngjoo Jo, Jongyoul Park / arXiv.org, 2019


Корейские исследователи использовали методы машинного обучения для создания интерактивного графического редактора портретов. Пользователь размечает на лице нужные правки в виде наброска, а нейросеть самостоятельно реалистично редактирует снимок, рассказывают авторы статьи, опубликованной на arXiv.org. Для демонстрации работы нейросети разработчики, например, добавили улыбку Крису Хемсворту и вернули волосы Гоше Куценко.

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

Чо Ён-Чжу (Youngjoo Jo) и Пак Ын-Юл (Jongyoul Park) из южнокорейского Научно-исследовательского института электроники и телекоммуникаций (ETRI) создали нейросеть, способную создавать реалистичные изменения в портретах людей, принимая в качестве исходных данных наброски. Исследователи выбрали популярную с сфере нейросетевой обработки изображений архитектуру генеративно-состязательной нейросети. Она состоит из двух подсетей: генератора, выполняющего основную задачу (в данном случае — обработку изображений), и дискриминатора, который пытается отличить изображения из генератора от настоящих изображений из обучающей выборки. В результате такой конкуренции генератор постепенно учится создавать максимально реалистичные изображения, которые дискриминатору сложно отличить от настоящих снимков.

В качестве основы исследователи взяли предыдущие успешные наработки в области обработки изображений, а именно сверточную нейросеть U-net в качестве генератора и SN-PatchGAN в качестве дискриминатора. Процесс редактирования изображения с помощью нейросети происходит следующим образом. Пользователь выделяет на исходном снимке область редактирования, наносит на нее линии, соответствующие новым деталям (черты лица, украшения и другое), а также наносит цветовые правки. Генератор получает в качестве исходных данных исходное изображение с вырезанными фрагментами, маску с областями вырезов, набросок пользователя, цветовой набросок и маску с искусственно добавленным шумом.

В качестве данных для обучения авторы использовали датасет CelebA-HQ, состоящий из множества снимков знаменитостей. Из него разработчики выделили 29 тысяч фотографий для обучения и тысячу для проверки работы алгоритма. Кроме того, на базе этих снимков исследователи создали искусственный датасет из набросков, цветовых и бинарных масок, используемых в качестве исходных данных нейросети. В результате авторам удалось научить нейросеть вносить реалистичные изменения в снимки людей, используя только рисование мышью в качестве исходных данных. Исходный код алгоритма и обученная модель опубликованы на GitHub.

Широкую известность в области обработки изображений получил другой алгоритм pix2pix, превращающий наброски в реалистичные изображения. Редакция N+1 решила воспользоваться этим инструментам и показала, как могли бы выглядеть известные мемы в представлении нейросети. А в 2018 году саудовский программист предоставил доступ к этому инструменту всем желающим, создав браузерную версию алгоритма pix2pix.

Григорий Копиев