Научная статья на тему 'Применение алгоритмов компьютерного зрения для детектирования объектов на железнодорожном переезде'

Применение алгоритмов компьютерного зрения для детектирования объектов на железнодорожном переезде Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
343
39
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛГОРИТМЫ КОМПЬЮТЕРНОГО ЗРЕНИЯ / COMPUTER VISION ALGORITHMS / МОДЕЛИРОВАНИЕ / SIMULATION / ВИДЕОПОСЛЕДОВАТЕЛЬНОСТЬ / VIDEO SEQUENCE / ОБЪЕКТЫ / OBJECTS / КАДР / FRAME / ЖЕЛЕЗНОДОРОЖНЫЙ ПЕРЕЕЗД / RAILWAY CROSSING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Альтман Евгений Анатольевич, Ананьева Надежда Геннадьевна, Тихонова Наталья Алексеевна

В работе рассматриваются основные алгоритмы компьютерного зрения, позволяющие обнаружить появление произвольного объекта на железнодорожном переезде. Приводятся результаты моделирования алгоритмов нахождения контуров и выделения фона на видеопоследовательности изображений модели железнодорожного переезда.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Альтман Евгений Анатольевич, Ананьева Надежда Геннадьевна, Тихонова Наталья Алексеевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

APPLICATION ALGORITHMS OF COMPUTER VISION FOR ОBJECT DETECTION ON THE RAILWAY CROSSING

Development of innovative methods and hardware gives additional opportunities for the solution of various tasks. For example, innovations allow increasing safety in places of crossing highways and railroads by means of detection methods of objects in the required control zone. The big risk of emergencies in places as a railway crossing is caused by a high speed and the inertial movement of the train. In this connection, there is no possibility of timely braking of the train and prevention of collision with an obstacle. At the present time, the biggest percent of accident rate belongs to uncontrollable railway crossings. On such railway crossings completely are absent the blocking means or the warning technical tools. Controlled railway crossings are equipped with the blocking means for the automobiles. Also, they are equipped with the systems of video supervision. But the current systems of video supervision have no function of informing the driver of the train in an emergency. Therefore, to priorities belongs development of technical requirements for a hardware and software system. The automatic analysis of a dynamic situation in borders of a railway crossing, transfer to the driver of the approaching train of the required information belongs to priorities too. This work describes briefly main algorithms of computer vision which allow distinguishing any object on a railway crossing. The example of algorithmic modeling of detection of contours and allocation of a background on video has been considered in this work. Received results led to the conclusion about a necessary adaptation of modern computer vision algorithms for the solution of a detection problem of various objects with the required accuracy and in various working conditions.

Текст научной работы на тему «Применение алгоритмов компьютерного зрения для детектирования объектов на железнодорожном переезде»

References

1. Cheremisin V. T., Ushakov S. Yu., Kashtanov A. L. The concept of a unified automated electric power accounting system for traction [Kontseptsiya edinoy avtomatizirovannoy sistemy ucheta electricheskoy energii na tyagu poezdov]. Transport Urala - Transport of the Urals, 2013, no. 4, pp. 83 - 86.

2. Cheremisin V. T., Ushakov S. Yu., Pashkov D. V., Nikiforov M. M. Stages of the automated monitoring system energy efficiency implementation of transportation process [Etapy realizatsii avtomatizirovannoy sistemy monitoring energoeffektivnosti perevozochnogo protsessa]. Zheleznodorozhnyi transport - Railway transport, 2015, no. 3, pp. 45 - 49.

3. Cheremisin V. T., Vilgelm A. S., Nezevak V. L., Kvaschuk V. A. Influence of regenerative braking on the traction power supply system [Vliyanie rekuperativnogo tormozheniya na sistemu tyagovogo elektrosnabzheniya]. Lokomotiv - Locomotiv, 2013, no. 8, pp. 5 - 8.

