Сегментация изображения с помощью нейронных сетей на примере практической задачи | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Авторы: , ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №24 (366) июнь 2021 г.

Дата публикации: 12.06.2021

Статья просмотрена: 769 раз

Библиографическое описание:

Гребень, Н. В. Сегментация изображения с помощью нейронных сетей на примере практической задачи / Н. В. Гребень, А. А. Елькина, И. А. Пашкин. — Текст : непосредственный // Молодой ученый. — 2021. — № 24 (366). — С. 18-21. — URL: https://moluch.ru/archive/366/82384/ (дата обращения: 16.11.2024).



В статье авторы приводят способ решения задачи сегментации изображения на примере задачи перекраски стен на фотографии комнаты.

Ключевые слова: сегментация изображений, нейронные сети.

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

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

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

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

Для того, чтобы решить описанную задачу, необходимо:

1) Выполнить задачу сегментации, а именно: подобрать датасет с фотографиями комнат и соответствующими им изображениями-масками, на которых сегментированы стены и построить модель нейронной сети с архитектурой, соответствующей задаче, и обучить ее сегментации;

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

Для проведения исследования в данной работе был использован язык программирования Python 3.8, с использованием библиотек: Keras 2.4.3, Numpy 1.20.1, Matplotlib 3.3.4, Scikit-image 0.18.1.

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

Пример фотографии и маски из датасета

Рис. 1. Пример фотографии и маски из датасета

Датасет был размечен недостаточно корректно, поэтому до построения модели были исключены 400 фотографий и масок к ним.

В качестве архитектуры была взята U-Net (ее преимущества были описаны в статье [2]). Сначала была использована классическая по количеству слоев U-Net, которая описана, например, в книге [3].

Далее, по очереди обучались модели архитектуры U-Net с общими параметрами:

Таблица 1

Общие параметры моделей

Функция активации свертки

Изменение разрешения при свертке

Функция активации на выходе

Оптимизатор

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

Метрика

ReLU

Нет

Sigmoid

Adam

Binary crossentropy

Accuracy

В Таблице 2 представлены параметры обучения каждой модели, которые менялись в процессе исследования.

Таблица 2

Переменные параметры

Размер выборки

Размер батча

Шаг обучения

Число нейронов

Аугмен-тация

Разрешение

Кол-во

эпох

1

1400

20

0.001

1 941105

Нет

128x128

50

2

1000

25

0.001

1941105

Нет

128x128

70

3

640

32

0.005

1941105

Нет

128x128

70

4

640

32

0.003

1941105

Да

128x128

70

5

640

32

0.003

1941105

Да

512x512

70

6

640

32

0.003

31110001

Да

512x512

70

При аугментации варьировались параметры: приближение, поворот, яркость и горизонтальный поворот (зеркальное отображение). Для каждой модели из датасета 90 % изображений и масок были включены в обучающий набор, а остальные 10 % — в валидационный. В итоге, 6-я модель имела на последней эпохе наивысшую точность: 86 %, а также визуально лучше всех производила сегментацию на тестовых фотографиях.

Пример работы 6-й модели нейронной сети

Рис. 2. Пример работы 6-й модели нейронной сети

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

(1)

где — текущий пиксел нового изображения, color — цвет, задаваемый пользователем, original — цвет текущего пиксела исходного изображения,

цветовая компонента.

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

Литература:

  1. RMRC Reconstruction Meets Recognition Challenge 2014. [Электронный ресурс]. URL: https://cs.nyu.edu/~silberman/rmrc2014/indoor.php (дата обращения: 11.06.2021).
  2. U-Net: нейросеть для сегментации изображений. [Электронный ресурс]. URL: https://neurohive.io/ru/vidy-nejrosetej/u-net-image-segmentation/ (дата обращения: 11.06.2021).
  3. S. Pattanayak. Pro Deep Learning with TensorFlow [Книга]. — Berkeley, CA: Apress, 2017. — 398 с.
  4. Аугментация (augmentation, “раздутие”) данных для обучения нейронной сети на примере печатных символов. [Электронный ресурс]. URL: https://habr.com/ru/company/smartengines/blog/264677/ (дата обращения: 11.06.2021).
Основные термины (генерируются автоматически): нейронная сеть, задача сегментации, маска, фотография.


Похожие статьи

Методы решения задачи детекции текста на изображениях

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

Сравнение архитектур нейронных сетей в задаче сегментации фигуры человека

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

Аспекты использования различных методов распознавания лиц в современных системах безопасности

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

Классификация изображений с помощью сверточных нейронных сетей

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

Сравнительный анализ нейронных сетей для генерации изображений высокого качества

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

Характеристические подходы при распознавании изображений

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

Векторизация слов для нечеткого поиска в вопросно-ответных системах

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

Алгоритмы распознавания объектов

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

Применение нейронных сетей для графологического анализа почерка

В данной статье проводится исследование системы графологического анализа почерка, основанной на применении нейронных сетей.

Подходы к цифровой реконструкции пространственной среды макроуровня

В статье приведены примеры и рассмотрены методы цифровой виртуальной реконструкции масштаба города, района.

Похожие статьи

Методы решения задачи детекции текста на изображениях

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

Сравнение архитектур нейронных сетей в задаче сегментации фигуры человека

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

Аспекты использования различных методов распознавания лиц в современных системах безопасности

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

Классификация изображений с помощью сверточных нейронных сетей

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

Сравнительный анализ нейронных сетей для генерации изображений высокого качества

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

Характеристические подходы при распознавании изображений

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

Векторизация слов для нечеткого поиска в вопросно-ответных системах

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

Алгоритмы распознавания объектов

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

Применение нейронных сетей для графологического анализа почерка

В данной статье проводится исследование системы графологического анализа почерка, основанной на применении нейронных сетей.

Подходы к цифровой реконструкции пространственной среды макроуровня

В статье приведены примеры и рассмотрены методы цифровой виртуальной реконструкции масштаба города, района.

Задать вопрос