🔍 Поиск работ

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

Работа №206939

Тип работы

Дипломные работы, ВКР

Предмет

прикладная информатика

Объем работы98
Год сдачи2020
Стоимость4900 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
11
Не подходит работа?

Узнай цену на написание


АННОТАЦИЯ 2
ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ 8
ВВЕДЕНИЕ 9
1 УДАЛЕНИЕ ФОНА НА ИЗОБРАЖЕНИИ 11
1.1 Удаление фона на изображении как задача сегментации. Основные
виды сегментации изображений 11
1.2 Классические подходы к сегментации изображения 13
1.2.1 Методы кластеризации 13
1.2.2 Методы наращивания областей 15
1.2.3 Сегментация по водоразделам (Watershed) 17
1.2.4 Обнаружение контуров градиентным методом 19
1.2.5 Обнаружение контуров с помощью метода градиентной обра¬ботки при линейной фильтрации 20
1.2.6 Алгоритм сегментации FloodFill 21
1.2.7 Ручное кодирование свойств области. Сегментация на основе
градаций серого. Алгоритм Split&Merge 22
1.2.8 Алгоритм сегментации GrabCut 22
1.2.9 Методы разреза графа 23
1.2.10 Суперпикселизация 24
1.3 Сегментация изображений с применением нейронных сетей 26
1.3.1 Общее описание 26
1.3.2 Нейронная сеть FCN 26
1.3.3 Нейронная сеть SegNet 27
1.3.4 Нейронная сеть U-Net 28
1.3.5 Нейронная сеть FPN 29
1.3.6 Нейронная сеть Mask R-CNN 30
1.4 Сервисы для удаления фона с изображения 31
1.4.1 Сервис для удаления фона с изображения Remove.bg 31
1.4.2 Сервис для удаления фона с изображения Background Burner 32
1.5 Выводы по разделу 32
2 ЗАДАЧА СЕГМЕНТАЦИИ 34
2.1 Постановка задачи удаления фона с изображения с помощью предвари - тельной сегментации 34
2.2 Исходные данные. Работа с исходными изображениями 35
2.2.1 Источники набора данных 35
2.2.2 Предварительная обработка набора данных 35
2.2.3 Пакетное преобразование изображений. Расширение исходного
набора данных 37
2.2.4 Техника дополнительной разметки «Pseudo-labelling» 38
2.3 Операции свёртки 39
2.4 Операция субдискретизации (пулинг) 41
2.5 Функции активации RELU 42
2.6 Функции потерь 42
2.7 Метрика качества 44
2.8 Кодировщик. Нейронная сеть Resnet-50. Перенос обучения 45
2.9 Декодировщик 47
2.10 Операция DropOut 48
2.11 Архитектура нейронной сети U-Net 49
2.12 Архитектура нейронной сети FPN 50
2.13 Метод оптимизации функции потерь Adam 51
2.14 Обучение нейронных сетей U -Net и FPN с помощью алгоритма обрат-ного распространения 54
2.15 Ансамблирование нейронных сетей U-Net и FPN 57
2.16 Матрица ошибок (Confusion matrix) 57
2.17 Выводы по разделу 58
3 РЕАЛИЗАЦИЯ МОДЕЛЕЙ И ПРОВЕРКА НА ТЕСТОВЫХ ДАННЫХ .... 60
3.1 Алгоритмы получения масок бинарной сегментации и обучения ней-
ронных сетей 60
3.2 Архитектура и обучение нейронной сети U-Net 63
3.2.1 Архитектура 63
3.2.2 Обучение 65
3.2.3 Результаты работы 66
3.3 Архитектура и обучение нейронной сети FPN 69
3.3.1 Архитектура 69
3.3.2 Обучение 71
3.3.3 Результаты работы 71
3.4 Ансамблирование нейронных сетей U-Net и FPN. Результаты объедине-ния масок бинарной сегментации 73
3.5 Выводы по разделу 75
ЗАКЛЮЧЕНИЕ 77
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 79
ПРИЛОЖЕНИЯ 84
ПРИЛОЖЕНИЕ 1 Исходный код 84
ПРИЛОЖЕНИЕ 2 Примеры набора данных 97


