Задача трансляции изображений

Материал из Викиконспекты
Версия от 18:51, 9 января 2021; Spovar (обсуждение | вклад) (Архитектура)
Перейти к: навигация, поиск
Эта статья находится в разработке!


Определение:
Задача трансляции изображения (англ. Image-to-image translation) — это область задач компьютерного зрения, цель которой состоит в том, чтобы научиться строить соответствия между входным и выходным изображениями, используя тренировочные данные.

Другими словами, задача состоит в том, чтобы научиться преобразовывать изображение из одной области в другую, получая в итоге изображение со стилем (характеристиками) последней.

Пример работы трансляции изображения: превращение лошади в зебру, и наоборот. (CycleGan)[1]

Описание задачи

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

Виды тренировочных данных для задачи трансляции изображений.

Обучение на парах изображений

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

Примерами приложения являются следующие трансляции изображений:

  • черно-белое изображение — цветное
  • сегментация изображения (англ. segmentation map) — реальная картинка
  • линии-края (англ. edges) — фотография
  • генерация разных поз и одежды на человеке
  • описывающий изображение текст — фотография
Примеры применения задачи трансляции изображения с парными тренировочными данными. (Pix2Pix)[2]

Обучение на независимых множествах

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

Пример:

  • тренировочные данные — два множества: {реальные фотографии}, {картины К.Моне}
  • приложение — взяли любую фотографию, например, поле с цветами; получили поле с цветами в стиле К.Моне.
Примеры применения задачи трансляции изображения с непарными тренировочными данными. (CycleGan)[1]

Pix2Pix

Pix2Pix — это попытка решения задачи трансляции изображений с помощью глубоких сверточных нейронных сетей.

Архитектура

Pix2Pix представляет собой условные порождающие состязательные сети (англ. CGAN) с модификациями, где для генератора взята U-Net[3]-основанная архитектура, а для дискриминатора используется сверточный классификатор PatchGAN[4], который штрафует структуру только в масштабе участков изображения.

Пример обучения.

Примеры

Pix2PixHD

См. также

Примечания

  1. 1,0 1,1 CycleGAN — GitHub
  2. Pix2Pix — GitHub
  3. [sci-hub.do/10.1007/978-3-319-24574-4_28 U-Net: Convolutional Networks for Biomedical Image Segmentation]
  4. [sci-hub.do/10.1007/978-3-319-46487-9_43 Precomputed Real-Time Texture Synthesis with Markovian Generative Adversarial Networks]

Источники информации