Введение 3
Глава 1. Теоретические сведения 5
1.1. Компьютерное зрение 5
1.1.1. Основная информация 5
1.1.2. Области применения 8
1.1.3. Задачи 12
1.1.4. Метод Виолы-Джонса 15
1.2. Введение в нейронные сети 17
1.3. Нейронные сети в компьютерном зрении 25
Глава 2. Разработка приложения для обнаружения и распознавания дорожных знаков 28
2.1. Инструменты реализации 28
2.1.1. Язык программирования Python 28
2.1.2. Библиотека OpenCV 29
2.1.3. Библиотека Tensorflow 30
2.2. Реализация 31
2.2.1. Подключение пакетов расширения и библиотек Python 31
2.2.2. Создание модуля для обнаружения знаков 32
2.2.3. Создание модуля для классификации знаков 39
2.3. Тестирование приложения 44
Заключение 46
Список использованных источников 47
Приложение
В наше время, в условиях быстрорастущих городов, количество автомобилей, автоперевозок и такси активно увеличивается. С расширением числа автомобилистов, вовлеченных в дорожное движение, возрастает количество дорожных происшествий. Кроме того, статистика показывает, что чаще всего причиной ДТП служит отсутствие концентрации внимания за рулем [10]. Существует немало отвлекающих факторов, из-за которых водитель может потерять контроль над дорогой и подвергнуть опасности окружающих.
Вычислительная мощность современных мобильных аппаратных устройств позволяет автопроизводителям комплектовать свои продукты системой помощи водителю, которая включает в себя модуль обнаружения и распознавания дорожных знаков. Основными проблемами подобных систем является невысокая вероятность детектирования и отсутствие поддержки распознавания российских дорожных знаков. Данная работа будет направлена на решение этих проблем.
Цель дипломной работы заключается в разработке приложения для обнаружения и классификации российских знаков дорожного движения с помощью компьютерного зрения и сверточных нейронных сетей.
Для достижения цели работы были поставлены следующие задачи:
1) Изучить теоретические основы компьютерного зрения и нейронных сетей.
2) Исследовать методы локализации и распознавания объектов на изображении.
3) Реализовать приложение, используя рассмотренные методы с учетом специфики объекта исследования.
4) Выполнить тестирование разработанной программы и проанализировать результаты.
В качестве объекта исследования выступают дорожные знаки Российской Федерации. Предметом исследования являются методы обнаружения и классификации объектов на изображении.
Работа включает в себя введение, две главы, заключение, список использованных источников и приложение. Первая глава содержит необходимый теоретический материал. Вторая глава посвящена созданию приложения, а так же его тестированию и анализу результатов. В заключении подведены итоги выполненной работы.
Выпускная квалификационная работа была посвящена решению задачи обнаружения и распознавания российских дорожных знаков на видеопотоке.
Были изучены теоретические основы компьютерного зрения и нейронных сетей, а так же возможность применения сверточных нейронных сетей для распознавания объектов на изображениях.
С использованием выбранных инструментов была разработана программа, реализующая рассмотренные методы для обнаружения и классификации дорожных знаков РФ.
Для формирования вывода о качестве работы программы было проведено тестирование на реальных данных. Были предложены идеи, связанные с долгосрочными перспективами улучшения работы алгоритма. Полученные результаты тестирования показали, что разработанное приложение обеспечивает достаточную надежность для практического применения.