Передача нейронного стиля - Neural Style Transfer
Передача нейронного стиля (NST) относится к классу программных алгоритмов, которые манипулируют цифровыми изображениями или видео, чтобы принять внешний вид или визуальный стиль другого изображения. Алгоритмы NST характеризуются использованием глубокие нейронные сети ради трансформации изображения. Обычно NST используется для создания искусственных произведений искусства из фотографий, например, путем переноса внешнего вида известных картин на фотографии, предоставленные пользователем. Некоторые известные мобильные приложения используют для этой цели методы NST, в том числе DeepArt и Призма. Этот метод использовался художниками и дизайнерами по всему миру для разработки новых произведений искусства на основе существующих стилей.
Фон
NST является примером стилизация изображения, проблема, изучаемая более двух десятилетий в области нефотореалистичный рендеринг. До NST передача стиля изображения выполнялась с использованием методов машинного обучения, основанных на аналогия с изображением.[1] Имея обучающую пару изображений - фотографию и иллюстрацию, изображающую эту фотографию - можно было бы изучить преобразование, а затем применить его для создания нового изображения из новой фотографии по аналогии. Недостатком этого метода является то, что такая тренировочная пара на практике встречается редко. Например, оригинальные исходные материалы (фотографии) для известных произведений искусства редко доступны.
NST не требует такого сопряжения; Для того, чтобы алгоритм мог передать свой стиль, нужен только один пример изображения.
NST
NST был впервые опубликован в статье Леона Гэтиса и др. «Нейронный алгоритм художественного стиля», первоначально выпущенной для ArXiv 2015,[2] и впоследствии приняты рецензируемым Компьютерное зрение и распознавание образов (CVPR) в 2016 году.[3]
Основным нововведением NST является использование глубокое обучение отделить представление содержания (структуры) изображения от внешнего вида (стиля), в котором оно изображено. В исходной бумаге использовался сверточная нейронная сеть (CNN) Архитектура ВГГ-19[4] который был предварительно обучен выполнять распознавание объекта с использованием ImageNet набор данных.
В 2017 г. Google AI представил метод[5] это позволяет единой сети передачи глубоких сверточных стилей изучать несколько стилей одновременно. Этот алгоритм допускает интерполяцию стилей в реальном времени, даже если это делается на видео.
Формулировка
Процесс NST предполагает входное изображение и пример стиля изображения .
Изображение подается через CNN, и сетевая активация дискретизируется на уровне поздней свертки архитектуры VGG-19. Позволять быть результирующим образцом вывода, называемым "содержанием" ввода .
Образ стиля затем передается через ту же самую CNN, и сетевая активация выбирается на раннем и среднем уровнях CNN. Эти активации закодированы в Матрица грамиана представление, назовите это для обозначения «стиля» .
Цель NST - синтезировать выходное изображение. который демонстрирует содержание применяется со стилем , т.е. и .
Итеративная оптимизация (обычно градиентный спуск ) затем постепенно обновляет чтобы минимизировать ошибку функции потерь:
,
куда это L2 расстояние. Постоянная управляет уровнем эффекта стилизации.
Обучение персонала
Изображение изначально аппроксимируется добавлением небольшого количества белого шума к входному изображению и подавая его через CNN. Затем мы последовательно обратное распространение эта потеря через сеть с фиксированными весами CNN для обновления пикселей . После нескольких тысяч эпох обучения (надеюсь), что соответствует стилю и содержание .
Алгоритмы обычно реализуются для GPU, так что обучение займет несколько минут.
Расширения
NST также был расширен на видео.[6]
Последующая работа улучшила скорость NST для изображений.
В статье Фэй-Фэй Ли и другие. принял другую регуляризованную метрику потерь и ускоренный метод обучения для получения результатов в режиме реального времени (в три раза быстрее, чем у Gatys). Их идея заключалась в том, чтобы использовать не потеря на основе пикселей определено выше, а скорее это «потеря восприятия», измеряющая различия между уровнями более высокого уровня в CNN. Они использовали симметричный кодировщик-декодер CNN. При обучении используется функция потерь, аналогичная базовому методу NST, но также упорядочивает вывод для плавности с использованием полное изменение (ТВ) потеря. После обучения сеть может использоваться для преобразования изображения в стиль, используемый во время обучения, с использованием одного прохода сети с прямой связью. Однако сеть ограничена одним стилем, в котором она обучалась.[7]
В работе Чен Дондон и другие. они исследовали слияние оптический поток информация в сети прямого распространения чтобы улучшить временную согласованность вывода.[8]
Совсем недавно, преобразование функций методы NST на основе были исследованы для быстрой стилизации, которые не связаны с одним конкретным стилем и позволяют управлять пользователем смешивание стилей, например Преобразование отбеливания и окрашивания (ДАП).[9]
Рекомендации
- ^ «Образные аналогии» (PDF). Mrl.nyu.edu. 2001. Получено 13 февраля 2019.
- ^ Гэтис, Леон А .; Эккер, Александр С .; Бетге, Матиас (26 августа 2015 г.). «Нейроалгоритм художественного стиля». arXiv:1508.06576 [cs.CV ].
- ^ Бетге, Матиас; Эккер, Александр С .; Гэтис, Леон А. (2016). «Передача стиля изображения с помощью сверточных нейронных сетей». Cv-foundation.org. стр. 2414–2423. Получено 13 февраля 2019.
- ^ «Очень глубокая CNNS для крупномасштабного визуального распознавания». Robots.ox.ac.uk. 2014. Получено 13 февраля 2019.
- ^ Дюмулен, Винсент; Шленс, Джонатон С .; Кудлур, Манджунатх (9 февраля 2017 г.). «Научное представление художественного стиля». arXiv:1610.07629 [cs.CV ].
- ^ Рудер, Мануэль; Досовицкий, Алексей; Брокс, Томас (2016). «Передача художественного стиля для видео». arXiv:1604.08610 [cs.CV ].
- ^ Джонсон, Джастин; Алахи, Александр; Ли, Фэй-Фэй (2016). «Потери восприятия для передачи стиля в реальном времени и сверхвысокого разрешения». arXiv:1603.08155 [cs.CV ].
- ^ Чен, Дондон; Ляо, Цзин; Юань, Лу; Ю, Нэнхай; Хуа, Банда (2017). «Связная передача стилей онлайн-видео». arXiv:1703.09211 [cs.CV ].
- ^ Ли, Ицзюнь; Фанг, Чен; Ян, Джимей; Ван, Чжаовэнь; Лу, Синь; Ян, Мин-Сюань (2017). «Универсальный перенос стиля посредством преобразования функций». arXiv:1705.08086 [cs.CV ].