МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ
РОССИЙСКОЙ ФЕДЕРАЦИИ
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ
РЕСПУБЛИКИ ТАДЖИКИСТАН
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ
ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ
«МИСИС» г. ДУШАНБЕ
Кафедра «Информационные технологии и автоматизация»
Курсовая работа
По дисциплине
«Интеллектуальный анализ данных»
На тему: «Распознавание наличия светофора на картинке с помощью
компьютерного зрения»
Выполнил:
Студент 4-го курса
Очного обучения
Направления 09.03.01
Хотамов У. Д.
Принял:
К. Э. Н. Доцент Джумаев У. М.
Душанбе — 2025
СОДЕРЖАНИЕ
ВВЕДЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1
ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ
ИССЛЕДОВАНИЯ КОМПЬЮТЕРНОГО ЗРЕНИЯ . . . . . . . . . . . . . . . . . . . . . 7
1.1 Сущность компьютерного зрения и распознавания образов . . . . . 7
1.2 Методы компьютерного зрения для распознавания объектов . . . 11
1.3 Методологические основы исследования в области
компьютерного зрения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2
ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ СИСТЕМЫ
РАСПОЗНАВАНИЯ НАЛИЧИЯ СВЕТОФОРА . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 Постановка задачи и требования к системе. . . . . . . . . . . . . . . . . . . . . . . .
2.2 Архитектура решения и вычислительный конвейер . . . . . . . . . . . . . .
2.3 Программная реализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
16
19
23
3
ОЦЕНКА ЭФФЕКТИВНОСТИ РАЗРАБОТАННОГО МЕТОДА . . . . . .
3.1 Метрики качества . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 План экспериментов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Результаты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
26
29
32
4
ЗАКЛЮЧЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2
ВВЕДЕНИЕ
Светофор фиксирует допустимые режимы движения транспортных
средств и пешеходов и тем самым непосредственно влияет на вероятность
дорожно-транспортных происшествий. Для систем автоматизированного и
автономного управления транспортом требуется алгоритм, который по одиночному изображению или кадру видеопотока определяет наличие светофора
в сцене с заданной точностью и задержкой обработки. В настоящей работе
рассматривается именно задача бинарного решения: «светофор присутствует
/ отсутствует» для отдельного кадра.
Распознавание светофора относится к задачам распознавания образов,
формально описанным в алгебраическом подходе Ю. И. Журавлёва1 . Объекту сопоставляется вектор признаков конечной размерности; на множестве
таких векторов определяется решающее правило, разбивающее пространство
признаков на подмножества классов. Для дорожных сцен сложность задачи
определяется следующими факторами: малый угловой размер светофора при
большом расстоянии до камеры, частичная окклюзия объектами инфраструктуры и транспортом, широкий диапазон освещённости (дневные, ночные и
переходные условия), а также наличие визуально похожих источников света.
Любое практически применимое решение должно демонстрировать устойчивость к перечисленным возмущениям, что задаёт требования к выбору
признакового описания и модели.
Методы распознавания объектов целесообразно разделить на две группы. Первая включает классические подходы с ручным извлечением признаков: гистограмма направленных градиентов (англ. Histogram of Oriented
Gradients, HOG), масштабно-инвариантное преобразование признаков (англ.
Scale-Invariant Feature Transform, SIFT) и ускоренные робастные признаки
(англ. Speeded-Up Robust Features, SURF); далее по тексту используются соответствующие аббревиатуры. Методы этой группы, как правило, сочетаются
с методом опорных векторов (англ. Support Vector Machine, SVM) в качестве
классификатора. Сравнительный анализ таких дескрипторов приведён, на1 Журавлёв Ю. И. Об алгебраическом подходе к решению задач распознавания и классификации //
Теория распознавания. М.: Наука, 1978. С. 5–68.
3
пример, в работе Alfalou и др.2 . Вторая группа объединяет методы на основе
глубоких сверточных нейронных сетей (англ. Convolutional Neural Networks,
CNN), в том числе современные архитектуры детекторов объектов, обобщённо описанные в обзорах по глубокому детектированию3 . В данной работе
используются представители обеих групп для последующего экспериментального сопоставления.
Объект исследования — процесс автоматического анализа изображений дорожной сцены.
Предмет исследования — методы и алгоритмы определения наличия
светофора по статическому изображению, включая выбор признаков, классификаторов и критериев оценки качества.
Цель исследования — разработать и экспериментально оценить метод
распознавания наличия светофора на изображении дорожной сцены, основанный на сопоставлении классического подхода (HOG + SVM) и сверточной
нейронной сети (CNN).
Для достижения цели сформулированы следующие задачи:
1. Сформулировать математическую постановку задачи распознавания
наличия светофора и критерии качества принимаемых решений.
2. Выполнить анализ классических методов выделения признаков и
классификации и выбрать базовую комбинацию для сравнения.
3. Выполнить анализ методов на основе сверточных нейронных сетей
и выбрать архитектуру, пригодную для бинарного распознавания наличия светофора.
4. Описать требования к системе, структуру набора данных и процедуры предобработки изображений.
5. Реализовать программный прототип на основе выбранных методов.
6. Провести серию вычислительных экспериментов, оценить метрики
качества и сформулировать выводы о сравнительной эффективности
подходов.
2 Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG, SIFT, SURF, and
BRIEF for security and face recognition. 2018.
3 Xiao Y., Tian Z., Yu J., Zhang Y., Liu S., Du S., Lan X. A review of object detection based on deep
learning // Multimedia Tools and Applications. 2020. Vol. 79.
Sun Y., Sun Z., Chen W. The evolution of object detection methods // Engineering Applications of
Artificial Intelligence. 2024. Vol. 133. Art. 108458.
4
Методология исследования включает:
– теоретический анализ публикаций по распознаванию образов и детектированию объектов;
– формализацию задачи в терминах теории распознавания;
– построение и реализацию двух вариантов алгоритма (классического
и нейросетевого);
– вычислительные эксперименты на сформированном наборе данных;
– статистическую обработку результатов с использованием стандартных метрик качества бинарной классификации.
Информационная база состоит из:
– работ по алгебраической теории распознавания4 ;
– обзоров методов детектирования объектов и эволюции архитектур
глубоких сетей5 ;
– сравнительных исследований дескрипторов изображений6 ;
– публикаций по теории и приложениям метода опорных векторов7 ;
– оригинальных статей, описывающих архитектуры нейронных сетей на
основе регионов (англ. Region-based Convolutional Neural Network, RCNN), её модификацию Faster R-CNN и детектор Single Shot MultiBox
Detector (SSD)8 .
4 Журавлёв Ю. И. Об алгебраическом подходе к решению задач распознавания и классификации //
Теория распознавания. М.: Наука, 1978. С. 5–68.
5 Xiao Y., Tian Z., Yu J., Zhang Y., Liu S., Du S., Lan X. A review of object detection based on deep
learning // Multimedia Tools and Applications. 2020. Vol. 79.
Sun Y., Sun Z., Chen W. The evolution of object detection methods // Engineering Applications of
Artificial Intelligence. 2024. Vol. 133. Art. 108458.
6 Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG, SIFT, SURF, and
BRIEF for security and face recognition. 2018.
7 Evgeniou T., Pontil M. Support Vector Machines: Theory and Applications // Lecture Notes in Computer
Science. 2001. Vol. 2049. P. 249–257.
8 Girshick R., Donahue J., Darrell T., Malik J. Rich Feature Hierarchies for Accurate Object Detection
and Semantic Segmentation // Proc. 2014 IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
2014. P. 580–587.
Ren S., He K., Girshick R., Sun J. Faster R-CNN: Towards real-time object detection with region proposal
networks // Advances in Neural Information Processing Systems 28 (NIPS 2015). 2015. P. 91–99.
Liu W., Anguelov D., Erhan D., Szegedy C., Reed S., Fu C.-Y., Berg A. SSD: Single Shot MultiBox
Detector // Computer Vision – ECCV 2016. Lecture Notes in Computer Science. 2016. Vol. 9905. P. 21–37.
5
Работа состоит из введения, трёх глав и заключения. В первой главе сформулированы теоретико-методологические основы исследования компьютерного зрения в контексте задачи распознавания светофоров. Во второй
описаны постановка задачи и архитектура разрабатываемой системы. В третьей выполнена оценка эффективности реализованных методов. В заключении сформулированы основные выводы.
6
ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ
ИССЛЕДОВАНИЯ КОМПЬЮТЕРНОГО ЗРЕНИЯ
1.1
Сущность компьютерного зрения и распознавания образов
Компьютерное зрение рассматривается как совокупность методов обработки и анализа изображений, направленных на получение формализованного
описания наблюдаемой сцены. Исходным объектом является физическая сцена S, наблюдаемая оптической системой (камера, видеорегистратор и т.п.) и
представляемая в виде двумерного массива дискретных измерений яркости
и цвета
I : {1, . . . ,H} × {1, . . . ,W } × {1, . . . ,c} → R,
(1)
где H и W — число строк и столбцов изображения, c — число каналов (например, c = 1 для полутонового изображения, c = 3 для RGB-представления). На
основе массива I система должна сформировать выходное описание y ∈ Y ,
пригодное для дальнейшего использования (управление, диагностика, мониторинг).
В наиболее общем виде задача компьютерного зрения формулируется
как задача восстановления отображения
F : I → Y,
(2)
где I — множество всех допустимых изображений, а Y — множество выходных описаний. В зависимости от постановки задачи множество Y может
иметь различную структуру:
– для распознавания объектов на уровне сцены Y представляет собой
конечное множество меток классов (классификация);
– для задач локализации Y включает набор параметров ограничивающих прямоугольников или более общих областей (детектирование
объектов);
– для сегментации Y задаётся в виде разметки по пикселям либо по
суперпикселям;
– для задач восстановления глубины или движения Y включает поля
глубины, оптического потока и т.п.
7
Для задач распознавания образов, в том числе в трактовке Ю. И. Журавлёва, вводится промежуточное описание в виде вектора признаков конечной
размерности1 . Каждому объекту наблюдения o сопоставляется вектор
x = (x1 , . . . ,xn ) ∈ X ⊆ Rn ,
(3)
получаемый в результате отображения
T : I → X,
(4)
которое включает операции предобработки и извлечения признаков. Множество классов C = {c1 , . . . ,cK } задаёт все допустимые ответы системы, а
решающее правило
φ:X→C
(5)
определяет классификацию каждого вектора признаков. В этой схеме полное
отображение от изображения к ответу представляется в виде композиции
F = φ ◦ T.
(6)
Для задачи распознавания наличия светофора множество классов имеет
вид
C = {cнет , cесть },
(7)
где cесть соответствует наличию хотя бы одного светофора в пределах изображения, а cнет — его отсутствию. Формально результат работы системы можно
представить как бинарную функцию
1, если на изображении присутствует светофор,
(8)
y(I) =
0, если светофор отсутствует.
Таким образом, множество выходных описаний в рассматриваемой постановке редуцируется к
Y = {0,1}.
(9)
При практической реализации отображение F аппроксимируется параметрической моделью Fθ , где θ обозначает совокупность настраиваемых
параметров. Обучение модели выполняется по размеченной выборке
D = {(Ik , yk )}N
k=1 ,
(10)
1 Журавлёв Ю. И. Об алгебраическом подходе к решению задач распознавания и классификации //
Теория распознавания. М.: Наука, 1978. С. 5–68.
8
где Ik — изображение, yk ∈ {0,1} — метка наличия светофора. Цель обучения формулируется как минимизация функционала качества (эмпирического
риска) на D либо его регуляризованного варианта. В случае бинарной классификации широко используется функция потерь вида
N
1 X
w1 yk log pθ (yk = 1 | Ik )+w0 (1−yk ) log(1−pθ (yk = 1 | Ik )) ,
L(θ) = −
N
k=1
(11)
где pθ (yk = 1 | Ik ) — вероятность положительного класса, предсказываемая
моделью, а w0 и w1 — веса классов, позволяющие компенсировать возможный
дисбаланс между положительными и отрицательными примерами.
При формализации сущности компьютерного зрения для дорожных
сцен целесообразно выделить уровни представления информации:
– низкоуровневое представление — описания, близкие к исходному
сигналу (градиенты, текстуры, локальные дескрипторы);
– среднеуровневое представление — контуры объектов, группы связанных пикселей, суперпиксели, области интереса;
– высокоуровневое представление — семантические сущности (светофор, дорожный знак, пешеход) и их взаимное расположение.
Система распознавания светофора по одиночному кадру должна строить
отображение, связывающее низкоуровневые признаки с высокоуровневой бинарной семантической меткой. Конкретный выбор уровня, на котором формируется вектор признаков x, зависит от используемого метода: в классических подходах x часто соответствует среднеуровневому описанию, тогда как
в сверточных нейронных сетях переход между уровнями реализуется внутри
самой сети и явно не фиксируется2 .
Сущность задачи компьютерного зрения в приложении к светофорам
определяется также набором возмущающих факторов, которые не относятся
к целевой семантике, но влияют на наблюдаемый сигнал:
– геометрические преобразования: сдвиги, масштабирование, повороты камеры, перспективные искажения;
2 Xiao Y., Tian Z., Yu J., Zhang Y., Liu S., Du S., Lan X. A review of object detection based on deep
learning // Multimedia Tools and Applications. 2020. Vol. 79.
Sun Y., Sun Z., Chen W. The evolution of object detection methods // Engineering Applications of
Artificial Intelligence. 2024. Vol. 133. Art. 108458.
9
– фотометрические изменения: вариации глобальной освещённости,
локальные блики, тени, смена времени суток и погодных условий;
– структурные помехи: частичная окклюзия светофора транспортными
средствами, деревьями, архитектурными элементами;
– дискретизация и шум: конечное разрешение матрицы, сжатие, сенсорный шум.
С точки зрения теории распознавания эти факторы можно рассматривать как случайные преобразования исходной сцены S, образующие семейство отображений G = {g}, действующих на изображения: I ′ = g(I).
Требование инвариантности или, по крайней мере, слабой чувствительности к преобразованиям g задаёт ограничения на допустимые преобразования
признакового пространства X и структуру решающего правила φ.
В общем случае задача проектирования системы компьютерного зрения
для бинарного распознавания светофоров включает:
– выбор способа перехода T : I → X от изображения к признаковому
описанию с учётом перечисленных возмущающих факторов;
– выбор класса моделей для φ : X → {0,1} с заданными ограничениями на сложность и интерпретируемость;
– определение критерия качества и набора метрик, по которым будет
оцениваться соответствие решения практическим требованиям.
Содержательная специфика компьютерного зрения по сравнению с абстрактными задачами классификации состоит в явном учёте физической природы сигнала и геометрии сцены. В задаче светофоров это проявляется в
необходимости учитывать относительный размер объекта в кадре, положение
относительно горизонта, характерную форму и пространственную структуру
(корпус, секции, опора), а также типичные взаимные расположения с другими
объектами дорожной инфраструктуры. Указанные особенности используются как при построении ручных дескрипторов, так и при выборе архитектуры
сверточной сети и параметров её слоёв.
Наконец, сущность исследуемой задачи определяется не только математической формулировкой, но и включением алгоритма компьютерного зрения в более широкий контур принятия решений. Выходное значение y ∈ {0,1}
10
служит входом для подсистемы планирования движения или поддержки водителя. Ошибки F P (ложное обнаружение светофора) и F N (пропуск светофора) имеют различную прикладную значимость, что отражается в выборе функции потерь, метрик и критериев оптимальности алгоритма. Таким образом,
формулировка задачи компьютерного зрения должна учитывать дальнейшее
использование результата, а не только формальное качество классификации
на тестовой выборке.
1.2
Методы компьютерного зрения для распознавания объектов
Методы решения задач компьютерного зрения удобно группировать
по способу формирования признакового описания и построения решающего
правила. В рамках настоящей работы рассматриваются две основные группы:
классические методы с ручным извлечением признаков и статистическим
классификатором, а также методы на основе глубоких сверточных нейронных
сетей.
Классические дескрипторы признаков
В классических методах изображение преобразуется в компактный вектор признаков фиксированной длины, который далее обрабатывается стандартными алгоритмами машинного обучения. Обзор Alfalou и др. сопоставляет ряд дескрипторов: корреляционные фильтры (англ. Correlation Filters,
CF), локальные бинарные шаблоны (англ. Local Binary Patterns, LBP), гистограмму направленных градиентов (HOG), масштабно-инвариантное преобразование признаков (SIFT), ускоренные робастные признаки (SURF) и двоичные робастные независимые элементарные признаки (BRIEF)3 . Для задачи
обнаружения светофора ключевыми являются инвариантность к масштабу и
повороту, устойчивость к изменениям освещённости и вычислительная эффективность.
Дескриптор HOG описывает локальную структуру градиентов яркости.
Для каждого пикселя (i,j) вычисляются градиенты Gx (i,j) и Gy (i,j), после
3 Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG, SIFT, SURF, and
BRIEF for security and face recognition. 2018.
11
чего формируются модуль
q
m(i,j) = Gx (i,j)2 + Gy (i,j)2
(12)
θ(i,j) = arctan 2(Gy (i,j), Gx (i,j)).
(13)
и направление
Изображение разбивается на ячейки фиксированного размера, в каждой ячейке строится гистограмма направлений градиентов, затем несколько ячеек объединяются в блоки, гистограммы нормируются и конкатенируются в итоговый
дескриптор xHOG . Практические эксперименты показывают, что HOG обеспечивает устойчивость к локальному шуму и умеренную инвариантность к
освещению при относительно небольшой размерности вектора признаков4 .
Дескрипторы SIFT и SURF ориентированы на выделение локальных
ключевых точек и построение инвариантных описаний окрестностей. В SIFT
ключевые точки определяются как экстремумы разности Гауссов в пространстве масштабов, для каждой точки вычисляются ориентация и дескриптор на
основе локальных гистограмм градиентов. SURF использует аппроксимацию
оператора Гессе и интегральные изображения, что уменьшает вычислительные затраты и даёт более компактное представление5 . Эти методы обеспечивают инвариантность к масштабу и повороту, но формируют множество
локальных дескрипторов, которое требует дополнительной агрегации (например, через «мешок визуальных слов») для последующей классификации.
Классификация на основе метода опорных векторов
Метод опорных векторов (SVM) реализует построение решающего правила в пространстве признаков с максимизацией геометрического зазора межn
ду классами. Пусть {(xi , yi )}N
i=1 — обучающая выборка, где xi ∈ R — дескриптор изображения, yi ∈ {−1, +1} — метка класса. В линейно разделимом
случае задача обучения формулируется как
1
min ∥w∥2
w,b 2
при ограничениях yi (w⊤ xi − b) ≥ 1, i = 1, . . . ,N.
(14)
4 Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG, SIFT, SURF, and
BRIEF for security and face recognition. 2018.
5 Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG, SIFT, SURF, and
BRIEF for security and face recognition. 2018.
12
При неполной разделимости вводятся переменные ξi ≥ 0 и параметр штрафа
C:
N
X
1
2
ξi , yi (w⊤ xi − b) ≥ 1 − ξi .
(15)
min ∥w∥ + C
w,b,ξ 2
i=1
Переход к двойственной форме позволяет использовать ядровые функции и строить нелинейные разделяющие поверхности6 . Для векторов xHOG
на практике часто достаточно линейного ядра, что снижает вычислительную
сложность и упрощает интерпретацию модели. В контексте распознавания
светофоров сочетание HOG + SVM образует репрезентативный классический
базовый метод, пригодный для сопоставления с нейросетевыми подходами.
Сверточные нейронные сети и детекторы объектов
Сверточные нейронные сети (CNN) объединяют этапы выделения признаков и классификации в рамках единой параметрической модели. Обзор
современных архитектур показывает переход от классических скользящих
окон к двум основным семействам детекторов: детекторам на основе регионов (region-based) и одноэтапным детекторам (one-stage)7 .
Базовая CNN преобразует изображение I в вероятность принадлежности классу y = 1 посредством последовательности свёрточных, нелинейных и
подвыборочных слоёв, завершающихся полносвязными слоями и сигмоидальной или softmax-активацией. Внутренние карты признаков фиксированного
размера играют роль автоматически формируемого признакового описания.
Это снимает необходимость ручного выбора дескрипторов и позволяет учитывать сложные комбинации локальных структур, характерных для корпуса
светофора, его крепления и фона.
Семейство сетей R-CNN (Region-based Convolutional Neural Network)
реализует двухэтапную схему: внешний алгоритм либо внутренняя подсеть
6 Evgeniou T., Pontil M. Support Vector Machines: Theory and Applications // Lecture Notes in Computer
Science. 2001. Vol. 2049. P. 249–257.
7 Sun Y., Sun Z., Chen W. The evolution of object detection methods // Engineering Applications of
Artificial Intelligence. 2024. Vol. 133. Art. 108458.
Xiao Y., Tian Z., Yu J., Zhang Y., Liu S., Du S., Lan X. A review of object detection based on deep
learning // Multimedia Tools and Applications. 2020. Vol. 79.
13
формирует ограниченное число регионов-кандидатов, для каждого из которых вычисляются сверточные признаки и выполняется классификация8 . В
Faster R-CNN используется сеть предложений регионов (англ. Region Proposal
Network, RPN), обучаемая совместно с основной CNN, что уменьшает время
обработки и улучшает согласованность регионов и признаковых карт.
Одноэтапные детекторы, такие как SSD (Single Shot MultiBox Detector),
объединяют генерацию гипотез и классификацию в одном проходе. Для каждого элемента набора карт признаков разных масштабов формируется фиксированный набор якорных прямоугольников; сеть предсказывает поправки
к их координатам и распределения вероятностей по классам9 . Одноэтапная
схема обеспечивает высокую скорость при приемлемой точности, что делает
её перспективной для задач, близких к реальному времени.
В контексте данной работы CNN используется как классификатор наличия светофора в кадре. Детекторы R-CNN, Faster R-CNN и SSD рассматриваются как методологическая основа для возможного расширения исследования в направлении совместной локализации и распознавания.
1.3
Методологические основы исследования в области компьютерного
зрения
Методологический подход в области компьютерного зрения опирается
на представление системы распознавания как последовательности взаимосвязанных этапов: предобработка изображений, формирование признакового описания и построение решающего правила. Для каждого этапа задаются
требования к робастности, инвариантности и вычислительной сложности. В
задаче распознавания светофоров это выражается в необходимости обеспечивать устойчивость к масштабным и аффинным преобразованиям, изменениям
освещённости и частичной окклюзии объектов при сохранении допустимого
времени обработки кадра.
8 Girshick R., Donahue J., Darrell T., Malik J. Rich Feature Hierarchies for Accurate Object Detection
and Semantic Segmentation // Proc. 2014 IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
2014. P. 580–587.
Ren S., He K., Girshick R., Sun J. Faster R-CNN: Towards real-time object detection with region proposal
networks // Advances in Neural Information Processing Systems 28 (NIPS 2015). 2015. P. 91–99.
9 Liu W., Anguelov D., Erhan D., Szegedy C., Reed S., Fu C.-Y., Berg A. SSD: Single Shot MultiBox
Detector // Computer Vision – ECCV 2016. Lecture Notes in Computer Science. 2016. Vol. 9905. P. 21–37.
14
Сравнение классического подхода (HOG + SVM) и нейросетевого подхода (CNN) выполняется на основе единого экспериментального протокола.
Используется общий набор исходных изображений, единая схема разбиения
на обучающую, валидационную и тестовую выборки, а также согласованный
набор метрик (Accuracy, Precision, Recall, F1 ). Такой протокол позволяет интерпретировать различия в полученных числах как следствие различий в моделях и гиперпараметрах, а не в исходных данных или способах их разбиения.
Методология исследования предполагает фиксирование архитектур и
гиперпараметров на всех этапах: параметров дескриптора HOG (размер ячеек, число биннов, схема нормализации), параметров SVM (тип ядра, значение параметра штрафа C), структуры и размеров слоёв CNN, характеристик
функции потерь и алгоритма оптимизации, критериев остановки обучения и
правил выбора порогов принятия решения. Наличие полного набора таких
параметров обеспечивает воспроизводимость экспериментов и возможность
контролируемого сравнения модификаций алгоритма.
Интерпретация результатов опирается на анализ структуры ошибок.
Для ложноположительных решений выделяются сцены с фонарями, отражениями и другими яркими источниками света; для ложноотрицательных —
кадры с малой видимой площадью светофора, сильной окклюзией, низкой
контрастностью или нетипичным ракурсом. Сопоставление этих групп с архитектурными и параметрическими особенностями моделей позволяет обосновывать выбор направлений дальнейшего развития системы: корректировку
аугментаций, изменение конфигурации сети, уточнение параметров дескрипторов или схем предобработки изображений.
15
ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ СИСТЕМЫ
РАСПОЗНАВАНИЯ НАЛИЧИЯ СВЕТОФОРА
2.1
Постановка задачи и требования к системе
Практическая постановка задачи распознавания наличия светофора
опирается на сценарий использования системы в составе комплекса автоматизированного или автономного управления транспортным средством. Предполагается, что на вход алгоритма поступает последовательность кадров от
одной или нескольких видеокамер, жёстко зафиксированных относительно
кузова автомобиля или дорожной инфраструктуры. Каждый кадр рассматривается независимо, так как в данной работе не используется информация о
временной последовательности; это допущение упрощает моделирование и
позволяет ограничиться статическими методами компьютерного зрения.
Исходным множеством данных является выборка изображений дорожных сцен, полученных в условиях реальной эксплуатации или максимально
приближённых к ним стендовых испытаний. Для каждого изображения известна бинарная метка: «в кадре присутствует хотя бы один светофор» или
«в кадре отсутствуют светофоры». Под светофором понимается устройство
световой сигнализации, предназначенное для регулирования дорожного движения, независимо от его конкретного типа (транспортный, пешеходный, реверсивный), при условии, что его корпус и световые секции наблюдаемы хотя
бы частично. Сцены с выключенными или неработоспособными светофорами
включаются в выборку, если геометрическая структура устройства различима.
Требуется построить алгоритм, реализующий отображение от изображения к бинарному решению. Алгоритм должен принимать на вход цифровое изображение фиксированного размера в одном из стандартных цветовых представлений, производить всю необходимую предобработку и выдавать оценку принадлежности кадра к классу «светофор присутствует». На
уровне программной реализации алгоритм оформляется в виде модуля с чётко определённым интерфейсом: функция или метод, принимающий на вход
массив пиксельных значений и возвращающий либо бинарное решение, либо
вероятность отнесения кадра к положительному классу.
16
Постановка задачи включает систему ограничений, связанных с предполагаемым контекстом использования. Алгоритм должен обеспечивать заданные показатели качества на заранее выделенной тестовой выборке, которая
не используется при обучении и настройке параметров. В качестве целевых
показателей рассматриваются метрики, определённые в третьей главе: доля
верных решений, полнота обнаружения и гармоническое среднее точности и
полноты. Минимально допустимые пороги задаются исходя из требований к
безопасности: пропуск светофора при его фактическом наличии рассматривается как более значимая ошибка, чем ложное срабатывание, поэтому порог
по полноте должен быть не ниже порога по точности.
Алгоритм должен укладываться в ограничение по времени обработки
одного кадра. Для систем поддержки водителя и продвинутых ассистентов
типичный бюджет времени составляет от нескольких миллисекунд до десятков миллисекунд на кадр при частоте обновления видеопотока 20–30 кадров
в секунду. В настоящей работе этот бюджет задаётся параметром, который
фиксируется при описании аппаратной платформы и измеряется в ходе экспериментов. В анализе сравниваются не только качественные показатели, но
и среднее время обработки кадра для каждого варианта реализации.
Необходимо обеспечить устойчивость алгоритма к изменению внешних
условий в пределах диапазонов, представленных в данных. К таким условиям относятся изменения освещённости, времени суток, погодных эффектов,
а также различия в типах и расположении светофоров. Устойчивость формализуется через относительное изменение значений метрик при переходе
от основной части тестовой выборки к её специализированным поднаборам,
содержащим, например, ночные сцены или кадры с частичной окклюзией
объекта. Если изменение метрик не превышает заранее установленного порогового значения, устойчивость считается достаточной для рассматриваемых
условий эксплуатации.
Алгоритм проектируется с учётом требований к расширяемости и сопровождаемости. Под расширяемостью понимается способность системы
принимать альтернативные реализации решающего правила без изменения
интерфейсов взаимодействия с внешними компонентами. Для этого вводится
абстрактный уровень, на котором фиксируется формат входных и выходных
данных, а также протокол вызова алгоритма. Конкретная модель — комбинация описателя признаков и классификатора или сверточная нейронная сеть
17
— рассматривается как сменный модуль, который может быть переобучен
или заменён без модификации остальной части программного комплекса.
Отдельный блок требований относится к структуре и качеству исходной выборки. Для корректной оценки алгоритма необходимо, чтобы выборка
включала достаточное количество положительных и отрицательных примеров, а также репрезентировала разнообразие дорожных условий. Это разнообразие описывается набором признаков сцены: городской или загородный
тип дороги, количество полос движения, наличие перекрёстков, тип освещения, погодные условия. Для каждого признака вводятся категории, и при
формировании выборки отслеживается распределение изображений по этим
категориям. Цель состоит в том, чтобы ни одна из категорий, имеющих практическую значимость, не была представлена только в обучающей или только
в тестовой части.
Качество аннотации выборки рассматривается как отдельный фактор,
влияющий на результаты экспериментов. Разметка изображений выполняется
экспертами, знакомыми с особенностями дорожной инфраструктуры, по регламенту, в котором фиксируются критерии отнесения кадра к положительному или отрицательному классу. Для контроля согласованности разметки часть
кадров размечается несколькими специалистами; по этим данным оценивается межэкспертное согласие. При недостаточном уровне согласия регламент
разметки корректируется, а противоречивые примеры исключаются или обсуждаются отдельно. Такое построение процесса разметки уменьшает долю
систематических ошибок в обучающих данных и позволяет более корректно
интерпретировать результаты сравнения алгоритмов.
С точки зрения программной архитектуры система распознавания рассматривается как компонент более крупного программно-аппаратного комплекса. Это определяет дополнительные требования к интерфейсу и журналированию. Алгоритм должен предоставлять возможность регистрировать
свои решения вместе с диагностической информацией: значениями внутренних метрик, идентификаторами моделей и параметров, версиями обучающих
выборок. Такая информация необходима для воспроизводимости результатов и последующего аудита качества. В условиях эксплуатации это позволяет
анализировать редкие ошибки и принимать решения о переобучении модели
или обновлении программного обеспечения.
18
Постановка задачи включает также ограничения на объём используемых ресурсов памяти и хранилища. Для классических методов эти ограничения связаны, прежде всего, с размером матрицы обучающих примеров и
параметров классификатора; для нейронных сетей — с объёмом весов, промежуточных карт признаков и служебных структур. При выборе архитектуры
модели и размера мини-пакетов обучения учитывается объём оперативной памяти целевой платформы. Это позволяет заранее исключить конфигурации,
которые формально удовлетворяют требованиям по качеству, но не могут
быть реализованы на выбранном оборудовании.
2.2
Архитектура решения и вычислительный конвейер
Архитектура программно-алгоритмического решения разрабатывается
с учётом необходимости поддерживать два альтернативных подхода к распознаванию светофоров: классический вариант на основе дескриптора признаков и статистического классификатора и нейросетевой вариант на основе
сверточной сети. При этом пользователю системы и внешним подсистемам
должно быть безразлично, какая конкретно модель используется внутри, поэтому основным принципом проектирования является разделение на уровни
и чёткое определение интерфейсов между ними.
В верхнем уровне архитектуры можно выделить три блока: модуль
управления экспериментами, модуль подготовки данных и модуль моделей.
Модуль управления экспериментами отвечает за чтение конфигурационных
файлов, запуск нужных сценариев обучения и тестирования, а также за сбор и
сохранение результатов. Модуль подготовки данных реализует операции чтения изображений с диска, применения предобработки и аугментаций, формирования мини-пакетов для обучения и подачи их в модуль моделей. Модуль
моделей содержит конкретные реализации алгоритмов, которые принимают
на вход нормализованные изображения и возвращают численные оценки принадлежности к классу «светофор присутствует».
Внутри модуля подготовки данных реализуется конвейер обработки,
разделённый на несколько шагов. Сначала происходит чтение списка файлов и их служебных атрибутов из заранее сформированного описания набора
данных. Затем на каждой итерации по этому списку выбираются изображения, соответствующие текущему режиму работы (обучение, валидация или
19
тестирование). Для выбранного изображения выполняется загрузка из файла, приведение к требуемому разрешению и цветовому пространству, а также
нормализация значений яркости. На этапе обучения дополнительно применяются аугментации, причём для каждой эпохи обучения может генерироваться
новая последовательность преобразований, что снижает риск переобучения
моделей к конкретным комбинациям параметров аугментации.
Результатом работы модуля подготовки данных является поток минипакетов — небольших групп изображений и их меток, которые последовательно передаются в модуль моделей. Размер мини-пакета является важным
параметром, влияющим одновременно на скорость обучения и стабильность
оценок градиентов в нейросетевых методах. В классических методах он определяет, сколько примеров обрабатывается за один вызов процедур обучения
классификатора. В реализации предусмотрена возможность конфигурировать
размер мини-пакета через внешний файл настроек, что позволяет адаптировать систему к ограниченным вычислительным ресурсам.
Модуль моделей в общем случае реализует интерфейс, включающий три
ключевые операции: обучение, валидацию и инференс (применение обученной модели к новым данным. В классическом варианте HOG + SVM обучение
включает поочередное вычисление дескриптора для каждого изображения
обучающей выборки и последующее построение классификатора на полученных векторах признаков. Реализация организована так, чтобы вычисление дескрипторов могло быть повторно использовано: промежуточные результаты
при необходимости сохраняются на диск, что особенно важно при переборе
нескольких наборов гиперпараметров. При инференсе классическая модель
сначала вычисляет дескриптор для нового кадра, затем применяет обученный классификатор и возвращает либо бинарное решение, либо расстояние
до разделяющей гиперплоскости. Решающее правило можно записать в виде
fSVM (I) = I wT xHOG (I) − b ≥ 0 ,
(16)
где xHOG (I) — вектор признаков, w и b — параметры классификатора, а I{·}
— индикаторная функция.
Для нейросетевого варианта модуль моделей реализует обучение с использованием оптимизатора стохастического градиентного спуска. На каждом шаге мини-пакет изображений пропускается через слои сети, вычисляется значение функции потерь, после чего выполняется обратное распростране20
ние ошибки и обновление параметров. В процессе обучения отслеживаются
значения функции потерь и метрик на валидационной выборке; на основе
этих значений принимаются решения об остановке обучения и выборе лучшей версии модели. Для этого используется механизм контрольных точек:
после каждой эпохи обучения сохраняется копия параметров сети, если значение целевой метрики на валидационной выборке улучшилось по сравнению
с ранее достигнутым. Применение обученной сети к новому изображению I
приводит к вычислению вероятности принадлежности кадра к положительному классу pθ (y = 1 | I) и последующему пороговому решению
fCNN (I) = I pθ (y = 1 | I) ≥ τ ,
(17)
где θ — параметры сети, а τ — порог, выбираемый по валидационной выборке.
Схема вычислительного конвейера для обоих подходов организована
таким образом, чтобы различия между ними проявлялись только внутри модуля моделей. Во всех остальных частях системы используется единый набор
структур данных и протоколов взаимодействия. Например, независимо от
типа модели результаты инференса представлены в виде вероятностей принадлежности кадра к положительному классу, а бинарные решения получаются сравнением этих вероятностей с настраиваемым порогом. Это позволяет реализовать общую подсистему вычисления метрик качества, построения
отчётных таблиц и визуализации примеров правильной и ошибочной классификации.
Важным элементом архитектуры является подсистема конфигурации и
логирования. Все параметры, влияющие на ход экспериментов, выносятся в
конфигурационные файлы: тип выбираемой модели, значения гиперпараметров, пути к наборам данных, размер мини-пакета, количество эпох обучения,
параметры аугментаций. При запуске каждого эксперимента текущее состояние конфигурации сохраняется вместе с результатами, что обеспечивает возможность полного воспроизведения эксперимента в будущем. Логирование
включает регистрацию этапов обучения, значений функции потерь и метрик,
а также информации о времени выполнения. Журналы могут анализироваться отдельно для поиска узких мест в производительности и для диагностики
нестабильности обучения.
На уровне интеграции с внешними системами архитектура предусматривает наличие интерфейса прикладного программирования, через который
21
другие компоненты могут использовать обученную модель для обработки
отдельных кадров или последовательностей изображений. Этот интерфейс
может быть реализован в виде библиотеки, подключаемой к программному
обеспечению бортовой системы, или в виде сетевого сервиса, доступного по
протоколу удалённого вызова процедур. В обоих случаях интерфейс должен предоставлять средство инициализации модели, загрузки необходимых
параметров, передачи входных данных и получения результатов в формате,
пригодном для включения в дальнейшие алгоритмы управления движением.
Отдельный аспект архитектуры связан с возможностью расширения системы за счёт добавления новых методов. Для этого модуль моделей реализуется в виде набора классов, наследующих общий абстрактный базовый класс,
определяющий интерфейсы обучения, валидации и инференса. Добавление
нового метода сводится к реализации конкретного класса, который описывает внутреннюю структуру модели и использует уже существующую инфраструктуру подготовки данных и логирования. Такой подход уменьшает риск
дублирования кода и облегчает проведение сравнительных экспериментов,
поскольку все методы автоматически включаются в общий контур измерения
метрик и формирования отчётов.
Архитектура решения предусматривает поддержку различных режимов работы: исследовательского и эксплуатационного. В исследовательском
режиме акцент делается на удобстве проведения экспериментов, гибкости
настройки и полноте собираемой статистики. Здесь допустимо использование дополнительных диагностических выводов, сохранение промежуточных
результатов и выполнение ресурсоёмких процедур анализа ошибок. В эксплуатационном режиме основным критерием становится предсказуемость
времени обработки и минимизация зависимостей. Поэтому в этом режиме
могут отключаться аугментации и часть диагностических функций, а модель
загружается в заранее оптимизированном виде. Чёткое разделение режимов
позволяет использовать единый код в разных контекстах, не жертвуя ни качеством экспериментов, ни требованиями к производительности в реальных
системах.
22
2.3
Программная реализация
Программная реализация прототипа системы распознавания наличия
светофора выполнена на языке Python, что обусловлено развитой экосистемой
библиотек для обработки изображений и реализации алгоритмов машинного
обучения. Выбор конкретных библиотек определяется требованиями к функциональности и производительности. Для работы с изображениями используются инструменты, обеспечивающие загрузку файлов в распространённых
форматах, изменение размеров и преобразование цветовых пространств, а
также базовые операции фильтрации. Для реализации классических методов
применяется библиотека, предоставляющая готовые реализации дескриптора градиентов и метода опорных векторов. Нейросетевая часть строится на
основе одного из современных фреймворков глубокого обучения, поддерживающего вычисления как на центральном процессоре, так и на графическом
ускорителе.
Структура программного кода организована модульно. Выделяются
несколько основных пакетов: модуль конфигурации, модуль работы с данными, модуль моделей, модуль обучения и оценки, а также вспомогательные
модули для логирования и визуализации. Модуль конфигурации отвечает за
чтение параметров из файлов формата, удобного для человека (например,
YAML или JSON), и предоставление единой точки доступа к этим параметрам другим частям системы. Это позволяет изменять набор используемых
моделей, пути к данным и значения гиперпараметров без изменения исходного кода.
Модуль работы с данными включает классы-обёртки над набором изображений, реализующие стандартный интерфейс итератора. Каждый объект
такого класса умеет возвращать по запросу отдельные элементы выборки,
применяя к ним предобработку и аугментации. Реализация учитывает необходимость эффективной работы с файловой системой: предусмотрен ленивый
доступ к изображениям, при котором данные считываются с диска только в
момент использования, а наиболее часто используемые файлы могут кэшироваться в памяти. Это особенно важно при обучении нейросетевых моделей на
больших выборках, когда полный набор данных не помещается в оперативную
память.
23
Модуль моделей реализует абстракции для двух рассматриваемых подходов. Для классической схемы определён класс, инкапсулирующий вычисление дескриптора признаков и обучение классификатора SVM. Он предоставляет методы для обучения по обучающей выборке, сохранения полученных
параметров на диск и загрузки ранее обученной модели. Для нейросетевого
подхода реализуется класс, наследующий базовые механизмы соответствующего фреймворка. В конструкторе класса создаётся архитектура сети: задаётся последовательность свёрточных, подвыборочных и полносвязных слоёв,
функции активации и слой, возвращающий вероятность принадлежности к
положительному классу.
Модуль обучения и оценки содержит процедуры, организующие процесс эксперимента. Для каждого запуска формируется объект, отвечающий
за полный цикл: загрузку конфигурации, инициализацию генераторов данных,
создание или загрузку модели, проведение обучения, вычисление метрик на
валидационной и тестовой выборках и сохранение результатов. В процессе
обучения реализуется механизм ранней остановки, основанный на динамике
значения целевой метрики на валидационной выборке: если в течение заданного числа эпох улучшения не наблюдается, обучение прекращается, а в
качестве итоговой принимается модель, показавшая лучший результат ранее.
Особое внимание уделяется воспроизводимости результатов. Для этого в начале каждого запуска фиксируются значения генераторов случайных
чисел, используемых как в библиотеке глубинного обучения, так и в стандартных средствах языка. Если аппаратная платформа поддерживает детерминированные варианты операций на графическом ускорителе, они включаются
на этапе инициализации фреймворка. Дополнительно в каталог результатов
сохраняется полная копия файла конфигурации и информация о версии программного обеспечения и используемых библиотек. Такой подход позволяет
при необходимости восстановить исходные условия эксперимента и проверить корректность всех полученных выводов.
Важным элементом программной реализации является система логирования. На протяжении обучения и тестирования в лог-файлы записываются
значения функции потерь и метрик качества по эпохам, сообщения о начале
и завершении ключевых этапов, сведения об обнаруженных ошибках. Логи
имеют структурированный формат, что упрощает их последующую автоматизированную обработку и визуализацию. При необходимости логирование
24
может быть дополнено сохранением значений внутренних активаций сети или
промежуточных карт признаков для отдельных изображений, что полезно при
анализе причин ошибочных решений.
Для удобства анализа результатов предусмотрены средства визуализации. Реализуется возможность отображать примеры правильно классифицированных и ошибочных кадров с наложением вспомогательной информации:
вероятности принадлежности к положительному классу, идентификатора используемой модели, принадлежности кадра к той или иной подвыборке данных. В случае использования нейросетевой модели могут строиться карты
значимости, показывающие, какие области изображения в наибольшей степени влияют на решение. Это позволяет оценить, действительно ли модель
опирается на структуру светофора, а не на случайные корреляции в фоне.
При реализации интерфейса для последующего включения модели в
состав внешних систем используется адаптерный слой. Он предоставляет
простую функцию или класс с минимальным числом зависимостей, который может быть импортирован в другое программное обеспечение. В этом
слое скрываются все детали работы с конфигурацией, загрузкой параметров
и выбором вычислительного устройства. Для развёртывания в виде сетевого
сервиса может быть использован лёгкий веб-фреймворк, позволяющий обрабатывать запросы по протоколу HTTP и возвращать результаты в машинноориентированном формате, например JSON.
Программная реализация предусматривает обработку ошибок и исключительных ситуаций. При невозможности загрузки изображения, несоответствии формата файла или отсутствии необходимых параметров конфигурации система не должна завершаться аварийно без пояснения причин. Вместо
этого генерируются осмысленные сообщения об ошибках, которые фиксируются в логах и, при необходимости, выводятся пользователю. В тестовом
режиме допускается прерывание выполнения при критических ошибках разметки или конфигурации, тогда как в эксплуатационном режиме предпочтительно пропускать единичные некорректные объекты, продолжая обработку
остальных данных. Такой подход повышает надёжность системы и облегчает
её интеграцию в реальные программно-аппаратные комплексы.
25
ОЦЕНКА ЭФФЕКТИВНОСТИ РАЗРАБОТАННОГО МЕТОДА
3.1
Метрики качества
Оценка качества алгоритмов распознавания наличия светофора опирается на стандартный аппарат бинарной классификации. Для каждого изображения тестовой выборки известно правильное значение метки: наличие или
отсутствие светофора в кадре. Алгоритм, в свою очередь, выдаёт либо бинарное решение, либо непрерывную оценку уверенности в принадлежности
кадра к положительному классу. Сопоставляя истинные метки и решения
алгоритма, можно сформировать совокупность элементарных исходов, на основе которых рассчитываются числовые показатели качества.
Рассмотрим совокупность исходов в виде матрицы ошибок. Введём обозначения: T P — число верных положительных решений, T N — число верных
отрицательных решений, F P — число ложноположительных решений и F N
— число ложноотрицательных решений. Тогда общее число рассмотренных
примеров N определяется соотношением
N = T P + T N + F P + F N.
(18)
Каждая комбинация значений отражает определённый тип поведения алгоритма и имеет различную практическую значимость.
Ложноотрицательное решение означает пропуск светофора, что потенциально может привести к нарушению правил дорожного движения и созданию опасной ситуации. Ложноположительное решение, напротив, описывает
ситуацию, когда система считает, что в кадре есть светофор, хотя на самом
деле это, например, фонарь или светящаяся вывеска. Такое поведение менее
критично с точки зрения безопасности, но приводит к ложным предупреждениям и снижению доверия к системе. Поэтому при анализе качества важно
не только общее количество ошибок, но и их распределение по типам.
Наиболее простой и интуитивно понятной метрикой является общая
доля правильных решений (Accuracy), определяемая как
Accuracy =
TP + TN
.
TP + TN + FP + FN
26
(19)
Однако в условиях дисбаланса классов, когда число кадров без светофора существенно превышает число кадров с объектом, эта метрика может давать завышенную оценку качества. Алгоритм, почти всегда отвечающий «светофора
нет», покажет высокую долю правильных решений только за счёт преобладания отрицательных примеров, хотя его практическая полезность будет крайне
низкой. Поэтому Accuracy в данной работе используется лишь в сочетании с
другими показателями.
Для более детального анализа вводятся метрики, отдельно характеризующие поведение алгоритма на положительном классе. Полнота обнаружения
(Recall) показывает, какая доля всех реально присутствующих в кадре светофоров была корректно обнаружена системой:
Recall =
TP
.
TP + FN
(20)
Высокая полнота соответствует малому числу пропусков объектов, то есть
малому числу ложноотрицательных решений. В контексте задач безопасности
полнота играет ключевую роль, поскольку именно пропуск важных объектов
часто приводит к наибольшим рискам для пользователя системы.
Точность срабатываний (Precision) показывает, какой доле объявлений
о наличии светофора можно доверять:
Precision =
TP
.
TP + FP
(21)
Если алгоритм часто принимает кадры с фонарями или другими источниками света за светофоры, точность будет низкой, даже если полнота окажется
высокой. С практической точки зрения это означает, что система генерирует слишком много ложных предупреждений, что приводит к «утомлению
тревогой» и снижает готовность оператора реагировать на сигналы.
Для объединения информации о точности и полноте в одной величине
используется F1 -мера — гармоническое среднее этих двух метрик:
F1 = 2 ·
Precision · Recall
.
Precision + Recall
(22)
Она принимает высокие значения только в том случае, когда одновременно
высоки и точность, и полнота, и резко снижается при значительном дисбалансе между ними. В экспериментальной части работы F1 -мера используется
как основной числовой критерий сравнения различных вариантов алгоритма,
27
поскольку она отражает способность модели как избегать пропусков светофоров, так и не генерировать чрезмерное количество ложных срабатываний.
Поскольку реализуемые алгоритмы могут выдавать на выходе не только бинарные решения, но и вероятностные оценки, важным этапом является
выбор порога, разделяющего положительный и отрицательный классы. При
низком значении порога большинство кадров будет классифицироваться как
содержащие светофор, что увеличит полноту, но снизит точность. При высоком пороге ситуация обратная: уменьшится число ложных срабатываний, но
возрастёт риск пропустить реальные объекты. Для выбора порога используется валидационная выборка: для серии кандидатных значений порога рассчитываются метрики, после чего выбирается порог, обеспечивающий требуемый
компромисс или максимальное значение F1 -меры.
В дополнение к базовым метрикам в теории распознавания образов
широко применяются интегральные показатели, такие как площадь под характеристической кривой приёмника. В рамках настоящей работы основное
внимание уделяется метрикам, легко интерпретируемым с точки зрения практической эксплуатации системы поддержки водителя. Тем не менее при необходимости для каждой модели может быть построена зависимость полноты
от доли ложноположительных срабатываний при варьировании порога. Такая
кривая позволяет визуально оценить, в каких пределах возможно улучшить
одну характеристику, не допуская критического ухудшения другой.
Отдельный аспект методики оценки связан с неоднородностью тестовых
данных. Набор сцен включает дневные и ночные кадры, различные погодные
условия, различающееся расстояние до светофора и степень его окклюзии.
Если рассчитывать метрики только по всему набору тестовых данных, можно
получить усреднённые значения, скрывающие существенные различия поведения алгоритма в отдельных типах сцен. Поэтому помимо глобальных метрик вычисляются показатели для специализированных подвыборок: например отдельно для дневных и ночных сцен, для кадров с сильной окклюзией
и без неё. Сопоставление этих значений позволяет выявить ситуации, в которых алгоритм работает недостаточно надёжно и где требуется дальнейшая
доработка методов предобработки или архитектуры модели.
При интерпретации численных значений метрик необходимо учитывать
статистическую неопределённость оценок. Поскольку тестовая выборка имеет конечный размер, каждая метрика представляет собой оценку неизвестно28
го истинного параметра и подвержена случайным флуктуациям. Для крупных
выборок влияние этого фактора невелико, но при сравнении близких по качеству моделей он может сыграть заметную роль. В простейшем случае для
оценки разброса можно использовать бутстреп-метод: многократно формировать подвыборки из тестовых данных с возвращением и рассчитывать метрики
на каждой подвыборке. Полученное распределение значений позволяет построить доверительные интервалы и оценить, действительно ли наблюдаемое
превосходство одной модели над другой статистически значимо.
Таким образом, система метрик, используемая в работе, включает как
интегральную оценку доли правильных решений, так и более детальные показатели, отражающие баланс между пропусками светофоров и ложными срабатываниями. Выбор именно этих метрик обусловлен как традициями теории
распознавания образов, так и требованиями к практической эксплуатации
системы в составе комплекса поддержки принятия решений при управлении
транспортным средством.
3.2
План экспериментов
План экспериментальных исследований формируется с учётом необходимости сравнить два подхода к решению задачи распознавания наличия
светофора и одновременно оценить влияние ключевых проектных решений
внутри каждого подхода. Для этого эксперименты структурируются в виде последовательности серий, отличающихся используемыми моделями, параметрами обучения и набором аугментаций. Во всех сериях сохраняются
единые правила подготовки данных и вычисления метрик, что позволяет сопоставлять полученные результаты на общей основе.
В первой серии экспериментов изучается классический подход на основе дескриптора признаков и метода опорных векторов. На этом этапе фиксируется архитектура признакового описания: выбирается конфигурация дескриптора градиентов, включающая размер ячеек, число направлений в гистограмме, тип нормализации и размерность итогового вектора признаков.
Далее проводится перебор значений гиперпараметра регуляризации классификатора. Для каждого значения параметра выполняется обучение модели на
обучающей выборке и оценка качества на валидационной части. В результа-
29
те формируется зависимость метрик от значения гиперпараметра, на основе
которой выбирается оптимальная конфигурация классического алгоритма.
Вторая серия направлена на исследование базовой сверточной нейронной сети без использования аугментаций. На данном этапе фиксируется
структура сети: число свёрточных блоков, размеры фильтров, наличие и тип
слоёв подвыборки, число нейронов в полносвязных слоях. Проводится подбор параметров обучения — скорости градиентного спуска, коэффициентов
регуляризации, размера мини-пакета, числа эпох. Для каждой комбинации
параметров сеть обучается на обучающей выборке, а после каждой эпохи
вычисляются метрики на валидационной части. Результаты заносятся в таблицу, на основе которой выбирается конфигурация, обеспечивающая наилучшее значение F1 -меры при соблюдении ограничений по времени обучения и
устойчивости к переобучению.
Третья серия экспериментов посвящена оценке влияния аугментаций
данных на качество нейросетевой модели. В этом случае архитектура сети
и основные параметры обучения фиксируются на значениях, найденных во
второй серии, а варьируются параметры генератора аугментаций: вероятности применения отдельных операций, диапазоны изменения яркости и контрастности, максимальный угол поворота, сила добавляемого шума. Рассматриваются несколько конфигураций, различающихся степенью агрессивности
аугментаций. Для каждой конфигурации проводится полный цикл обучения и
последующая оценка качества на валидационной и тестовой выборках. Сравнение полученных результатов позволяет сделать вывод о том, какие типы
аугментаций наиболее полезны для повышения обобщающей способности
модели в рассматриваемой задаче.
Во всех сериях используется фиксированное разбиение набора данных
на обучающую, валидационную и тестовую части. Это разбиение выполняется один раз перед началом экспериментов и далее не изменяется. Такой
подход исключает возможность косвенного подбора гиперпараметров по тестовой выборке и гарантирует, что все модели оцениваются на одном и том
же наборе изображений, не использовавшихся при обучении и настройке параметров. При необходимости проверки устойчивости результатов к выбору
конкретного разбиения может быть проведён дополнительный эксперимент
с альтернативным разбиением данных или с использованием перекрёстной
проверки на уровне видеороликов.
30
Особое внимание уделяется контролю времени выполнения. Для каждого варианта модели измеряется среднее время обработки одного изображения
в режиме инференса. Измерения проводятся отдельно для классического и
нейросетевого подходов на одной и той же аппаратной платформе. Для нейросетевой модели при наличии графического ускорителя фиксируется, использовалось ли устройство при обучении и инференсе. Полученные данные
сопоставляются с требованиями к реальному времени работы системы и позволяют оценить, насколько практично использование того или иного подхода
в условиях ограниченных вычислительных ресурсов.
Для повышения надёжности выводов каждая модель обучается несколько раз с разными начальными инициализациями параметров и, при необходимости, с различными последовательностями аугментаций. Это особенно
актуально для нейросетевых алгоритмов, чьи результаты могут заметно зависеть от начального состояния весов и случайного порядка предъявления
примеров. По итогам нескольких запусков рассчитываются средние значения метрик и их стандартные отклонения. Если разброс оказался велик, это
сигнализирует о нестабильности обучения и необходимости корректировки
архитектуры или гиперпараметров.
Результаты всех экспериментов систематизируются в виде таблиц и
графиков. Для каждой серии составляется таблица, в строках которой указаны значения ключевых гиперпараметров, а в столбцах — значения метрик
качества на валидационной и тестовой выборках, а также время обработки
изображения. Дополнительно строятся графики зависимости метрик от числа
эпох обучения, позволяющие визуально оценить динамику обучения и наличие признаков переобучения. Для наглядной иллюстрации работы алгоритмов
формируется отдельный набор изображений, на которых отображаются решения разных моделей: это позволяет сопоставлять численные показатели с
качественными особенностями поведения системы.
Дополнительным элементом плана является анализ чувствительности
результатов к изменениям гиперпараметров. После выбора базовых конфигураций для классической и нейросетевой моделей проводится серия локальных
экспериментов, в которых варьируется один параметр при фиксированных
значениях остальных. Например, для нейросетевой модели изменяется размер мини-пакета, коэффициент регуляризации или интенсивность отдельного
вида аугментации. Полученные зависимости метрик от значения параметра
31
позволяют выявить области, в которых модель ведёт себя устойчиво, и области, где небольшое изменение настройки приводит к существенному падению
качества. Такая информация важна при последующем переносе алгоритма на
другие платформы или наборы данных, когда точное воспроизведение исходных условий может быть затруднено.
Отдельно планируется анализ работы моделей на специализированных
подвыборках данных. Для этого заранее формируются списки изображений,
соответствующие различным сценариям эксплуатации: ночное время, неблагоприятные погодные условия, сильная окклюзия светофора, наличие в кадре
ярких фонарей и других источников света. После обучения каждой модели на
этих подвыборках независимо рассчитываются метрики качества и сравниваются с глобальными значениями. Такое сравнение позволяет сделать вывод
о том, в каких условиях классический подход оказывается предпочтительнее нейросетевого, а где преимущества глубокой сети становятся наиболее
выраженными. При необходимости для проблемных сценариев могут быть
запланированы дополнительные эксперименты с модифицированными архитектурами или специальными приёмами предобработки изображений.
Таким образом, план экспериментов обеспечивает последовательное и
контролируемое сравнение классического и нейросетевого подходов, а также
исследование влияния отдельных проектных решений на итоговое качество
распознавания светофоров. Структурирование экспериментов по сериям, использование фиксированного разбиения данных и повторных запусков с различными инициализациями создают необходимые предпосылки для получения воспроизводимых и интерпретируемых результатов.
3.3
Результаты
Полученные в ходе экспериментов результаты позволяют сравнить эффективность классического подхода и нейросетевой модели, а также оценить
влияние аугментаций данных на качество распознавания наличия светофора. Для каждой из рассмотренных конфигураций были вычислены значения
метрик на тестовой выборке, не использовавшейся при обучении и подборе
параметров. Кроме того, для нейросетевых моделей проводились несколько
запусков с различными начальными инициализациями, после чего метрики
32
усреднялись; разброс значений оказался невелик, что свидетельствует о стабильности процесса обучения при выбранных настройках.
Анализ классического варианта на основе дескриптора градиентов и
метода опорных векторов показал, что уже сравнительно простая модель
способна обеспечить приемлемое качество распознавания. При оптимальных
значениях гиперпараметров достигаются значения общей доли правильных
решений и гармонического среднего точности и полноты, соответствующие
базовому уровню, который может служить ориентиром для сравнения с более
сложными методами. При этом характер ошибок классической модели носит
систематический характер: наиболее часто алгоритм ошибается в сценах с
малым угловым размером светофора, когда объект занимает лишь несколько
десятков пикселей, а также в ночных кадрах, где яркость корпуса и фона
оказывается близкой.
Переход к сверточной нейронной сети без использования аугментаций
приводит к заметному улучшению всех основных метрик. В частности, возрастает полнота обнаружения светофоров, то есть уменьшается число случаев,
когда объект остаётся незамеченным. Это объясняется способностью сети
формировать более богатое признаковое представление, учитывающее пространственный контекст вокруг светофора и сложные комбинации локальных
структур. В отличие от классического дескриптора, который фиксирует заранее заданный набор признаков, сеть в процессе обучения адаптирует фильтры
под статистику конкретного набора данных, что особенно полезно в задачах
с разнообразным фоном и различными типами освещения.
Даже без аугментаций нейросетевая модель демонстрирует определённую чувствительность к вариативности условий. При анализе результатов
на специализированных подвыборках данных обнаруживается, что качество
распознавания несколько снижается на ночных сценах и при сильной окклюзии светофора. Хотя по абсолютным значениям метрик нейросетевая модель
по-прежнему превосходит классическую, отличия между дневными и ночными сценами остаются заметными. Это указывает на необходимость дополнительных мер по увеличению разнообразия обучающих примеров и имитации
сложных условий съёмки.
Введение аугментаций данных позволяет существенно смягчить указанные ограничения. При использовании умеренно агрессивной конфигурации
аугментаций наблюдается рост как точности, так и полноты по сравнению
33
с базовой нейросетевой моделью без аугментаций. Особенно заметно улучшается качество на подвыборках с неблагоприятными условиями: снижается
число ложных срабатываний на ярких фонарях и других источниках света,
уменьшается доля пропущенных светофоров при изменениях освещённости
и частичной окклюзии. Это подтверждает ожидаемый эффект аугментаций
как средства регуляризации и расширения обучающей выборки за счёт синтетического моделирования вариативности сцены.
Сравнение моделей по времени обработки кадра показывает, что классический подход обладает преимуществом в вычислительной эффективности
при работе на центральном процессоре. Вычисление дескриптора и применение линейного классификатора занимает существенно меньше времени, чем
прохождение кадра через несколько свёрточных слоёв нейросетевой модели.
Однако при наличии графического ускорителя разрыв во времени обработки существенно сокращается, и нейросетевая модель становится пригодной
для использования в системах, работающих близко к реальному времени. Таким образом, выбор подхода зависит от доступных аппаратных ресурсов и
требований к задержке обработки.
Численные значения метрик следует интерпретировать с учётом характеристик тестовой выборки. Доля кадров с ночными сценами и сложными погодными условиями может быть ниже, чем доля дневных сцен, что приводит
к определённому «сглаживанию» влияния сложных случаев на глобальные
показатели. Поэтому наряду с усреднёнными значениями метрик в работе
анализируются результаты на специализированных подвыборках, где доля
сложных сцен заведомо выше. В этих условиях преимущество нейросетевой
модели с аугментациями над классическим подходом проявляется ещё более
отчётливо.
Отдельного рассмотрения заслуживает структура ошибок каждой модели. Для классической схемы типичными ложноположительными решениями являются ситуации, когда вертикально ориентированные яркие объекты,
такие как фонари или элементы рекламных конструкций, формируют конфигурацию градиентов, похожую на силуэт светофора. Нейросетевая модель
реже допускает такие ошибки, поскольку учитывает более широкий контекст
и может опираться на форму опоры, расположение объекта относительно
дорожного полотна и других элементов сцены. Ложноотрицательные решения классической модели часто связаны с тем, что светофор представлен в
34
кадре в виде небольшого числа пикселей, и дескриптор градиентов не успевает сформировать достаточно выразительное представление. Нейросетевая
модель частично решает эту проблему за счёт многоуровневой обработки
изображения и способности выделять высокоуровневые признаки даже при
ограниченном размере объекта.
Анализ карт значимости, построенных для нейросетевой модели, показывает, что наибольший вклад в решение вносят области изображения, соответствующие корпусу и световым секциям светофора, а также близлежащим
элементам опоры. Это свидетельствует о корректной ориентации внимания
модели на релевантные части сцены, а не на случайные фоновые корреляции. В некоторых случаях, однако, сеть обращает внимание на яркие блики
или отражения, что приводит к ложноположительным решениям. Такие примеры служат основой для дальнейшей работы по улучшению предобработки
изображений и, при необходимости, для включения в обучающую выборку
дополнительных примеров с подобными артефактами.
35
ЗАКЛЮЧЕНИЕ
В ходе выполнения данной работы были решены следующие задачи:
— сформулирована математическая постановка задачи распознавания
наличия светофора на изображении дорожной сцены и определены
критерии качества принимаемых решений;
— выполнен анализ классических методов выделения признаков и классификации, выбрана базовая комбинация гистограммы направленных
градиентов (HOG) и метода опорных векторов (SVM) для дальнейшего сопоставления;
— выполнен анализ методов на основе сверточных нейронных сетей, выбрана архитектура CNN-классификатора, пригодная для бинарного
распознавания наличия светофора;
— сформулированы требования к системе, описаны структура набора
данных, а также процедуры предобработки и аугментации изображений;
— разработан и реализован программный прототип системы распознавания наличия светофора на языке Python с использованием библиотек OpenCV, scikit-learn и фреймворка глубокого обучения;
— проведена серия вычислительных экспериментов, получены количественные оценки метрик Accuracy, Precision, Recall и F1 , а также
сформулированы выводы о сравнительной эффективности классического подхода HOG + SVM и сверточной нейронной сети.
Таким образом, поставленная цель исследования достигнута.
36
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
1. CockroachDB Documentation [Электронный ресурс]. — URL: https://
www.cockroachlabs.com/docs/ (дата обр. 10.11.2023).
2. Журавлёв Ю.И. Об алгебраическом подходе к решению задач распознавания и классификации // Теория распознавания. — Наука, 1978. — С. 5—
68.
3. Youzi X., Tian Z., Yu J., [et al.]. A review of object detection based on deep
learning // Multimedia Tools and Applications. — 2020. — Sept. — Vol. 79.
4. Alfalou A., Jridi M., Kortli Y., Atri M. A comparative study of CFs, LBP, HOG,
SIFT, SURF, and BRIEF for security and face recognition. — 04/2018.
5. Evgeniou T., Pontil M. Support Vector Machines: Theory and Applications //.
Vol. 2049. — 09/2001. — P. 249–257.
6. Sun Y., Sun Z., Chen W. The evolution of object detection methods // Engineering Applications of Artificial Intelligence. — 2024. — Vol. 133. — P. 108458.
7. Girshick R., Donahue J., Darrell T., Malik J. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation // Proceedings of the 2014
IEEE Conference on Computer Vision and Pattern Recognition. — USA :
IEEE Computer Society, 2014. — P. 580–587.
8. Ren S., He K., Girshick R., Sun J. Faster R-CNN: towards real-time object
detection with region proposal networks // Proceedings of the 28th International Conference on Neural Information Processing Systems - Volume 1. —
Montreal, Canada : MIT Press, 2015. — P. 91–99.
9. Liu W., Anguelov D., Erhan D., [et al.]. SSD: Single Shot MultiBox Detector //.
Vol. 9905. — 10/2016. — P. 21–37.
37
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )