Исследователи из Adobe Research и Калифорнийского университета в Беркли разработали алгоритм, который позволяет реалистично изменять форму и цвет объектов на уже существующей фотографии. Доклад о результатах работы авторы представят на конференции ECCV 2016, которая пройдет в октябре в Амстердаме, исходный код проекта опубликован в репозитории GitHub.
Во многих современных графических редакторах существует инструмент, позволяющий редактировать форму какого-либо объекта. Обычно пользователь может увеличивать или, напротив, сжимать какой-либо фрагмент изображения, а также редактировать форму объекта вручную. Однако в результате ручной работы с формой (например, с инструментом «деформация»), как правило, приходится довольствоваться тем, что исходное изображение деформируется не совсем так, как планировалось, и поэтому выглядит неправдоподобно.
В новой работе исследователи использовали порождающую состязательную нейросеть (generative adversarial network) для реалистичного изменения существующего изображения. Авторы разработали интерфейс для редактирования изображений, а также обучили алгоритм на примере нескольких массивов данных. Для тренировки нейросети использовались несколько наборов данных с разными объектами: обувь из интернет-магазина Zappos, церкви из датасета LSUN, фотографии природы из базы данных MIT Places, а также изображения товаров из категорий «сумки» и «рубашки и футболки» интернет-магазина Amazon. Всего для обучения использовалось около 600 тысяч изображений.
В программном интерфейсе исследователи предусмотрели три режима работы: изменение цвета, скетч и деформация. С помощью скетча пользователь может на существующем изображении изобразить новую форму, а программа сгенерирует несколько превью, из которых можно будет выбрать окончательный вариант для обработки. С помощью режима деформации можно более точно указать изменение формы на локальных участках, а цветная кисть позволяет изменить цвет отдельного фрагмента.
Для демонстрации возможностей программы исследователи изменяли форму и цвет обуви, сумок и рубашек. Авторы отмечают, что с помощью обученного алгоритма можно не только изменять существующее изображение, но и генерировать новую сцену по нескольким цветным штрихам в режиме скетча. В качестве примера в демонстрационном ролике показано, как при помощи нескольких цветных штрихов сгенерировать пейзаж.
В последнее время для сложной и реалистичной обработки фотографий разные группы исследователей все чаще используют нейросети. С помощью подходящего набора данных для обучения нейросеть может самостоятельно раскрасить черно-белые снимки, сгенерировать новые шрифты, «перерисовать» уже существующее изображение в другом стиле, «додумать» существующее изображение и даже написать новый портрет Рембрандта. Подробнее о том, как нейросети обрабатывают изображения, можно прочитать в материале N+1 «На выставке Ван Гога».