Введение 6
1 Анализ предметной области 8
1.1 Понятия нейронной сети 8
1.1.1 Биологическая и математическая модель нейрона 8
1.1.2 Функции потерь и методы оптимизации 15
1.1.3 Нейронная сеть 18
1.1.4 Сверточные нейронные сети 21
1.2 Применение нейронных сетей для обработки изображений 25
1.2.1 Задача сегментации 25
1.2.2 Задача сегментации 26
1.2.3 Задача сжатия размерности 26
1.2.4 Задача улучшения изображения 27
1.3 Обзор методов улучшения изображений 27
2 Проектирование и разработка нейронной сети для улучшения качества
изображений 30
2.1 Постановка задачи 30
2.2 Проектирование нейронной сети для улучшения качества изображений . . 31
2.2.1 Выбор и обоснование структуры сети 31
2.2.2 Нейронная сеть Progressive Face Super-Resolution 31
2.2.3 Нейронная сеть Very-Deep Super-Resolution 34
Показатели качества обучения нейронной сети 36
2.4 Формирование обучающей выборки 39
2.5 Разработка приложения для реализации нейронной сети для повышения
качества изображений 41
2.5.1 Выбор и обоснование средств реализации нейронной сети 41
2.5.2 Алгоритм приложения для улучшения качества изображений с
применением нейронной сети 41
2.5.3 Описание интерфейса приложения 43
3 Анализ результатов 45
3.1 Исследование изображения высокого качества 45
3.2 Исследование изображения среднего качества 49
3.3 Исследование изображения низкого качества 51
Заключение 55
Список использованных источников 56
Приложение
В современном мире активно развивается новая область прикладной математики, которая специализируется на нейронных сетях. С помощью нейросетей улучшаются программы, изображения, текст, создаются системы, которые способны ускорять работу процессов и помогать в работе человеку. Их основной целью является обучение системы самостоятельного принятия решений.
В чем особенно сильны нейронные сети, так это в обработке изображений. При помощи них можно восстанавливать изображение лица в высоком разрешении из его копий с низким разрешением. Это фундаментальная проблема в анализе лица, которая может значительно облегчить задачи, которые связанны с распознаванием людей по нечетким изображениям.
На данный момент изучение нейронных сетей, позволяющих улучшить качество изображений является довольно актуальным. Существует огромное количество статей, публикаций, книг, посвященных изучению способов увеличения качества изображений. Авторами данных работ являются Subhasis Chaudhuri, Yifan Wang, Yu Chen, Deokyun Kim, Чернявский А. В., Спицын В. Г. и множество других ученых и разработчиков. По моему мнению, данные ученые внесли большой вклад в разработку и продвижение нейросетевых методов, позволяющих улучшать качество изображений.
На практике, нейронные сети, улучшающие качество изображения, могут использоваться для обработки данных, получаемых в приборах и устройствах медицинской диагностики, в определении лица человека, распознавании движущихся объектов, дефектоскопии и в других аспектах жизни человека.
Целью моей выпускной квалификационной работы является исследование и разработка нейронной сети, позволяющей улучшать качество изображений, на основе существующей нейросети.
Для достижения поставленной цели было необходимо решить следующие задачи:
1) Изучить общую структуру нейронных сетей, дать определение функции потерь, изучить ее виды.
2) Исследовать нейросети основанные на методе Super-Resolution (супер-разрешения).
3) Провести сравнительный анализ данных нейронных сетей.
4) Выбрать некоторую структуру нейронной сети.
5) Скомпоновать обучающую выборку.
6) Рассмотреть возможность минимизации функции потерь без потери качества изображения.
Объектом данной выпускной квалификационной работы выступает нейронная сеть Progressive Face Super-Resolution и компьютерной зрение. Предметом исследования являются алгоритмы и математические модели, позволяющие улучшать качество изображений. В работе использовались методы компьютерного зрения, теории искусственных нейронных сетей и теория планирования эксперимента.
Данная работа состоит из введения, основной части, заключения и библиографического списка. Основная часть состоит из трех глав.
В первой главе, разделенной на несколько подпунктов, дается подробная теория про нейронные сети, методы, позволяющие улучшать качество изображений и использование этих методов на практике.
Во второй главе описывается процесс разработки и улучшения нейронной сети.
В третьей главе предоставляются результаты тестирования полученной нейронной сети.
В заключении кратко сформулированы результаты, полученные в ходе выполнения выпускной квалификационной работы.
В соответствие с поставленной целью - разработка нейронной сети, позволяющей улучшать качество изображений, на основе существующей нейросети - была реализована архитектура сверточной нейронной сети с использованием метода super-resolution.
В ходе теоретических и экспериментальных исследований были получены следующие результаты:
a) В работе были изучены некоторые теоретические аспекты нейронной сети, как биологической, так и математической, метод Super-Resolution, позволяющий улучшать качество изображений.
b) Проведен сравнительный анализ двух нейронных сетей улучшающих качество изображений. На основе данного анализа в качестве основы для разработки была выбрана нейросеть Progressive Face Super-Resolution.
c) В среде Python с использованием библиотеки PyTorch была проведена разработка нейросети. В ходе тестирования улучшились результаты работы нейросети с изображением 3.39x3.39 и dpi = 108, на 3.8%, что повлияло на улучшение качества изображения.
На основе рассмотренных данных, можно сделать вывод, что благодаря современным исследованиям, нейронные сети для улучшения изображений могут быть улучшены и использованы во многих сферах.
Для этого необходимо изменить функцию активации и вместо Softmax, использовать, например, сигмоидную функцию активации. Так же, можно изменить метод оптимизации, и вместо RMSProp использовать с данной функцией активации исходный метод - Adam. И стоит поработать с матрицей нормализации, подобрать для нее оптимальные параметры для вышеизложенного случая.
1) Aggelos Katsaggelos - Super Resolution of Images (Synthesis Lectures on
Image, Video, and Multimedia Processing), 2006 г. [Электронный ресурс] Режим доступа: https://eknigi.org/programmirovanie/97192-super-resolution-of-images-
synthesis-lectures-on.html.
2) Статья: Структура нейронной сети. [Электронный ресурс] Режим доступа: https: //compurik.com/neural_network_structure#h 1
3) Гудфеллоу Я., Бенджио И., Курвилль А. - Глубокое обучение, 2017 г. [Электронный ресурс] Режим доступа: https://ru.pdfdrive.com/Глубокое-обучение- e191950186.html.
4) Рутковская М., Плинский Л. - Нейронные сети, генетические алгоритмы и нечеткие системы, 2007 г. [Электронный ресурс] Режим доступа: https://ru.pdfdrive.com/Нейронные-сети-генетические-алгоритмы-и-нечеткие- системы-e 158090178. html
5) Deokyun Kim, Minseon Kim, Gihyun Kwon, Dae-Shik Kim - Progressive Face Super-Resolution via Attention to Facial Landmark. [Электронный ресурс] Режим доступа: https://arxiv.org/abs/1908.08239
6) Википедия - Пиковое отношение сигнала к шуму. [Электронный
ресурс] Режим доступа:
https: //ru.wikipedia. org/wiki/Пиковое_отношение_сигнала_к_шуму
7) Адриан Роузброк - Deep Learning for Computer Vision with Python, 2017 г. [Электронный ресурс] Режим доступа: https://b-ok.cc/book/3561346/c4e0b8.
8) Каллан Р. - Основные концепции нейронных сетей, 2001 г. [Электронный ресурс] Режим доступа: https://ru.pdfdrive.com/Основные- концепции-нейронных-сетей-e156899800.html.
9) Bengio, Yoshua, Courville, Aaron, Goodfellow, Ian J - Deep learning: adaptive computation and machine learning, 2016 г. [Электронный ресурс] Режим доступа:
https: //www.researchgate.net/publication/320703571_Ian_Goodfellow_Y o shua_Beng io_and_Aaron_Courville_Deep_learning_The_MIT_Press_2016_800_pp_ISBN_026 2035618
10) Konstantin Ostrovsky - Принципы построения нейронных сетей. Пишем простую нейросеть на JavaScript. [Электронный ресурс] Режим доступа: https://web-panda.ru/post/brainjs-simple
11) Peyman Milanfar - Super-Resolution Imaging, 2017 г. — Bosa Roca, United States
12) Subhasis Chaudhuri - Super-Resolution Imaging, 2001 г. [Электронный ресурс] Режим доступа: https://b-ok.cc/book/2093971/e0843e
13) Haohan Wang, Bhiksha Raj - On the Origin of Deep Learning. [Электронный ресурс] Режим доступа: https://arxiv.org/pdf/1702.07800.pdf
14) Brandon Amos - Image Completion with Deep Learning in TensorFlow. [Электронный ресурс] Режим доступа: https://bamos.github.io/2016/08/09/deep- completion/
15) Nguyen A, Yosinski J, Clune J - Deep Neural Networks are Easily Fooled: High Confidence Predictions for Unrecognizable Images. [Электронный ресурс] Режим доступа: https://arxiv.org/pdf/1412.1897.pdf