Современная наука не стоит на месте и постоянно совершенствуется. Этому процессу способствует быстрый рост производительности вычис- лительной техники. Мощность компьютеров увеличивается, что позволяет реализовывать автоматические системы обработки многомерных данных фактически в режиме реального времени [12].
Улучшение существующих решений прослеживается и в области компьютерного зрения. В настоящее время наблюдается бурное развитие автоматизированных технологий обработки изображений. Системы таких технологий позволяют выделить, распознать и классифицировать интересу-ющие исследователя объекты, извлечь из изображений необходимую информацию. Например, компьютерное зрение часто применяется в области медицины. Докторам нужно тщательно просматривать медицинские снимки для идентификации аномалий внутренних органов; невнимательность и халатность специалиста может привести к непоправимым последствиям. Системы обработки многомерных данных могут помочь врачу проанали - зировать медицинские изображения и идентифицировать факт присутствия той или иной аномалии, тем самым выделив значимую информацию из снимка [8]. В большинстве случаев, первым этапом обработки изображения является его сегментация, применяемая для выделения участков с интересу - ющими объектами. Именно поэтому сегментация изображений (далее - сег¬ментация) - актуальная и современная задача.
Сегментация заключается в том, что каждому пикселю изображения присваивается свой класс, своя метка; оно разбивается на множество покры - вающих его областей. Сегментация преследует две основные цели. Первая заключается в разделении изображения на части, более удобные для дальней - шего анализа. Спектр сегментируемых классов велик: от сегментации прос - тых прямоугольных объектов, кругов, до анализа более сложных и мелких композиций на медицинских и спутниковых снимках, фотографиях с камер видеонаблюдения. Вторая же цель заключается в изменении формы описания изображения. В результате сегментации пиксели изображения преобразуются в структуры, содержащие больше информации или обеспечивающие успеш - ную организацию дальнейших операций анализа изображения [18, 20].
Удаление фона на изображении по-другому формулируется как задача бинарной сегментации изображения, где в качестве классов выступают «фон» и «объект на переднем плане». Отсегментировав фон, можно его удалить, оставив только интересующую нас область. Удаление фона на изоб - ражении часто бывает необходимо выполнить при решении задач фотомон - тажа, дизайна, журналистики и других.
Существует большое количество различных подходов к сегментации изображений. Многие существующие решения полагаются на применение системы правил, на выполнение определенного алгоритма, специальную предобработку изображения. Они основаны как на простых алгоритмах нара - щивания областей, кластеризации, классическом машинном обучении, так и на нейронных сетях. Нейросетевые модели дают возможность более точного решения задачи, а от целостности и качества маски сегментации зависит точность срабатывания последующих за ней алгоритмов [5].
Целью данной работы является разработка моделей искусственных нейронных сетей для решения задачи удаления фона на изображении с помощью его предварительной сегментации, получения маски объекта, расположенного на переднем плане (отделение доминирующего объекта от фона) и последующего удаления фона с рассматриваемого изображения.
Для достижения данной цели необходимо решить следующие задачи:
1) исследовать существующие подходы для сегментации изображений;
2) проанализировать и подготовить исходные данные;
3) разработать математические модели искусственных нейронных сетей для решения задачи бинарной сегментации;
4) проверить работу моделей на экспериментальных данных и провести их сравнительный анализ.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Цель данной работы заключалась в разработке моделей искусственных нейронных сетей для решения задачи удаления фона на изображении с помощью его предварительной сегментации, получения маски объекта, расположенного на переднем плане и последующего удаления фона с рас - сматриваемого изображения.
В ходе работы задача удаления фона была сформулирована как задача бинарной сегментации изображения, рассмотрены различные классические и нейросетевые подходы к её решению. Выбран нейросетевой подход, а имен - но нейронные сети U-Net и FPN.
Для каждой из рассматриваемых искусственных нейронных сетей составлена математическая модель и разработана архитектура для решения задачи бинарной сегментации изображения. Приведена метрика качества и функции потерь, позволяющие оценить точность работы каждой из моделей. В качестве алгоритма обучения нейронных сетей выбран метод обратного распространения ошибки с применением оптимизации функции потерь методом Adam.
Для обучения и тестирования рассматриваемых нейронных сетей подготовлен набор данных, содержащий 15892 изображений с разметкой объектов на переднем плане. Подготовка набора данных осуществлялась двумя способами: с помощью сервиса разметки и с использованием подхода «Pseudo-labelling».
Разработанные архитектуры нейронных сетей были реализованы на языке программирования Python 3.7 с применением библиотеки машинного обучения Pytorch, а также среды разработки JupyterLab.
Для проведения сравнительного анализа точности бинарной сегмен - тации изображения используется метрика качества IoU, визуализируется матрица ошибок. Для улучшения качества результатов работы моделей предлагается их объединить с помощью метода ансамблирования. Исходя из полученных результатов были сделаны выводы о качестве работы указанных нейронных сетей как по-отдельности, так и вместе. Таким образом, ансамблирование позволяет использовать преимущества каждого из под - ходов; маски бинарной сегментации на выходе ансамбля получаются более качественными, особенно на границе объекта и фона, где, как правило, происходит небольшое размытие изображения.
Итак, цель достигнута, а поставленные задачи - полностью решены. Разработанные архитектуры нейронных сетей успешно внедрены и используются в проекте «Image Blending», разрабатываемый в компании «ООО Цифровая Собственность».
Представленное в данной работе решение может использоваться и для решения задачи удаления фона на видеопоследовательности с предва- рительным её разбиением на отдельные кадры и получением маски объекта, расположенного на переднем плане. В связи с постоянным развитием архитектур для сегментации и появлением новых современных решений целью дальнейшей работы может стать исследование новых архитектур и подходов к решению задачи удаления фона.



