Высокоточное семантическое редактирование изображений с помощью EditGAN

Высокоточное семантическое редактирование изображений' - 'High-precision semantic image editing' 'с помощью EditGAN' - 'with EditGAN

Генеративно-состязательные сети, или GAN-ы, находят новые применения в индустрии редактирования изображений. За последние несколько месяцев EditGAN стал популярным в индустрии искусственного интеллекта и машинного обучения, потому что это новый метод для высокоточного и высококачественного семантического редактирования изображений.

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

Итак, давайте начнем. Но прежде чем мы узнаем, что такое EditGAN, важно понять, почему EditGAN важен и почему это значительный шаг вперед.

Почему EditGAN?

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

  1. Во время этапа обучения архитектуры GAN требуется большое количество размеченных данных с семантической сегментацией.
  2. Они способны обеспечивать только высокоуровневое управление.
  3. И часто они просто интерполируют между изображениями.

Можно заметить, что хотя традиционные архитектуры GAN-ов выполняют работу, они неэффективны для широкомасштабного применения. Низкая эффективность традиционной архитектуры GAN-а – это причина, по которой NVIDIA представила EditGAN в 2022 году.

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

Модель EditGAN построена на основе архитектуры GAN, которая совместно моделирует изображения и их семантическую сегментацию и требует только небольшого количества размеченных данных для обучения. Разработчики EditGAN пытались встроить изображение в латентное пространство GAN для эффективного изменения изображения путем оптимизации условного латентного кода в соответствии с редактированием сегментации. Кроме того, для амортизации оптимизации модель пытается найти “векторы редактирования” в латентном пространстве, реализующие редактирование.

Архитектура фреймворка EditGAN позволяет модели изучать произвольное количество векторов редактирования, которые затем могут быть применены к другим изображениям с высокой скоростью и эффективностью. Кроме того, экспериментальные результаты показывают, что EditGAN может редактировать изображения с ранее невиданным уровнем детализации, сохраняя при этом максимальное качество изображения.

Подводя итоги по поводу необходимости EditGAN, это первый фреймворк редактирования изображений на основе GAN-а, который предлагает:

  1. Очень точное редактирование.
  2. Может работать с небольшим количеством размеченных данных.
  3. Может быть эффективно применен в реальных сценариях.
  4. Позволяет композиционность для одновременного выполнения нескольких редактирований.
  5. Работает с GAN-сгенерированными, реальными встроенными и даже изображениями, не относящимися к данной области.

Высокоточное семантическое редактирование изображений с помощью EditGAN

StyleGAN2, передовая архитектура GAN для синтеза изображений, является основным компонентом генерации изображений в EditGAN. Архитектура StyleGAN2 отображает латентные коды, взятые из пула многомерного нормального распределения, в реалистичные изображения.

StyleGAN2 – это глубокая генеративная модель, которая была обучена синтезировать изображения наивысшего качества и приобрести семантическое понимание моделируемых изображений.

Обучение и вывод сегментации

Модель EditGAN встраивает изображение в латентное пространство GAN с помощью оптимизации и энкодера, выполняет сегментацию нового изображения и обучает ветвь сегментации. Фреймворк EditGAN продолжает развивать предыдущие работы и обучает энкодер встраивать изображения в латентное пространство. Основная цель здесь – обучить энкодер, состоящий из стандартных попиксельных потерь L2 и LPIPS, с использованием образцов от GAN и реальных обучающих данных. Кроме того, модель явно регуляризует энкодер с использованием латентных кодов при работе с образцами GAN.

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

Использование сегментационного редактирования для поиска семантики в латентном пространстве

Основная цель EditGAN – использовать совместное распределение семантических сегментаций и изображений для точного редактирования изображений. Допустим, у нас есть изображение x, которое нужно отредактировать, поэтому модель встраивает изображение в латентное пространство EditGAN или использует образцы изображений из самой модели. Ветвь сегментации затем генерирует y или соответствующую сегментацию в основном потому, что RGB-изображения и сегментации имеют общие латентные коды w. Затем разработчики могут использовать любые инструменты для маркировки или цифровой живописи, чтобы изменить сегментацию и отредактировать их вручную в соответствии с их требованиями.

Различные способы редактирования во время вывода

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

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

