Научная статья
УДК 004.93'12
DOI 10.25205/1818-7900-2023-21-3-56-71
Модульная архитектура системы помощи водителю для эффективного распознавания дорожных знаков
Игорь Константинович Харченко1, Игорь Георгиевич Боровской2, Елена Александровна Шельмина3
Томский государственный университет систем управления и радиоэлектроники,
Томск, Россия
https//orcid.org/0000-0003-2707-7203 3е1епа.а^е1тта@^ш\га, https//orcid.org/0000-0002-6278-5961
Аннотация
Целью исследования является разбор современных подходов к реализации систем помощи водителю, а также реализация архитектуры системы помощи водителю, направленная на распознавание дорожного знака на максимальном удалении от него при сложных погодных условиях, для заблаговременной выдачи обратной связи водителю. В работе рассмотрены основные используемые сигналы при реализации и эксплуатации системы помощи водителю: данные с СА^шины автомобиля, информация с GPS-приемника, фрагменты видео с цифровой камеры. В представленной модульной архитектуре используются перечисленные источники данных для оценивания дорожной обстановки, а также нейросетевые методы для распознавания дорожных знаков. Представлена модульная архитектура системы помощи водителю, позволяющая оповещать водителя о дорожных знаках. Система оснащена контролем границы полосы для оповещения водителя о знаках, относящихся к прилегающей проезжей части при поворотах. Экспериментально доказано, что представленная в работе модульная архитектура системы помощи водителю не уступает по скорости и точности работы альтернативным системам, выступая в виде комплексного автономного решения.
Ключевые слова
системы помощи водителю, помощь в удержании полосы, распознавание дорожных знаков, нейросетевые архитектуры
Благодарности
Исследование выполнено при финансовой поддержке гранта на реализацию программы стратегического академического лидерства «Приоритет-2030» в рамках научного проекта «Пр2030-М0Н наука БЧ/СП2/Б/19б».
Для цитирования
Харченко И. К., Боровской И. Г., Шельмина Е. А. Модульная архитектура системы помощи водителю для эффективного распознавания дорожных знаков // Вестник НГУ. Серия: Информационные технологии. 2023. Т. 21, № 3. С. 56-71. БО! 10.25205/1818-7900-2023-21-3-56-71
© Харченко И. К., Боровской И. Г., Шельмина Е. А., 2023
Modular architecture of advanced driver assistance systems for effective traffic sign recognition
Igor I. Kharchenko1, Igor G. Borovskoy2, Elena A. Shelmina3
Tomsk State University of Control Systems and Radioelectronics, Tomsk, Russian Federation
1 [email protected] [email protected], https//orcid.org/0000-0003-2707-7203 [email protected], https//orcid.org/0000-0002-6278-5961
Abstract
Analysis of modern approaches to the implementation of driver assistance systems, as well as the implementation of the architecture of the driver assistance system, aimed at recognizing traffic signs at the maximum distance from it under difficult weather conditions, for early feedback to the driver. The paper considers the main signals used in the implementation and operation of the driver assistance system: data from the car's CAN bus, information from a GPS receiver, video fragments from a digital camera. The presented modular architecture uses the listed data sources for estimating the traffic situation, as well as neural network methods for recognizing traffic signs. The modular architecture of the driver assistance system is presented, which allows notifying the driver about traffic signs. The system is equipped with lane boundary control to alert the driver to signs related to the adjacent carriageway when turning. It has been experimentally proven that the modular architecture of the driver assistance system presented in the paper is not inferior in speed and accuracy to alternative systems, acting as a comprehensive autonomous solution.
Keywords
advanced driver assistance systems, lane-keep assistance, traffic sign recognition, artificial neural network architectures Acknowledgements
The study was supported by a grant for the implementation of the program of strategic academic leadership "Priori-ty-2030" within the framework of the research project "Pr2030-M0N science BCh/SP2/B/19b".
For citation
Kharchenko I. I., Borovskoy I. G., Shelmina E. A. Modular architecture of advanced driver assistance systems for effective traffic sign recognition. Vestnik NSU. Series: Information Technologies, 2023, vol. 21, no. 3, pp. 56-71. DOI 10.25205/1818-7900-2023-21-3-56-71
Введение
В настоящее время достаточно актуальной задачей является обеспечение безопасности дорожного движения, поскольку большинство аварий совершаются из-за неправильных или несвоевременных действий водителя. Системы помощи водителю (СПВ, ADAS - Advanced Driver-Assistance Systems) помогают водителю справиться с дорожной ситуацией, отслеживая множество факторов: дорожную обстановку, данные с транспортного средства, текущее состояние водителя. Данные системы также применяются для организации безопасного движения в области беспилотных транспортных средств. У современных СПВ есть достаточно большое количество областей применений, например: предупреждение о выходе из полосы движения (lane departure warning, LDW), помощь в удержании полосы движения (lane-keep assistance, LKA/LCA), предупреждение о слепых зонах (blind-spot warning, BSW) [1]. В последнее время также ведутся исследования в области нового поколения ADAS: совместные ADAS (cooperative advanced driver assistance systems, C-ADAS), которые получают информацию о дорожной ситуации за несколько миль вперед за счет использования технологий беспроводной передачи данных, нежели обычные ADAS, располагающие информацией о дорожной ситуации лишь в нескольких десятках метров поблизости.
1. Цель и результаты исследования
1.1. Цель исследования
Целью исследования является разбор современных подходов к реализации СПВ, а также реализация архитектуры СПВ, направленная на распознавание дорожного знака на максимальном удалении от него при сложных погодных условиях, для заблаговременной выдачи обратной связи водителю. Также СПВ должна распознавать, относится ли знак к полосе, по которой движется водитель, или же к прилегающей дороге или полосе, чтобы предупреждать водителя только о тех знаках, которые относятся к дороге, по которой движется водитель. При поворотах СПВ также должна уведомлять водителя о знаках, которые действуют на территории прилегающей проезжей части.
1.2. Результаты исследования
В результате исследования авторами предложена модульная архитектура СПВ, которая может функционировать автономно, используя только цифровую камеру в салоне автомобиля и такие дополнительные устройства, как GPS-трекер и OBDII-сканер, подключаемый в диагностический порт автомобиля. По качеству и скорости работы данная СПВ сопоставима со встраиваемыми автономными регистраторами с функцией радара.
2. Модели и методы исследования
2.1. Обзор методов получения данных о дорожной обстановке
Для того чтобы СПВ могла корректно распознать дорожную обстановку, необходимо получать данные о границах полос движения автомобиля на проезжей части. Например, в работе [2] для определения смены границы полосы рассматривается несколько десятков возможных подходов. В основном это генеративные модели (скрытые марковские модели, наивный байесовский метод и др.), методы машинного обучения (рекуррентные сети), когнитивные и дискриминативные модели (сети глубокого обучения, SVM, дерево принятия решений и др.). Из данного исследования выявлено, что нейросетевая архитектура LSTM-RNN (Long Short-Term Memory Recurrent Neural Network, рекуррентная нейронная сеть с долгой кратковременной памятью) лучше всего справляется с распознаванием намерения о смене полосы: данная архитектура позволяет распознать сигнал к смене полосы за 3,5 секунды до самой смены полосы с вероятностью 90,5 %. Источником данных для обучения послужила запись данных с более чем тысячи миль движения автомобиля.
В качестве основных сигналов в работе [2] используются данные с CAN-шины автомобиля (и через отдельный OBD-интерфейс, и путем прямого мониторинга сигналов с сигнальных кабелей), угол и сила наклона руля автомобиля (также с CAN-шины), а также угол наклона глаз водителя и поворота его головы.
Помимо данных с CAN-шины, в работе [3] авторы приводят сравнение различных сенсоров и технологий получения данных о дорожной обстановке. Среди них есть такие, как радар, лидар, цифровая камера и коммуникация между IoT-устройствами на базе 4G LTE и 5G-сетей.
Преимуществами использования радаров и лидаров является высокая дальность обзора, а также независимость от дорожных условий (например, радар миллиметрового диапазона [4]), однако они неприменимы к статичным объектам и могут создавать ложноположитель-ные срабатывания. При использовании сети IoT-устройств дальность «обзора» повышается до нескольких километров, однако очевидным недостатком являются высокие сетевые задерж-
ки, а также недостаточно большая зона покрытия, что особенно критично для небольших населенных пунктов.
Цифровая камера может применяться в качестве основного источника данных для распознавания дорожных объектов, поскольку камера может различать цвета объектов, их форму и текстуру. Однако камеры чувствительны к погодным условиям, а также к изменению света, а дальность обзора зависит от размера матрицы и фокусного расстояния камеры, но в целом может достигать 250-300 метров.
Таким образом, с учетом всех достоинств и недостатков СПВ на базе цифровой камеры можно сделать вывод о достаточной эффективности данного способа. Такого рода СПВ не потребует монтирования дополнительных устройств в автомобиль: радара, лидара, дополнительных коммутаторов.
В качестве еще одного аргумента к применимости СПВ на базе цифровой камеры можно привести работу авторов [5]. В своей работе авторы используют ADAS для распознавания текста с дорожного табло переменной информации, размещаемого над проезжей частью либо на обочине. Для локализации дорожного табло на изображении используется нейросетевая архитектура RetinaNet [6], предобученная на наборе данных COCO и дообученная на наборе данных дорожных табло, а для распознавания текста применяется программа Tesseract 4 [7], в основе которой применяется нейросетевая архитектура LSTM [8] (от англ. Long Short-term Memory, сеть с долговременной краткосрочной памятью).
2.2. Нейросетевые методы распознавания дорожных знаков с изображений цифровой камеры СПВ
Как было сказано ранее, цифровая камера подвержена влиянию погодных условий. При использовании изображений с цифровой камеры (бортового видеорегистратора) для распознавания дорожных знаков последние могут быть перекрыты из-за дождя и снега, контуры знака могут быть не видны из-за смога, тумана, цвет знака трудно различим при затемнении знака и т. д. Для проведения исследований в этой области авторами работы [9] был реализован набор данных CURE-TSD, который включает в себя 49 видеофрагментов с регистратора реального автомобиля в хороших погодных условиях и 49 видеофрагментов, снятых в симуляторе движения автомобиля. На каждый из видеофрагментов наложено более десятка возможных зашумлений, среди которых дождь, снег, туман, грязь, замутнение линзы, затемнение, каждое из которых имеет пять степеней интенсивности: от небольшого до крайне сильного зашумле-ния. За счет этого не требуется проведение аугментации данных [10] при обучении конкретных методов машинного обучения.
Данный набор использовали авторы работы [11], предложив использовать более гибкий подход к локализации и распознаванию дорожных знаков. Используется три нейросетевых архитектуры, каждая из которых осуществляет отдельный набор действий. Первая определяет наличие погодных условий (авторы работы ограничились только шестью вариантами: дождь, снег, туман, загрязнение линзы, размытие и нормальные условия). При определении плохих погодных условий вторая сеть пытается удалить зашумление и привести изображение к виду, близкому к нормальным условиям. Третья сеть пытается локализовать границы знака и распознать его содержимое. Ранее авторами настоящего исследования была реализована модификация рассматриваемого ансамбля [12] с предложением использовать одноэтапный классификатор YOLO v4 вместо ранее предлагаемого двухэтапного подхода с использованием сети SegUNet для локализации участка знака и VGG16 для распознавания типа знака, что в итоге дало прирост скорости работы всего нейросетевого ансамбля до 12 кадров в секунду.
2.3. Оценка стиля вождения с помощью СПВ
Также нужно понимать, что каждый водитель имеет свой стиль вождения, поэтому ADAS также может подстраиваться под стиль вождения конкретного автомобилиста, чтобы вождение стало более аккуратным и безопасным. Авторы работы [13] использовали данные 51 датчика с CAN-шины и с помощью методов многокомпонентного анализа и быстрых трансформаций Фурье обнаружили 15 значимых показаний датчиков, среди которых: время прогрева двигателя, скорость автомобиля и сила нажатия на педаль акселератора, скорость вращения рулевого колеса, максимальный крутящий момент. Авторами установлено, что метод случайного леса и дерево принятия решений срабатывали быстрее таких нейросетевых архитектур, как многослойный перцептрон и DeepRCN (Deep Residual Convolutional Network, глубокая остаточная сверточная сеть): 64 мс против 800 мс, однако точность в среднем была лучше у DeepRCN: до 99,3 %.
Подобная работа была проведена авторами исследования [14]. Авторы использовали в своей работе готовый набор данных, содержащий около 95 тысяч записей с CAN-шины, полученных от 10 разных водителей. Каждая запись содержит измерения с 51 датчика автомобиля: авторы не стали вычленять значимые наборы данных и обучили несколько нейросетевых моделей на базе архитектур LSTM, CNN и классической RNN.
Таким образом, авторы данных работ показали, что на показаниях только 15 датчиков с CAN-шины автомобиля можно спрогнозировать дальнейшее поведение конкретного автомобилиста еще за несколько секунд до его реальных действий.
2.4. К вопросу о безопасности прямого доступа к CAN-шине в СПВ
CAN-шина представляет собой полноценную сеть c одноименной топологией «шина» (при которой все устройства подключены по общему кабелю), сообщения по которой проходят по двум сигнальным проводам: CAN-High (CAN-H) и CAN-Low (CAN-L), которые контролируются электронным блоком управления автомобиля. Оба провода находятся под постоянным напряжением в 2 В и в процессе передачи двоичного сигнала меняют вольтаж на 3,5 В и 1,5 В соответственно. Использование двух проводов с разным напряжением для передачи данных нивелирует влияние шума в сети [15].
В современных автомобилях используется от одной до трех CAN-шин. Высокоскоростная CAN-шина (до 500 кбит/сек) используется для критически важных устройств, таких как двигатель, генератор, система зажигания, система подачи топлива. В современных автомобилях используется несколько CAN-шин (до 250 кбит/сек): в таком случае более низкоскоростные шины используются для таких устройств, как, например, климат-контроль, открывание дверных окон, аудиосистема. Каждое из устройств считывает все сигналы, проходящие по шине, и проверяет, кому предназначается тот или иной пакет, а также может само посылать пакеты по сети конкретному адресату. Если пакет адресован устройству, оно принимает и нужным образом обрабатывает пакет данных.
Однако нужно понимать, что то, что каждое из устройств в автомобиле может передавать данные по сети, сказывается на безопасности дорожного движения. Например, злоумышленник может подключить устройство, выдающее себя, например, за блок управления климат-контролем, и от своего имени осуществить атаку отказа в обслуживании (Denial of Service, DoS), в процессе которой электронный блок управления автомобилем больше не способен будет обрабатывать сигналы с CAN-шины от критически важных устройств. Последствия такого подхода могут быть катастрофическими. Для решения данной проблемы, в работе [16] предлагается использование нейросетевого подхода к определению сигналов с шины, которые являются потенциально опасными: нейросеть позволяет определить начало передачи потенциально опасного сигнала, после чего ADAS может подать сигнал в блок управления
на осуществление нужных действий, например, намеренное отключение потенциально опасного устройства или вынужденную остановку подачи топлива с отключением зажигания после завершения движения.
Также очевидным решением проблемы может стать использование доступа к CAN-ши-не через бортовой диагностический порт автомобиля (от англ. оп-board diagnostics port) с помощью OBDII-адаптера. Однако у данного способа также имеются недостатки. Например, при использовании беспроводных протоколов (например, Wi-Fi или Bluetooth) при взаимодействии с адаптером есть большая вероятность перехвата данных: эта проблема решается использованием проводных интерфейсов, например USB. Также данные адаптеры в основном используются для краткосрочной диагностики: недостаток решается плановыми проверками на работоспособность адаптера перед использованием в устройстве и заменой в случае ошибок в работе.
2.5. Синтез речи для обратной связи водителю
Для обеспечения автономной обратной связи в СПВ авторы работы [17] предлагают рассмотреть применение следующих нейросетевых архитектур для синтеза речи: LSTM, RNN (от англ. recurrent neural network, рекуррентная нейронная сеть), CNN (от англ. convolutional neural network, сверточная нейронная сеть), GAN (от англ. generative adversarial network, генеративно-состязательная сеть).
CNN устойчива к шуму, но при этом у сети высокая вычислительная сложность.
RNN и LSTM за счет своей рекуррентной структуры умеют прогнозировать будущий текст, однако из-за той же рекуррентности у RNN высокая вычислительная сложность, а у архитектуры LSTM - ограниченный размер памяти для запоминания последующих символов.
GAN для обучения использует две сети: сеть дискриминатора и генератора. Сеть генератора генерирует данные, которые подаются на вход дискриминатора, который уже пытается распознать шаблон. Для прогнозирования используется только сеть дискриминатора. В связи с этим сеть GAN уже знает внутреннее представление данных и может генерировать данные, схожие с реальными данными. При этом разметка набора данных не требуется. Это же и является недостатком сети: GAN является достаточно сложной в тренировке, в связи с чем может возникнуть проблема переобучения сразу двух сетей, поскольку если сеть дискриминатора не может распознать шаблон, сеть генератора будет продолжать выдавать некорректные результаты.
Но, несмотря на все недостатки данных алгоритмов, нейросетевой подход к синтезу речи вполне может применяться в рассматриваемой прикладной задаче.
3. Предлагаемая архитектура
3.1. Концептуальная схема модульной архитектуры
Модульная архитектура СПВ позволит сделать систему слабосвязанной, что обеспечит более гибкий подход к реализации всей системы в целом. Например, для обратной связи СПВ может подавать несколько сигналов водителю: звуковой сигнал, либо же отображение информации на дисплее, а в качестве источника данных могут послужить как сами изображения знаков, так и информация с радара или же напрямую с CAN-шины. Таким образом, можно добавлять новые модули из СПВ без необходимости перестройки всей архитектуры в целом.
Предлагаемый модульный подход проиллюстрирован на рис. 1.
Захват изображения
Предобработка изображения
I
1 J г
Распознавание знаков Получение текущей скорости движения Определение границы дороги Определение направления движения
1 1 г 1
1
Рис. 1. Модульная архитектура СПВ Fig. 1. Modular architecture of DAS
Поскольку основным источником сигнала для данной СПВ являются кадры фрагментов видеозаписи движения автомобиля с регистратора, в качестве источника данных модуля захвата изображения выступают кадры видео с реального подключенного регистратора либо же кадры с ранее записанного видеофрагмента (в целях отладки СПВ).
3.2. Модуль предобработки изображения
Модуль предобработки изображения принимает на вход кадр с регистратора, сжимает его до разрешения 1024 на 1024 точек, а также применяет методы адаптивного выравнивания гистограммы и гауссовского размытия для уменьшения влияние шума при наличии высокой или низкой контрастности на отдельных участках изображения, а также для удаления зернистости.
3.3. Модуль принятия решения об обратной связи
Принятие решения об обратной связи осуществляется на основе данных о дорожной обстановке и текущем состоянии автомобиля, поэтому модулю обратной связи необходима информация о дорожной разметке для определения границы дороги, местоположении и типе дорожных знаков, а также направлении движения автомобиля и его текущей скорости, за что отвечают отдельные модули. Модуль принятия решения может не знать ничего о внутреннем устройстве модулей - поставщиков информации. Его основное назначение - принимать решение об обратной связи на основании полученной информации.
В связи с этим от мйдуганаширхиваваниясинаковп ежщдаетсягалдаучить ограничивающие прямоугольники знаков с вероятностями их распознавания. Поскольку целью СПВ является обеспечение заблаговременной обратной связи водителю, СПВ сохраняет позиции знаков во внутреннюю базу данных вместе с границами полос. Внутренняя база может быть реализована как временное хранилище в оперативной памяти, так и в виде встраиваемой базы данных на базе, например, SQLite. Это необходимо для того, чтобы обеспечить возможность выдачи обратной связи о знаке, который находится на прилегающей территории, но не относится к полосе движения. Например, если знак находится за пределами полосы движения (например, зона его действия на прилегающей к дороге парковке), то СПВ не отдает обратную связь о знаке, однако сохраняет его на случай, если водитель собирается поворачивать на прилегающую территорию, где данный знак будет действовать.
Также нужно принимать во внимание ситуацию, когда знак становится физически перекрыт другими объектами (например, проезжающим мимо грузовиком). Для решения данной проблемы можно применять алгоритмы отслеживания объектов: например, на каждом новом кадре сравнивать метрику пересечения по объединению (от англ. Intersection over Union, IoU), и в случае взаимного пересечения ограничивающих прямоугольников знаков принимать их за тот же самый объект. Однако в реализуемой СПВ можно обойтись определением, была ли уже дана обратная связь по знаку такого же типа, основываясь на базе данных ранее распознанных объектов, а также проверкой, определен ли данный знак как относящийся к полосе движения. Если знак ранее не был распознан, то это будет сигналом для модуля к отдаче обратной связи.
3.4. Модуль обратной связи
Для самой обратной связи используется два метода: звуковое уведомление, а также отображение информации на цифровом дисплее СПВ. Очевидно, что отображение информации на дисплее на скорости больше 20 км/ч будет только отвлекать водителя, поэтому в большинстве случаев обратная связь поступает только в виде звуковых уведомлений, а на дисплее информация отображается только в критических случаях: например, когда водитель превысил допустимую скорость более чем на 20 км/ч, либо въехал на территорию, на которой действует ограничение знака «движение запрещено», чтобы водитель обратил особое внимание на уведомление.
Звуковые уведомления можно воспроизводить либо с помощью полноценного синтеза голоса, либо же «зашив» несколько готовых уведомлений. Например, для уведомления об ограничении скорости СПВ может воспроизводить голос «снижайте скорость» для того, чтобы водитель успел среагировать на знак ограничения скорости. Предлагается реализовать несколько заранее записанных аудиофрагментов: «ограничение скорости 40», «ограничение скорости 60», «ограничение скорости 70» (наиболее распространенные знаки ограничения скорости), «остановка в этом месте запрещена», «стоянка в этом месте запрещена» (при снижении скорости до 5 км/ч в месте действия знака).
3.5. Модуль распознавания знаков
Модуль распознавания знаков использует нейросетевой ансамбль, примененный в работе [12]. Модуль возвращает ограничивающие прямоугольники знаков на изображении, а также их тип: например, знак ограничения скорости. Более подробно о методике распознавания рассказано в разделе 1.2.
3.6. Модуль получения текущей скорости движения автомобиля
Для получения скорости движения автомобиля можно применять несколько способов.
Например, считывание показаний с GPS-приемника. Скорость рассчитывается посредством расчета пройденного расстояния с момента получения предыдущих показаний. Основным преимуществом данного способа является достаточно высокая точность показаний с допустимой погрешностью в несколько км/ч, однако недостатком, как и в случае использования 4G и 5G-сетей, является недостаточно большая зона покрытия, а также холодный старт приемника при длительном отключении.
Еще одним способом является получение данных с CAN-шины посредством OBDII-ин-терфейса. О преимуществах и недостатках данного способа подробнее описано в разделе 1.4.
Скорость движения автомобиля также может быть получена от изображений с цифровой камеры. Зная фокусное расстояние и размер матрицы цифровой камеры, а также физические размеры объекта, можно определить скорость движения до объекта в пространстве, что и является очевидным преимуществом метода: модуль определения скорости движения может вовсе не обращаться к дополнительным устройствам. В качестве образца объекта можно применять типоразмеры одного из дорожных знаков, например ограничения скорости, в соответствии с действующим ГОСТом. Однако это же является и недостатком данного способа: многие производители цифровых камер не разглашают такие характеристики, как фокусное расстояние и размер матрицы, и для типовых моделей видеорегистраторов такие подробности можно получить только по прямому запросу к представителю производителя устройства. Также данный метод сильно зависит от точности распознавания самих дорожных знаков: если ограничивающий прямоугольник знака на изображении распознан некорректно, это повлияет на точность расчета скорости движения автомобиля из-за некорректных размеров самого знака.
В СПВ предлагается использовать комбинированный подход: совмещать методы для осуществления более точного показания приборов. Например, если доступен GPS - использовать GPS как основной источник данных. Если же водитель въехал в зону, в которой покрытие GPS оставляет желать лучшего, - используются показания с OBDII-интерфейса. Если же автомобиль не оснащен OBD-адаптером, он не подключен или работает некорректно, то применяется метод определения скорости с использованием данных о дорожных знаках.
3.7. Модуль определения границы дороги
Для определения границы дороги предобработанное изображение проходит через пороговую фильтрацию для фильтрации пикселей изображения по контрасту, после чего оно поступает на вход детектора границ Кенни, который определяет границы контуров. Границы контуров проходят через преобразование Хафа, которое возвращает набор линий на изображении. Очевидно, что для полосы движения линии границы полосы имеют положительный угол наклона слева, и отрицательный угол наклона справа: каждая распознанная линия проверяется согласно данным граничным условиям. Для удаления пересекающихся прямых и прямых, близких друг к другу, производится дополнительная фильтрация: прямые группируются по координатам точек в радиусе 25 пикселей (значение подобрано экспериментально), и из каждой группы выбирается линия с наименьшей координатой. На рис. 2 и 3 показан принцип работы модуля: на рис. 3 серым цветом отмечены распознанные границы полосы.
Рис. 2. Исходное изображение с видеорегистратора Fig. 2. Original image from the DVR
Рис. 3. Результат работы модуля определения границ полосы Fig. 3. The result of the module for determining the lane boundaries
3.8. Модуль направления движения автомобиля
Для того чтобы СПВ могла распознавать ситуации, когда автомобиль поворачивает, чтобы выдать информацию о знаках, зона действия которых начинается на прилегающей территории, можно также использовать несколько подходов.
Первый подразумевает использование показаний датчика угла вращения руля в автомобиле, однако данные такого характера можно получить только с CAN-шины напрямую, а идентификатор такого устройства в CAN-сети может меняться от производителя к производителю, что не позволяет напрямую считывать данные по OBD-интерфейсу с произвольного автомобиля.
Второй же основывается на информации о границах дороги и текущей скорости автомобиля. Очевидно, что при повороте направо границы дороги на изображении смещаются, а угол наклона правой границы дороги увеличивается, а при повороте налево - правая граница будет больше клониться влево, а левая - вправо. Также очевидно, что повороты совершаются
при уменьшении скорости движения автомобиля, следовательно, модуль направления движения может производить вычисления только в процессе значительного снижения скорости движения, а в остальных случаях не возвращать никаких сигналов об изменении направления движения. Именно такой способ предлагается использовать в текущей архитектуре.
4. Результаты исследования
4.1. Реализация прикладных модулей и тестового стенда
Для реализации модульной архитектуры СПВ реализован набор программ на языке Python версии 3.11. В качестве источника данных для модуля захвата изображений при отладке СПВ использовались видеофрагменты с набора данных CURE-TSD [8], а для считывания показаний с OBD-датчика - библиотека PythonOBD.
Для обучения нейросетевого ансамбля применялся фреймворк глубокого обучения TensorFlow для реализации нейросетевых архитектур VGG19 [18] и GAN. Подробнее об обучении нейросетевого ансамбля на наборе данных CURE-TSD рассказано в работе [12].
В качестве видеорегистратора использовался регистратор Incar SDR-145 Altai с максимальным разрешением записи 2304 на 1296 пикселей.
Для обучения нейросетевого ансамбля использовался следующий стенд: «процессор Intel® Xeon® Gold 6226R, видеокарта Nvidia RTX 3090, объем оперативной памяти 64 ГБ» [12]. Для проверки работы ансамбля использовался стенд: процессор Intel® Core® i5-11600K 3.9 ГГц, объем оперативной памяти 32 ГБ, видеокарта Nvidia RTX 3060 с объемом видеопамяти 12 ГБ.
С целью проверки скорости и точности работы СПВ в реальном времени, в легковой автомобиль была подключена цифровая камера с OBD-адаптером ELM 327, видеофрагменты с которой синхронизировались с ноутбуком, подключенным к бортовой сети автомобиля через автомобильный инвертор 220 В и записывающим показатели текущей скорости движения автомобиля с OBD-адаптера. Автомобиль совершил тестовый заезд в хороших погодных условиях, двигаясь по прямой, осуществляя повороты налево, направо, развороты и остановки на светофорах в течение 10 минут. По маршруту следования было порядка 100 дорожных знаков, типы которых присутствовали в обучающей выборке нейросетевого ансамбля, после чего на тестовом стенде произведен запуск СПВ, в которой модуль получения скорости на выходе возвращал ранее записанные показания с OBD-адаптера, а модуль захвата изображения - кадры снятых видеофрагментов с регистратора.
4.2. Полученные результаты
Получены следующие результаты средней скорости работы модулей:
• модуль захвата и предобработки изображения - 6,9 мс (145 изображений в секунду);
• модуль распознавания дорожных знаков - 291 мс (3,43 изображения в секунду);
• модуль определения границы дороги - 17 мс (59 изображений в секунду);
• модуль получения текущей скорости движения (показания с OBD-датчика) - 13 мс (76 изображений в секунду);
• модуль направления движения автомобиля - 0,4 мс (2500 изображений в секунду);
• модуль принятия решения об обратной связи - 15,7 мс (63 изображения в секунду).
Для определения точности модуля определения границы дороги из полученных видеофрагментов были отобраны 1000 кадров, содержащих движение прямо, повороты направо, налево и развороты. На данных кадрах были размечены области границы дороги. В случае если распознанная линия границы дороги попадает в размеченную область более чем на 75 %,
то линия считается корректно распознанной. На тех же отобранных кадрах размечены ограничивающие прямоугольники дорожных знаков.
Для определения точности модуля принятия решения об обратной связи используется следующая метрика. При принятии решения принимается во внимание точность распознавания знака, определения границы дороги и направления движения: точность работы всего модуля принятия решения снижается при нераспознанном дорожном знаке; корректно распознанной границе дороги, но не распознанном дорожном знаке; распознанном дорожном знаке (но не распознанной границе дороги), по которому дана обратная связь как о знаке, относящемся к проезжей части, а также знаке, относящемся к прилегающей территории, на которую осуществляется поворот, но по которому модуль не выдал обратной связи после поворота. Точность определения суммируется на основании корректности всех вышеперечисленных факторов.
Точность работы модулей приведена ниже:
• модуль распознавания дорожных знаков - 89 %;
• модуль определения границы дороги - 86 %;
• модуль направления движения автомобиля - 95 %;
• модуль принятия решения об обратной связи - 79 %.
Соответственно, точность принятия решения составила порядка 79 %.
4.3. Обсуждение результатов
Для сравнения модуля распознавания дорожных знаков был взят результат, полученный в работе [11] и в работе [12]. Авторы работы [11] установили, что в хороших погодных условиях удается достичь точности работы нейросетевого ансамбля порядка 99,02 % на наборе данных CURE-TSD, а в работе [12] - порядка 95,91 % на том же наборе данных. Результат распознавания в 89 % можно также обосновать тем, что набор данных CURE-TSD снят в Бельгии, где не все знаки дорожного движения совпадают с российскими.
В исследовании [2] авторы установили, что для определения съезда с полосы использование нескольких источников входных данных, в том числе данных GPS, CAN-шины автомобиля и слежения за движением глаз и головы водителя, позволяет добиться точности до 90,5 %, при этом распознавая сигнал о смене границы полосы за 3,5 секунды до начала движения. В нашем случае СПВ распознает сигнал о повороте только при осуществлении самого поворота, при этом точность распознавания границы полосы сопоставима с точностью в оригинальной работе. Но нужно принимать во внимание такой аспект, как использование биометрических данных (радужная оболочка глаза, лицо) [19; 20] без согласия водителя, поскольку в теории это может его скомпрометировать. Поэтому авторы предлагали использование данных с CAN-шины, поскольку эти данные не будут относиться к конкретному водителю и потому не будут являться компрометирующими. В случае использования видеофрагментов с регистратора они также не компрометируют водителя, если камера направлена только на проезжую часть и регистратор эксплуатируется без дополнительной салонной камеры.
За счет большого времени на распознавание дорожных знаков на тестовом стенде общая скорость работы СПВ составила 313,6 мс (не считая самой выдачи обратной связи), что приблизительно равно 3,18 кадрам в секунду. Если принять среднюю скорость реакции водителя в 1 секунду, средняя скорость работы СПВ позволяет водителю начать действовать заблаговременно, в связи с чем достигается первоначальная цель исследования.
Заключение
В данной статье представлена модульная архитектура системы помощи водителю, позволяющая ему заблаговременно получать обратную связь о зоне действия дорожных знаков на максимальной удаленности от них в осложненных погодных условиях, таких как снег, дождь, туман, темное время суток. СПВ распознает дорожные знаки со скоростью до 3 кадров в секунду на тестовом стенде и в целом выдает точность определения обратной связи до 79 % по сравнению с СПВ, которые используются исключительно для обеспечения курсовой устойчивости автомобиля или распознавания конкретных дорожных знаков.
Данная модульная архитектура, в том числе отдельные ее модули, может быть применима и в смежных областях, например, в обеспечении безопасности движения для беспилотных транспортных средств.
Список литературы
1. González-Saavedra J. Ph., Figueroa M., Céspedes S., Montejo-Sánchez S. Survey of Cooperative Advanced Driver Assistance Systems: From a Holistic and Systemic Vision // Sensors. 2022. Vol. 22 (8). P. 3040-3080. https://doi.org/10.3390/s22083040
2. Xing Y., Lv C., Wang H., Wang H., Ai Y., Cao D., et.al. Driver Lane Change Intention Inference for Intelligent Vehicles: Framework, Survey, and Challenges // IEEE Transactions on Vehicular Technology. 2019. Vol. 68 (5). P./ 4377-4390. https://doi.org/10.1109/TVT.2019.2903299
3. Wang Z., Wu Y., Niu Q. Multi-Sensor Fusion in Automated Driving: A Survey // IEEE Access. 2020. Vol. 8. P. 2847-2868. http://dx.doi.org/10.1109/ACCESS.2019.2962554
4. Yanovsky F. J. Millimeter Wave Technology in Wireless PAN, LAN, and MAN. Sebastopol, CA: Auerbach Publications CRC Press, 2008. 448 p.
5. De-Las-Heras G., Sánchez-Soriano J., Puertas E. Advanced Driver Assistance Systems (ADAS) Based on Machine Learning Techniques for the Detection and Transcription of Variable Message Signs on Roads // Sensors. 2021. Vol. 21(17). P. 5866-5880. https://doi.org/10.3390/ s21175866
6. Lin T.-Y., Goyal P., Girshick R., He K., Dollár P. Focal Loss for Dense Object Detection // IEEE Transactions on Pattern Analysis and Machine Intelligence. 2020. Vol. 42(2). P. 318-327. https://doi.org/10.1109/TPAMI.2018.2858826
7. Robby G. A., Tandra A., Susanto I., Harefa J., Chowanda A. Implementation of Optical Character Recognition using Tesseract with the Javanese Script Target in Android Application // Procedia Computer Science. 2019. Vol. 157. P. 499-505. https://doi.org/10.1016/j. procs.2019.09.006
8. Lindemann B., Müller T., Vietz H., Jazdi N., Weyrich M. A survey on long short-term memory networks for time series prediction // Procedia CIRP. 2021. Vol. 99. P. 650-655. https:// doi.org/10.1016/j.procir.2021.03.088
9. Temel D., Alshawi T., Chen M.-H., AlRegib G. CURE-TSD: Challenging unreal and real environments for traffic sign detection // IEEE Dataport. URL: https://ieee-dataport.org/open-access/cure-tsd-challenging-unreal-and-real-environment-traffic-sign-detection (дата обращения 07.07.2023).
10. Емельянов С. О., Иванова А. А., Швец Е. А., Николаев Д. П. Методы аугментации обучающих выборок в задачах классификации изображений // Сенсорные системы. 2018. Т. 32, № 3. С. 236-245.
11. Ahmed S., Kamal U., Hasan M. K. DFR-TSD: A Deep Learning Based Framework for Robust Traffic Sign Detection Under Challenging Weather Conditions // IEEE Transactions on Intelligent Transportation Systems. 2021. Vol. 23(6). P. 5150-5162. https://doi.org/10.1109/ TITS.2020.3048878
12. Харченко И. К., Боровской И. Г., Шельмина Е. А. Использование ансамбля сверточных нейронных сетей для распознавания дорожных знаков // Вестник Томского гос. ун-та. Управление, вычислительная техника и информатика. 2022. № 61. С. 88-96. 10.17223/19988605/61/9
13. Abdennour N., Ouni T., Ben Amor N. Driver identification using only the CAN-Bus vehicle data through an RCN deep learning approach // Robotics and Autonomous Systems. 2021. Vol. 136. https://doi.org/10.1016/j.robot.2020.103707
14. Zhang J., Wu Z., Li F., Xie C., Ren T., Chen J. et al. A Deep Learning Framework for Driving Behavior Identification on In-Vehicle CAN-BUS Sensor Data // Sensors. 2019. Vol. 19(6). P. 1356-1373. https://doi.org/10.3390/s19061356
15. Kubis M., Beno P. Realization of communication via the CAN bus // Transportation Research Procedia. 2019. Vol. 40. P. 332-337. https://doi.org/10.1016/j.trpro.2019.07.049
16. Zhou A., Li Z., Shen Y. Anomaly Detection of CAN Bus Messages Using a Deep Neural Network for Autonomous Vehicles // Applied Sciences. 2019. Vol. 9(15). P. 3174-3186. https:// doi.org/10.3390/app9153174
17. Khanam F., Munmun F. A., Ritu N. A., Saha A. K., Mridha M. F. Text to Speech Synthesis: A Systematic Review, Deep Learning Based Architecture and Future Research Direction // Journal of Advances in Information Technology. 2022. Vol. 13(5). P. 398-412. http://dx.doi. org/10.12720/jait.13.5.398-412
18. Simonyan K., Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition // 3rd International Conference on Learning Representations. 2015. P. 1-14 URL: https://arxiv.org/abs/1409.1556v6 (02.06.2023). https://doi.org/10.48550/arXiv.1409.1556
19. Lucy C., Yu M., Melat K. W., Diarra B., Daniel M. G., Jessilyn D. Does deidentification of data from wearable devices give us a false sense of security? A systematic review // The Lancet Digital Health. 2023. Vol. 5(4). P. 239-247. https://doi.org/10.1016/S2589-7500(22)00234-5
20. Smith M., Miller S. Biometric Identifcation, Law and Ethics. Canberra, Australia: Charles Sturt University, 2021. 105 p. https://doi.org/10.1007/978-3-030-90256-8_4
References
1. González-Saavedra, J. Ph., Figueroa, M., Céspedes, S., Montejo-Sánchez, S. Survey of Cooperative Advanced Driver Assistance Systems: From a Holistic and Systemic Vision. Sensors, 2022, vol. 22(8), pp. 3040-3080. https://doi.org/10.3390/s22083040
2. Xing,Y., Lv, C., Wang, H., Wang, H.,Ai,Y., Cao, D., et.al. Driver Lane Change Intention Inference for Intelligent Vehicles: Framework, Survey, and Challenges. IEEE Transactions on Vehicular Technology. 2019, vol. 68(5), pp. 4377-4390. https://doi.org/10.1109/TVT.2019.2903299
3. Wang, Z., Wu, Y., Niu, Q. Multi-Sensor Fusion in Automated Driving: A Survey. IEEE Access, 2020, vol. 8, pp. 2847-2868. http://dx.doi.org/10.1109/ACCESS.2019.2962554
4. Yanovsky, F. J. Millimeter Wave Technology in Wireless PAN, LAN, and MAN. Sebastopol, CA: Auerbach Publications CRC Press, 2008, 448 p.
5. De-Las-Heras, G., Sánchez-Soriano, J., Puertas, E. Advanced Driver Assistance Systems (ADAS) Based on Machine Learning Techniques for the Detection and Transcription of Variable Message Signs on Roads. Sensors, 2021, vol. 21(17), pp. 5866-5880. https://doi.org/10.3390/ s21175866
6. Lin, T.-Y., Goyal, P., Girshick, R., He, K., Dollár, P. Focal Loss for Dense Object Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, vol. 42(2), pp. 318-327. https://doi.org/10.1109/TPAMI.2018.2858826
7. Robby, G. A., Tandra, A., Susanto, I., Harefa, J., Chowanda, A. Implementation of Optical Character Recognition using Tesseract with the Javanese Script Target in Android
Application. Procedia Computer Science, 2019, vol. 157, pp. 499-505. https://doi.org/10.1016/). procs.2019.09.006
8. Lindemann, B., Müller, T., Vietz, H., Jazdi, N., Weyrich, M. A survey on long short-term memory networks for time series prediction. Procedia CIRP, 2021, vol. 99, pp. 650-655. https:// doi.org/10.1016/j.procir.2021.03.088
9. Temel, D., Alshawi, T., Chen, M.-H., AlRegib, G. CURE-TSD: Challenging unreal and real environments for traffic sign detection. IEEE Dataport. Available from: https://ieee-dataport.org/ open-access/cure-tsd-challenging-unreal-and-real-environment-traffic-sign-detection [Accessed 2nd July 2023].
10. Emelyanov, C. O., Ivanova, A. A., Shvets, E. A., Nikolaev, D. P. Data agumentation methods of training datasets for image classification task. Sensorniye sistemy = Sensor systems. 2018, vol. 32(3), pp. 236-245. (In Russ.) Available from: https://elibrary.ru/item.asp?doi=10.1134/ S0235009218030058 [Accessed 2nd July 2023].
11. Ahmed, S., Kamal, U., Hasan, M. K. DFR-TSD: A Deep Learning Based Framework for Robust Traffic Sign Detection Under Challenging Weather Conditions. IEEE Transactions on Intelligent Transportation Systems, 2021, vol. 23(6), pp. 5150-5162. https://doi.org/10.1109/ TITS.2020.3048878
12. Kharchenko, I. K., Borovskoy, I. G., Shelmina, E. A. Usage of convolutional neural network ensemble for traffic sign recognition. Vestnik Tomskogo gosudarstvennogo universiteta. Upravlenie, vychislitelnaja tehnika i informatika = Bulletin of Tomsk State University. Management, Computer Engineering and Informatics. Tomsk State University Journal of Control and Computer Science. 2022, vol. 61, pp. 88-96. (In Russ.) DOI 10.17223/19988605/61/9
13. Abdennour, N., Ouni, T., Ben Amor, N. Driver identification using only the CAN-Bus vehicle data through an RCN deep learning approach. Robotics and Autonomous Systems, 2021, vol. 136. https://doi.org/10.1016Zj.robot.2020.103707
14. Zhang, J., Wu, Z., Li, F., Xie, C., Ren, T., Chen, J., et al. A Deep Learning Framework for Driving Behavior Identification on In-Vehicle CAN-BUS Sensor Data. Sensors, 2019, vol. 19(6), pp. 1356-1373. https://doi.org/10.3390/s19061356
15. Kubis, M., Beno, P. Realization of communication via the CAN bus. Transportation Research Procedia, 2019, vol. 40, pp. 332-337. https://doi.org/10.1016/j.trpro.2019.07.049
16. Zhou, A., Li, Z., Shen, Y. Anomaly Detection of CAN Bus Messages Using a Deep Neural Network for Autonomous Vehicles. Applied Sciences, 2019, vol. 9(15), pp. 3174-3186. https:// doi.org/10.3390/app9153174
17. Khanam, F., Munmun, F. A., Ritu, N. A., Saha, A. K., Mridha, M. F. Text to Speech Synthesis: A Systematic Review, Deep Learning Based Architecture and Future Research Direction. Journal of Advances in Information Technology, 2022, vol. 13(5), pp. 398-412. http://dx.doi. org/10.12720/jait.13.5.398-412
18. Simonyan, K., Zisserman, A. Very Deep Convolutional Networks for Large-Scale Image Recognition. 3rd International Conference on Learning Representations, 2015, pp. 1-14. Available from: https://arxiv.org/abs/1409.1556v6 [Accessed 2nd July 2023]. https://doi. org/10.48550/arXiv.1409.1556
19. Lucy, C., Yu, M., Melat, K. W., Diarra, B., Daniel, M. G., Jessilyn, D. Does deidentification of data from wearable devices give us a false sense of security? A systematic review. The Lancet Digital Health, 2023, vol. 5(4), pp. 239-247. https://doi.org/10.1016/S2589-7500(22)00234-5
20. Smith, M., Miller, S. Biometric Identification, Law and Ethics. Canberra, Australia: Charles Sturt University, 2021, 105 p. https://doi.org/10.1007/978-3-030-90256-8_4
Сведения об авторах
Харченко Игорь Константинович, аспирант кафедры автоматизированных систем управления Томского государственного университета систем управления и радиоэлектроники
Боровской Игорь Георгиевич, доктор физико-математических наук, профессор, заведующий кафедрой экономической математики, информатики и статистики Томского государственного университета систем управления и радиоэлектроники
Шельмина Елена Александровна, кандидат физико-математических наук, доцент кафедры экономической математики, информатики и статистики Томского государственного университета систем управления и радиоэлектроники
Information about the Author
Kharchenko Igor Konstantinovich, Post-graduate Student Tomsk State University of Control Systems and Radioelectronics, Tomsk, Russian Federation
Borovskoy Igor Georgievich, Doctor of Physics and Mathematics, Professor, Tomsk State University of Control Systems and Radioelectronics, Tomsk, Russian Federation
Shelmina Elena Aleksandrovna, Candidate of Physics and Mathematics, Associate Professor, Tomsk State University of Control Systems and Radioelectronics, Tomsk, Russian Federation
Статья поступила в редакцию 11.07.2023; одобрена после рецензирования 18.09.2023; принята к публикации 18.09.2023
The article was submitted 11.07.2023; approved after reviewing 18.09.2023; accepted for publication 18.09.2023