Генеративно-состязательные сети (GAN) были очень интересны с расширяющимся диапазоном приложений в последние годы.
Одно из применений, к которому они могут быть применены, — создание детального изображения из размытого изображения. Пульс — проект на базе Stylegan — ⁠ имеет именно такой вариант использования.⁠

Это превратило знаменитую CSI увеличенную сцену ⁠ — ⁠, где исследователь знаменитого сериала непрерывно увеличивает изображение без потери разрешения — из совсем нереального в реальное.

Используя пульс, я создал реалистичные изображения из смайликов, как показано ниже:

Реалистичная картина человека — ⁠ которого не существует — ⁠ справа создается исключительно из размытой версии эмодзи слева.

Как это работает

Давайте посмотрим на пример:

  • Здесь мы видим Лену в виде изображения размером 16х16 пикселей (рис. 1).
  • Мы запускаем его через пульс, чтобы получить подробную версию (рис. 2)

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

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

Код

Установка и настройка на линуксе.

Бег

Нам нужно использовать два основных скрипта:

  • align_face.py устанавливает все изображения во входной папке в правильном формате и уменьшает их масштаб до нужного размера. Чем меньше разрешение — больше уменьшение масштаба — тем больше места у GAN для реконструкции изображения с высоким разрешением.
  • run.py генерирует прогноз и — необязательно — сохраняет промежуточные шаги. Это может быть полезно для создания анимации, такой как Лена в начале этой статьи.

Вы можете проверить аргументы по умолчанию для обоих скриптов по адресу:

Следующие шаги

Для более подробной информации проверьте:

Follow me on twitter @mejutoco