На основе наших текущих знаний, фреймворк EditGAN может использоваться для редактирования изображений в трех разных режимах.

  • Редактирование в режиме реального времени с помощью векторов редактирования

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

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

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

  • Редактирование на основе оптимизации

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

Реализация

Фреймворк EditGAN оценивается на изображениях, распределенных по четырем различным категориям: автомобили, птицы, кошки и лица. Ветвь сегментации модели обучается с использованием пар изображение-маска в качестве помеченных тренировочных данных для автомобилей, птиц, кошек и лиц соответственно с количеством 16, 30, 30, 16. Когда изображение должно быть отредактировано, используя только оптимизацию, или когда модель пытается изучить векторы редактирования, модель выполняет 100 шагов оптимизации с использованием оптимизатора Adam.

Для набора данных Cat, Car и Faces модель использует реальные изображения из тестового набора данных DatasetGAN, которые не использовались для обучения фреймворка GAN для выполнения функциональности редактирования. Непосредственно эти изображения встраиваются в латентное пространство EditGAN с помощью оптимизации и кодирования. Для категории Birds редактирование показывается на сгенерированных GAN изображениях.

Результаты

Качественные результаты

Результаты в пределах домена

Вышеуказанное изображение демонстрирует производительность фреймворка EditGAN, когда он применяет ранее изученные векторы редактирования к новым изображениям и улучшает изображения с помощью 30 шагов оптимизации. Эти операции редактирования, выполняемые фреймворком EditGAN, разделены для всех классов и сохраняют общее качество изображений. Сравнивая результаты EditGAN и других фреймворков, можно заметить, что фреймворк EditGAN превосходит другие методы в выполнении высокоточных и сложных редактирований, сохраняя при этом идентичность объекта и качество изображения.

Удивительно то, что фреймворк EditGAN может выполнять редактирование с крайне высокой точностью, такое как расширение зрачков или редактирование спиц колес в шинах автомобиля. Кроме того, EditGAN также может использоваться для редактирования семантических частей объектов, состоящих из нескольких пикселей, или для выполнения крупномасштабных модификаций изображения. Стоит отметить, что несколько операций редактирования фреймворка EditGAN способны генерировать манипулированные изображения, в отличие от изображений, которые появляются в данных обучения GAN.

Результаты вне области

Для оценки работы EditGAN вне области его производительности фреймворк был протестирован на наборе данных MetFaces. Модель EditGAN использует реальные лица в области для создания векторов редактирования. Затем модель встраивает портреты MetFaces, которые находятся вне области, с помощью процесса оптимизации на 100 шагов, и применяет векторы редактирования с помощью процесса самообучения на 30 шагов. Результаты можно увидеть на следующем изображении.

Количественные результаты

Для количественной оценки возможностей редактирования изображений EditGAN модель использует стандартное сравнение улыбки, которое впервые было представлено MaskGAN. Лица, содержащие нейтральное выражение, заменяются улыбающимися лицами, и производительность измеряется по трем параметрам.

  • Семантическая корректность

Модель использует предварительно обученный классификатор атрибутов улыбки для определения, показывают ли лица на изображениях улыбающиеся выражения после редактирования.

  • Качество изображения на уровне распределения

Расстояние Кидера и расстояние Фрешера между тестовыми наборами данных CelebA и 400 отредактированными тестовыми изображениями рассчитываются для оценки качества изображения на уровне распределения.

  • Сохранение идентичности

Способность модели сохранять идентичность объектов при редактировании изображения измеряется с помощью предварительно обученной сети извлечения признаков ArcFace.

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

  • MaskGAN

MaskGAN принимает неулыбающиеся изображения вместе с их масками сегментации и маску сегментации целевой улыбки в качестве входных данных. Следует отметить, что в отличие от EditGAN фреймворку MaskGAN требуется большое количество размеченных данных.

  • Локальное редактирование

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

  • InterFaceGAN

Как и EditGAN, InterFaceGAN также пытается найти векторы редактирования в скрытом пространстве модели. Однако в отличие от EditGAN модель InterFaceGAN использует большое количество размеченных данных, дополнительные классификаторы атрибутов и не обладает такой точностью редактирования.

  • StyleGAN2Distillation

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

Ограничения

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

Вывод

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

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