Реферат отчет 47 страницы, 30 рисунков, 4 таблицы, 27 источников Ключевые слова компьютерное зрение, обработка изображений, метод
Скачать 3.07 Mb.
|
K называют коэффициентом Калмана. Идея фильтрации состоит в том, чтобы подобрать коэффициент таким образом, что ошибка: 𝑒 𝑘+1 = 𝑥 𝑘+1 − 𝑥̃ 𝑘+1 достигает своего минимального значения. Т.е. 𝐸(𝑒 𝑘+1 2 ) → 𝑚𝑖𝑛. При 𝐴 𝑘 = 𝐵 𝑘 = 𝐶 𝑘 = 𝑬 можно показать, что: 𝐸(𝑒 𝑘+1 2 ) = (1 − 𝑲 𝑘+1 ) 2 (𝐸𝑒 𝑘 2 + 𝜎 𝜉 2 ) + 𝑲 𝑘+1 2 𝜎 𝜂 2 Минимум данной функции достигается при K: 𝑲 𝑘+1 = 𝐸𝑒 𝑘 2 + 𝜎 𝜉 2 𝐸𝑒 𝑘 2 + 𝜎 𝜉 2 + 𝜎 𝜂 2 Среднее значение квадрата ошибки может быть записано в виде: 𝐸(𝑒 𝑘+1 2 ) = 𝜎 𝜂 2 (𝐸𝑒 𝑘 2 + 𝜎 𝜉 2 ) 𝐸𝑒 𝑘 2 + 𝜎 𝜉 2 + 𝜎 𝜂 2 (4), при этом 𝑲 𝑘+1 = 𝐸(𝑒 𝑘+1 2 ) 𝜎 𝜂 2 (5) Формулы 4 позволяют итерационно вычислять среднее значение квадрата ошибки и коэффициент Калмана на шаге k при известных дисперсиях ошибок системы. Формула 3 позволяет вычислять приближенную оценку вектора состояния системы. ГЛАВА 2. ОПИСАНИЕ ПРОЦЕДУРЫ ИССЛЕДОВАНИЯ 2.1. Построение выборки изображений для обучения и тестирования классификатора В задаче машинного обучения качестве начальных данных рассматриваются два набора изображений, снабженных дополнительной информацией. Первый набор предназначен для обучения классификатора, второй – для тестирования его работы в целях оценки и оптимизации применяемого алгоритма. Для определения структуры начальных данных можно обратиться к аналогичной задаче на автомобильной дороге. Для тестирования классификаторов систем автоматического содействия водителю (ADAS) [25, 27] применяются различные наборы изображений. Одним из наиболее востребованных таких наборов является «KITTI Object Detection Evaluation 2012» [13]. На данный момент он содержит 7481 обучающее и 7518 тестовых изображений. На этих изображениях в общей сложности выделено более 80 000 объектов различной природы. Для объекта указаны данные его расположения и оценка ориентации и высоты относительно дороги. «CBCL StreetScenes Challenge Framework» [10] содержит более скромный набор изображений: около 3500. На них выделено около 7500 объектов. К сожалению, не удалось найти подобных аналогов, поэтому было решено создать собственный набор данных для обучения классификатора. На железнодорожном транспорте создать подобную обучающую выборку в короткие сроки достаточно сложно. Во-первых, по причине отсутствия достаточного количества начальных, неразмеченных изображений. Во-вторых, закрытость организаций, осуществляющих железнодорожные перевозки не позволяет допустить постороннего человека к ведению фото-, видеосъемки из кабины машиниста, в то время как ракурс съемки имеет определяющее значение, так как классификатор, обученный для работы под одним ракурсом съемки может оказаться полностью неприменим для обработки изображений, снятых под другим ракурсом. Так как построение набора начальных данных на основе реальной фото-, видеосъемки трудновыполнимо, то стоит обратиться к синтезированным и виртуальным данным. Так в статье «Video Games for Autonomous Driving» [12] рассматривается интересный подход сбора изображений: используются записи видеоигры Grand Theft Auto 5 (GTA 5). Данная видеоигра достаточно хорошо отвечает реальностям современного мира, дороги и дорожная инфраструктура проработаны с особым вниманием, а большой и разнообразный игровой мир позволяет найти интересующие объекты. Подобная способ построения начальной выборки существенно упрощает процесс работы над алгоритмом и позволяет создать демонстрационный образец без применения усилий по сбору изображений реального мира. В рамках данной работы для сбора изображений был применен симулятор железнодорожного транспорта Train Simulator [26], разработанный компанией Dovetail Games. 2.2. Обучение каскадного классификатора Виолы-Джонса Железнодорожные средств регулирования движения представлены различными типами знаков, светофором и семафоров. В качестве объектов интереса в данной работе рассмотрены следующие три вида: Знак ограничения скорости движения (жёлтый круг): Рисунок 6 Знак ограничения скорости движения Знаки приближения к железнодорожному переезду. Рисунок 7 Знак приближения к ж/д переезду Железнодорожный светофор немецкой транспортной сети типа H\V (был выбран в связи с тем, что симулятор не поддерживает железнодорожные светофоры, применяемые в России). Рисунок 8 Железнодорожный светофор Все три средства регулирования были выбраны из разных категорий с целью исследования различных способов детектирования. Для каждого из них была подготовлена обучающая выборка и построен каскадный классификатор Виолы-Джонса. Обучающая выборка включает: 1074 изображений, не содержащий объектов интереса; 525 изображений знака ограничения скорости; Рисунок 9 Пример изображений, использованных в процессе обучения 420 изображений знака железнодорожного переезда; Рисунок 10 Пример изображений, использованных в процессе обучения 327 изображений светофора. Рисунок 11 Пример изображений, использованных в процессе обучения Для увеличения объема обучающей выборки к начальным изображениям применялись преобразования вида: Добавление гауссовского шума; Добавление размытия изображения. Симулятор позволяет моделировать различные погодные условия, изменять время суток и сезон года. В обучающую выборку вошли изображения, сделанные при дневном и вечернем освещении; применялись эффекты дождя и снега. Ночные снимки были исключены из рассмотрения. Рисунок 12 Пример изображений, содержащего эффект снега Поскольку типы объектов интереса различны, а метод Виолы-Джонса предназначен для выделения общих особенностей, то было решено обучить три классификатора, каждый из которых отвечает за свой объект интереса. В процессе обучения использовалась библиотека OpenCV и приложения opencv_createsamples, opencv_traincascade and opencv_visualisation [21]. 2.3. Детектирование железнодорожной колеи для построения проекции изображения на трехмерное пространство В параграфе 1.4 были рассмотрены различные способы определения расстояния до объекта на изображении. Т.к. целью данной работы является проверка расположения средств железнодорожного регулирования, то возникает необходимость построения проекции плоскости рисунка на трехмерное пространство. Данную проекцию было решено строить при помощи определения плоскости железнодорожной колеи и расстояния до неё в различных точках изображения. Варианты ширины колеи и их распространение по странам приведены на рисунках 13, 14. Вводится несколько предположений: Железнодорожная колея непрерывна на расстоянии достаточном для построения плоскости. Предполагается постоянная ширина колеи. В структуре железнодорожной колей возможна механическая деформация. Так в статье [16] рассматривается анализ механических искривлений рельс в процессе эксплуатации. Искривление железнодорожной колеи на участках маневра не выходит за пределы области изображения. Искривление железнодорожной колеи на участках маневра не приводит к ситуации, при которой оба рельса расположены левее или правее оси камеры. Рисунок 13 Ширина ж/д колеи Рисунок 14 Распространение в мире Поиск железнодорожной колеи производится в два этапа: обработка изображения для выделения контура, применение метода Хафа для поиска прямых. Также возможно применение фильтра Калмана для минимизации шумов анализа системы. 2.3.1. Метод Кенни и его адаптация для выделения контуров на изображении Выделения контуров на изображении производится при помощи библиотеки OpenCV. Было проведено сравнение четырех различных способов выделения контуров: 1. Оригинальная реализация фильтра Кенни с применением функции Canny. Свертка с операторами Собеля: 𝐺 𝑥 и 𝐺 𝑦 дает информацию о приближенном значении горизонтальной и вертикальной компонент вектора градиента. Для каждой точки вычисляется приближенная магнитуда вектора градиента и выполняется её фильтрация по верхнему и нижнему пороговому значению. 2. Измененный метод Canny. В данной реализации отсутствует этап свертки с 𝐺 𝑦 , что позволяет избавиться от анализа горизонтальных границ. Логика двойной пороговой фильтрации сохранена, она применяется только к горизонтальной составляющей градиента. 3. Алгоритм, использующий свертку с оператором 𝐺 𝑥 и одноуровневый пороговый фильтр. Анализируются только вертикальные границы и проекция вектора градиента на ось x. 4. Свертка с операторами 𝐺 𝑥 и 𝐺 𝑦 с одноуровневой пороговой фильтрацией магнитуды градиента и дополнительным ограничением на его направление. Алгоритмы выделения границ приведены в Приложении В. 2.3.2. Применение метода Хафа и интерпретация его результатов Библиотека OpenCV содержит методы HoughLines (основан на оригинальном преоразовании Хафа) и HoughLinesP (вероятностное преобразование Хафа). Второй метод производит предварительное вычисление контрольных точек на изображении и вычисляет преобразование только для них, что позволяет уменьшить количество вычислений. Результатом работы данного метода является набор всевозможных прямых, найденных на изображении. На рисунке 15 приведен пример работы результата поиска прямых на изображении. Рисунок 15 Пример выделения прямых линий на изображении. Красным цветом отмечены результаты применения преобразования Хафа. Результаты преобразования необходимо отфильтровать по минимальной допустимой длине (предполагается, что рельс непрерывен и прямолинеен хотя бы на расстоянии большем, чем ширина колеи); выбрать только те линии, угол вектора направления которых, лежит в пределах ±30º от оси камеры; сгруппировать выделенные линии при условии, что расстояние между ними не более 5 пикселей. Дополнительно может быть проведена фильтрация при помощи определения расстояния от прямой до точки схода большинства выделенных прямых, подробно данный подход рассмотрен в работе [4]. После замены групп линий на направляющие прямые необходимо выбрать только те, что принадлежат рельсам. На данном шаге возможно ошибочное выделение: Контур соседних рельс, расположенных параллельно с теми, по которым движется состав; Внешней границы ж/д насыпи; Внешнего контура границы шпал; Дополнительных рельс в случае если на данном участке применяется 2 колеи различной ширины Рисунок 16 Возможные ситуации при поиске контура рельс Пользуясь предположением о том, что ось камеры всегда расположена между рельс, даже на участках маневра, введем условие: в качестве ж/д колеи будем выделять такие 2 линии, которые: Проходят через точку схода большинства линий, полученных после предварительной фильтрации. Направление линии не выходит за ограничение: ±30º от оси камеры. Линии расположены по разные стороны от вертикальной линии, расположенной по центру изображения (назовем её основным направлением). В качестве «рельса» определяются линии, выделенные контурным анализом, наиболее близкие к основному направлению. 2.3.3. Виды ошибок при выделении рельс. Применение фильтра Калмана Воспользуемся системой 2.2 из параграфа 1.7: { 𝑥 𝑘+1 = 𝑥 𝑘 + 𝑢 𝑘 + 𝜉 𝑘 𝑦 𝑘 = 𝑥 𝑘 + 𝜂 𝑘 Здесь 𝑥 𝑘 = ( 𝛼 𝑥1 𝛼 𝑥2 ) 𝑘 является двумерным вектором, первая компонента которого отвечает углу между осью камеры и правым рельсом, а вторая – между осью камеры и левым рельсом; 𝑢 𝑘 = ( 𝛼 𝑢1 𝛼 𝑢2 ) 𝑘 – вектор, содержащий информацию об изменении направления рельс на участке маневра; 𝑦 𝑘 = ( 𝛼 𝑦1 𝛼 𝑦2 ) 𝑘 – вектор наблюдения, т.е. направление рельс, полученное при помощи анализа изображения. k – номер кадра. В рассматриваемой задаче под внутренней ошибкой динамической системы 𝜉 𝑘 можно понимать различные воздействия на камеру в процессе движения поезда. К примеру, влияние инерции камеры в момент торможения и разгона или раскачивание состава при проезде по стыкам рельс. Под ошибкой измерения 𝜂 𝑘 будем понимать погрешности при работе алгоритма выделения направления рельс. Фильтр Калмана может быть применен в данной задаче, как способ сглаживания данных возмущений. 2.4. Построение плоскости по двум параллельным линиям и определение координат объекта интереса Метод Виолы-Джонса позволяет определить расположение объекта интереса на плоском снимке. Однако, в задаче диагностики актуальности инфраструктуры регулирования железнодорожного движения так же возникает вопрос определения координат найденного объекта. Для определения расположения объекта относительно камеры проведем вспомогательное построение плоскости, в которой расположены касательные прямые к рельсам. Затем спроецируем найденный объект на данную поверхность. На рисунке 17 приведен пример проекции знака ограничения скорости движения на поверхность земли. Красным цветом отмечены направляющие рельс и вспомогательные линии, соответствующие сетке координат земной поверхности. Горизонтальная белая линия соответствует середине кадра. Зеленые линии предназначены для определения расположения знака. Рисунок 17 Проекция выделенного объекта на поверхность земли Алгоритм определения координат: 1. Рассчитать высоту расположения объекта на снимке (будет рассмотрено ниже); 2. Определить точку X, соответствующую проекции объекта; 3. Построить линию, перпендикулярную оси камеры и определить точки B, C, D. 4. По расстоянию BC определить удаленность точки D согласно теории, описанной в разделе 1.4. 5. Зная AD и DX определить угол и расстояние AX – полярные координаты объекта относительно камеры. 6. Используя абсолютные координаты камеры и относительные полярные координаты объекта определить абсолютные координаты объекта интереса. Для вычисления высоты объекта интереса воспользуемся обобщенной теоремой Фалеса. Теорема: Параллельные прямые, пересекающие стороны угла, отсекают от сторон угла пропорциональные отрезки. Рисунок 18 Геометрическое представление теоремы Фалеса 𝐵 1 𝐵 2 𝐴 1 𝐴 2 = 𝐵 2 𝐵 3 𝐴 2 𝐴 3 Рассмотрим две различные ситуации: объект интереса находится выше уровня камеры (светофор), объект интереса находится ниже уровня камеры (ж/д знак). Рассмотрим ситуацию, при которой объект интереса находится выше уровня расположения камеры. На рисунке 19 приведен пример расчета высоты 𝐵 1 𝐷 1 объекта на снимке. Пусть 𝐵 2 𝐷 2 – реальная известная высота объекта. AH – высота расположения камеры. 𝐴𝐶 2 – линия, направленная вдоль оптической оси камеры, соответствующая горизонтальной белой линии на рисунке 17. По теореме Фалеса можно показать, что подобны следующие пары треугольников: 𝐴𝐵 2 𝐶 2 и 𝐴𝐵 1 𝐶 1 ; 𝐴𝐷 2 𝐶 2 и 𝐴𝐷 1 𝐶 1 ; 𝐴𝐷 2 𝐶 2 и 𝐴𝐷 1 𝐶 1 . При этом коэффициент подобия у всех пар совпадает и равен 𝐾 = 𝐵 2 𝐶 2 𝐵 1 𝐶 1 , где 𝐵 1 𝐶 1 – превышение объекта на снимке относительно уровня середины снимка. 𝐵 2 𝐶 2 = 𝐵 2 𝐷 2 − 𝐴𝐻 – фактическое, известное превышение объекта над уровнем камеры. Далее вычисляется 𝐶 1 𝐷 1 = С 2 𝐷 2 𝐾 = 𝐴𝐻 𝐾 , 𝐵 1 𝐷 1 = 𝐵 1 𝐶 1 + 𝐶 1 𝐷 1 Рисунок 19 Расположение объекта интереса выше уровня камеры В ситуации, при которой объект интереса находится ниже уровня камеры рассуждения аналогичны. Рисунок 20 Расположение объекта интереса ниже уровня камеры Необходимо найти отрезок 𝐵 1 𝐷 1 . Решение аналогично: 𝐵 2 𝐶 2 = 𝐴𝐻 − 𝐵 2 𝐷 2 𝐾 = 𝐵 2 𝐶 2 𝐵 1 𝐶 1 𝐶 1 𝐷 1 = С 2 𝐷 2 𝐾 = 𝐴𝐻 𝐾 𝐵 1 𝐷 1 = 𝐶 1 𝐷 1 − 𝐵 1 𝐶 1 2.5. Выбор области интереса в соответствие с формой железнодорожной колеи Информация, полученная при построении проекции плоского снимка на трехмерную плоскость, может быть использована при адаптивном выборе области интереса работы алгоритма. Рассмотрим процесс поиска объекта интереса на изображении. Алгоритм Виолы-Джонса достаточно быстро обрабатывает отдельные изображения, однако в зависимости от различных условий обучающих и тестовых изображений возможно увеличение ложных срабатываний (false positive). Можно воспользоваться информацией о расположении рельс и сократить область поиска. Так, к примеру, железнодорожные знаки ниже уровня кабины машиниста и при этом достаточно близко к колее, в связи с этим область интереса может быть уменьшена за счёт рассмотрения только нижней части изображения, также можно уменьшить ширину обрасти интереса. На рисунке 21 приведен пример ограничения для области поиска знака (красным цветом обозначена ж/д колея, зеленым – возможные области расположения знака, синим – найденный объект интереса). Рисунок 21 Пример ограничения области поиска ж/д знака Светофор, как правило, располагается выше уровня кабины машиниста, так же он может быть расположен непосредственно над ж/д путями, а не только рядом с ними. Пример ограничения области поиска светофора приведен на рисунке 22. Рисунок 22 Пример ограничения области поиска ж/д светофора В параграфе 2.3.2 мы определили термин основного направления и ввели предположение о том, что рельсы расположены по разные стороны от него. Данное предположение верно только в случае прямолинейного движения, либо при прохождении участка маневра с малым закруглением. На рисунке 23а рельсы обозначены красным цветом, а основное направление – синим. Начальное положение основного направления – центр изображения. В случае прохождения участка маневра может возникнуть ситуация, при которой оба рельса окажутся по одну сторону от основного направления (рисунок 23б, синяя линия слева). В такой ситуации имеет смысл изменить основное направления для увеличения применимости алгоритма. Новое расположение будет проходить через точку пересечения направляющих рельс, выделенных на предыдущем шаге (рисунок 23б, синяя линия справа). Максимальные границы применимости условий, описанных в параграфе 2.3.2, будут расширены до ситуации, при которой одна из направляющих будет расположена вертикально. а б Рисунок 23 Смещение основного направления при прохождении участка поворота (а – прямолинейное движение, б – участок маневра) 2.6. Вывод по главе Описанные методы можно представить в виде следующей диаграммы (рисунок 24). Пунктирная линия отображает процесс обратной связи, т.е. влияние результатов обработки кадра на процесс анализа следующего. Для каждого кадра: 1. Выбирается область интереса в соответствии с информацией, полученной с предыдущего кадра; 2. Дальнейшие вычисления можно проводить параллельно 2.1. Поиск объекта интереса при помощи алгоритма Виолы-Джонса; 2.2. Контурный анализ и преобразование Хафа для выделения рельс на изображении; 3. По результатам вычисления расположения поверхности земли на изображении выполняется: 3.1. Построение области интереса для обработки следующего кадра; 3.2. Вычисление расположения объектов, найденных методом Виолы- Джонса. Рисунок 24 Диаграмма процесса обработки отдельного кадра видео Применение измененной области интереса Получение кадра видео Контурный анализ (фильтр Кенни) Выделение прямых (преобразование Хафа) Моделирование расположения поверхности земли Определение расстояния до объекта изменение основного направления выделение области интереса Поиск объекта интереса (метод Виолы-Джонса) ГЛАВА 3. РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ 3.1. Контроль точности классификации В параграфе 2.2 рассмотрен вопрос обучения каскадного классификатора Виолы-Джонса. Так как объекты интереса имеют разную форму, а метод Виолы-Джонса предназначен для выделения общих признаков, то в рамках данной работы было обучено три независимых каскадных классификатора. Для анализа качества классификации принято использовать метрики точности, полноты и |