Статья:

Применение сверточных нейронных сетей для распознавания дорожных знаков

Конференция: XXXIX Студенческая международная заочная научно-практическая конференция «Молодежный научный форум: технические и математические науки»

Секция: Технические науки

Выходные данные
Бабаев А.М., Алексеенко Ю.В., Авдеева Т.Г. [и др.] Применение сверточных нейронных сетей для распознавания дорожных знаков // Молодежный научный форум: Технические и математические науки: электр. сб. ст. по мат. XXXIX междунар. студ. науч.-практ. конф. № 10(39). URL: https://nauchforum.ru/archive/MNF_tech/10(39).pdf (дата обращения: 17.08.2018)
Лауреаты определены. Конференция завершена
Эта статья набрала 0 голосов
Мне нравится
Дипломы
лауреатов
Сертификаты
участников
Дипломы
лауреатов
Сертификаты
участников
на печатьскачать .pdfподелиться

Применение сверточных нейронных сетей для распознавания дорожных знаков

Бабаев Андрей Михайлович
студент, Институт сферы обслуживания и предпринимательства (филиал) Донского государственного технического университета в г. Шахты, РФ, Ростовская область, г. Шахты
Алексеенко Юлия Вячеславовна
студент, Институт сферы обслуживания и предпринимательства (филиал) Донского государственного технического университета в г. Шахты, РФ, Ростовская область, г. Шахты
Авдеева Татьяна Геннадьевна
студент, Институт сферы обслуживания и предпринимательства (филиал) Донского государственного технического университета в г. Шахты, РФ, Ростовская область, г. Шахты
Шейкина Анна Андреевна
студент, Институт сферы обслуживания и предпринимательства (филиал) Донского государственного технического университета в г. Шахты, РФ, Ростовская область, г. Шахты
Ляшов Максим Васильевич
научный руководитель, канд. техн. наук, научный сотрудник, Донской государственный технический университет (ДГТУ), РФ, г. Ростов-на-Дону

 

Введение. В последнее десятилетие автомобильная промышленность сделала большой шаг в разработке систем автоматического управления автомобилем. Подобные системы уже тестируются компаниями Google Inc, Volvo, а также устанавливаются на коммерческие версии автомобилей компании Tesla Motors [2]. Одним из важнейших компонентов систем автоматического управления автомобилем является система распознавания дорожных знаков. Она позволяет анализировать текущую ситуацию на дороге и принимать соответствующие решения по управлению автомобилем. Также распознавание дорожных знаков может использоваться и отдельно от систем управления автомобилем в качестве системы, дающей рекомендации (снизить скорость, предупредить о пешеходном переходе) водителю относительно его действий на дороге.

При тестировании систем распознавания знаков в реальных условиях дорожного движения выявилась следующая проблема - некоторые знаки могут интерпретироваться неправильно из-за: различного уровня освещенности; различных точек наблюдения знаков; наличия предметов, частично перекрывающих изображение знака. Для устранения указанных недостатков была разработана система распознавания дорожных знаков на основе сверточной нейронной сети.

Предлагаемое решение. На первом шаге алгоритма необходимо определить, какие из областей изображения потенциально содержат образ дорожного знака. Для этой цели используется алгоритм Maximally stable extremal regions (далее MSER) [4, с. 553].

На следующем шаге для того, чтобы установить имеется ли на выбранной ROI изображение дорожного знака, используется свёрточная нейронная сеть (convolutional neural network, далее CNN). Такие нейронные сети при решении задач распознавания изображений более эффективны, чем полносвязные нейронные сети [3, с. 1237], в плане вычислительной нагрузки, за счет гораздо меньшего количества настраиваемых параметров. Также главным достоинством CNN является то, что она инвариантна по отношению к форме, повороту и интенсивности цвета входных изображений.

Архитектура разработанной нейронной сети. Для системы распознавания дорожных знаков была разработана сверточная нейронная сеть, архитектура которой показана на рисунке 1.

 

Рисунок 1.Структура разработанной сверточной нейронной сети

 

Для реализации был выбран язык программирования Python версии 2.7, который содержит библиотеки OpenCV и Matplotlib для обработки изображений, а также библиотеку Keras для построения нейронных сетей. Кроме того, Python поддерживает параллельные вычисления на программно-аппаратной архитектуре Cuda, что является немаловажным для повышения производительности алгоритма распознавания.

На первый сверточный слой сети поступает исходное изображение. Далее следуют чередующиеся 4 сверточных слоя и 4 слоя подвыборки. В каждом сверточном слое было использовано ядро свертки размером 3x3 и функция активации Relu. Число карт признаков в каждом из четырех слоев 100, 150, 250 и 200 соответственно.

