58
правок
Изменения
Добавлен раздел Трансфер стиля
Another thing that we wish to remark is that even though poisson blending shifts the color of the source image, it still preserves the features of it. In the original source image, f4 is smaller than f3, f5 is greater than f4, and so on, and this also applies to our recovered image. This information was encoded by the gradients of the source image. However, it is also important to realize that poisson blending does not exactly preserve the gradients. In the recovered image, the gradient f3,4 assumes the value 7−4=3, but it was 26−22=4 in the original source image. In the previous section, the gradients of the recovered image were identical to the gradients of the original image. But with poisson blending, the gradients of a completely different image are pasted into another image, and the result of this is that the solver is not always able to recover an image whose gradients exactly match the specified gradients. But the solver tries to find an image whose gradients match as close as possible, and in practice, poisson blending yields good results, which we shall show examples of in the following section.
==Глубокий блендингТрансфер стиля== Прежде чем переходить к гармонизации картин, рассмотрим задачу трансфера стиля с изображения $S$ на изображение $I$. Для этого используются выходы скрытых слоёв свёрточной нейронной сети VGG-19<ref name="SZ14">[https://arxiv.org/pdf/1409.1556.pdf Very Deep Convolutional Networks for Large-Scale Image Recognition] Karen Simonyan, Andrew Zisserman (2014)</ref>. Основная идея генерации изображения {{---}} решение оптимизационной задачи $\mathcal{L}(O, I, S) \longrightarrow min$, где $O$ {{---}} итоговое изображение, $\mathcal{L}(O, I, S)$ {{---}} функция потерь. Такую задачу можно решать градиентным спуском в пространстве изображений используя метод обратного распространения ошибки. {{Определение|definition =Пусть $F^l\left[I\right] \in \mathcal{R}^{N_l \times M_l}$ {{---}} выход $l$-го слоя сети на изображении $I$. Представим его как матрицу $N_l \times M_l$, где $N_l$ {{---}} количество фильтров в $l$-ом слое, $M_l$ {{---}} количество признаков (высота, умноженная на ширину). Тогда $F^l_{ij}\left[I\right]$ {{---}} $j$-ый признак $i$-го фильтра в $l$-ом слое.}} {{Определение|definition ='''Матрица Грама''' (англ. ''Gram matrix'') {{---}} матрица попарных скалярных произведений. В нашем случае матрица отражает корреляцию между выходами фильтров. $G^l\left[I\right] \in \mathcal{R}^{N_l \times N_l} = F^l\left[I\right]F^l\left[I\right]^T$.}} Рассмотрим метод, предложенный в статье [https://rn-unison.github.io/articulos/style_transfer.pdf Image Style Transfer Using Convolutional Neural Networks]<ref name="GEB16">[https://rn-unison.github.io/articulos/style_transfer.pdf Image Style Transfer Using Convolutional Neural Networks] Leon A. Gatys, Alexander S. Ecker, Matthias Bethge (2016)</ref>. ===Функции потерь=== {{Определение|definition =$\mathcal{L}_{content}(I, O, l)$ {{---}} функция потерь содержания на слое $l$. $\mathcal{L}_{content} = \displaystyle\sum_{i, j} (F^l_{ij}\left[I\right] - F^l_{ij}\left[O\right])^2$.}} {{Определение|definition =$\mathcal{L}_{style}(I, O)$ {{---}} функция потерь стиля. $\mathcal{L}_{content} = \displaystyle\sum_l \frac{w_l}{4N_l^2M_l^2} \displaystyle\sum_{i, j} (G^l_{ij}\left[I\right] - G^l_{ij}\left[O\right])^2$,где w_l {{---}} вклад $l$-го слоя в функцию потерь.}} Итоговой функцией потерь будет $\mathcal{L}_{Gatys} = \alpha\mathcal{L}_{content}(I, O, L) + \beta\mathcal{L}_{style}(I, O)$. Веса \alpha и \beta, последовательность $w_l$ и слой $L$ являются, в некотором смысле, гиперпараметрами алгоритма, которые нужно подбирать<ref name="GEB16"/>. *'''TODO''': GEB16 Figure 3 (влияние $w_l$)*'''TODO''': GEB16 Figure 4 (влияние $\alpha$)*'''TODO''': GEB16 Figure 5 (влияние $L$) ===Начальная инициализация градиентного спуска=== Авторы статьи показывают, что в качестве начальной инициализации можно брать изображение $I$, изображение $S$ или белый шум {{---}} алгоритм даёт похожие результаты в этих случаях<ref name="GEB16"/>. *'''TODO''': GEB16 Figure 6 ==ГармонизацияГлубокая гармонизация картин==
Для того чтобы вставить изображение в картину или рисунок нужно не только сделать бесшовный переход и изменить цвета, но ещё и изменить текстуру вставляемого изображения, например сымитировать мазки кистью.
'''return''' O
==Глубокий блендинг====Ссылки== [https://en.wikipedia.org/wiki/Gramian_matrix Матрица Грама (англ.)] == Примечания ==