1 Вакуленко, С.А. Практический курс по нейронным сетям: учебное
пособие / С. А. Вакуленко, А. А. Жихарева. - Санкт-Петербург: НИУ ИТМО, 2018. - 71 с. - Текст: электронный // Лань: электронно-библиотечная
система. - URL: https://e.lanbook.com/book/136500 (дата обращения: 16.03.2020). - Режим доступа: для авториз. пользователей.
2 Гонсалес, Р. Цифровая обработка изображений: учебник /
Р. Гонсалес, Р. Вудс. - Москва: Техносфера, 2005. - 1072 с.
3 Гудфеллоу, Я. Глубокое обучение / Я. Гудфеллоу, И. Бенджио,
А. Курвилль; пер. с англ. А.А. Слинкина. - 2-е изд. Москва: ДМК Пресс, 2018. - 652 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/book/107901 (дата обращения:
11.03.2020). - Режим доступа: для авториз. пользователей.
4 Джонс, М.Т. Программирование искусственного интеллекта в приложениях / М.Т. Джонс. - Москва: ДМК Пресс, 2011. - 312 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/book/1244 (дата обращения: 23.03.2020). - Режим доступа: для авториз. пользователей.
5 Калитин, Д.В. Artifical neural networks: учебное пособие /
Д.В. Калитин. - Москва: МИСИС, 2018. - 88 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/book/108048 (дата обращения: 16.03.2020). - Режим доступа: для авториз. пользователей.
6 Кэлер, А. Изучаем OpenCV. Разработка программ компьютерного
зрения на C++ с применением библиотеки OpenCV / А. Кэлер, Г. Брэдски; пер. с англ. А.А. Слинкина. - Москва: ДМК Пресс, 2017. - 826 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL:
https://e4anbook.com/book/108126 (дата обращения: 13.12.2020). - Режим
доступа: для авториз. пользователей.
7 Лепешкин, О.М. Анализ методов сегментации изображений / О.М. Лепешкин, С.А. Романов, Ю.П. Стоянов // Молодой учёный. - 2010. - №6(17). - С. 26-28
8 Лучано, Р. Python. К вершинам мастерства / Р. Лучано; пер. с англ.
A. А. Слинкин. - Москва: ДМК Пресс, 2016. - 768 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/book/ 93273 (дата обращения: 03.03.2020). - Режим доступа: для авториз. поль-зователей.
9 Маккинни, У. Python и анализ данных/ У. Маккинни; перевод с английского А.А. Слинкина. - 2-е изд., испр. и доп. - Москва: ДМК Пресс, 2020. - 540 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/ book/131721 (дата обращения: 30.01.2020). - Режим доступа: для авториз. пользователей.
10 Моделирование и распознавание 2D/3D образов. Сегментация изображения. - Дата обновления: 31.07.2018. URL: https://api-2d3d-cad.com/ segment/ (дата обращения: 18.12.2019)
11 Пантелеев, А.В. Методы оптимизации в примерах и задачах: учебное пособие / А.В. Пантелеев, Д.В. Метлицкая, Е.А. Алешина. - М.: Ву¬зовская книга, 2013. - 244 с.:ил.
12 Рашка, С. Python и машинное обучение: крайне необходимое пособие по новейшей предсказательной аналитике, обязательное для более глубокого понимания методологии машинного обучения: руководство / С. Рашка; перевод с английского А.В. Логунова. - Москва: ДМК Пресс, 2017. - 418 с. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e4anbook.com/book/100905 (дата обращения: 30.03.2020). - Режим доступа: для авториз. пользователей.
13 Ростовцев, В.С. Искусственные нейронные сети: учебник /
B. С. Ростовцев. - Санкт-Петербург: Лань, 2019. - 216 с. - Текст: электрон¬ный // Лань: электронно-библиотечная система. - URL: https://eTanbook.com/ book/122180 (дата обращения: 23.03.2020). - Режим доступа: для авториз. пользователей.
14 Саввин, С.В. Методы суперпиксельной сегментации и их применение для анализа изображения с разнородной текстурой / С.В. Саввин, А.А. Сирота // Вестник Воронежского Государственного Университета. Серия: Системный анализ и информационные технологии. - 2016. - №4. -
С.165-173. - URL: http://www.vestnik.vsu.ru/pdf/analiz/2016/04/2016-04-21.pdf (дата обращения 10.01.2020)
15 Созыкин, А.В. ОБЗОР МЕТОДОВ ОБУЧЕНИЯ ГЛУБОКИХ
НЕЙРОННЫХ СЕТЕЙ / А.В. Созыкин // Вестник Южно-Уральского государственного университета. Серия: Вычислительная математика и информатика. - 2017. - № 3. - С. 28-59. - Текст: электронный // Лань: электронно-библиотечная система. - URL: https://e.lanbook.com/journal/issue/ 306705 (дата обращения: 24.02.2020). - Режим доступа: для авториз.
пользователей...32


Работу высылаем на протяжении 30 минут после оплаты.




©2026 Cервис помощи студентам в выполнении работ