Результаты работы сверточных слоев и слоев подвыборки подаются на вход полносвязной нейронной сети-классификатору. Она включает в себя два слоя, состоящих из 120 и 44 нейронов соответственно. В первом слое использована функция активации Relu, а также применена техника Dropout, которая позволяет на каждой итерации обучения делать недоступными от 0 до 50% нейронов слоя, что способствует предупреждению эффекта переобучения сети. Во втором слое была использована функция Softmax, которая хорошо зарекомендовала себя при решении мультиклассификационных задач.

Формат обучающих данных. Для достижения максимального положительного эффекта от обучения сети в качестве обучающей выборки использовался набор данных German Traffic Sign Recognition Benchmark (GTSRB), который был использован в соревнованиях по машинному обучению в рамках Международных объединенных конференций по нейронным сетям 2011 [5]. Данный набор данных включает в себя 51 839 изображений, размеры которых колеблются от 15х15 до 250х250 пикселей. Каждое из них содержит один из 43 видов немецких дорожных знаков. Изображения уже разделены в соотношении 1:3 на тестовые и тренировочные данные соответственно. Тренировочные данные уже отсортированы на основе класса, изображенных на них дорожных знаков, и находятся в 43 папках.

GTSRB отлично подходит для обучения разработанной нейронной сети, т.к. содержит большое количество образцов знаков одного вида, отличающихся друг от друга размерами, интенсивностью цвета, наклоном и углом поворота знака на изображении. Представленные в GTSRB изображения относятся к так называемым положительным прецедентам, т.е. содержат изображения дорожного знака (рисунок 2). Однако на изображении, подаваемом на вход сети, знак может вовсе отсутствовать – это отрицательные прецеденты (рисунок 3). Для того чтобы нейронная сеть могла различать отрицательные и положительные прецеденты, к GTSRB были добавлены изображения, не содержащие дорожные знаки. При этом были отобраны изображения, которые потенциально могут иметь большое сходство с искомыми изображениями знаков: элементы дорожной разметки, вывески магазинов, фары и колеса автомобилей.

 

 

Рисунок 2. Примеры положительных прицедентов

 

Рисунок 3. Примеры отрицательных прецедентов

 

Результаты экспериментальных исследований. Обучение сети производилось с применением платформы Cuda на графической карте GeForce GT 740M. В результате чего была получена сеть с 97% точностью распознавания, а результаты были сопоставлены с уже имеющимися алгоритмами, которые решают задачу распознавания дорожных знаков [1, с. 289]. Разработанный алгоритм распознавания дорожных знаков на основе сверточной нейронной сети с применением метода пороговых преобразований позволил добиться результатов, которые превосходят существующие (таблица 1).

Таблица 1.

Сравнение алгоритмов распознавания дорожных знаков

Алгоритм

Точность распознавания, %

Метод пороговых преобразований, сверточная нейронная сеть (разработанный авторами алгоритм)

97

Метод поиска замкнутых контуров, полносвязная нейронная сеть

88–90

Метод опорных векторов

92–94

Метод линейного дискриминантного анализа

87

Метод k ближайших соседей

76

 

Заключение. Дальнейшая работа над алгоритмом будет направлена на улучшение его производительности с целью уменьшения времени распознавания одного изображения. Достигнуть этого можно с помощью либо дополнительной настройки и модификации метода MSER, либо полного изменения подхода к сегментации изображения. Решение данной задачи позволит осуществлять распознавание дорожных знаков с видеопотока в режиме реального времени.

Работа выполнена при частичной поддержке РФФИ (гранты № 16-37-60016, № 14-07-00816).

 

Список литературы:
1. Лисицын С.О., О.А. Байда. Распознавание дорожных знаков с помощью метода опорных векторов и гистограмм ориентированных градиентов. // Компьютерная оптика. – 2012. – Т. 36, № 2. – С. 289–295. 
2. Сайт компании Tesla Motors.  [Электронный ресурс]  Режим доступа.  URL: https://www.tesla.com/models (Дата обращения 1.11.2016).
3. Ciresan, U. Meier, J. Masci, L. M. Gambardella, J. Schmidhuber. Flexible, High Performance Convolutional Neural Networks for Image Classification. // Proceedings of the Twenty-Second international joint conference on Artificial Intelligence. – 2011. – P. 1237–1242.
4. Donoser Michael, Bischof Horst. Efficient Maximally Stable Extremal Region (MSER) Tracking. // Proc. of IEEE Computer Society Conference on Computer Vision and Pattern Recognition. – 2006. – P. 553–560.
5. The Institute of Neuroinformatics: Benchmark Website – [Электронный ресурс]  Режим доступа.  URL: benchmark.ini.rub.de (Дата обращения 2.11.2016).