Тема: обучающая раскраска изображений

Члены команды: Буграхан Акбулут, Гёкай Атай

НАПОМИНАНИЕ

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

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

ТЕСТИРОВАНИЕ ОБУЧЕННОЙ МОДЕЛИ

Мы решили использовать работу по раскрашиванию цветных изображений (Чжан Р., Изола, П. и Эфрос, А.А., 2016. Цветная раскраска изображений. Европейская конференция по компьютерному зрению) в качестве основы.

Сверточная нейронная сеть (CNN или ConvNet) - это модель глубокого обучения. CNN - это класс глубоких искусственных нейронных сетей с прямой связью, которые чаще всего применяются для анализа визуальных образов. CNN помогает уменьшить количество параметров, необходимых для изображений через обычную нейронную сеть (NN). Кроме того, это помогает обеспечить совместное использование параметров, чтобы обеспечить инвариантность трансляции. Простая ConvNet - это последовательность уровней, и каждый уровень ConvNet преобразует один объем активаций в другой с помощью дифференцируемой функции. Мы используем три основных типа слоев для построения архитектур ConvNet: Сверточный уровень, Уровень пула и Полностью связанный уровень (точно такой, как в обычном Нейронные сети). Объединение этих слоев формирует полную архитектуру ConvNet.

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

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

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

НАШ ПОДХОД

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

В качестве еще одного улучшения мы намерены изменить архитектуру модели. Текущая архитектура аналогична архитектуре VGG (за исключением уровней пула и fc). Сетевая архитектура VGG была представлена ​​Симоняном и Зиссерманом в их статье 2014 года Очень глубокие сверточные сети для распознавания крупномасштабных изображений. Эта сеть отличается своей простотой, в ней используются только сверточные слои 3 × 3, наложенные друг на друга с нарастающей глубиной. Уменьшение размера тома обрабатывается путем максимального объединения. Затем за двумя полностью связанными слоями, каждый с 4096 узлами, следует классификатор softmax (см. Выше). Итак, для другой задачи мы хотим изменить архитектуру модели, преобразовать ее в архитектуру ~ ResNet и визуализировать изменения производительности.