Изучение методов сверхвысокого разрешения изображений с упором на современный подход на основе GAN

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

Итак, приступим!

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

Ссылка на исследовательский документ

Что такое сверхразрешение изображения?

Как следует из названия, сверхвысокое разрешение относится к искусству (да, наука о данных - это искусство, люди! 😉) преобразования изображения в более высокое разрешение, используя его изображение с более низким разрешением. У него есть различные реальные приложения, такие как:

  1. Сохранение изображений. Для службы, требующей больших объемов данных, хранение изображений в формате с высоким разрешением может быть довольно дорогостоящим, поскольку занимает много места. Например: больницы обрабатывают терабайты данных, относящихся к пациентам, травмам, МРТ и т. Д. - таким образом, хранение всех этих данных с высоким разрешением экономически нецелесообразно. С помощью методов сверхвысокого разрешения изображений можно при необходимости преобразовать форматы с низким разрешением в формат с более высоким разрешением, тем самым повышая эффективность хранения.
  2. Возрождение истории. Древние артефакты, исторические изображения и документы также могут получить выгоду от сверхвысокого разрешения изображений. Такие документы можно оживить, преобразовав их в аналог с более высоким разрешением и, таким образом, сохранить в лучшем качестве.

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

Супер-разрешение одиночного изображения (SISR)

- один из наиболее часто используемых методов увеличения разрешения изображений . Были разработаны различные методы повышения разрешения изображений. Некоторые из них кратко описаны ниже:

  • Методы, основанные на прогнозировании. Эти были одним из исходных типов моделей для SISR. Эти алгоритмы работают путем интерполяции значений пикселей в изображении. Примеры таких фильтров: линейный, бикубический или фильтр Ланцоша. Однако эти подходы, основанные на фильтрах, уменьшают контрастность или резкие края изображения и чрезмерно упрощают выходное изображение. В результате изображение получается слишком гладким, и такие результаты нежелательны в SISR. Чтобы узнать больше, обратитесь к этой статье.
  • Методы ближайшего соседа. Эти методы широко используются в компьютерном зрении. И в этом случае участки с низким разрешением аналогичных типов подвергаются повышающей дискретизации, и, таким образом, изображение восстанавливается на основе значений пикселей ближайших пикселей.

Подход на основе GAN

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

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

Подробное обсуждение GAN см. в этой серии. Также посетите мой пост об интересном применении GAN.

В исследовательском документе, который мы собираемся обсудить, предлагается генерирующая состязательная сеть со сверхвысоким разрешением (SRGAN), в которой используется глубокая остаточная сеть (ResNet) с пропускаемыми соединениями и функциями потерь, которые настроены для решения проблем проблема под рукой.

Зачем использовать подход на основе GAN?

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

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

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

Изображений

В целях обучения изображения ниже были подвергнуты субдискретизации с коэффициентом r после применения фильтра Гаусса для эффекта сглаживания размытия. С точки зрения ширины (W), высоты (H) и количества цветовых каналов (C) тензоры изображения будут:

  • для низкого разрешения I ᴸᴿ: (Ш * В * Ц)
  • для высокого разрешения I ᴴᴿ: (rW * rH * C)

Сетевая архитектура

Генератор

Генераторная сеть создается путем добавления B идентичных остаточных блоков, каждый из которых состоит из 2 сверточных слоев с ядрами 3 × 3 и 64 характеристическими картами, за которыми следует слой пакетной нормализации, чтобы уменьшить влияние внутренних ковариационных сдвигов. Остаточные блоки используются для лучшей передачи низкоуровневой информации на более высокие уровни. Параметрическое ReLU используется в качестве функции активации. Чтобы узнать больше о функциях активации, обратитесь к этой статье.

Дискриминатор

Дискриминаторная сеть содержит 8 сверточных слоев по 3 × 3 ядер фильтра, увеличиваясь в 2 раза с 64 до 512 ядер. Слои свертки с чередованием используются вместо максимальных слоев объединения.

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

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

Функция потерь

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

Почему не MSE (средняя ошибка квадрата)?

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

Таким образом, общая функция потерь восприятия должна быть линейной комбинацией двух потерь:

Потеря контента

Вместо того, чтобы полагаться на потери в пикселях, часть функции потерь должна быть посвящена восприятию подобия. Таким образом, эта потеря контента основана на пиксельных различиях между активационными слоями модели VGG-10. Потеря VGG определяется как евклидово расстояние между представлениями признаков восстановленного изображения Gθ (I ᴸᴿ) и эталонного изображения I ᴴᴿ. Активации между различными комбинациями слоев можно опробовать и протестировать для оптимизации результатов.

φi, j указывает карту характеристик, полученную j-й сверткой (после активации) перед i-м слоем maxpooling в сети VGG-10.

Состязательный проигрыш

Состязательный проигрыш служит проверкой изображения, созданного генератором. Поскольку обычный генератор генерирует изображение из случайного или гауссовского шума, для того, чтобы выходное изображение напоминало входное изображение, в генератор передается изображение с низким разрешением I ᴸᴿ. Потеря состязательности способствует созданию естественно выглядящих изображений. Таким образом, он определяется вероятностями дискриминатора по всем обучающим образам.

Параметры тренировки

Сеть была обучена на выборке из 350 000 изображений из ImageNet. Изображения с низким разрешением были получены путем понижающей дискретизации исходных изображений (BGR, C = 3) с коэффициентом r = 4. Значения пикселей изображений I ᴸᴿ были масштабированы до [0, 1], а значения пикселей изображений I ᴴᴿ были масштабированы до [−1, 1]. Потери MSE рассчитывались на изображениях диапазона интенсивностей [-1, 1].

Скорость обучения составляла 10 ° для 105 итераций, а затем 10 ° для еще 105 итераций. Оптимизатор Адама использовался с β1 = 0,9.

Полученные результаты

Модель SRGAN дала многообещающие результаты, которые визуально были значительно лучше, чем любое из предыдущих исследований, проведенных в области SISR. Некоторые краткие сведения о результатах показаны ниже:

Заключение

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

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

Любые отзывы приветствуются и ценятся - я хотел бы услышать, что вы думаете об этой статье.

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

Независимая редакция, Heartbeat спонсируется и публикуется Comet, платформой MLOps, которая позволяет специалистам по обработке данных и группам машинного обучения отслеживать, сравнивать, объяснять и оптимизировать свои эксперименты. Мы платим участникам и не продаем рекламу.

Если вы хотите внести свой вклад, отправляйтесь на наш призыв к участникам. Вы также можете подписаться на наши еженедельные информационные бюллетени (Deep Learning Weekly и Comet Newsletter), присоединиться к нам в » «Slack и подписаться на Comet в Twitter и LinkedIn для получения ресурсов, событий и гораздо больше, что поможет вам быстрее и лучше строить модели машинного обучения.