Эта статья резюмирует статью https://arxiv.org/pdf/1508.06576.pdf, которая имела большой успех. Многие популярные приложения, такие как Prisma, построены на основе этой концепции.

До недавнего времени нейронные сети были известны своей способностью выполнять такие задачи, как классификация, регрессия, и считались логическими объектами. Творческие работы считаются областью знаний человека, но с последними разработками нейронные сети также оказывают влияние на это пространство. В этой статье предлагается метод, с помощью которого нейронная сеть может понять мыслительный процесс артистизма, отделяя контент и стиль от изображения. Они демонстрируют это, применяя стиль картины к изображению, комбинируя стиль картины и содержание изображения.

CNN (сверточные нейронные сети) - самый популярный класс нейронных сетей, когда дело доходит до работы с изображениями. На каждом уровне CNN есть фильтры, которые извлекают ключевую информацию из предыдущего уровня и передают ее на следующий уровень. Каждый уровень изучает представление изображения, при этом нижние уровни изучают базовые представления, в то время как более высокие уровни изучают сложные представления, построенные на основе тех, которые были изучены нижними уровнями. Чтобы продемонстрировать это, автор реконструирует изображения из представлений и заявляет, что нижние слои могут получать точные изображения в пикселях, тогда как более высокие уровни могли захватывать только высокоуровневый контент и их расположение, что ожидается, поскольку более высокие уровни учатся только интуиции. .

Чтобы получить представление о стиле изображения, используется пространство признаков для извлечения информации о текстуре с помощью матрицы Грама, которая фиксирует корреляцию между ответами фильтра. Поскольку для захвата стиля используется несколько слоев, мы получаем разные ответы в зависимости от того, какие слои включены. Результаты показывают, что наиболее визуально привлекательные изображения достигаются путем сопоставления стилей вплоть до самых высоких слоев в сети.

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

Методы: -

Нейронная сеть VGG, популярная архитектура нейронной сети, была использована для этой задачи сочетания контента и стиля. Для пространств функций использовалось 16 сверточных и 5 уровней объединения 19-слойной сети VGGNetwork. Автор обнаружил, что замена максимального пула на средний пул дает более визуально привлекательные результаты и, следовательно, использовал его.

Для захвата контента на уровне выполняется сравнение выходных данных активации. Квадрат разницы между входным изображением содержимого и целевым изображением считался ошибкой содержимого изображения. Представления контента из conv1_1, conv2_1, conv3_1, conv4_1 и conv5_1 были опробованы и сравнены.

Для захвата стиля на слое вычисляется и сравнивается матрица грамма. Матрица грамма получается путем преобразования каждой карты признаков в слое в вектор и взятия внутреннего скалярного произведения между ними. Затем расстояние между матрицей Грама изображения входного стиля и целевым изображением минимизируется. Общая потеря стиля получается как сумма взвешенных потерь всех слоев, учитываемых для захвата стиля. Испытываются пять представлений стилей и сравниваются результаты conv1_1, conv1_1 и conv2_1, conv1_1 conv2_1 и conv3_1, conv_1 conv2_1 conv3_1 и conv4_1, conv1_1 conv2_1 conv3_1 conv4_1 и conv5_1.

Функция потерь вычисляется путем объединения потерь контента и потери стиля. Обе потери взвешиваются в зависимости от того, на чем мы хотим сосредоточиться, будь то контент или стиль.

Стиль изображения: -

Изображение содержимого: -

Чудаил

Вывод: -

Код: - https://github.com/Anil1331/Style-Transfer/