4. Nikiforov M. M. Complex research on more efficient use of electricity for traction. General provisions [Kompleksnye nauchnye issledovaniya po povysheniyu effektivnosti ispol'zovaniya electroenergii na tyagu poezdov. Obschie polozheniya]. Materialy mejdunarodnoi nauchno-prakticheskoi konferencii «Povyshenie energeticheskoi effektivnosti nazemnyh transportnyh sistem» (Proceedings of the international scientific-practical conference «Improving the energy efficiency of terrestrial transportation systems»). - Omsk, 2014, pp. 82 - 87.

5. Cheremisin V. T., Vilgelm A. S., Nezevak V. L. Evaluation of technological losses in traction network in the conditions of electric rolling regenerative braking use [Ocenka tehnologicheskih poter' v tyagovoi seti v usloviyah primeneniya elektropodvijnym sostavom rekuperativnogo tormo-jeniya]. Vestnik Rostovskogo gosudarstvennogo universiteta putei soobshcheniia - Bulletin of the Rostov State Transport University, 2014, no. 2 (54), pp. 106 - 111.

6. Nikiforov M. M., Vilgelm A. S., Yazov A. V. Evaluation of technological losses of electricity in the system of traction power supply DC [Ocenka tehnologicheskih poter' elektroenergii v sisteme tyagovogo elektrosnabjeniya postoyannogo toka]. Materialy VI nauchno-prakticheskoi konferencii, posvyaschennoi Dnyu Rossiiskoi nauki «Innovacionnye proekty i novye tehnologii v obra-zovanii, promyshlennosti i na transporte» (Materials VI scientific-practical conference dedicated to the Day of Russian Science «Innovation projects and new technologies in education, industry and transport»). - Omsk, 2012, pp. 40 - 45.

7. Vilgelm A. S., Larin A. N. Experimental studies to assess the potential for improving the energy efficiency of train traction through the use of regenerative braking [Eksperimental'nye issledo-vaniya po ocenke potenciala povysheniya energeticheskoi effektivnosti tyagi poezdov za schet primeneniya rekuperativnogo tormojeniya]. Izvestiia Transsiba - The journal of Transsib Railway Studies, 2011, no. 1 (5), pp. 50 - 56.

8. Nikiforov M. M., Vilgelm A. S. Determination of energy efficiency indicators of electric AC and DC [Opredelenie indikatora energoeffektivnosti elektrovozov postoyannogo i peremennogo toka]. Materialy nauchnoi konferencii «Innovacionnyeproekty i tehnologii v obrazovanii, promyshlennosti i na transporte» (Proceedings of the conference «Innovation projects and technologies in education, industry and transport»). - Omsk, 2015, pp. 147 - 154.

УДК 004.93'12

Е. А. Альтман, Н. Г. Ананьева, Н. А. Тихонова

ПРИМЕНЕНИЕ АЛГОРИТМОВ КОМПЬЮТЕРНОГО ЗРЕНИЯ ДЛЯ ДЕТЕКТИРОВАНИЯ ОБЪЕКТОВ НА ЖЕЛЕЗНОДОРОЖНОМ ПЕРЕЕЗДЕ

В работе рассматриваются основные алгоритмы компьютерного зрения, позволяющие обнаружить появление произвольного объекта на железнодорожном переезде. Приводятся результаты моделирования алго-

70 ИЗВЕСТИЯ Транссиба № 1(25) ОП4 С

■ i = 2U10

ритмов нахождения контуров и выделения фона на видеопоследовательности изображений модели железнодорожного переезда.

В настоящее время ситуация с безопасностью на железнодорожных переездах остается неудовлетворительной. Подавляющее большинство ДТП на переездах происходит в результате грубейших нарушений водителями транспортных средств «Правил дорожного движения». Как правило, это проезды на запрещающий сигнал, объезд шлагбаума и т. п., в результате чего на переезде в момент прохода поезда может оказаться автомобиль [1].

Одним из вариантов решения проблемы безопасности на железнодорожном переезде является детектирование объектов на железнодорожных переездах посредством использования алгоритмов компьютерного зрения, что позволит выявлять определенные объекты из видеопоследовательности [2].

Алгоритмы компьютерного зрения для определения объектов на изображении можно разбить на два класса.

Алгоритмы первого класса определяют наличие и положение конкретных типов объектов - людей, их лиц, машин, дорожных знаков и других типов. Как правило, эти алгоритмы используют методы машинного обучения с большой базой изображений. Обученный на определенный тип объектов алгоритм позволяет с большой вероятностью правильно детектировать объект, однако плохо работает с другими, даже похожими объектами.

В работе рассматриваются алгоритмы второго класса, предназначенные для определения наличия произвольных объектов. Эти алгоритмы можно разбить на две группы, определяемые способом получения из изображения информации об объекте.

Первый способ связан с нахождением резких изменений яркости расположенных рядом пикселей изображения. При этом способе на первом этапе применяется один из методов усиления разницы яркости между соседними пикселями, так называемые детекторы границ (Кенни, Собеля и др.). На втором этапе происходит поиск особых точек изображения (линий границ, углов, контуров или различных типов особых точек, полученных методами машинного обучения). По конфигурации особых точек можно сделать вывод о наличии объектов на изображении.

Второй способ используется для определения появления объектов на видеопоследовательности. В этом случае идет сравнение кадров между собой и по отличиям кадров определяется наличие объектов. Нужно отметить, что простое вычитание яркости пикселей между двумя кадрами не приводит к хорошему результату ввиду изменения освещенности кадров, экспозиции и других параметров съемки, наличия шумов и появления теней объектов.

Далее промоделируем и сравним два указанных способа определения объектов произвольного типа на изображении.

Нахождение изменений яркости изображения (особых точек) применяется во многих разделах компьютерного зрения. При нахождении объектов произвольного типа на изображении ведется поиск замкнутых границ - контуров. В настоящее время известно большое число алгоритмов поиска контуров, подборку статей по этим алгоритмам можно найти на сайте группы компьютерного зрения университета Беркли.

В целом работа алгоритмов поиска контура сводится к трем этапам: преобразование изображения выделяющее (усиливающее границы), поиск контуров среди выделенных границ и последующая обработка контуров в соответствии с условиями задачи.

Выделение границ является изученной задачей. Существует множество линейных фильтров, усиливающих границы: обычный градиент; операторы Собеля, Робертса, Превитта; Лапласиан и детектор границ Кэнни. Как правило, применяется детектор границ Кэнни. В отдельных задачах небольшого улучшения результатов можно добиться применением других детекторов.

Поиск контуров является наиболее трудоемкой с вычислительной точки зрения задачей. Определим понятие контура. Элементом контура называется граница между двумя соседними пикселями. Стоимостью элемента контура называется разница между максимальной яр-

■Ё ИЕ ИЗВЕСТИЯ Транссиб а 71

костью пикселей изображения и разницей между яркостями пикселей элемента контура. Контур состоит из связанного множества элементов контура с минимальной стоимостью. Если представить изображение в виде графа, вершинами которого являются пиксели, а ребра связывают смежные вершины и имеют вес, равный стоимости элемента контура, то задача поиска контура сводится к задаче поиска минимального пути в этом графе.

Для моделирования алгоритмов выделения контуров воспользуемся реализацией алгоритма в библиотеке OpenCV. Для выделения границ воспользуемся детектором Кэнни с настройками по умолчанию и порогами границ от 100 до 200. Для алгоритма нахождения контуров используем следующие настройки:

RetrievalModes = RETR_TREE (получить все найденные контуры);

ContourApproximationModes = CHAIN_APPROX_SIMPLE (поскольку мы не планируем производить дальнейший анализ контуров для увеличения быстродействия, можно использовать простую аппроксимацию контуров).

Основная часть моделирующей программы приведена на листинге 1.

cvtColor(sourceFrame, grayFrame, COLOR_BGR2GRAY);

Canny(grayFrame, canny_output, 100, 200);

findContours(canny_output, contours, hierarchy, RETR_TREE, CHAIN_APPROX_SIMPLE, Point(0, 0));

Mat drawing = Mat::zeros(canny_output.size(), CV_8UC3);

for (size_t i = 0; i< contours.size(); i++) { if (contours[i].size()>100) {

Scalar color = Scalar(rng.uniform(0, 255), rng.uniform(0, 255), rng.uniform(0,

255));

drawContours(drawing, contours, (int)i, color, 2, 8, hierarchy, 0, Point()); }

}

Листинг 1 - Код для моделирования алгоритма нахождения контуров

Здесь sourceFrame - исходное изображение, grayFrame - исходное изображение в градациях серого, canny output - выделенные границы исходного изображения, contours - массив найденных контуров, drawing - сформированное изображение контуров.

Цикл в конце листинга выбирает контуры размером больше 100 пикселей (нас интересуют только достаточно крупные объекты).

Моделирование проводилось для кадров нескольких видеопоследовательностей. Наиболее характерные результаты видеопоследовательности с катящимся автомобилем приведены на рисунке 1. На верхних фрагментах рисунка показан исходный кадр видеопоследовательности, на нижних - контуры, сформированные приведенной выше программой.

Из приведенных кадров видно, что в целом контуры автомобиля определяются. При этом сам автомобиль распадается на несколько контуров, часть из которых имеет малую площадь и на рисунке не отображена.

При этом определяется также большое число контуров других элементов. Причем эти контуры изменяются от кадра к кадру, что затрудняет определение постоянных объектов в видеопоследовательности по их контурам.

Характерные результаты работы алгоритма определения контуров для видеопоследовательности с проезжающим локомотивом представлены на рисунке 2.

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

Анализ описанной ситуации показал, что проблема состоит не в алгоритме поиска контуров, а в детектировании границ. На рисунке 3 приведен результат работы детектора Кэнни для кадра данной видеопоследовательности (справа - увеличенный фрагмент с локомотивом).

72 ИЗВЕСТИЯ Транссиба № 1(25) ОП4 С

■ I = 2U10

Контуры движущегося локомотива оказываются размытыми на статичных кадрах видеопоследовательности. Из-за этого размытия не определяется резкая граница, что и приводит к плохой работе детектора.

Рисунок 1 - Моделирование алгоритма определения контуров на видеопоследовательности с автомобилем

Рисунок 2 - Моделирование алгоритма определения контуров на видеопоследовательности с локомотивом

Рисунок 3 - Определенные границы локомотива

№ 1(25) ЛЛ л I11Г1 Г( Till Транссиба 73

=2016 ■

В целом можно сделать вывод о том, что лучшие из современных алгоритмов определения контуров не позволяют с достаточно высокой вероятностью определить движение объекта на железнодорожном переезде.

Рассмотрим второй способ определения появления на изображении объектов произвольной формы, связанный с поиском объектов на разностных кадрах. Существует несколько алгоритмов такого типа, которые имеют общее название Background subtraction (BS, вычитание фона). Сложность этих алгоритмов заключается в необходимости учитывать изменения освещенности кадров, дрожание камеры и изменение параметров съемки. Наиболее полную подборку таких методов можно найти на сайте, посвященном этим методам (opencv.org), пример использования этих алгоритмов - в статье, опубликованной на сайте https://sites.google. com/site/backgroundsubtracti on.

Как и в случае детекторов границ, современные методы показывают примерно одинаковые результаты, разница между которыми для нашей задачи несущественна. Для моделирования алгоритмов вычитания фона будем использовать реализованный в библиотеке OpenCV метод gaussian mixture model for background subtraction [3].

Основная часть моделирующей программы приведена на листинге 2.

int erosion_elem = 0; int erosion_size = 2; int erosion_type = MORPH_ELLIPSE;

Mat elementErosion = getStructuringElement(erosion_type, Size(2 * erosion_size + 1, 2 * erosion_size + 1), Point(erosion_size, erosion_size)); int dilation_elem = 0; int dilation_size = 3; int dilation_type = MORPH_ELLIPSE;

Mat elementDilation = getStructuringElement(dilation_type,

Size(2 * dilation_size + 1, 2 * dilation_size + 1), Point(dilation_size, dilation_size));

pMOG2 = createBackgroundSubtractorMOG2();

pMOG2->apply(sourceFrame, backFrame);

erode(backFrame, erosionFrame, elementErosion);

dilate(erosionFrame, dilationFrame, elementDilation);

Листинг 2 - Код для моделирования алгоритма вычитания фона

В рассматриваемой модели помимо основного алгоритма вычитания фона применены дополнительные операции по шумоподавлению и усилению яркости найденных объектов. Настройки этих дополнительных операций приведены в первой части листинга.

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

Для усиления детектированных элементов используется операция dilation (расширение). Найденные объекты расширяются, что приводит к уменьшению шума в виде черных пятен между детектированными точками одного объекта. Расширение реализуется методом dilate, результат все операций записывается в кадр dilationFrame.

Моделирование проводилось на уже рассмотренных ранее видеопоследовательностях. Результаты работы алгоритма приведены на рисунке 4. Эти результаты соответствуют ожиданиям - катящийся автомобиль в целом определяется (средний кадр), после остановки автомобиля вычитание фона дает нулевой результат.

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

74 ИЗВЕСТИЯ Транссиба № 1(25) ОП4 С

■ I = 2U10

гося локомотива алгоритм сразу же четко его находит (средний кадр). Локомотив четко обнаруживается на всех кадрах видеопоследовательности. При этом помимо локомотива на всех кадрах обнаруживается и тень, отбрасываемая им на рельсы (последний кадр). Стоит отметить, что освещение сцены видеопоследовательности довольно равномерное и найденная алгоритмом тень не видна человеческим глазом.

Рисунок 4 - Моделирование алгоритма вычитания фона на видеопоследовательности с автомобилем

Рисунок 5 - Моделирование алгоритма вычитания фона на видеопоследовательности с локомотивом

Трудность в различении реальных объектов от тени может создать серьезные проблемы при работе алгоритма в реальных условиях. На открытом пространстве железнодорожного переезда могут возникать тени от туч, отражение света от рядом стоящих знаний и других объектов и другие помехи подобного рода.

Устранение подобных помех требует дополнительных алгоритмов или использования дополнительного аппаратного обеспечения. Например, использование стереозрения должно позволить довольно легко отличить плоскую тень от объемного объекта.

№ 1(25) лл л I11Г1 Г( Till Транссиба 75

=2016 ■

В целом по результатам проведенных исследований можно сделать следующие выводы:

современные алгоритмы компьютерного зрения без дополнительных исследований и их адаптации к задаче не позволяют с достаточной вероятностью определять появления объектов на железнодорожных переездах;

отдельные алгоритмы показывают хорошие результаты на конкретных объектах и конкретных условиях, но плохо проявляют себя на других объектах в других условиях. Для практического применения необходимо использовать методику определения появления объектов, использующую различные алгоритмы с разными способами получения информации об объекте;

появляющиеся в реальных условиях помехи (прежде всего тени) могут оказывать существенное влияние на работу алгоритмов компьютерного зрения. Для разработки практически пригодных алгоритмов требуется большая база исходных (видео) изображений, снятых при различных погодных условиях и содержащих различные объекты.

Список литературы

1. Ананьева, Н. Г. Информационная система безопасности малодеятельных железнодорожных переездов [Текст] / Н. Г. Ананьева // Управление, информация и оптимизация: Сборник трудов Всероссийской молодежной научной школы / Национальный исследовательский Томский техн. ун-т. - Томск, 2012. - С. 181 - 183.

2. Пат. 94202 Российская Федерация, МПК B 61 L 29/00. Электротехнический комплекс для предупреждения аварийных ситуаций на железнодорожных переездах [Текст] / Чиж-ма С. Н., Ананьева Н. Г.; заявитель и патентообладатель Омский гос. ун-т путей сообщения. - 2010102685; заявл. 27.01.2010; опубл. 20.05.2010.

3. Зачатейский, Н. Д. Совершенствование метода «выделения фона» для нахождения подвижных объектов на железнодорожном переезде с помощью компьютерного зрения [Текст] / Н. Д. Зачатейский, А. А. Аржанников, Е. А. Альтман // Известия Транссиба / Омский гос. ун-т путей сообщения. - Омск. - 2015. - № 1 (21). - C. 74 - 80.

References

1. Anan'eva N. G. Informatsionnaia sistema bezopasnosti malodeiatel'nykh zheleznodorozh-nykh pereezdov [Information security system of inactive railroad crossings]. Upravlenie, infor-matsiia i optimizatsiia. Sbornik trudov Vserossiiskoi molodezhnoi nauchnoi shkoly (Management, information and optimization. Proceedings of the All-Russian Youth Scientific School). - Tomsk, 2012, pp. 181 - 183.

3. Zachateiskii, N. D., Arzhannikov A. A., Al'tman E. A. Improvement Method «selection background» to locate objects in IG Petritskaya at a railway crossing using computer vision [Sovershenstvovanie metoda «vydeleniia fona» dlia nakhozhdeniia podvizhnykh ob"ektov na zheleznodorozhnom pereezde s pomoshch'iu komp'iuternogo zreniia] Izvestiia Transsiba - The journal of Transsib Railway Studies, 2015, no. 1 (21), pp. 74 - 80.

УДК 656.022.4:519.168:519.852.23

Н. Ю. Афоничев, В. Г. Шахов

МЕТОД ПОИСКА ОПТИМАЛЬНОГО И НАИБОЛЕЕ БЛИЗКИХ К НЕМУ

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

МАРШРУТОВ ПЕРЕВОЗКИ ГРУЗОВ

Рассматривается метод практической реализации решения частного случая транспортной задачи. Он позволяет находить оптимальный и заданное количество маршрутов, ближайших к нему по величине критерия оптимальности. Метод обеспечивает большую гибкость в решении вопросов планирования оптимальной

76 ИЗВЕСТИЯ Транссиба № 1 (25) ОП4 С

■ I = 2U10

i Надоели баннеры? Вы всегда можете отключить рекламу.