75
правок
Изменения
Нет описания правки
Другими словами, задача состоит в том, чтобы научиться преобразовывать изображение из одной области в другую, получая в итоге изображение со стилем (характеристиками) последней.
[[Файл:Horse2Zebra.png|thumb|right|(Рис. 1. Пример трансляции изображения: превращение лошади в зебру.)<ref name="cycle">[https://github.com/junyanz/CycleGAN CycleGAN {{---}} GitHub]</ref>]]
== Описание задачи ==
=== Архитектура ===
[[File:Training_CGAN_pix2pix.png|400px|right|thumb|Рис. 5. Пример процесса обучения генератора и дискриминатора для Pix2Pix.]]
Pix2Pix реализует архитектуру [[Generative Adversarial Nets (GAN)#CGAN_.28Conditional_Generative_Adversarial_Nets.29| условных порождающих состязательных сетей ]](англ. CGAN), где для генератора взята архитектура, основанная на U-Net<ref name="unet">[https://sci-hub.do/10.1007/978-3-319-24574-4_28 U-Net: Convolutional Networks for Biomedical Image Segmentation]</ref>, а для дискриминатора используется сверточный классификатор PatchGAN<ref name="patch">[https://sci-hub.do/10.1007/978-3-319-46487-9_43 Precomputed Real-Time Texture Synthesis with Markovian Generative Adversarial Networks]</ref>, который штрафует алгоритм на уровне участков изображения.
==== Генератор ====
[[File:UNet_generator_pix2pix.png|400px|right|thumb|Рис. 6. Архитектура Pix2Pix генератора.]]
Для генератора Pix2Pix используется U-net-генератор.<br>
==== Дискриминатор ====
[[File:The-PatchGAN-structure-in-the-discriminator-architecture.png|400px|right|thumb|Рис. 7. Архитектура PatchGAN дискриминатора.]]
Для дискриминатора данной сети используется сверточный дискриминатор PatchGAN.
* затем для вычисления ошибки генератора проводится сравнение матрицы классификации от {объединения сгенерированного изображения с исходным входным изображением} с матрицей из всех 1, которое считается с помощью BCE Loss, которое впоследствии суммируется с попиксельным сравнением реального изображения со сгенерированным, домноженным на <tex>\lambda</tex>;
[[File:Pix2pix-UNet-128-GAN-network-architecture.png|700px|center|thumb|Рис. 8. Архитектура Pix2Pix.]]
=== Примеры ===
[[File:Pix2pix_examples.png|800px|right|thumb|Рис. 9. Примеры Pix2Pix.]]
Для тестирования решения были проведены следующие эксперименты:
== Pix2PixHD ==
[[File:Generator_pix2pixhd.png|400px|right|thumb|Рис. 10. Генератор Pix2PixHD.]]
Pix2PixHD<ref>[https://github.com/NVIDIA/pix2pixHD Pix2PixHD {{---}} GitHub]</ref>{{---}} нейронная сеть, основанная на архитектуре Pix2Pix, которая является новым удачным подходом для решения задачи получения изображений высокого разрешения из сегментированных изображений.
{|align="center"
|-valign="top"
|[[File:City_pix2pixhd.gif|500px|left|thumb|Рис. 11. Пример работы Pix2PixHD {{---}} label-to-streetview.]] |[[File:Face_pix2pixhd.gif|500px|left|thumb|Рис. 12. Пример работы Pix2PixHD {{---}} label-to-face.]]
|}