ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ 4
ВВЕДЕНИЕ 5
1 КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ 7
1.1 БЕСПИЛОТНЫЙ АВТОМОБИЛЬ 7
1.2 КОМПЬЮТЕРНОЕ ЗРЕНИЕ 8
1.3 ПРЕДОБРАБОТКА ИЗОБРАЖЕНИЙ И КАДРОВ ВИДЕОПОТОКА 10
1.4 БИБЛИОТЕКА OPENCV 17
1.5 PYQT 20
2 РАЗРАБОТКА ПРОГРАММНОГО МОДУЛЯ 23
2.1 ОПИСАНИЕ РАЗРАБОТАННОГО АЛГОРИТМА 23
2.2 ОПИСАНИЕ ИСХОДНОГО КОДА 25
2.3 РАБОТА С ИНТЕРФЕЙСОМ ПОЛЬЗОВАТЕЛЯ 28
3 ТЕСТИРОВАНИЕ И АНАЛИЗ РАБОТЫ ПРИЛОЖЕНИЯ 30
ЗАКЛЮЧЕНИЕ 35
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 36
ПРИЛОЖЕНИЕ А
Разработка систем ориентации на дороге и распознавания дорожной разметки идёт в мире с большой скоростью. Крупные IT-компании в сотрудничестве с производителями автомобилей разрабатывают такие системы для обеспечения большей безопасности движения, что в конечном итоге приведёт нас к полностью автоматизированным системам, не требующим какого-либо вмешательства водителя и исключающим пресловутый человеческий фактор.
Для обеспечения этой цели используется машинное зрение. В целом, в задачу системы машинного зрения входят получение цифрового изображения, обработка изображения с целью выделения значимой информации на изображении и математический анализ полученных данных для решения поставленных задач. Цель машинного зрения в данном применении - определение пространственного местоположения (местоположения автомобиля относительно центра проезжей части) и передача информации о положении и ориентации автомобиля в систему управления или контроллер.
На сегодняшний день существует тенденция к учащению случаев выезда водителей за разметку, что приводит к возникновению дорожно-транспортных происшествий (ДТП). Для безопасности движения транспортного средства и выполнения правил дорожного движения применяется алгоритм распознавания дорожной разметки. Он даёт возможность водителю быстрее усваивать информацию. Так, например, на основе дорожных правил и данных о расположении и типе разметки можно определять: разрешена ли остановка на обочине; какие полосы разделяют транспортные потоки противоположных направлений; приближение к сплошной линии и т.д.
Дорожная разметка специально делается легко различимой на дорожном покрытии, что, казалось бы, делает её идеальным объектом для распознавания. Однако в реальности разметка имеет тенденцию изнашиваться, что затрудняет её распознавание. Затруднить её поиск также могут сильное сжатие и большое количество артефактов на входном видео и внешние факторы, такие как: снег, дождь, туман, ночь т.д.
В данной работе реализуется исключительно распознавание дорожной разметки, без реализации системы оповещения на основе данных о ней.
Цель работы - разработка программного модуля для распознавания дорожной разметки на видеоизображении.
Таким образом, можно сформулировать следующие задачи для этой работы:
• рассмотрение различных методов распознавания объектов на изображении и их реализация;
• разработка собственного алгоритма;
• реализация программного модуля созданного алгоритма;
• создание графического интерфейса пользователя.
В процессе выполнения этой выпускной квалификационной работы были изучены различные методы распознавания объектов на изображении, возможности библиотеки OpenCV, а также был разработан алгоритм распознавания дорожной разметки и его программная реализация. Было создано графическое приложение, позволяющее загружать видео, изменять стандартное количество необходимых сенсоров для распознавания и задавать иной начальный порог бинаризации. Также была реализована функция сохранения получаемого результата.
Разработанный алгоритм отличается низкими требованиями к необходимым для работы входным данным. Так, для его работы достаточно одного лишь видео, записанного, например, с обычной камеры или видеорегистратора в салоне автомобиля. Само собой, таким образом программа будет менее точной, чем профессиональные аналоги. В реальных алгоритмах также участвуют различные камеры по бокам машины, датчики глубины и тому подобное.
Стоит отметить, что в данной работе присутствуют и некоторые небольшие недочёты, такие как: невозможность корректно определять разметку на крутых поворотах, недостаточно удобный и интуитивно понятный пользовательский интерфейс.
Тем не менее, все поставленные цели данной дипломной работы были достигнуты.