Оптическая система навигации летательных аппаратов

УДК 681.78'681.2.083:004.021

ОПТИЧЕСКАЯ СИСТЕМА НАВИГАЦИИ ЛЕТАТЕЛЬНЫХ

АППАРАТОВ

В.М. Глаголев, А.В. Ладонкин

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

Ключевые слова: корреляционно-экстремальные системы, SLAM, оптический поток, навигация.

Среди различных методов определения параметров навигации малоразмерных беспилотных летательных аппаратов (МБПЛА), особое внимание привлекает метод, основанный на анализе видеопотока с установленной на борту видеокамеры. Действительно, основной задачей МБПЛА является аэровидеонаблюдение. То есть, на борту, как правило, уже имеются установленные в качестве полезной нагрузки обзорные видеокамеры. Применение их для вычисления параметров навигации позволит значительно упростить систему управления летательным аппаратом в целом, а также уменьшить массу бортовой аппаратуры и увеличить полезную грузоподъемность МБПЛА.

Существует два основных класса оптических систем навигации: корреляционно-экстремальные (КЭСН), и основанные на методе одновременной локализации и построения карты (simultaneous location and mapping, SLAM).

Принцип работы КЭСН [1, 2] основан на сравнении изображения земной поверхности или совокупности ориентиров с эталонным, полученным заранее. Рассогласование положения этих изображений в принятой системе координат позволяет вычислить текущие координаты подвижного объекта. Эталонное изображение составляется заранее и вводится в систему управления в виде маршрутного задания (при навигации) или совокупности признаков цели, или же передается в процессе полета ЛА.

К недостаткам данного метода можно отнести:

- необходимость заранее получить снимки подстилающей поверхности.

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

- хранение больших объемов данных, а также быстрый и надежный доступ к ним.

SLAM-сштшы основаны на группе методов, позволяющих определять местоположение объекта по изображению с видеокамеры (или стереопары) и одновременно строить трехмерную карту местности, которая попадает в поле зрения видеокамеры. Такие алгоритмы в настоящее время широко используется в самоуправляемых автомобилях, домашних роботах [3].

Было исследовано два наиболее передовых SLAM алгоритма, находящихся в открытом доступе и распространяющейся под свободной лицензией - «ORB-SLAM» 0Oriented FAST and Rotated BRIEF) и «LSD-SLAM» (Large Scale Direct) [4]. Алгоритм «ORB-SLAM» показывает приемлемые результаты при построении неплотной карты местности и навигации в условиях глубокого рельефа, однако, при попытке осуществления навигации в условиях наличия в поле зрения видеокамеры квази-плоского объекта, «ORB-SLAM» перестает выдавать адекватные данные (рис. 1).

Алгоритм «LSD-SLAM» показывает противоречивые результаты при попытке построить плотную карту местности (рис. 2). Карта местности обладает низким качеством: многие точки лежат намного ближе к видеокамере относительно их реального местоположения.

0RB-SLAM2; Current Frame

Рис. 1. Результат работы алгоритма «ORB-SLAM» на неглубоком рельефе (на изображениях: а - местоположение видеокамеры; б - история местоположений видеокамеры): при линейном перемещении камеры относительно плоского объекта, SLAM-алгоритм считает, что камера осуществляет поворот

187

Рис. 2. Результат работы алгоритма «LSD-SLAM»

Таким образом, алгоритмы группы SLAM предназначены в основном для работы с глубокими рельефами, что затрудняет их использование в тех случаях, когда подстилающая поверхность почти плоская. Помимо этого, алгоритм «LSD-SLAM» крайне требователен к точности калибровки видеокамеры и вычислительным ресурсам платформы.

