Изменения

Перейти к: навигация, поиск

Вписывание части изображения

4386 байт добавлено, 09:50, 10 января 2021
Примеры современных моделей
Данная модель добивается такого эффекта путем пропускания входного изображения через две параллельные сети. Первая сеть {{---}} реконструирующая. Она пытается приблизить выходное изображение к оригинальному. Вторая сеть {{---}} генерирующая, работающая с априорным распределением отсутствующих областей и выборками известных пикселей. Каждая сеть имеет свой дискриминатор, помогающий обучить модель. Кроме выхода дискриминатора для обучения также используются функции сравнения полученного изображения с оригинальным.
 
----
 
=== EdgeConnect<ref>[https://arxiv.org/pdf/1901.00212.pdf EdgeConnect: Generative Image Inpainting with Adversarial Edge Learning, Kamyar Nazeri, Eric Ng, Tony Joseph, Faisal Z. Qureshi, Mehran Ebrahimi]</ref> ===
 
Данная модель разбивает задачу вписывания на две части:
# Выделение границ изображения и предсказание границ утраченной части изображения.
# Использование сгенерированных границ для заполнения утраченной части изображения.
 
В обоих частях используется генеративно состязательная сеть. Генераторы состоят из кодировщика, нескольких остаточных блоков с расширенной сверткой и декодировщика. Для дискриминатора используется PatchGAN<ref>[https://paperswithcode.com/method/patchgan PatchGan, PapersWithCode]</ref>.
 
Для генерации ребер сначала выделяются границы существующей части изображения с помощью Canny edge detector<ref>[https://en.wikipedia.org/wiki/Canny_edge_detector Canny edge detector, Wikipedia]</ref>. Потом полученная граница вместе с маской и черно-белым изображением дается генератору. В качестве целевой функции потерь для тренировки сети берется комбинация двух функций: adversarial loss и feature-matching loss. Также для стабилизация обучения генератора и дискриминатора используется спектральная нормализация.
 
Для восстановления генератору дается испорченное изображение и границы изображения, которые составлены из реальных и сгенерированных на предыдущем этапе. И в результате генерируется полное изображение. Также как и на предыдущем этапе используется составная функция потерь из: adversarial loss, perceptual loss и style loss.
 
Однако, данной сети не удается предсказать достаточно хорошую границу, если отсутствует большая часть изображения или объект имеет сложную структуру.
 
Также данную модель можно использовать для соединения двух изображений или удаления лишних объектов с фотографий.
 
----
 
=== Deep Image Prior<ref>[https://arxiv.org/pdf/1711.10925v4.pdf Deep Image Prior, Dmitry Ulyanov, Andrea Vedaldi, Victor Lempitsky]</ref> ===
 
Как известно, большинство методов глубокого обучения требуют больших наборов данных для тренировки. В отличии от них данный метод не требует никакой предварительной обучающей выборки кроме одного изображения, которое надо исправить. Сеть учится извлекать полезную информации из самого обрабатываемого изображения. Данный метод может применяться для таких задач как вписывание части изображения, удаление шума и увеличение разрешения фотографий.
 
Сформулируем данную задачу как задачу минимизации:
<tex>\theta^{*} = \underset{\theta} {\mathrm{argmin}} ~E(f_{\theta}(z), x_0)</tex>, <tex>x^{*} = f_{\theta^{*}}(z)</tex>,
где <tex>E(x, x_0)</tex> - это функция потерь, зависящая от решаемой задачи, а <tex>f_{\theta}(z)</tex> - некоторая сверточная сеть.
== См. также ==
128
правок

Навигация