Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Метод [ править ]

Фон [ править ]

Обратные задачи, такие как уменьшение шума , сверхвысокое разрешение и рисование, могут быть сформулированы как задача оптимизации , где - изображение, искаженное представление этого изображения, является зависимым от задачи термином данных, а R (x) - регуляризатором . Это создает проблему минимизации энергии.

Глубокие нейронные сети изучают генератор / декодер, который отображает случайный вектор кода на изображение .

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

Особенности [ править ]

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

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

Переоснащение [ править ]

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

Приложения [ править ]

Снижение шума [ править ]

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

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

Супер-разрешение [ править ]

Сверхвысокое разрешение используется для создания версии изображения x с более высоким разрешением. Термин данных установлен на где d (·) - оператор понижающей дискретизации, такой как Ланцоша, который прореживает изображение с коэффициентом t.

Рисование [ править ]

Inpainting используется для восстановления недостающей области изображения . Эти недостающие пиксели определяются как двоичная маска . Термин данных определяется как (где - произведение Адамара ).

Реконструкция без вспышки [ править ]

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

Реализации [ править ]

  • Эталонная реализация, переписанная на Python 3.6 с библиотекой PyTorch 0.4.0, была выпущена автором под лицензией Apache 2.0 : deep-image-Prior [2]
  • TensorFlow -На реализации , написанный на Python 2 и выпустили под CC-SA 3.0 лицензии: глубоководные изображения предшествующему-tensorflow
  • Keras -На реализация написана на Python 2 и выпущен под GPLv3 : machine_learning_denoising

Ссылки [ править ]

  1. ^ Джо (2012-12-11). «профилирование сенсора и фотонного шума .. и как от него избавиться» . темный стол.
  2. ^ https://github.com/DmitryUlyanov/deep-image-prior
  • Ульянов, Дмитрий; Ведальди, Андреа; Лемпицкий, Виктор (30 ноября 2017 г.). "Deep Image Prior". arXiv : 1711.10925v2 .