На кафедре «Приборы управления» ФГБОУ ВО «Тульский государственный университет» ведется разработка оптической системы навигации, основанной на 5Х^4М-методе, но лишенной его недостатков. Вычисление параметров навигации (Хла, Гла, Я1а, у) происходит на основании данных о расположении в кадре изображения контрольных точек с известными координатами (Xi? Щ и текущих углах тангажа и и крена у, получаемых с системы ориентации (бесплатформенной, оптической и т.д.). Были решены следующие задачи: выбор и реализация способа калибровки видеокамеры; выбор и реализация алгоритма поиска наиболее подходящих контрольных точек в кадре;

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

разработка алгоритма вычисления координат ранее неизвестных контрольных точек.

Калибровка видеокамеры необходима для устранения радиальной и тангенциальной дисторсии, определения координат оптического центра, определения углов обзора видеокамеры. Для калибровки камеры использовался алгоритм Zhengyou Zhang [5]. Входными данными для алгоритма являются изображения «шахматной доски» (рис. 3), снятые с разных ракурсов. Распознанные координаты углов анализируются, и выходными данными алгоритма являются координаты оптического центра, коэффициенты дисторсии и задние фокусные расстояния по двум осям изображения.

188

Рис. 3. Изображение «шахматной доски» с помеченными углами

Поиск оптимальных контрольных точек производился с помощью критерия Shi - Tomasi [6]. Критерий основан на анализе интенсивности пикселя и ее производной по четырем направлениям (вверх, вниз, влево, вправо). Результат применения данного критерия представлен на рис. 4.

Рис. 4. Пример определения контрольных точек методом Shi - Tomasi

Для слежения за контрольными точками в процессе перемещения видеокамеры использовался метод оптического потока, заключающийся в вычислении разницы координат пикселя (Vx, Vy) между двумя кадрами видеопотока. Применялся дифференциальный алгоритм Lucas - Kanade [7, 8]. Заключающийся в решении системы уравнений

189

1х + 1у (ч\Уу =- Ь Ы; 1х ЦУх + 1у (q2)Vy =- Ь Ц);

1х (Цп % + 1у (qn V =(ЦпX

где 1х(цг), 1у(цг), 1(ц) - частные производные изображения I по координатам х, у и времени t, вычисленные в точке ц; ц2, ..., Цп - пиксели внутри окна.

При разработке алгоритмов вычисления параметров навигации использовалась модель камеры-обскуры [9]. Координаты контрольных точек в кадре изображения (х^, у^) относительно оптического центра проходили процедуру компенсации дисторсии и поворота на текущие углы тангажа и крена. Результирующие координаты (х, у) контрольных точек соответствуют случаю вертикального расположения оптической оси видеокамеры с точностью до погрешности определения углов тангажа и крена системой ориентации.

Для вычисления параметров навигации использовалась следующая система координат (рис. 5).

Рис. 5. Система координат: О - точка взлета; х, у - горизонтальная и вертикальная оси кадра видеопотока; г - оптическая ось видеокамеры; у' - проекция оси у на плоскость ОХУ; ЛА - летательный аппарат

Высота ЛА Нла может быть вычислена по формуле

^4

н

+ АхВх + АуВу

ла

4 + Ау 190

где

Ax = x2 - xi; Ay = У2 - уь Bx = x2H2 - x1H1; By = У2H2 - У1Н1;

С = ((X2 - X1)2 + (72 -11)2 )- Л

С

tg2 (WCx )'

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

Если в кадре имеется более двух контрольных точек с известными координатами (Х;, Уъ Н;), то в результате получится множество вычисленных высот. Их можно усреднить, например, медианным фильтром.

Для вычисления координат (Хла, 7ла) и угла курса у необходимо пересчитать координаты (х,, у) контрольных точек в кадре для компенсации их высоты Н,:

X • — X •

1 -

н

H

. У, — У

ла J

1 -

H

H

ла J

Далее вычисляются параметры:

Ax — x'- x \, Ay — y'- y \

г AxAX + AyAY K -

,AX — X, -X,,AY — Y - Y.

Ax AY -Ay AX

Ax2 + Ay2 ' 2 Ax2 + Ay2 Координаты определяются как решение системы уравнений

Xла — X, - КЛ + K2 y,. IY, — Y - K2 x, - K1 y,.

Угол курса вычисляется как y — -arctg

< K1 >

где <K2>. <K1> - ус-

редненные значения коэффициентов.

В процессе полета ЛА контрольные точки с известными координатами (X, Yh H,) будут исчезать из поля зрения видеокамеры. Для этого в кадрах видеопотока необходимо определять возможных кандидатов в контрольные точки (критерий Shi - Tomasi) и осуществлять слежение за ними (метод оптического потока). Для каждого кандидата необходимо накапливать набор из координат ЛА (X^. Y^. Нла/, у,) и координат кандидата (x,. y,). Координаты (X. Y. H) кандидата вычисляются как решение системы уравнений

A1X + B1Y + С1Н — Д.

a2 X+B2Y+С2 Н—d2.

A3 X + B3Y + С3 Н — D3.

где

2 2 2 ' П — > I л л

Тг

¿=1 ¿=1 ¿=1

А = -2£ КХг2; ^ = £ (КхХп); С1 = -£ КХ1;

2

А = £(-2Кх2XЛаг + Kх¿KY¡YЯa> - КхгЯлаг); ¿=1

2 2 2

2.

А2 = £ ( КX¿KY¿ ); = -2£ KY2; С2 = -£ KY¿;

¿=1 ¿=1 ¿=1

2

А = £ (Кх^Хлаг - 2^лаг - ^¿Нлаг ); ¿=1

2 2

А =-£ КХ1; = -£ KY¿; Сз = -22;

¿=1 ¿=1

2

Аз = £(-КХ1хла; - KY¿Yлаг - 2Н; ),

¿=1

где 0 - количество накопленных наборов данных,

К

хг

СХ

tgwcx Бт

у + arctg

г \\ Х1

V Уг уу

Кг л =

СХ

у + аг^

г \\

Ха

V Уг У У

Моделирование описанных алгоритмов (рис. 6) проводилось при следующих условиях:

1. Частота кадров - 20 кадров/с;

2. Разрешение кадра - 640 х 480;

3. Горизонтальный угол обзора камеры - 60°;

4. Количество контрольных точек в кадре около 20 (от 15 до 25);

5. Средняя высота полёта Нла = 550 м;

6. Скорость полета 18 м/с;

7. Средняя высота контрольной точки Н = 75 м (от 0 м до 150 м);

8. Координаты (х, Y, Н) присутствовавших в первом кадре контрольных точек были известны.

9. Погрешность определения углов тангажа и крена 1,5°.

Как видно из графиков, погрешность системы за одну минуту (1200 кадров) не превышает 4 м. для координат хла, Yла, 1 м для высоты Нла, и 1° для угла курса у.

1

1

1000 2000 3000 4000 в

5000

г

650

1000 2000 3000 4000 5000

д

е

1000 2000 3000 4000 5000

11/1 ж

з

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

193

Одновременно с этим присутствует накапливающая со временем погрешность. вызванная неточностью вычисления координат (X. Y. Н) кандидатов в контрольные точки. Данную накапливающуюся погрешность можно устранить путем комплексирования показаний оптической системы со спутниковой системой навигации (СНС). Результирующая ошибка. таким образом. будет не больше ошибок СНС при гораздо большей частоте выдачи данных (не менее 20 Гц вместо 1...2 Гц у СНС). Дополнительным преимуществом будет устойчивость системы к сбоям СНС (например. «потери» спутников).

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

1. Баклицкий В.К. Корреляционно-экстремальные методы навигации и наведения. Тверь: ТО «Книжный клуб». 2009. 360 с.

2. Красовский А. А.. Белоглазов И. Н.. Чигин Г. П. Теория корреляционно-экстремальных навигационных систем. М. : «Наука». 1979.

3. Simultaneous localization and mapping [Электронный ресурс] // Wikipedia - свободная энциклопедия. URL: https://en.wikipedia.org/wiki/ Simultaneous localization and mapping (дата обращения: 21.04.2016).

4. Никляев Илья. Vision-based SLAM: монокулярный SLAM [Электронный ресурс] // Хабрахабр. URL: https: //habrahabr.ru/ compa-ny/singularis/blog/2775372016. (дата обращения: 21.04.2016).

5. Zhang Z.A flexible new technique for camera calibration // IEEE Transactions on Pattern Analysis and Machine Intelligence. 2000. Vol. 22. No. 11. P. 1330-1334.

6. Shi Jianbo. Tomasi. Good features to track // Proceedings of IEEE Conference on Computer Vision and Pattern Recognition CVPR-94. Institute of Electrical & Electronics Engineers (IEEE). 1994.

7. Коробков Александр. Отслеживание объектов в видеопотоке. Методы построения траекторий // Системы безопасности. 2014. № 3(117). С.102-104.

8. Алгоритм Лукаса Канаде [Электронный ресурс] // Wikipedia свободная энциклопедия. URL: https://ru.wikipedia.org/wiki/Алгоритм Лукаса-Канаде. 2015 (дата обращения: 21.04.2016).

9. Pinhole camera model [Электронный ресурс] // Wikipedia - свободная энциклопедия. URL: https://en.wikipedia.org/wiki/Pin-hole camera model 2016 (дата обращения: 08.05.2016).

Глаголев Владислав Максимович, асп., glagol15@gmajl.com, Россия, Тула, Тульский государственный университет,

Ладонкин Александр Валерьевич, канд. техн. наук, доц., tgupu@yandex.ru, Россия, Тула, Тульский государственный университет

194

OPTICAL NAVIGATION SYSTEM FOR AERIAL VEHICLES V.M. Glagolev, A. V. Ladonkin

This paper considers methods allowing one to determine the motion parameters of a vehicle based on the video stream analysis. This paper introduces a method that makes it possible to determine the navigation parameters of a small unmanned aerial vehicle based on the data acquired from video camera and onboard orientation system. The method is based on the original algorithm developed by the authors; the algorithm analyzes the positional relationship of control points on the video frame. This paper also cites the results of mathematical modeling.

Key words: Correlation-Extreme Methods, SLAM, Optical Flow, Navigation.

Glagolev Vladislav Maximovich, postgraduate, glagol15@gmail. com, Russia, Tula, Tula State University,

Ladonkin Alexander Valerievich, candidate of technical science, docent, tgu-pu@yandex.ru, Russia, Tula, Tula State University