Введение 5
Глава 1. Анализ деятельности компании «Optical Outfitters».6
1.1 Характеристика компании 6
1.2 Описание розничного магазина 7 1.
3 Моделирование процесса покупки оправы, анализ модели «Как есть»..8
1.4 Формулировка задачи на разработку 11
1.5 Моделирование диаграммы процесса покупки «Как должно быть» 12
Глава 2. Разработка программного комплекса 15
2.1 Определение и этапов жизненного цикла и этапов разработки программного комплекса, формулировка задач в контексте машинного обучения 15
2.1.1 Жизненный цикл продукта 15
2.1.2 Этапы разработки и описание задач 15
2.2 Машинное обучение, глубокое обучение, нейронные сети 18
2.3 Метод обратного распространения ошибки для обучения нейронных сетей 21
2.5 Выбор архитектуры 21
2.6 Выбор моделей с архитектурой сверточной нейронной сети 24
2.6.1 Модель для обнаружения объектов YOLO 25
2.6.2 Модель для сегментации UNet 29
2.7 Составление наборов данных 31
2.7.1 Аугментация данных, проблемы обучения моделей 36
2.8 Фреймворки для работы с нейронными сетями, обучение моделей. 38
2.9 Использование обученных моделей в коде 39
Глава 3. Тестирование программного комплекса 42
3.1 Проверка работы комплекса на изображениях и видео 42
3.2 Возможные варианты улучшения и место применения комплекса.. 45
Заключение 47
Список используемой литературы и используемых источников 48
Аннотация. Введение.
Цель работы - разработка программного комплекса по определению и стиранию очков с лица человека.
Объект исследования - методы обнаружения и удаления объектов с изображения.
Предметом исследования является применение искусственных нейронных сетей для обнаружения и удаления объектов.
В ходе написания работы были решены следующие задачи:
- анализ и проектирование предметной области;
- выбор архитектуры нейронных сетей;
- выбор моделей, основанных на архитектуре;
- сбор и разметка наборов данных;
- обучение моделей;
- написание кода для использования моделей
- тестирование результатов
В результате выполнения данной работы была достигнута цель и создан программный комплекс для стирания очков с лица, основными компонентами которого являются нейронные сети и классический алгоритм компьютерного зрения. Был проведен анализ компании-заказчика, определены требования к комплексу, сформулированы этапы жизненного цикла и разработки.
Были решены следующие задачи:
- проанализирован основной бизнес-процесс компании, для улучшения котор ого был разработано программный комплекс, смоделирована диаграмма «как есть»;
- сформулирована задача на разработку;
- разработана и проанализирована диаграмма «как должно быть»;
- выбрана архитектура ИНС и основанные на ней модели;
- с помощью нейронных сетей решены задачи нахождения и сегментации объекта на изображении;
- собраны необходимые данные;
- обучены несколько вариантов моделей;
- подобран классический алгоритм для закрашивания объекта
- написан программный код для тестирования комплекса.
В ходе работы с данными было определено, что этап сборки, предобработки и разметки данных при использовании искусственных нейронных сетей оказывает существенное влияние на конечный результат.
Данный комплекс довольно хорошо решает поставленную задачу, несмотря на несовершенство классического алгоритма и то, что нейронные сети, хоть и обладая большой обобщающей способностью, не дают 100% точных результатов.