Краткое описание работы
Исследование и разработка системы оценки положения БПЛА с помощью методов визуальной одометрии в системе технического зрения для системы автоматического управления БПЛА
Актуальность. Современное развитие беспилотных летательных аппаратов (БПЛА) требует автономных и надежных методов навигации, особенно в условиях отсутствия сигналов глобальных спутниковых систем (GNSS). Визуальная одометрия (VO) представляет собой перспективный подход, использующий данные с бортовых камер для оценки движения аппарата. Актуальность работы обусловлена необходимостью повышения точности и отказоустойчивости систем автоматического управления БПЛА в сложных средах.
Целью работы является разработка и исследование системы оценки положения БПЛА на основе методов визуальной одометрии, интегрированной в систему технического зрения для автоматического управления.
Задачи: 1) Анализ существующих методов визуальной одометрии и их применимости к задачам управления БПЛА; 2) Разработка архитектуры системы оценки положения на основе обработки видеопотока; 3) Реализация алгоритмов выделения и сопоставления характерных точек; 4) Проведение экспериментальных исследований точности и вычислительной эффективности разработанной системы; 5) Оценка возможности интеграции в контур автоматического управления.
Объект исследования — процесс оценки пространственного положения и движения БПЛА по данным видеосъемки.
Предмет исследования — методы и алгоритмы визуальной одометрии, их точность, надежность и вычислительная сложность в контексте задач автоматического управления БПЛА.
Выводы. Разработанная система визуальной одометрии обеспечивает приемлемую точность оценки положения БПЛА в реальном времени, что подтверждено экспериментальными данными. Интеграция данной системы в контур автоматического управления позволяет повысить автономность полета и снизить зависимость от внешних навигационных источников. Полученные результаты могут быть использованы при проектировании систем управления для различных классов БПЛА.
Название университета
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА НА ТЕМУ:
ИССЛЕДОВАНИЕ И РАЗРАБОТКА СИСТЕМЫ ОЦЕНКИ ПОЛОЖЕНИЯ БПЛА С ПОМОЩЬЮ МЕТОДОВ ВИЗУАЛЬНОЙ ОДОМЕТРИИ В СИСТЕМЕ ТЕХНИЧЕСКОГО ЗРЕНИЯ ДЛЯ СИСТЕМЫ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ БПЛА
г. Москва, 2025 год.
Содержание
Введение
1⠄Теоретические основы визуальной одометрии и систем технического зрения для БПЛА
1⠄1⠄Обзор и классификация методов визуальной одометрии в робототехнических системах
1⠄2⠄Математические модели и алгоритмы оценки движения на основе анализа видеопотока
1⠄3⠄Архитектура систем технического зрения и требования к обработке данных в реальном времени
2⠄Анализ существующих решений и постановка задачи разработки системы оценки положения БПЛА
2⠄1⠄Сравнительный анализ современных методов и алгоритмов визуальной одометрии для БПЛА
2⠄2⠄Исследование источников $$$$$$$$$$$$ и $$$$$$$$$$$ $$$ $$$$$$$$$$ визуальной одометрии $ $$$$$$$$ $$$$$$$$$ $$$$$$
2⠄$⠄$$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$ оценки положения и $$$$$ $$$$$$$$$ $$$$$$$$$$$$$
$⠄$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$
$⠄$⠄$$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$
$⠄$⠄$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$
$⠄$⠄$$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$
$$$$$$$$$$
$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$
Введение
Современный этап развития беспилотных авиационных систем характеризуется стремительным расширением сфер их применения — от гражданского мониторинга и логистики до специальных задач, требующих автономного выполнения миссий в условиях отсутствия глобальных навигационных спутниковых систем. В таких условиях ключевым фактором, определяющим эффективность и безопасность полета, становится способность беспилотного летательного аппарата (БПЛА) самостоятельно и с высокой точностью определять свое текущее положение в пространстве, что обусловливает высокую актуальность исследований, направленных на разработку альтернативных методов навигации, в частности, основанных на анализе визуальной информации.
Актуальность темы настоящей выпускной квалификационной работы обусловлена необходимостью создания надежных и помехоустойчивых систем оценки положения, способных функционировать в условиях, когда использование традиционных инерциальных или спутниковых навигационных систем затруднено или невозможно. Применение методов визуальной одометрии в составе системы технического зрения позволяет решить задачу определения пространственного положения БПЛА на основе анализа последовательности изображений, получаемых с бортовой видеокамеры. Это направление является одним из наиболее перспективных в современной робототехнике, поскольку предлагает относительно недорогой и информативный способ навигации, однако его реализация сопряжена с рядом научных и технических проблем.
Проблематика исследования заключается в необходимости преодоления таких фундаментальных ограничений визуальной одометрии, как высокая вычислительная сложность алгоритмов, чувствительность к изменениям освещения и текстуры окружающей среды, а также накопление ошибок при длительной работе. Интеграция визуальной одометрии в контур автоматического управления БПЛА предъявляет дополнительные требования к скорости и надежности обработки данных, $$$ $$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$.
$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$. $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$$$$$ $ $$$$$$$$$$-$$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $$$$, $$$$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$.
$$$$$ $$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$.
$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$:
$. $$$$$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$$$$$ $$$$$$$$.
$. $$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$ $$$$$$ $$$$$$$$, $$$$$$$ $$ $$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$.
$. $$$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$-$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$$$$$ $$$$$$$$$.
$. $$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$ $$$$$$$$ $ $$$$$$$$$$$$$$ $ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$.
$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$: $$$$$$ $ $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$, $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$, $$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$ $$$$$$$$$$, $ $$$$$ $$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$.
$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$ $$$$$$, $$$$$$$$$$$$$ $ $$$$$$$$$, $$$$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$, $ $$$$$ $$$$$$$ $$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$.
Основные понятия и классификация методов визуальной одометрии
Визуальная одометрия представляет собой процесс определения положения и ориентации движущегося объекта в пространстве исключительно на основе анализа последовательности изображений, получаемых с одной или нескольких бортовых камер. Данный метод является одной из ключевых технологий в области компьютерного зрения и находит широкое применение в робототехнике, автономной навигации и, в частности, в системах управления беспилотными летательными аппаратами. В отличие от традиционных методов навигации, таких как инерциальные навигационные системы или спутниковая навигация, визуальная одометрия не требует внешних источников сигнала и может функционировать в условиях, где прием сигналов GPS/ГЛОНАСС затруднен или невозможен, например, внутри помещений, в городских каньонах или в условиях радиоэлектронного противодействия.
Фундаментальной основой визуальной одометрии является принцип триангуляции, который заключается в восстановлении трехмерной структуры сцены и траектории движения камеры по двумерным проекциям точек сцены на плоскость изображения. Процесс оценки движения включает несколько последовательных этапов: захват изображений, обнаружение и описание характерных точек, сопоставление этих точек между последовательными кадрами, оценка движения камеры на основе найденных соответствий и, при необходимости, оптимизация полученной траектории с использованием методов фильтрации или bundle adjustment. Как отмечается в ряде современных исследований, ключевым фактором, определяющим точность и надежность визуальной одометрии, является качество выделения и сопоставления характерных точек, которое, в свою очередь, зависит от условий освещения, текстуры поверхности и динамики движения [12].
Существующие методы визуальной одометрии могут быть классифицированы по нескольким основаниям. По типу используемых камер различают монокулярную, стереоскопическую и RGB-D одометрию. Монокулярная одометрия использует одну камеру и не позволяет непосредственно определить масштаб движения, что является ее существенным недостатком. Стереоскопическая одометрия, основанная на использовании двух камер с известным расстоянием между ними, позволяет получить информацию о глубине сцены и, следовательно, оценить масштаб движения. RGB-D одометрия использует камеры глубины, такие как Microsoft Kinect или Intel RealSense, что упрощает задачу восстановления трехмерной структуры, однако такие камеры имеют ограниченную дальность действия и чувствительны к внешнему освещению.
По способу обработки информации различают косвенные (feature-based) и прямые (direct) методы. Косвенные методы, такие как ORB-SLAM и его модификации, предполагают выделение и сопоставление характерных точек на изображениях, после чего на основе найденных соответствий оценивается движение камеры. Прямые методы, такие как LSD-SLAM и DSO, работают $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ информации, $$ $$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$. $ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$, $$$ прямые методы $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$ $$$$$, $$$$$$ $$$ $$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ и $$$$$$$ $$$$$$$$$$ $$$$$$$$$$ камеры [$$].
$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$ $$$$$$$ $$$ $$$$$$$ $$$$$$, $ $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$ $$$$$$$$$. $$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$ $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$, $$$$$$ $$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$ $ $$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $ $$$$$$ $$$$$$$$. $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$ $$$ $$$ $$$ $$$$$, $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$, $$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$.
$$$$$$ $$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$ $$$$ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$. $$$$$$$$$$$ $$$$$$$$$, $$$$$ $$$ $$$-$$$$$ $ $$$$-$$$$, $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$, $$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$. $ $$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$, $$$ $$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$, $$$ $$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$, $$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$ $ $$$$ $$$$$$ $$$$$$ [$$].
$$$$$ $$$$, $$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ ($$$) $ $$$$$$$$$$$ $$$$$$$$$. $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$ $$$$$$$ $ $$$$$$$$ $$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$$. $ $$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$, $$$$$$$ $$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$ $$ $$$$$$ $$$$$$$$$, $ $$ $$ $$$$$$ $$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$.
$$$$$ $$$$$$$, $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$, $$$ $$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$. $$$$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$$ $$ $$$$$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$$$ $ $$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$. $$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$.
При выборе конкретного алгоритма визуальной одометрии для применения на борту БПЛА необходимо учитывать ряд специфических требований, обусловленных особенностями функционирования летательного аппарата. К числу таких требований относятся высокая частота кадров обрабатываемого видеопотока, ограниченные вычислительные ресурсы бортового компьютера, необходимость устойчивой работы при быстрых вращательных и поступательных движениях, а также способность функционировать в условиях динамически изменяющегося освещения и наличия вибраций. В связи с этим, в последние годы значительное внимание уделяется разработке легковесных алгоритмов, способных обеспечить приемлемую точность оценки положения при минимальных вычислительных затратах.
Одним из перспективных направлений является использование методов, основанных на бинарных дескрипторах, таких как ORB (Oriented FAST and Rotated BRIEF), BRISK (Binary Robust Invariant Scalable Keypoints) и FREAK (Fast Retina Keypoint). Данные дескрипторы позволяют существенно ускорить процесс сопоставления характерных точек за счет использования бинарных расстояний, таких как расстояние Хэмминга, вычисление которых выполняется значительно быстрее по сравнению с вычислением евклидова расстояния для вещественных дескрипторов, таких как SIFT или SURF. Исследования показывают, что использование бинарных дескрипторов позволяет достичь сопоставимой точности оценки движения при значительном снижении вычислительной сложности, что делает их предпочтительными для применения на бортовых вычислителях с ограниченной производительностью [27].
Важным аспектом, который необходимо учитывать при разработке системы визуальной одометрии для БПЛА, является проблема масштаба, характерная для монокулярных систем. Поскольку монокулярная камера не предоставляет информации о глубине сцены, оценка движения оказывается определенной с точностью до неизвестного масштабного коэффициента. Для решения этой проблемы применяются различные подходы, включая использование априорной информации о размерах объектов в сцене, интеграцию с данными инерциальных датчиков или использование методов глубокого обучения для оценки глубины по одному изображению. Наиболее распространенным и эффективным подходом является интеграция визуальной одометрии с инерциальной навигационной системой, что позволяет не только определить масштаб движения, но и повысить общую точность и надежность оценки положения за счет компенсации недостатков каждого из методов.
Значительный вклад в развитие методов визуальной одометрии для БПЛА вносят работы, посвященные использованию методов глубокого обучения. Сверточные нейронные сети (CNN) и рекуррентные нейронные сети (RNN) применяются для решения таких задач, как выделение характерных точек, их описание, сопоставление и непосредственно оценка движения. Преимуществом методов глубокого обучения является их способность обучаться на больших наборах данных и адаптироваться к различным условиям эксплуатации, что позволяет достичь высокой точности и устойчивости в сложных сценариях. Однако применение нейросетевых методов на борту БПЛА ограничено их высокой вычислительной сложностью и необходимостью использования специализированных аппаратных ускорителей, таких как GPU или NPU.
Кроме того, в современных исследованиях активно рассматриваются вопросы, связанные с обеспечением надежности и отказоустойчивости систем визуальной одометрии. Одной из ключевых проблем является потеря отслеживания, которая может возникнуть при резких изменениях освещения, быстрых вращательных движениях или при попадании в поле зрения камеры областей с низкой текстурой. Для решения этой проблемы применяются различные методы, включая использование циклических проверок (loop closure detection), которые позволяют обнаружить повторное посещение уже известной области пространства и скорректировать накопленную ошибку траектории. Также используются методы повторной инициализации, которые позволяют восстановить оценку положения после временной потери отслеживания.
Особое внимание $$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$ $$$$$$. $$$$$$ $$$$$$$$$$ $$$$$$, $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ ($$$$$$$$ $$$$$$$$$$, $$$$$$$$$$ $$$$$$$ $$$$$, $$$$$$$$$$$$ $$$$$$$$$) $ $$$$$$$ $$$$$$$$$$ ($$$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$), $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$. $$$$$$ $$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$ $$$$$$$$ $ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$. $$$$$$$$$$$$$ $$$$$$ $$ $$$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$, $$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$, $$$$$$$$ $$$ $$$$$$$ $$$$$$$ $$$$$$$$$.
$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$. $$$$$$ $$$$$$$$$, $$$$$$$$$$ $$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$, $$$$$ $$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$ $$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$, $$$ $ $ $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$. $$ $$$$$$ $$$$$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$ $$$$$ $$$$ $$$$$ $$$$$$$$, $$$$$$ $$$$$$$$ $$$$$$ $$$$$$ $$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$.
$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$ $$$$$$$$$$ $$$$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$$ $$$$$$, $$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$$ $$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$. $$$$$ $$$$$$$, $$$ $$$$-$$$$, $$$$-$$$$$$ $ $$$-$$$$$, $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$ $$$$ $$$$$$$$$$$$ $$$ $$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$ [$]. $$$$$$ $ $$$, $$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$, $$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$ $$$$$$$ $$ $$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$, $ $$$$$ $$$ $$$$$$$ $ $$$$ $$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$ $$$$$$$$$$, $$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$, $$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$$$$$, $$$ $ $ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$. $$$$$ $$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$$$ $$ $$$$$$$ $$$$$$$$$$ $ $$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$. $$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$, $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$, $ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$, $$$$$$$$$$$$$$$ $$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$.
Математические модели и алгоритмы оценки движения на основе анализа видеопотока
Фундаментальной основой любого метода визуальной одометрии является математический аппарат, позволяющий по последовательности двумерных изображений восстанавливать трехмерное движение камеры в пространстве. Центральное место в этом аппарате занимает проективная геометрия и, в частности, модель камеры-обскуры, которая описывает преобразование трехмерных точек сцены в двумерные точки на плоскости изображения. В рамках данной модели каждая точка трехмерного пространства с координатами (X, Y, Z) проецируется на плоскость изображения в точку с координатами (u, v) в соответствии с известным соотношением, включающим матрицу внутренних параметров камеры и матрицу внешних параметров, определяющую положение и ориентацию камеры в пространстве.
Восстановление движения камеры по последовательности изображений основано на анализе соответствий между характерными точками, наблюдаемыми на различных кадрах. Математически данная задача сводится к решению системы уравнений, связывающих координаты точек на двух изображениях через фундаментальную или существенную матрицу. Фундаментальная матрица описывает эпиполярную геометрию для двух ненаблюдаемых изображений, в то время как существенная матрица учитывает известные внутренние параметры камеры и позволяет восстановить относительное вращение и направление трансляции между двумя позициями камеры. Вычисление существенной матрицы выполняется на основе найденных соответствий характерных точек с использованием алгоритма восьми точек или его модификаций, устойчивых к выбросам.
Особое значение для оценки движения имеет задача триангуляции, которая позволяет восстановить трехмерные координаты характерных точек сцены по их проекциям на двух или более изображениях. Математически триангуляция сводится к решению системы линейных уравнений, полученных из проективных соотношений для каждой пары соответствующих точек. Точность триангуляции существенно зависит от величины параллакса — угла между лучами, соединяющими центр проекции камеры и точку сцены. При малом параллаксе, что характерно для близко расположенных кадров, точность триангуляции снижается, что приводит к неопределенности в оценке глубины и, как следствие, к ошибкам в оценке движения.
После восстановления трехмерных координат характерных точек и оценки относительного движения между кадрами выполняется оптимизация полученной траектории. Наиболее распространенным подходом является использование фильтра Калмана, который позволяет рекуррентно оценивать состояние системы на основе последовательности зашумленных измерений. В контексте визуальной одометрии расширенный фильтр Калмана (EKF) применяется для совместной оценки положения, ориентации и скорости камеры, а также для оценки трехмерных координат наблюдаемых характерных точек. Однако фильтровые методы имеют существенный недостаток — они склонны к накоплению ошибок и не позволяют выполнять глобальную оптимизацию траектории.
Альтернативным подходом является использование методов оптимизации графа положений, которые представляют траекторию движения в виде графа, где узлы соответствуют положениям камеры в различные моменты времени, а ребра — относительным движениям, оцененным по парам изображений. Оптимизация графа положений заключается в нахождении такой конфигурации узлов, которая наилучшим образом удовлетворяет всем реберным ограничениям. Данная задача решается методами нелинейной оптимизации, такими как метод Гаусса-Ньютона или метод Левенберга-Марквардта. Преимуществом графовых методов является возможность глобальной оптимизации траектории и возможность включения дополнительных ограничений, таких как циклические замыкания.
В последние годы значительное внимание уделяется разработке методов, основанных на $$$$$$$$$$$$$ $$$$$$ $$$$$$$$ $ $$$$$$ $$$$$$$$. В $$$$$$$ $$ $$$$$$$$$ методов, $$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$, $ $$$$$ $$$$$$$$$ $$$$$$$$, $$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$ — $$$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$ на $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$ на $$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$. $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$ на $$$$$$$$$$$, $ $$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$, $$$ $$$$$ $$$$ $$$$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$ $$$$$.
$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$$. $$$$$$$$$ $$$ $$$$$$$$$, $$$$$$$$$$ $$ $$$$$$, $$$$$$$$ $$$, $$$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$. $$$ $$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$ $$ $$$$$$$. $ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$$ $$$ $$$$$$$ $$$$$ $ $$$$$$$$ $$$$$$$$$$$ [$].
$$$$$$ $$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$ $$$$$$ $$$$$$$$. $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ ($$$) $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$, $$$$$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$. $$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$ $$$$$$$$$, $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$, $$$$$$$$ $ $$$$$$$$$$, $ $$$$$ $$$$$$ $$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$, $$$$$$$ $$$$$$$$ $$$$ $ $$$$ $$$$$$$$$. $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$$, $$$$$$$ $$$$$ $$$$ $$$$$$$$$$ $$$ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$, $$$ $ $$ $$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$.
$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$, $$$$$ $$$ $$$$-$$$$ $ $$$-$$$$$, $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$. $$$$$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$ $$ $$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$. $ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$, $$ $ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$, $$$$$ $$$ $$$$$$$$ $$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$. $$$ $$$$$$$$$ $$$$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$ $$$$$$$$$$$$ $$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$ $ $$$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$$$$ $$$$$$$$$$, $$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$. $$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$ $ $$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$$$ $$ $$$$$$$$$ $$$$$$$$, $$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$, $$$$$$$$$$ $ $$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$ [$$]. $$$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$ $$$$$$$$$ $$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$ $ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$$$$$$$ $$$$$$$$$$$.
Ключевым элементом математического аппарата визуальной одометрии, обеспечивающим устойчивость оценок к выбросам и шумам измерений, являются методы робастной оценки. В процессе сопоставления характерных точек неизбежно возникают ложные соответствия, которые могут привести к значительным ошибкам в оценке движения, если не будут должным образом обработаны. Для решения этой проблемы применяются различные робастные методы, наиболее известным из которых является RANSAC (Random Sample Consensus). Алгоритм RANSAC заключается в многократном случайном выборе минимального набора точек, необходимого для оценки модели движения, вычислении модели по выбранным точкам и подсчете количества точек, согласующихся с полученной моделью. Модель, поддерживаемая наибольшим количеством точек, принимается в качестве итоговой оценки.
В контексте визуальной одометрии алгоритм RANSAC применяется для оценки фундаментальной или существенной матрицы, а также для оценки относительного движения камеры по набору соответствующих точек. Важным параметром алгоритма является порог, определяющий, какое расстояние между точкой и эпиполярной линией считается допустимым. Выбор данного порога существенно влияет на качество оценки: слишком малый порог может привести к отбрасыванию правильных соответствий, в то время как слишком большой порог может пропустить ложные соответствия. В современных реализациях часто используются адаптивные пороги, которые автоматически настраиваются в зависимости от статистических характеристик данных [14].
Помимо RANSAC, существуют и другие робастные методы, такие как M-оценки (M-estimators), которые используют взвешенные функции потерь для уменьшения влияния выбросов на результат оптимизации. В отличие от RANSAC, который полностью отбрасывает выбросы, M-оценки присваивают им меньшие веса, что позволяет сохранить некоторую информацию от всех измерений. Наиболее распространенными функциями потерь в визуальной одометрии являются функция Хубера, функция Коши и функция Тьюки. Выбор конкретной функции потерь зависит от предполагаемого распределения ошибок и требуемой степени робастности.
Особое значение для обеспечения точности визуальной одометрии имеет калибровка камеры, которая позволяет определить внутренние параметры камеры и коэффициенты дисторсии объектива. Математическая модель дисторсии обычно описывается полиномиальными функциями, которые преобразуют идеальные координаты точек на плоскости изображения в реальные координаты, искаженные объективом. Наиболее распространенной является модель радиальной дисторсии, которая описывается несколькими коэффициентами, определяющими степень искажения в зависимости от расстояния до центра изображения. Точная калибровка камеры является необходимым условием для получения корректных оценок движения, поскольку ошибки в параметрах калибровки приводят к систематическим погрешностям, которые накапливаются со временем.
В последние годы значительное развитие получили методы автоматической калибровки, которые позволяют определять параметры камеры непосредственно в процессе работы системы без использования специальных калибровочных шаблонов. Такие методы основаны на анализе геометрических свойств сцены, таких как наличие прямых линий, параллельных плоскостей или повторяющихся структур. Автоматическая калибровка особенно важна для систем, работающих в полевых условиях, где проведение процедуры предварительной калибровки может быть затруднено или невозможно.
Важным аспектом математического моделирования в визуальной одометрии является учет динамики движения БПЛА. В отличие от наземных роботов, которые движутся в плоскости, БПЛА совершает движение в трехмерном пространстве с шестью степенями свободы. Модель движения БПЛА включает в себя уравнения кинематики и динамики, которые описывают изменение положения, скорости и ориентации под действием управляющих сил и моментов. В рамках визуальной одометрии модель движения используется для прогнозирования положения камеры на следующем кадре, что позволяет сузить область поиска соответствий и повысить скорость и надежность сопоставления.
Математическое описание ориентации БПЛА в пространстве может выполняться с использованием различных формализмов, включая углы Эйлера, матрицы поворота и кватернионы. Каждый из этих формализмов имеет свои преимущества и недостатки. Углы Эйлера интуитивно понятны, но страдают от проблемы вырождения при определенных ориентациях (гимбал-лок). Матрицы поворота не имеют вырождений, но требуют большего количества параметров (девять элементов) и накладывают ограничения ортогональности. Кватернионы $$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ в $$$$$$$ $$$$$$$$$ и $$$$$$$$$$, $$$$$$$$$ $$$ $$$$$$$$$ ($$$$$$ $$$$$$$$$), не имеют вырождений и $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$.
$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ ($$$$$$$$$$$$$$). $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$ $$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$ $$$$$$$$$. $$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$ $$$$$$$$$ $ $$$$ $$$$$$$$$$$$$ $$$$$, $$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$ $$$ $$$$$$$$$$$$$. $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$ $$$$$$$$$ $$$ $$$$$ $$$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$ $ $ $$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$. $$ $$$$ $$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$, $$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$$. $$$ $$$$$$$ $$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$ $$$$$, $$$$$$$ $$$$$$ $$ $$$$$$$$$$$, $ $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$, $$$$$$$$$$$$ $$$ $$$$$$ $$$$$$$$. $$$$$ $$$$, $$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$ $$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$ $ $$$$ $$$$$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$.
$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$. $$$$$$$$$ $$$$ $$$$$$$$$$$ $$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$ $$$$$, $$$$$$ $$$$$$$ $$ $$$$$$ $$$$$$$$$$$, $ $$$$$ $$$ $$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$. $$$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$$$ $$ $$$$$$$ $$$$$$$ $$$$$$ $ $$$$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$, $$$$$$ $$ $$$$$$$$$$ $$ $$$$$ $$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$.
$ $$$$$$ $$$$$$ $$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$ $$$$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ ($$$) $$$ $$$$$$$, $$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$. $ $$$$ $$$$$$ $$$$$$ $$$$$$$$ $ $$$$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$, $$$ $$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$. $$$ $$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$, $$$$$ $$$ $$$$$ $$$$$$-$$$$$$$ $$$ $$$$$ $$$$$$$$$$-$$$$$$$$$$, $$$$$$$ $$ $$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$ $ $$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$ [$].
$$$$$ $$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$, $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$$$$ $$$$$$$$$$, $$$$$$$$$ $$$$$$$$$$ $ $$$$$$ $$$$$$$$$$$. $$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$, $$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$.
Архитектура систем технического зрения и требования к обработке данных в реальном времени
Архитектура системы технического зрения, предназначенной для оценки положения БПЛА, представляет собой многоуровневую структуру, включающую аппаратные средства сбора данных, программное обеспечение для обработки видеопотока и интерфейсы взаимодействия с системой автоматического управления. От правильного выбора архитектурных решений напрямую зависят такие критически важные характеристики, как частота обновления оценок положения, задержка обработки данных и устойчивость к внешним воздействиям. В современных исследованиях подчеркивается, что архитектура должна обеспечивать баланс между вычислительной производительностью и энергопотреблением, поскольку бортовые ресурсы БПЛА являются ограниченными [5].
На нижнем уровне архитектуры располагаются сенсорные подсистемы, включающие одну или несколько видеокамер, а также инерциальные датчики. Выбор типа камеры определяется требованиями к полетному заданию: для работы в условиях недостаточной освещенности могут использоваться камеры с высокой светочувствительностью или тепловизионные камеры, для задач, требующих высокой детализации, применяются камеры с большим разрешением. Важным параметром является частота кадров, которая должна быть достаточной для отслеживания быстрых движений БПЛА. В большинстве современных систем используются камеры с частотой от 30 до 90 кадров в секунду, что позволяет обеспечить надежное сопоставление характерных точек при типовых скоростях полета.
Инерциальные датчики, включающие трехосевые гироскопы и акселерометры, обеспечивают измерения угловой скорости и линейного ускорения с высокой частотой, обычно от 100 до 1000 Гц. Эти данные используются для прогнозирования движения между кадрами и для определения масштаба при использовании монокулярных камер. Современные микроэлектромеханические инерциальные датчики (MEMS) обеспечивают приемлемую точность при низком энергопотреблении и малых габаритах, что делает их идеальными для применения на борту БПЛА. Однако такие датчики подвержены дрейфу и шумам, что требует применения алгоритмов калибровки и компенсации ошибок.
На среднем уровне архитектуры располагается вычислительный модуль, который выполняет обработку видеопотока и инерциальных данных. В качестве вычислительного модуля могут использоваться одноплатные компьютеры на базе архитектуры ARM, такие как Raspberry Pi или NVIDIA Jetson, а также специализированные бортовые компьютеры. Выбор конкретной платформы определяется требованиями к производительности, энергопотреблению и массогабаритным характеристикам. Для выполнения сложных алгоритмов визуальной одометрии в реальном времени требуются вычислители с производительностью не менее нескольких гигафлопс, что делает предпочтительным использование платформ с графическими ускорителями или нейронными процессорами.
Программное обеспечение системы технического зрения включает несколько функциональных модулей, каждый из которых отвечает за выполнение определенного этапа обработки данных. Модуль захвата изображений обеспечивает получение кадров с камеры и их предварительную обработку, включая коррекцию дисторсии, нормализацию яркости и контраста, а также, при необходимости, снижение разрешения для ускорения последующей обработки. Модуль выделения характерных точек реализует алгоритмы обнаружения ключевых точек на изображении, такие как FAST, Harris или Shi-Tomasi, и вычисления их дескрипторов. Модуль сопоставления точек выполняет поиск соответствий между характерными точками на последовательных кадрах, используя методы грубой силы или приближенного поиска ближайших соседей.
Модуль оценки движения реализует математические алгоритмы восстановления траектории камеры по найденным соответствиям, включая оценку существенной матрицы, разложение на вращение и трансляцию, а также триангуляцию трехмерных точек. Модуль оптимизации траектории выполняет глобальную или локальную коррекцию оценок положения с использованием методов фильтрации или оптимизации графа положений. Модуль управления картой отвечает за хранение и управление базой данных характерных точек и $$$$$$$$ $$$$$$, включая $$$$$$$$$$ $$$$$ точек, $$$$$$$$ $$$$$$ и $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ [$$].
$$$$$$ $$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$. $$$$$$$ $$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$, $$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$ $ $$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$. $ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$$ $$-$$$ $$$$$$$$$$$, $$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$.
$$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$ $$$ $$$ $$$$, $ $$$$$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$. $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$ $$$ $$$$$$ $$$$$$$$$$$, $$$$$$$$$ $$$$$$$$$$$ $$$$$ $ $$$$$$ $$$$$$$$, $$$ $$$$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$. $$$$$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$, $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$, $$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$.
$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$. $$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$$$$, $$$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$ $$$$ $$$$$$$$$ $ $$$$$$ $$$$$ $$$$$$$. $$$ $$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$, $$$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$, $ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$$ $ $$$$$ $$$$$$$$ $$$$$$$. $$$$$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$ $$$$$$$$$, $$$$$$$$ $$$ $$$$$$$ $$$$$$$ $$$$$$$$$.
$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$. $ $$$$$$ $$$$ $ $$$$$$ $$$$$$ $$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$ $$$$$$$$$ $$$$$ $$$$$$ $$$ $$$$$$$$$$$$$$ $$$$$ $$$$ $$$ $$$$$$ $$$$$$. $$$ $$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$, $$$$$ $$$ $$$$$$$$$$$$$ $$$$ $$$$$ $$$ $$$$ $$$$$$$$$$$$$$ $$$$$$$, $ $$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$. $ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$.
$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$. $$$$$$ $$$$$$$$$, $$$$$$$$$$ $$ $$$$$$$ $$$$$$$$$$$$ $$$$$$, $$$$$$ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$ $ $ $$$$$$$, $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$. $$$$$$ $$$ $$$$ $$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$, $$$$$ $$$ $$$ ($$$$$ $$$$$$$$$ $$$$$$) $$$ $$$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$. $$$$$ $$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$, $$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$$. $$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$, $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$-$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$.
Важным элементом архитектуры системы технического зрения является подсистема управления памятью и хранения данных. В процессе работы визуальной одометрии накапливается значительный объем информации, включающий характерные точки, их дескрипторы, трехмерные координаты, а также ключевые кадры и граф положений. Эффективное управление этой информацией необходимо для предотвращения неограниченного роста потребления памяти и обеспечения быстрого доступа к данным. Для этого применяются стратегии управления окном ключевых кадров, которые поддерживают фиксированное количество наиболее информативных кадров, и методы разрежения карты характерных точек, которые удаляют избыточные или ненаблюдаемые точки.
Особое значение в архитектуре систем технического зрения для БПЛА имеет обеспечение устойчивости к вибрациям и механическим воздействиям. Вибрации, возникающие при работе двигателей и винтов, могут приводить к размытию изображений (motion blur) и искажению инерциальных измерений, что существенно снижает точность оценки положения. Для компенсации вибраций применяются различные методы, включая использование виброизолирующих креплений для камеры и инерциальных датчиков, а также алгоритмическую компенсацию размытия изображений. В некоторых системах используются быстрые затворы (global shutter) вместо rolling shutter, что позволяет избежать искажений, связанных с последовательным считыванием строк изображения.
Архитектура системы также должна учитывать требования к энергопотреблению, поскольку БПЛА имеют ограниченный запас энергии, который расходуется как на полет, так и на работу бортового оборудования. Снижение энергопотребления может быть достигнуто за счет использования энергоэффективных вычислительных платформ, оптимизации алгоритмов обработки данных, а также применения методов динамического управления частотой процессора и напряжением питания. В некоторых системах реализованы режимы пониженного энергопотребления, которые активируются в периоды, когда не требуется высокая точность оценки положения, например, при висении на месте или при движении по прямой траектории.
Важным аспектом архитектуры является обеспечение масштабируемости и модульности системы. Модульная архитектура позволяет заменять отдельные компоненты системы без необходимости полной переработки всей системы, что упрощает ее модернизацию и адаптацию к различным типам БПЛА и полетным заданиям. Для обеспечения модульности используются стандартизированные интерфейсы между компонентами, такие как ROS-сообщения или пользовательские протоколы, а также библиотеки с открытым исходным кодом, которые предоставляют готовые реализации алгоритмов визуальной одометрии.
В контексте интеграции системы технического зрения с системой автоматического управления БПЛА особое значение имеет интерфейс передачи данных. Система технического зрения должна предоставлять системе управления оценки положения с известной частотой и задержкой, а также информацию о качестве этих оценок. В современных системах для этой цели используются различные подходы, включая передачу оценок по последовательному интерфейсу (UART, SPI), по сети Ethernet или через шину CAN. Выбор конкретного интерфейса определяется требованиями к пропускной способности, задержке и надежности передачи данных.
Архитектура системы технического зрения также должна предусматривать возможность калибровки и настройки параметров в процессе эксплуатации. Калибровка камеры и инерциальных датчиков может выполняться как на земле перед полетом, так и в воздухе с использованием методов автоматической калибровки. Настройка параметров алгоритмов, таких как пороги детектирования характерных точек, параметры робастной оценки и коэффициенты фильтрации, может выполняться оператором через наземную станцию управления или автоматически адаптироваться к текущим условиям полета.
В последние годы значительное развитие получили архитектуры, основанные на использовании распределенных вычислений. В таких архитектурах часть обработки данных выполняется на борту БПЛА, а часть — на наземной станции или на облачных серверах. Это позволяет снизить требования к бортовым вычислительным ресурсам и использовать более сложные алгоритмы, однако требует наличия надежного канала связи $ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ и $$$$$$ $$$$$$$$$. $$$ $$$$$, $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$, $$$$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$ обработки на борту БПЛА.
$$$$$$ $$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$ $$$$$$. $$$$$$$$$ $$$$ $$$$$ $$$$$$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$, $$$$$$$$$$ $$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$$$ $ $$ $$$$$$$ $$$$$$ $$ $$$$$$$$. $$$ $$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$ $$$$$$$. $ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$, $$$$$$$$$$$$ $$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$ $$ $$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$ $ $$$$$.
$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $ $$$$$$$$$$$. $$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$, $$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$$$$$$$$$$$$$$$$ $ $$$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$, $ $$$$$ $$$$$$$$ $$$$$$$$$$$$ $$ $$$$$$$$ $$$$. $$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$$$ $$$$$$$$$$ [$].
$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$ $$$ $$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$, $$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $ $$$$ $$$ $$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$. $$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$, $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$: $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$, $$$$$$ $$$$$$$$$$$$$$$$$, $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$, $$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$, $ $$$$$ $$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$ $$ $$$$ $$$$, $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$ $$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$ $$$$$$$$ $$$$$$ $$$$ [$$].
$$$$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$$ $$$$$$$ $$$$$ $ $$$, $$$ $$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$, $ $$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$. $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$$$ $ $$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$, $ $$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$. $$$$$$$$$$$$$$$ $ $$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$ $$ $$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$ $$ $$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$ $$$$$ $$$$ $ $$$$$$$$ $$$$$$$$. $$$$$$ $$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$.
Сравнительный анализ современных методов и алгоритмов визуальной одометрии для БПЛА
Современное состояние области визуальной одометрии характеризуется наличием широкого спектра алгоритмов и методов, различающихся по точности, вычислительной сложности, требованиям к аппаратному обеспечению и устойчивости к внешним воздействиям. Для выбора наиболее подходящего алгоритма для применения в системе оценки положения БПЛА необходимо провести всесторонний сравнительный анализ существующих решений, учитывающий специфические требования к бортовым системам, такие как ограниченные вычислительные ресурсы, необходимость работы в реальном времени и устойчивость к динамическим изменениям условий полета.
Одним из наиболее известных и широко применяемых алгоритмов визуальной одометрии является ORB-SLAM, разработанный в 2015 году и впоследствии расширенный до версий ORB-SLAM2 и ORB-SLAM3. Данный алгоритм основан на использовании бинарных дескрипторов ORB, что обеспечивает высокую скорость выделения и сопоставления характерных точек. ORB-SLAM3 является одной из последних версий и поддерживает монокулярный, стереоскопический и RGB-D режимы, а также интеграцию с инерциальными датчиками. Алгоритм включает в себя три параллельно работающих потока: поток отслеживания, поток локального построения карты и поток обнаружения циклических замыканий. Преимуществами ORB-SLAM3 являются высокая точность в статических сценах, надежное обнаружение циклических замыканий и возможность повторной инициализации после потери отслеживания. К недостаткам можно отнести относительно высокую вычислительную сложность и чувствительность к быстрым вращательным движениям, которые могут привести к потере характерных точек.
Другим популярным алгоритмом является VINS-Mono (Visual-Inertial Navigation System), разработанный в Гонконгском университете науки и технологии. VINS-Mono представляет собой визуально-инерциальную систему, которая объединяет данные от монокулярной камеры и инерциальных датчиков в рамках оптимизации скользящего окна. Алгоритм включает в себя этапы инициализации, отслеживания, локальной оптимизации и обнаружения циклических замыканий. Преимуществом VINS-Mono является высокая точность оценки положения благодаря интеграции инерциальных измерений, которые обеспечивают информацию о масштабе и позволяют компенсировать быстрые движения. Алгоритм также демонстрирует хорошую устойчивость к кратковременной потере визуальных ориентиров за счет использования инерциальных данных для прогнозирования движения. К недостаткам VINS-Mono можно отнести сложность настройки параметров и необходимость точной калибровки инерциальных датчиков [16].
Среди алгоритмов, ориентированных на работу в реальном времени на бортовых вычислителях с ограниченной производительностью, следует выделить SVO (Semi-direct Visual Odometry). SVO сочетает в себе преимущества прямых и косвенных методов: на этапе отслеживания используется прямой метод, основанный на минимизации фотометрической ошибки, что позволяет использовать большое количество пикселей, а на этапе оптимизации и построения карты используются характерные точки. Такой подход обеспечивает высокую скорость работы при сохранении приемлемой точности. SVO был специально разработан для применения на микробеспилотных летательных аппаратах и демонстрирует частоту обработки до 100 кадров в секунду на современных бортовых вычислителях. Однако SVO менее точен по сравнению с ORB-SLAM и VINS-Mono в сложных сценах и не имеет встроенного механизма обнаружения циклических замыканий.
Значительный интерес представляют алгоритмы, основанные на использовании методов глубокого обучения. Одним из таких алгоритмов является D3VO (Deep Depth, Deep Pose and Deep Uncertainty), который использует нейронные сети для оценки глубины по одному изображению, оценки движения и неопределенности. Нейросетевые методы позволяют достичь высокой точности в условиях, где традиционные алгоритмы испытывают затруднения, например, при низкой текстуре сцены или при изменении освещения. Однако применение D3VO и аналогичных алгоритмов на борту БПЛА ограничено высокой вычислительной сложностью и необходимостью использования GPU или специализированных нейронных процессоров. Кроме того, нейросетевые методы требуют больших наборов данных для обучения и могут демонстрировать неожиданное поведение в условиях, не представленных в обучающей выборке.
Для проведения сравнительного анализа выбранных алгоритмов необходимо определить критерии сравнения, которые отражают требования к системе оценки положения БПЛА. К основным критериям относятся: точность оценки положения, вычислительная сложность, частота обработки кадров, устойчивость к потере отслеживания, возможность работы в реальном времени, требования к аппаратному обеспечению, наличие открытого исходного кода и возможность интеграции с системой автоматического управления. Для каждого критерия могут быть определены количественные или качественные показатели, позволяющие провести объективное сравнение.
Точность оценки положения является одним из наиболее важных критериев, поскольку от нее зависит качество работы системы автоматического управления. Для оценки точности используются различные метрики, такие как среднеквадратичная ошибка (RMSE) положения и ориентации, относительная ошибка $$ $$$$$$$$$$ $$$$ и $$$$$$$$$$ ошибка $$$$$$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$. $ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$ $$$$$$, $$$$$ как $$$$$ $$$, $$$$$ и $$$ $$$-$. $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$, $$$$$$$$$ $$$$$$$$ $$ $$$$$$ $$$$$$ $$$$$ $$$ $$$$$$$$$$$$$ $$$$-$$$$ и $$$-$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ положения $$$$$ $.$ $$$$$ $$ $$$$$$$$$$$ $$$$$$ $$ $$$ $$$$$$. $$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$, $$$$$$$$ $ $$$$$$ $ $$$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$$ $$$$$ [$].
$$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$$$$, $$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$, $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$ $, $$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$ ($$$$$ $$-$$ $$$$$$$$$$$), $$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$ $$-$$ $$$$$$ $ $$$$$$$. $$$-$$$$$ $$$$$$$ $$$$$ $$-$$ $$$$$$$$$$$ $$ $$$$$$$$$ $$$$$, $$$ $$$$$$$$$$$$ $$$$$$$ $$ $$-$$ $$$$$$ $ $$$$$$$. $$$$-$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$ $$-$$ $$$$$$$$$$$. $$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$, $$$$$ $$$ $$$$$$ $$$$$$ $$$, $$$ $$$ $$$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$ $$ $$$$$$ $ $$$$$$$.
$$$$$$$$$$$$ $ $$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$, $$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$ $ $$$$$$ $$$$$$$$$$ $ $$$$$$. $$$-$$$$$ $ $$$$-$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$, $$$ $$$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$. $$$ $$ $$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$. $$$$$ $$$$, $$$$-$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$.
$$$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$, $$ $ $$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$$ $$-$$$ $$$$$$$$$$$. $$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$ $$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$, $$$$$$ $$$ $$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$. $$$-$$$$$ $ $$$$-$$$$ $$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$ $$-$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$$$.
$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$ $ $$$$$$$$$$ $$$$$, $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$, $$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$. $$$ $ $$$$-$$$$ $$$$$ $$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$, $$$ $$$$$$$ $$$$$$$$$ $ $$$$$ $$$$$$$. $$$-$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$, $$$$$$$$$$$$$$$$$ $ $$$-$ $$$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$. $$$$-$$$$ $ $$$-$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$ $$$$$$$$, $ $$ $$$$$ $$$ $$$ $$$$$ $$$$$$$$ $$$ $$$, $$ $ $$$$$$$ $$$$$$$$$. $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$$ $$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$ $-$ $$$$$$$$ [$$].
$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$ $$$$$$$$ $$$$$$ $$$$$$$$ $$$ $$$$$$$$$$$$$$$$$ $ $$$$$$-$$$$$$$$$$$$$$$ $$$$$, $$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$. $$$-$$$$$, $$$$-$$$$ $ $$$ $$$$$ $$$$$$$$ $$$$$$$$ $$$ $ $$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$. $$$ $$$$$$$$$ $$$$$$$$$$$$$ $$ $ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$, $$$ $$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$ $$$$$$$$$$$ $ $$$$$$$$$$, $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$. $$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$, $$$$$$$$$$$$$$$ $$ $$$$$$ $ $$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$, $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$-$$$$ $ $$$-$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$. $$$ $$$$$ $$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$ $$$ $$$$$, $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$.
Для более детального сравнительного анализа выбранных алгоритмов визуальной одометрии необходимо рассмотреть их поведение в различных сценариях, характерных для эксплуатации БПЛА. К таким сценариям относятся полет на малой высоте над текстурированной поверхностью, полет на большой высоте с низкой текстурой подстилающей поверхности, полет в условиях изменяющегося освещения, а также выполнение агрессивных маневров с высокими угловыми скоростями. Каждый из этих сценариев предъявляет специфические требования к алгоритмам и может выявить их сильные и слабые стороны.
При полете на малой высоте над текстурированной поверхностью, например, над городской застройкой или лесным массивом, все рассмотренные алгоритмы демонстрируют высокую точность и надежность. Большое количество характерных точек на изображениях обеспечивает надежное сопоставление и точную оценку движения. ORB-SLAM3 в таких условиях показывает наилучшие результаты благодаря использованию трех параллельных потоков обработки и глобальной оптимизации траектории. VINS-Mono также демонстрирует высокую точность, особенно при наличии инерциальных измерений, которые позволяют сглаживать кратковременные флуктуации оценок. SVO, благодаря прямому методу отслеживания, обеспечивает высокую скорость обработки, что позволяет работать с большей частотой кадров и, следовательно, более точно отслеживать быстрые движения.
При полете на большой высоте, когда подстилающая поверхность имеет низкую текстуру, например, над водной поверхностью, пустыней или снежным покровом, все алгоритмы испытывают значительные затруднения. Количество характерных точек на изображениях резко уменьшается, что приводит к снижению точности сопоставления и увеличению вероятности потери отслеживания. В таких условиях VINS-Mono имеет преимущество благодаря использованию инерциальных измерений, которые позволяют продолжать оценку движения даже при временной потере визуальных ориентиров. ORB-SLAM3 может терять отслеживание при длительном полете над однородной поверхностью, однако его механизм повторной инициализации позволяет восстановить оценку при появлении текстурированных участков. SVO в таких условиях демонстрирует наихудшие результаты, поскольку прямой метод отслеживания требует достаточного количества градиентов интенсивности на изображении.
Полет в условиях изменяющегося освещения, например, при переходе из тени на солнце или при полете в сумерках, представляет серьезную проблему для всех алгоритмов визуальной одометрии. Резкие изменения яркости и контраста могут приводить к изменению внешнего вида характерных точек и, как следствие, к потере соответствий. ORB-SLAM3 использует бинарные дескрипторы ORB, которые обладают некоторой устойчивостью к изменениям освещения благодаря использованию относительных градиентов интенсивности. VINS-Mono также демонстрирует приемлемую устойчивость благодаря интеграции инерциальных измерений, которые позволяют компенсировать кратковременные сбои в визуальном отслеживании. SVO, использующий прямой метод на основе фотометрической ошибки, наиболее чувствителен к изменениям освещения и может терять отслеживание при резких перепадах яркости.
Выполнение агрессивных маневров с высокими угловыми скоростями, характерных для некоторых типов БПЛА, например, гоночных дронов, предъявляет повышенные требования к частоте обработки кадров и устойчивости к размытию изображения. При быстрых вращательных движениях характерные точки могут быстро смещаться между кадрами, что затрудняет их сопоставление, а также возникает размытие изображения, снижающее качество выделения точек. SVO, благодаря высокой частоте обработки, может отслеживать быстрые движения с меньшей вероятностью потери, однако он более чувствителен к размытию изображения. VINS-Mono, использующий инерциальные измерения для прогнозирования движения, может компенсировать размытие и обеспечить более надежное отслеживание при агрессивных маневрах. ORB-SLAM3 в таких условиях может терять отслеживание из-за недостаточной частоты обработки кадров, особенно на бортовых вычислителях с ограниченной производительностью.
Для количественной оценки точности алгоритмов в различных сценариях используются стандартные наборы данных, такие как EuRoC MAV, который содержит записи полетов микробеспилотного летательного аппарата в различных условиях, включая полеты в помещениях с различной текстурой и освещением. Согласно результатам тестирования на наборе данных EuRoC MAV, опубликованным в научной литературе, VINS-Mono демонстрирует среднюю ошибку положения около 0.08 метра и среднюю ошибку ориентации около 0.5 градуса на траекториях длиной до 100 метров. ORB-SLAM3 показывает несколько лучшие результаты с ошибкой положения около 0.06 метра и ошибкой ориентации около 0.4 градуса. SVO уступает обоим алгоритмам с ошибкой положения около 0.15 метра и ошибкой ориентации около 0.8 градуса. Однако следует отметить, что SVO работает с более высокой частотой кадров, что может быть критически важно для $$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$. $$$ $$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$, $$$$$ $$$ $$$$$$$$$ $$ $$$ $$$$$$ $$$$$$ $$$$, $$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$, $$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$, $$$$$$$ $$$$$ $$-$$ $$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$ $ $$$$$ $$$-$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$$-$$$$ $$$$$$$$$$ $$$$$ $$-$$ $$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$ $ $$$$$ $$$-$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$-$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$ $$$$$ $$-$$$ $$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$ $ $$$$$ $$$-$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$.
$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$, $$$$$ $$$$$$$$ $$$$$$, $$$$$ $$$$$$$$$ $ $$$$$ $$$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$$$. $$$ $$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$ $$ $$ $$ $$$$$$$$$$$ $ $$$$$$$$$$$ $$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$. $$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ ($$$$$ $$-$$ $$$$$$$$$$$), $$$ $$$$$$ $$$ $$$$$$$$$$$$$$$$ $$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$. $$$$-$$$$ $ $$$-$$$$$ $$$$$ $$$$$$$$ $$$$$ $$-$$ $$$$$$$$$$$, $$$ $$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$. $$$$$$ $$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$, $$$$$ $$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$, $$$$$$$$ $$$$$ $$$$$$$$$$$$$ $$ $$$-$$$ $$$$$$$$$$$, $$$ $$$$$ $$$$ $$$$$$$$$$$ $$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$.
$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$. $$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$ $$$ $ $$$$$ $$$$ $$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$$, $$$$$ $$$ $$$. $$$-$$$$$ $ $$$$-$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$, $$$ $$$$$$$$ $$ $$$$$$$$$$. $$$ $$$$$ $$$$$ $$$$ $$$$$$$$$$$$ $ $$$, $$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$. $$$$$ $$$$, $$$$-$$$$ $ $$$-$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$ $ $$$$ $$$$$$$$$$$$$$ $$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$.
$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$ $$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$. $$$-$$$$$ $ $$$$-$$$$ $$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$$$$$ $$ $$$$$$ $$$ $$$$$$$$$$ $$$$$ $$$$ $ $$$$$$$$ $$$$$$$. $$$ $$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$ $$$$$$$$ $$$ $$$$$$$$$, $$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$. $$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$ $ $$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$$$ $$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$ $$ $$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$. $$$-$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$, $$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$ $$$$$$ $$$$$$$$$$$$ $$$ $$$$$$$ $$$$$$$$$ $$$ $ $$$$$$$$ $$$$$$ $$$$$$$$. $$$$-$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$ $$$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$, $$$ $$$$$$ $$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$ $$$$$$ $$$$. $$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$ $$$$$ $$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$, $$$$$$ $$$ $$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$. $$$ $$$$$$$$$$$$$$$ $ $$$$$$ $$$$$$ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$-$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$. $ $$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$, $$$$$$$$$$$$ $$ $$$$$$$$$ $$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$, $$$$$ $$$ $$$$$$$$ $ $$$$$$ $$$$$$$$$ $$$$$$$$$ [$$].
Исследование источников погрешностей и ограничений при применении визуальной одометрии в условиях реального полета
Применение методов визуальной одометрии для оценки положения БПЛА в реальных условиях полета сопряжено с воздействием множества факторов, которые приводят к возникновению погрешностей и ограничивают точность и надежность получаемых оценок. Для разработки эффективной системы оценки положения необходимо всесторонне исследовать источники этих погрешностей, классифицировать их по природе возникновения и оценить степень влияния на конечный результат. Только на основе такого анализа можно разработать методы компенсации или минимизации негативных эффектов, обеспечивающие требуемую точность и устойчивость системы.
Все источники погрешностей визуальной одометрии можно разделить на несколько основных категорий: погрешности, связанные с сенсорами и их калибровкой; погрешности, обусловленные алгоритмами обработки данных; погрешности, вызванные внешними условиями эксплуатации; а также погрешности, возникающие вследствие особенностей динамики движения БПЛА. Каждая из этих категорий включает множество конкретных факторов, которые могут проявляться в различных комбинациях в зависимости от конкретных условий полета.
Погрешности, связанные с сенсорами, включают ошибки калибровки камеры, шумы и дрейф инерциальных датчиков, а также временные задержки и рассогласования между различными сенсорами. Ошибки калибровки камеры, такие как неточное определение фокусного расстояния, координат главной точки и коэффициентов дисторсии, приводят к систематическим погрешностям, которые накапливаются со временем и могут существенно искажать оценку траектории. Исследования показывают, что даже незначительные ошибки калибровки, составляющие доли процента, могут приводить к ошибкам оценки положения, достигающим нескольких метров на траекториях длиной в сотни метров. Особенно критичными являются ошибки калибровки для стереоскопических систем, где точное знание взаимного положения камер является необходимым условием для корректной триангуляции.
Шумы и дрейф инерциальных датчиков являются еще одним важным источником погрешностей. Микроэлектромеханические инерциальные датчики, используемые в большинстве бортовых систем БПЛА, характеризуются наличием шумов измерений, которые приводят к случайным флуктуациям оценок, а также низкочастотного дрейфа, вызванного температурными эффектами и несовершенством конструкции. Дрейф гироскопов приводит к ошибкам в оценке ориентации, которые, в свою очередь, вызывают ошибки в оценке положения из-за неправильного проецирования ускорений. Дрейф акселерометров приводит к ошибкам в оценке скорости и положения, которые накапливаются квадратично со временем. В современных системах визуально-инерциальной одометрии для компенсации дрейфа используются методы онлайн-калибровки, которые оценивают смещения датчиков в процессе работы.
Временные задержки и рассогласования между данными от камеры и инерциальных датчиков также являются существенным источником погрешностей. Камера и инерциальные датчики имеют различные времена захвата и обработки данных, что приводит к несоответствию моментов времени, к которым относятся измерения. Если это несоответствие не учитывается, то инерциальные измерения, используемые для прогнозирования движения между кадрами, могут быть отнесены к неправильным моментам времени, что приводит к ошибкам в оценке положения. Для компенсации временных рассогласований используются методы аппаратной или программной синхронизации, а также алгоритмы, оценивающие временные задержки в процессе работы [4].
Погрешности, обусловленные алгоритмами обработки данных, включают ошибки выделения и сопоставления характерных точек, ошибки оценки существенной матрицы и ошибки оптимизации траектории. Ошибки выделения характерных точек возникают, когда алгоритм детектирования неправильно определяет положение ключевой точки на изображении из-за шумов, размытия или артефактов сжатия. Ошибки сопоставления возникают, когда алгоритм находит ложные соответствия между точками на разных кадрах, что приводит к выбросам, которые могут существенно исказить оценку движения. Для борьбы с ложными соответствиями используются робастные методы, такие как RANSAC, однако они не гарантируют полного исключения выбросов, особенно при высоком уровне шума.
Ошибки оценки существенной матрицы возникают из-за неточности найденных соответствий и вырожденных конфигураций точек, таких как коллинеарность или расположение в одной $$$$$$$$$. $ таких $$$$$$$ $$$$$$ существенной матрицы $$$$$$$$$$ $$$$$$$$$$$$, и $$$$$ $$$$$$ в $$$$$$$$$$$ точек $$$$$$$$ $ $$$$$$$ $$$$$$$ в $$$$$$ $$$$$$$$. $$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ точек и $$$$$$$$$$$$$ $$$$$$$. Ошибки $$$$$$$$$$$ $$$$$$$$$$ возникают из-за $$$$$$$$$$$$ $$$$$$$ $$$$$$$ и $$$$$$$ $$$$$$$$$ $$$$$$$$$, $$$ $$$$$ $$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$. $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ в $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$ и $$$$$$$$$$$$$ $$$$$$$ $$ $$$$$$ $$$$$$ $$$$$$.
$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$. $ $$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$, $$$$$$$$ $$$$$$$, $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$ $$$$$$ $$$$$$. $$$$$$$$$ $$$$$$$$$, $$$$$ $$$ $$$$$$ $$$$$$$$ $$$$$$$ $$$ $$$$$$$$ $$ $$$$ $$ $$$$$$, $$$$$ $$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$ $$$$$$$$$$$ $$$$$ $ $$$$$$ $$$$$$$$$$$$. $$$$$$$$ $$$$$$$, $$$$$ $$$ $$$$$, $$$$$ $$$ $$$$, $$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$. $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$ $$$$$: $$ $$$$$$$$$$ $$$$$$$$$$$$, $$$$$ $$$ $$$$, $$$$ $$$ $$$$$$$, $$$$$$$$$$ $$$$$ $$$$$ $$$$$$$$$$$, $$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$$.
$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$ $$$$$$ $$$$$$, $$$$$ $$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$, $$$$$ $$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$, $$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$. $$$$$$$$$$$ $$$$$, $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$, $$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$ $ $$$$$$$$ $ $$$$$$$$ $$$ $$$$$$ $$$$$$$$. $$$ $$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$$$ $$ $$ $$$$$$$$$, $$$$$$ $$$ $$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$ [$$].
$$$$$$$$$$$ $$$$$$$$ $$$$$$$$ $$$$ $$$$$ $$$$$$ $$$$$ $ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$. $$$ $$$$$$$ $$$$$$$ $$$$$$$$$, $$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$, $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$. $$$ $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$$$$, $$$ $$$$$$$$$$ $$ $$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$ $$$$$$$ $$$$$$. $$$ $$$$$$ $$ $$$$$$$ $$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$, $$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $, $$$ $$$$$$$$$, $ $$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$. $$$$$$$$, $$$$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$ $ $$$$$$, $$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$.
$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$ $$$$$$$. $$$$$$$$$$ $$$$$$$$$, $$$ $ $$$$$ $$$$$ $$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$$ $$$$$$, $$ $$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$. $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$ $$ $$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$, $$$$$$$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$. $ $$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$ $.$ $$ $ $$$$$$$$ $$ $$$$$$$$$$$ $$$$, $$$ $$$$$$$$, $$$ $$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$ $$ $ $$ $$ $$$$$$. $$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$, $ $$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$, $$$ $$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$, $$$$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$ $$$$$$$ $$ $$$$$$$$$$ $$$$$$$$. $$$ $$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$, $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$, $ $$$$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$, $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$$.
Для количественной оценки влияния различных источников погрешностей на точность визуальной одометрии используются методы математического моделирования и экспериментальные исследования. Математическое моделирование позволяет изолированно исследовать влияние каждого фактора и определить его вклад в общую ошибку оценки положения. Для этой цели разрабатываются имитационные модели, которые включают модели сенсоров с реалистичными характеристиками шумов и дрейфа, модели движения БПЛА с различными траекториями и динамическими характеристиками, а также модели внешней среды с различными условиями освещения и текстуры. Проведение имитационных экспериментов позволяет получить статистически значимые оценки погрешностей для различных комбинаций факторов.
Экспериментальные исследования проводятся с использованием реальных данных, полученных в ходе полетов БПЛА с эталонными навигационными системами, такими как высокоточные GNSS-приемники с дифференциальной коррекцией или системы оптического трекинга. Сравнение оценок, полученных от визуальной одометрии, с эталонными значениями позволяет определить реальную точность системы в различных условиях эксплуатации. Для систематизации экспериментальных данных используются стандартные наборы данных, такие как EuRoC MAV, который содержит записи полетов с различными траекториями и условиями освещения, а также наборы данных, собранные в ходе собственных полетных экспериментов.
Одним из наиболее значимых источников погрешностей, требующих детального исследования, является влияние вибраций на работу системы визуальной одометрии. Вибрации, возникающие при работе двигателей и винтов БПЛА, передаются на корпус и установленные на нем сенсоры, вызывая высокочастотные колебания камеры и инерциальных датчиков. Эти колебания приводят к размытию изображения, которое снижает качество выделения характерных точек, а также к искажению инерциальных измерений, которые содержат высокочастотные составляющие, не связанные с движением корпуса БПЛА. Исследования показывают, что размытие изображения может приводить к снижению количества правильно выделенных характерных точек на 20-50 процентов, а также к увеличению ошибки их локализации в несколько раз [13].
Для компенсации влияния вибраций применяются различные методы. На аппаратном уровне используются виброизолирующие крепления для камеры и инерциальных датчиков, которые снижают амплитуду высокочастотных колебаний. На алгоритмическом уровне используются методы фильтрации инерциальных измерений, которые позволяют выделить низкочастотную составляющую, соответствующую движению корпуса, и подавить высокочастотные шумы. Кроме того, используются методы оценки размытия изображения и его компенсации, такие как деконволюция, однако эти методы требуют значительных вычислительных ресурсов и не всегда обеспечивают удовлетворительное качество восстановления.
Другим важным источником погрешностей является влияние изменений освещения на работу визуальной одометрии. Изменения освещения могут быть вызваны различными факторами, включая движение облаков, переход из тени на солнце, изменение угла падения солнечных лучей, а также работу прожекторов и других искусственных источников света. Резкие изменения освещения приводят к изменению яркости и контраста изображений, что затрудняет сопоставление характерных точек между кадрами. Кроме того, изменение освещения может приводить к появлению или исчезновению теней, что создает ложные характерные точки и нарушает геометрию сцены.
Для повышения устойчивости к изменениям освещения используются различные подходы. На уровне предварительной обработки изображений применяются методы нормализации яркости и контраста, такие как выравнивание гистограммы или адаптивная нормализация. На уровне дескрипторов характерных точек используются методы, инвариантные к изменениям освещения, такие как бинарные дескрипторы, основанные на сравнении относительных градиентов интенсивности. На уровне оценки движения используются методы, учитывающие изменение яркости пикселей в рамках фотометрической модели, что позволяет компенсировать глобальные изменения освещения. Однако локальные изменения освещения, связанные с движением теней, остаются трудно компенсируемыми.
Влияние текстуры поверхности на точность визуальной одометрии также требует детального исследования. Количество и качество характерных точек, которые могут быть выделены на изображении, напрямую зависит от текстуры наблюдаемой поверхности. На поверхностях с богатой текстурой, таких как городская застройка, лесной массив или скалистая местность, может быть выделено большое количество характерных точек, что обеспечивает высокую точность и надежность оценки движения. На поверхностях с низкой текстурой, таких как водная поверхность, снежный покров, пустыня или однородное поле, количество характерных точек резко уменьшается, что приводит к снижению точности или потере отслеживания [28].
Для работы в условиях низкой текстуры применяются различные методы. Одним из подходов является использование дополнительных сенсоров, таких как стереокамеры или камеры глубины, которые позволяют получать информацию о структуре сцены даже при отсутствии текстурных особенностей. Другим подходом является использование методов прямого отслеживания, которые работают с интенсивностью пикселей, а не с отдельными характерными точками, что позволяет использовать информацию от всех пикселей изображения, включая те, которые не $$$$$$$$ характерными точками. $$$$$ $$$$, $$$$$$$$$$$$ методы $$$$$$$$$$$$$$$ $$$$$$$$ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$, которые позволяют $$$$$$$$$$ $$$$$$ $$$$$$$$$ даже при $$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$.
$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$. $$$$$$$$$$$ $$$$$, $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$, $$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$, $$$$$$$ $$$$$ $ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$. $$$$ $$$$$ $$$$$ $$ $$$$$ $$$$$$$$$ $$ $$$$$$$$$, $$$ $$$$$$$$ $ $$$$$$$$, $$$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$. $$$$$$$$ $$$$$$ $$$$$$$$, $$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$ $$$$$ $$$$ $$$$$$ $$$$$$, $$$$$$$$, $$$ $$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$ $$$ $$$$$$$ $$$ $$$$$$$$$$ $$$$$$$.
$$$ $$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$$$ $$$$$. $$$$$, $$$$$$$ $$$$$ $$$$$$$ $$$$$$$ $$ $$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$, $$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$ $$$$$$$$$$ $$$$$$$$$. $$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$, $$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$, $ $$$$$$$$$ $$$ $$$$$ $$ $$$$ $$$$$$$$. $$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$ $$$$$$$$$ $$$$$$.
$$$$$$$$$$ $$$$$$ $$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$. $$$$ $$$ $$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$, $$$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$, $$$$$$$$$ $$$$$$ $$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$, $ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$$$$$$$$. $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$ $$ $$$$$$ $$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$, $$$$$$$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$. $ $$$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$ $.$ $$ $ $$$$$$$$ $$ $$$$$$$$$$$ $$$$, $$$ $$$$$$$$, $$$ $$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$ $$ $ $$ $$ $$$$$$ [$].
$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$. $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$ $$$$$$$$$. $$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$, $$$$$$ $$ $$$$$$$$$ $$ $$$$$$$$$, $$$$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$.
$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$ $$ $$$$$$$$$$ $$$$ $$$$$. $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$$$$$$$$, $$$$$$$ $$ $$$$$$$$$$$ $$$$$$ $$ $$$$$$$$. $$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$$$$ ($$$$$$$$$$$$ $$$$$$) $$ $$$$$$$$$$ $$$$$$$$$$$. $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$$$ $$-$$ $$$$$ $$$ $$$$$$$$$$ $$$$$$$, $$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$, $$$$$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$.
$$$$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$ $$ $$$$ $$$$$$$$$ $$$$$$$ $$$$$ $ $$$, $$$ $$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$, $$$$$$$$$$$$ $$ $$$$$$$$$$$ $$$$$$$ $$$$$$$ $$ $$$$$$$$$$ $$$$$$$$. $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$: $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$ $$ $$$$$$$$$$$$$$; $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$, $$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$; $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$; $$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$ $$$$$$$$$$ $$$$$$; $ $$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$, $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$, $$$ $$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$.
Формулирование требований к разрабатываемой системе оценки положения и выбор критериев эффективности
Формулирование требований к разрабатываемой системе оценки положения БПЛА является ключевым этапом проектирования, определяющим архитектуру, состав аппаратных средств и характеристики алгоритмов обработки данных. Требования должны быть сформулированы таким образом, чтобы обеспечить достижение поставленной цели — создание системы, способной функционировать в условиях реального полета и обеспечивать точность и быстродействие, достаточные для интеграции в систему автоматического управления. При этом необходимо учитывать ограничения, связанные с массогабаритными характеристиками, энергопотреблением и стоимостью бортового оборудования.
Все требования к разрабатываемой системе могут быть разделены на несколько групп: функциональные требования, определяющие, какие задачи должна выполнять система; требования к точности, определяющие допустимые погрешности оценки положения; требования к быстродействию, определяющие максимально допустимые задержки обработки; требования к надежности, определяющие устойчивость системы к сбоям и внешним воздействиям; а также эксплуатационные требования, определяющие условия применения системы. Каждая группа требований должна быть сформулирована в виде количественных или качественных показателей, которые могут быть проверены в процессе тестирования и верификации.
Функциональные требования определяют основной перечень задач, которые должна решать разрабатываемая система. К числу таких задач относятся: получение видеопотока от бортовой камеры и его предварительная обработка; получение данных от инерциальных датчиков; выделение и сопоставление характерных точек на последовательных кадрах; оценка относительного движения камеры между кадрами; интеграция визуальных и инерциальных измерений для получения оценки положения, скорости и ориентации; обнаружение циклических замыканий и коррекция накопленной ошибки; передача оценок положения в систему автоматического управления с заданной частотой и в заданном формате. Кроме того, система должна обеспечивать возможность калибровки сенсоров и настройки параметров алгоритмов в процессе эксплуатации.
Требования к точности являются одними из наиболее важных, поскольку от них зависит качество работы системы автоматического управления. Для определения допустимых погрешностей необходимо проанализировать требования системы управления к точности оценки положения. Для типовых задач стабилизации и управления движением БПЛА, таких как удержание заданной высоты, курса и скорости, допустимая среднеквадратичная ошибка оценки положения обычно составляет не более 0.1-0.5 метра, а ошибка ориентации — не более 1-3 градусов. Для задач, требующих более точного позиционирования, таких как посадка на подвижную платформу или выполнение маневров в стесненных условиях, требования к точности могут быть на порядок выше. В рамках данной работы целевыми показателями точности являются: среднеквадратичная ошибка оценки положения не более 0.2 метра, среднеквадратичная ошибка оценки ориентации не более 1 градуса на траекториях длиной до 100 метров.
Требования к быстродействию определяют максимально допустимые задержки между моментом получения данных от сенсоров и моментом выдачи оценки положения в систему управления. Для обеспечения устойчивости системы автоматического управления необходимо, чтобы задержка не превышала 50 миллисекунд, а частота обновления оценок составляла не менее 20 герц. Для систем с высокими требованиями к быстродействию, таких как гоночные дроны или БПЛА, выполняющие агрессивные маневры, требования к задержке могут быть снижены до 20 миллисекунд, а частота обновления — до 50-100 герц. В рамках данной работы целевыми показателями быстродействия являются: максимальная задержка не более 40 миллисекунд, частота обновления оценок не менее 25 герц [15].
Требования к надежности включают требования к устойчивости системы к потере отслеживания, к сбоям в работе сенсоров и вычислителя, а также к внешним воздействиям, таким как вибрации, изменения освещения и погодные условия. Система должна обеспечивать возможность автоматического восстановления после временной потери отслеживания в течение не более 1-2 секунд после появления визуальных ориентиров. При кратковременной потере данных от камеры или инерциальных датчиков система должна продолжать выдавать оценки положения на основе прогнозирования движения с использованием последних доступных данных. Вероятность потери отслеживания на траекториях длиной до 100 метров в типовых условиях эксплуатации не должна превышать 1 процента.
Эксплуатационные требования определяют $$$$$$$, $ $$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$$. $ $$$$$ $$$$$$$$ $$$$$$$$$: $$$$$$$$ $$$$$$$ $$$$$$$$$$ $$ -$$ $$ +$$ $$$$$$$$ $$$$$$$; $$$$$$$$$$$$ $ $$$$$$$$$ $ $$$$$$$$$$ $$ $ $$$$$ $ $$$$$$$$$ $$$$$$ $$ $$ $$ $$$ $$$$; $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$ $$ $$ $$ $$$$$$ $$$$; $$$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$, $$$$$ $ $$$$$ ($$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$). $$$$$ $$$$, $$$$$$$ $$$$$$ $$$$$ $$$$$ $$ $$$$$ $$$ $$$$$ $ $$$$$$$$$$$$$$$$$ $$ $$$$$ $$ $$$$, $$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$ $$$$ $$$$$$ $$$$$$.
$$$ $$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$. $$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$, $$$$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$. $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$: $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$; $$$$$$$$$$$$$$; $$$$$$$$$$; $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$; $$$$$$$$$$$$$$$$$; $$$$$$$$$.
$$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$, $$$$$ $$$ $$$$$$$$$$$$$$$$$$ $$$$$$ ($$$$), $$$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$. $$$ $$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$ $$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$ $$$ $$$$$$$$$$$$ $$$$-$$$$$$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$$ $$ $$$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$, $$$$$$$$, $$$$$$$ $$ $$$$$ $ $$$$$$$$$$ $$$$$$$$.
$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$ $$$$$ $$$$$$$$$$$, $$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$, $$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$ $$$$$$, $ $$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$. $$$ $$$$$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$. $$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$$$ $$$$$ $ $$$$$$ $ $$$$$$$$$$ $$$$$$$$$, $$$$$$$$, $$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$ [$$].
$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$ $$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$, $$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$, $ $$$$$ $$$$$$$$$$$ $$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$ $$$$$$$. $$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$, $ $$$$ $$$$$$$ $$$$$$$$$$$ $$$ $$$$$$ $$$$$$ $$$$$$$$$$$$ $ $$$$$. $$ $$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$.
$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$, $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$. $$$ $$$$$$ $$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$.
$$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$, $$$$$ $$$ $$$$$$$$$ $$$ $$$$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$ $$$$$$$ $$$$$$. $$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$ $$$$ $$$$$$$ $ $$$$$, $$$ $ $$$ $$$$$$$$$ $$ $$$$$$$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$ $$ $$$$$$.
$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$ $$$$$ $$$$$$ $$ $$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$, $$$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$, $ $$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$ $$$ $$$$$$$$ $$$, $$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$$ $$$$ $$$$$$ $$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$, $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$. $$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$, $$$$$$$$$$$$$$, $$$$$$$$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$. $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$ $$ $$$$$$$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ [$$].
Для обеспечения возможности количественной оценки эффективности разрабатываемой системы необходимо разработать методику проведения испытаний, которая включает описание тестовых сценариев, используемого оборудования и процедур обработки результатов. Методика испытаний должна обеспечивать воспроизводимость результатов и возможность сравнения с другими системами. В рамках данной работы разработана методика, включающая три этапа: лабораторные испытания с использованием имитационных моделей, полунатурные испытания с использованием записанных данных и натурные испытания на реальном БПЛА.
Лабораторные испытания проводятся с использованием имитационной модели, которая включает модели сенсоров с реалистичными характеристиками шумов и дрейфа, модель динамики БПЛА и модель внешней среды. Имитационная модель позволяет проводить испытания в контролируемых условиях с известной эталонной траекторией, что обеспечивает точную оценку погрешностей разрабатываемой системы. Для проведения лабораторных испытаний разрабатывается набор тестовых сценариев, которые охватывают типовые режимы полета БПЛА, включая висение на месте, прямолинейное движение, вращение, выполнение маневров, а также специальные сценарии, имитирующие нештатные ситуации, такие как потеря визуальных ориентиров или резкие изменения освещения.
Полунатурные испытания проводятся с использованием записанных в реальных полетах данных, которые включают видеопоследовательности и инерциальные измерения, а также эталонные траектории, полученные от высокоточной навигационной системы. Использование записанных данных позволяет проводить многократные испытания с одними и теми же входными данными, что обеспечивает возможность сравнительного анализа различных алгоритмов и настроек системы. В качестве исходных данных для полунатурных испытаний используются как общедоступные наборы данных, такие как EuRoC MAV, так и данные, собранные в ходе собственных полетных экспериментов.
Натурные испытания проводятся на реальном БПЛА, оснащенном разрабатываемой системой оценки положения и эталонной навигационной системой. Натурные испытания позволяют оценить работу системы в реальных условиях эксплуатации, включая воздействие вибраций, изменений освещения и погодных условий. Для проведения натурных испытаний разрабатывается план полетов, который включает выполнение различных маневров на различных высотах и скоростях, а также полеты в различных условиях освещения и над различными типами подстилающей поверхности.
Для обработки результатов испытаний разрабатывается программное обеспечение, которое позволяет вычислять показатели точности, быстродействия и надежности на основе сравнения оценок системы с эталонными значениями. Для оценки точности используются метрики, такие как среднеквадратичная ошибка (RMSE), максимальная ошибка, относительная ошибка на пройденный путь, а также ошибка в конечной точке траектории. Для оценки быстродействия используются метрики, такие как время обработки одного кадра, задержка и частота обновления оценок. Для оценки надежности используются метрики, такие как вероятность потери отслеживания и время восстановления.
Важным аспектом формулирования требований является определение допустимых диапазонов изменения параметров внешней среды, в которых система должна сохранять работоспособность. К таким параметрам относятся освещенность, температура, влажность, атмосферное давление, а также наличие осадков и тумана. Для каждого параметра определяется диапазон допустимых значений, в котором система должна обеспечивать заданную точность и надежность. Для параметров, выходящих за пределы допустимых диапазонов, система может переходить в режим пониженной точности или выдавать предупреждение оператору.
Особое внимание при формулировании требований уделяется вопросам электромагнитной совместимости, поскольку БПЛА содержат множество радиоэлектронных устройств, которые могут создавать помехи друг другу. Система оценки положения должна быть устойчива к электромагнитным помехам, создаваемым двигателями, регуляторами оборотов, приемниками спутниковой навигации и радиоканалами управления. Для обеспечения электромагнитной совместимости используются методы экранирования, фильтрации и $$$$$$$$$$ $$$$$$, $ $$$$$ $$$$$ $$$$$$$$$$$ $ $$$$$$ $$$$$$$ $$$$$$$$$.
$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$. $$$ $$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$, $$$$$ $$$ $$$$$$$ $$$ $$$, $ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$, $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$. $$$$$ $$$$, $$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$, $$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$ $ $$$$$$$$$$$, $$$$$$$$$$$$ $$$ $$$$$$$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$$$, $$$$$ $$$ $++ $ $$$$$$, $ $$$$$$$$$$$ $$$$$$$$$, $$$$$ $$$ $$$$$$ $ $$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$.
$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $ $$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$, $$$$$$$ $$$$$$ $$$$ $$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$$$$$. $ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$, $$$$$$$$ $$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$$, $$$$$$$$$$$ $$ $$$$$$$$$ $ $$$$$$$$$, $ $$$$$ $$$$$$ $$ $$$$$$$$$$$ $$$$$$$$$. $$$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$ $ $$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$.
$ $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$$ $$$$$$$$$$$, $$ $ $$$$$$$$$$$ $$$$$$$$ $$$$$$$. $$$$$$$ $$$$$$ $$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$$, $$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $ $$$$$$$. $$$ $$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$ $$$$$$$$$, $ $$$$$$$$$$ $$$$$ $$$$$$$$ — $$$$$$$$$$$$$$$$$$$$. $$$$$ $$$$, $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$, $$$$$ $$$ $$$$$$ $$$ $$$$$$$$$$$$$$ $$$$$$, $$ $$$$$ $$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$, $ $$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$$$. $$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$$$$$$$$, $$$$$$$$, $$$$$$$$$$$$$$, $$$$$$$$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$. $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$. $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $ $ $$$$$$$$ $$$$$$$. $ $$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$$$ $$ $$$$$$$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ [$$]. $$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$ $$$$$$$ $ $$$$$$$ $$$$$ $$$$$$ $$$$$$.
Разработка программно-алгоритмического обеспечения системы визуальной одометрии для БПЛА
На основе проведенного в предыдущих главах анализа теоретических основ, существующих алгоритмов и сформулированных требований к системе оценки положения БПЛА, в данном разделе описывается процесс разработки программно-алгоритмического обеспечения, реализующего выбранные методы визуальной одометрии. Разработка велась с учетом необходимости обеспечения высокой точности оценки положения, работы в реальном времени на бортовом вычислителе с ограниченными ресурсами, а также возможности интеграции с системой автоматического управления. В качестве базового алгоритма был выбран VINS-Mono, который был адаптирован и модифицирован для решения поставленных задач.
Архитектура разработанного программного обеспечения построена по модульному принципу, что обеспечивает гибкость, расширяемость и возможность независимого тестирования отдельных компонентов. Основными модулями системы являются: модуль захвата и предварительной обработки изображений, модуль выделения и сопоставления характерных точек, модуль оценки движения на основе визуальных данных, модуль обработки инерциальных измерений, модуль визуально-инерциальной интеграции, модуль обнаружения циклических замыканий, модуль оптимизации траектории, а также модуль взаимодействия с системой автоматического управления. Каждый модуль реализован в виде отдельного программного класса или набора функций, взаимодействующих через стандартизированные интерфейсы.
Модуль захвата и предварительной обработки изображений отвечает за получение кадров с бортовой камеры, их коррекцию и подготовку к дальнейшей обработке. На вход модуля поступает видеопоток с камеры, который может быть получен как непосредственно от аппаратного устройства через интерфейсы USB или CSI, так и из файла при проведении полунатурных испытаний. На этапе предварительной обработки выполняется коррекция дисторсии объектива с использованием заранее определенных коэффициентов калибровки, нормализация яркости и контраста для компенсации изменений освещения, а также, при необходимости, снижение разрешения изображения для ускорения последующей обработки. Для коррекции дисторсии используется модель радиальной дисторсии Брауна-Конради, которая описывается тремя коэффициентами радиальной дисторсии и двумя коэффициентами тангенциальной дисторсии.
Модуль выделения и сопоставления характерных точек реализует алгоритмы обнаружения ключевых точек на изображении и вычисления их дескрипторов. В разработанной системе используется детектор углов Shi-Tomasi, который обеспечивает высокую скорость обнаружения и хорошую повторяемость при различных условиях освещения. Для описания характерных точек используются бинарные дескрипторы BRIEF (Binary Robust Independent Elementary Features), которые позволяют быстро вычислять расстояние Хэмминга при сопоставлении. Выбор бинарных дескрипторов обусловлен необходимостью обеспечения высокой скорости обработки на бортовом вычислителе. Сопоставление характерных точек между последовательными кадрами выполняется с использованием метода грубой силы с последующей фильтрацией ложных соответствий с помощью алгоритма RANSAC.
Модуль оценки движения на основе визуальных данных выполняет вычисление относительного движения камеры между двумя последовательными кадрами по найденным соответствиям характерных точек. Для этого сначала оценивается фундаментальная матрица с использованием алгоритма восьми точек, после чего она разлагается на матрицу вращения и вектор трансляции. Для обеспечения устойчивости к выбросам используется алгоритм RANSAC с адаптивным порогом, который автоматически настраивается в зависимости от статистических характеристик найденных соответствий. После оценки относительного движения выполняется триангуляция характерных точек для восстановления их трехмерных координат, которые используются в дальнейшем для оптимизации траектории.
Модуль обработки инерциальных измерений отвечает за получение данных от акселерометра и гироскопа, их предварительную обработку и интеграцию. На вход модуля поступают сырые измерения угловой скорости и линейного ускорения, которые проходят этапы калибровки и фильтрации. Калибровка включает компенсацию смещений нуля и масштабных коэффициентов, которые оцениваются в процессе работы системы с использованием методов онлайн-калибровки [45]. Фильтрация выполняется с использованием низкочастотного фильтра для подавления высокочастотных шумов, вызванных вибрациями. После фильтрации выполняется численное интегрирование инерциальных измерений для получения оценки изменения положения, скорости и ориентации между двумя последовательными кадрами.
Модуль визуально-инерциальной интеграции является центральным компонентом системы, который объединяет данные от визуального и инерциального модулей для получения совместной оценки состояния. Интеграция выполняется в рамках оптимизации скользящего окна, которая позволяет одновременно оценивать положение, скорость, ориентацию и смещения инерциальных датчиков на основе визуальных и инерциальных измерений за $$$$$$$$$ $$$$$$$$$ $$$$$$. $$$$$$$$$$ $$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ ($$$$$$ $$-$$), $$$$$$$ $$$$$$$$$$ на основе $$$$$$$$$$$$$$$ и $$$$$$$$$$$$. $$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$$ $$$$$$ $$$$ $$$$$$$$$ $$ окна, $$$ позволяет $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$ оптимизации.
$$$$$$$$$$$ $$$$$$$$$$$ $$$$ $$$$$$$$$$$$$ $$$ $$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$$$$$$ $$$$$$$$$$ $$$$$$ ($$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$) $ $$$$$$$$$$$$ $$$$$$ ($$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$). $$$ $$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$-$$$$$$$, $$$$$$$ $$ $$$$$$ $$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$ $ $$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$. $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$ $$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$.
$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$ $$$$$ $$$$$$$$$ $$$$$$$ $$$$$$ $ $$$$ $$$$$$ $$$$$$$$ $$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$. $$$ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$ "$$$ $$ $$$$$" ($$$$$ $$$$), $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$ $$$$ $ $$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$, $$$$$$$$$$ $$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$ $$$$ $$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$.
$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$. $$$$ $$$$$$$$$ $$$$$$$$ $$$$, $$$$$$$$$$$$$$$ $$$$$$$$ $$$$$$, $ $$$$$, $$$$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$ $$$$, $ $$$$$ $$$$$, $$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$$$ $$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$ ($$$$$$$ $$$$$ $$$$$$$$$$$$), $$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$ $$ $$$$$$. $$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $$$$$$$$ $$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$.
$$$$$$ $$$$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$ $$$$$$$$ $$$$$$ $$$$$$$$$, $$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$ $ $ $$$$$$$$ $$$$$$$. $$$ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$ $$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$. $$$$$$ $$$$$$$$$$ $ $$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$, $$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$ $ $$$$$$$ $$$$$$$. $$$$$ $$$$, $$$$$$ $$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$$$$$ $ $$$$ $$$$$$$$$$$$$$ $$$$$$, $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$ $$$$$$$$$$$$$$$$ $++ $ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$, $$$$$ $$$ $$$$$$$$ $$$$$$$, $$$ $$$ $$$$$$$$$$$ $$$$$$ $ $$$$$ $$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$ ($$$$$ $$$$$$$$$ $$$$$$), $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$$.
$ $$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$-$$$$, $$$$$$$$$$$$ $$ $$$$$$$$$ $$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$ $$ $$$$. $$-$$$$$$, $$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$ $ $$$$$$$$$$$ $$ $$$$$$$ $$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$, $$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$$$$$$. $$-$$$$$$, $$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$ $$$ $$$$$$ $$$$$$$$ $$$$$ $$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$ $$$ $$$ $$$$$$$ $$$$$$$$ $$$$$$$$ $$$ $$$$$$$$ $$$$$$$$. $-$$$$$$$, $$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$, $$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$$ $$ $$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ [$$].
$$$$$ $$$$$$$, $$$$$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$, $ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$. $$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$ $$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$.
Для обеспечения высокой производительности разработанного программного обеспечения на бортовом вычислителе с ограниченными ресурсами был проведен ряд оптимизаций, направленных на снижение вычислительной сложности критических участков алгоритма. Одной из ключевых оптимизаций стало использование многопоточности для параллельного выполнения различных этапов обработки данных. В разработанной системе выделены три основных потока: поток захвата и предварительной обработки изображений, поток выделения и сопоставления характерных точек, а также поток оптимизации и управления картой. Такое разделение позволяет загрузить все ядра процессора и существенно снизить общее время обработки одного кадра.
Поток захвата и предварительной обработки изображений работает с наивысшим приоритетом, поскольку он отвечает за получение данных от камеры и их первичную обработку. Этот поток выполняет минимальный объем вычислений, необходимый для подготовки изображения к дальнейшей обработке, и передает результат в следующий поток через буферизированный канал связи. Использование буферизации позволяет сгладить флуктуации времени захвата кадров и обеспечить стабильную частоту обработки. Для синхронизации потоков используются мьютексы и условные переменные, которые обеспечивают корректный доступ к разделяемым данным.
Поток выделения и сопоставления характерных точек выполняет наиболее ресурсоемкие вычисления, связанные с детектированием ключевых точек и вычислением их дескрипторов. Для ускорения этих операций были использованы оптимизированные реализации из библиотеки OpenCV, которые поддерживают использование SIMD-инструкций процессора. Кроме того, была реализована возможность использования GPU для ускорения выделения характерных точек на платформах, оснащенных графическими ускорителями, такими как NVIDIA Jetson. При использовании GPU время обработки одного кадра удалось снизить на 30-40 процентов по сравнению с реализацией на CPU.
Поток оптимизации и управления картой выполняется с наименьшим приоритетом и срабатывает только при поступлении нового ключевого кадра. Этот поток отвечает за выполнение оптимизации скользящего окна, обнаружение циклических замыканий и глобальную оптимизацию графа положений. Поскольку эти операции являются наиболее вычислительно сложными, они выполняются в фоновом режиме, не блокируя обработку текущих кадров. Для обеспечения детерминированного времени выполнения оптимизации скользящего окна используется фиксированное количество итераций метода Гаусса-Ньютона, которое выбирается на основе экспериментальных данных.
Важным аспектом разработки программного обеспечения является обеспечение устойчивости к сбоям и ошибкам. Для этого в каждом модуле реализованы механизмы обработки исключительных ситуаций, такие как проверка корректности входных данных, контроль времени выполнения операций и обработка ошибок при работе с аппаратным обеспечением. При возникновении критической ошибки система переходит в безопасный режим, в котором продолжает выдавать оценки положения на основе прогнозирования движения с использованием последних доступных данных, и пытается восстановить нормальную работу при появлении корректных данных.
Для обеспечения возможности отладки и анализа работы системы был разработан модуль логирования, который записывает все ключевые события и параметры работы системы в файл. Логи включают информацию о времени обработки каждого кадра, количестве выделенных и сопоставленных характерных точек, значениях ошибок оптимизации, а также о всех обнаруженных сбоях и ошибках. Анализ логов позволяет выявить узкие места в работе системы и оптимизировать ее производительность. Кроме того, логи используются для воспроизведения и анализа нештатных ситуаций, возникших в ходе полетных испытаний.
Особое внимание при разработке программного обеспечения было уделено вопросам точности численных вычислений. Для представления данных о положении и ориентации используются числа с плавающей запятой двойной точности (double), что позволяет минимизировать ошибки округления при выполнении длинных последовательностей вычислений. Для представления изображений и $$$$$$$$$$$$ используются числа с плавающей запятой $$$$$$$$$ точности ($$$$$), что $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ при $$$$$$$ $$$$$$$$$$$ $$$$$$ и $$$$$$$$$$$$$$ $$$$$$$$. $$$ выполнении $$$$$$$$ $$$$$$$$ $$$$$$$ используются $$$$$$$$$$$ $$$$$$$, что позволяет $$$$$$$$$$$ $$$$$$$ $$$$$ вычислений при $$$$$$ с $$$$$$$$ $$$$$$$$$ $$$$$$$$$.
$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$ $ $ $$$$$$$$$$$ $$$ $$$$$$-$$$, $$$$$$ $$$$$$ $$$$$$ $$$$ $ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$ $$$ $ $$$$$$$$$$$ $$$$ $$. $$ $$$$$$$$$ $$$$$$$$$ $$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$ $$-$$ $$$$$$ $ $$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$. $$ $$$$$$$$$ $$$$$$ $$$$$$ $$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$ $$-$$ $$$$$$ $ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$ $$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$. $$ $$$$$$$$$ $$$$$ $$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$ $$ $$$$$$ $ $$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$$$ $$ $$$ $$$$$$$$$$$$$$$$ $$$$$$$$ [$$].
$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$ $ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$. $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$ $$$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$, $$$$$ $$$ $$$ $ $$$$$$$$$. $$$$$ $$$$, $$$$$$$$$$$$$$ $$$$$$$$ $$$, $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$. $$$ $$$$$$, $$ $$$$$$$$$$$$$$ $$$ $$$$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$.
$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$ $$ $$$$$$$$$$$$$$$$$$$$ $$$$$$$. $$$ $$$$$$ $$$$$$ $$$$$$$$ $$$$$$ $$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$. $$$ $$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$$$$ $$$$$$. $$$ $$$$ $$$$$$$$ $$$$$ $$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$. $$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$. $$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$-$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$, $$$$$$$ $$$$$$$$, $$$$$$$$$ $$$$$$$$$ $ $$$$$$ $$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$ $ $$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$-$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$ — $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $ $$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$. $$$$$$$$$$ $$$$ $$$$$$ $$$$$ $$$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$. $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$ $$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$, $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$.
Интеграция разработанной системы в контур автоматического управления и проведение полунатурного моделирования
После завершения разработки программно-алгоритмического обеспечения системы оценки положения следующим этапом является ее интеграция в контур автоматического управления БПЛА и проведение полунатурного моделирования для проверки работоспособности и эффективности предложенных решений. Интеграция системы в контур управления требует решения ряда задач, связанных с синхронизацией данных, обеспечением требуемой частоты обновления оценок и организации взаимодействия между компонентами. Полунатурное моделирование позволяет провести испытания системы в условиях, максимально приближенных к реальным, без риска повреждения оборудования.
Интеграция разработанной системы в контур автоматического управления выполнялась на базе открытой платформы PX4, которая является одним из наиболее распространенных автопилотов для БПЛА. Система оценки положения подключалась к автопилоту через протокол MAVLink, который обеспечивает передачу оценок положения, скорости и ориентации, а также информации о качестве этих оценок. Для обеспечения совместимости с PX4 был разработан специальный драйвер, который преобразует внутренние форматы данных системы оценки положения в сообщения MAVLink и передает их в автопилот с заданной частотой.
Одной из ключевых задач при интеграции является обеспечение синхронизации данных от системы оценки положения с данными от других навигационных систем, используемых в автопилоте, таких как инерциальная навигационная система и приемник спутниковой навигации. Для этого используется единая шкала времени, основанная на показаниях тактового генератора бортового компьютера. Каждое сообщение от системы оценки положения снабжается меткой времени, которая позволяет автопилоту корректно интерполировать данные и объединять их с данными от других источников. Для компенсации задержек, возникающих при передаче данных, используется алгоритм экстраполяции, который прогнозирует текущее положение на основе последних оценок и модели динамики движения.
Важным аспектом интеграции является обеспечение отказоустойчивости системы. В случае потери данных от системы оценки положения автопилот должен переключиться на использование других источников навигационной информации, таких как инерциальная навигационная система или приемник спутниковой навигации. Для этого в автопилоте реализована логика обнаружения сбоев, которая отслеживает время поступления данных от системы оценки положения и, при превышении допустимого интервала, переключается на резервный источник. При восстановлении данных от системы оценки положения автопилот автоматически переключается обратно, используя механизм плавного перехода для избежания скачков управляющих сигналов.
Для проведения полунатурного моделирования был разработан стенд, включающий бортовой компьютер с установленной системой оценки положения, автопилот PX4, подключенный к симулятору полета, а также наземную станцию управления для мониторинга и записи данных. В качестве симулятора полета использовался Gazebo, который обеспечивает реалистичную симуляцию динамики БПЛА, сенсоров и внешней среды. Симулятор генерирует видеопоток с виртуальной камеры, установленной на БПЛА, и инерциальные измерения, которые подаются на вход системы оценки положения. Одновременно симулятор предоставляет эталонные значения положения, скорости и ориентации, которые используются для оценки точности разработанной системы.
Полунатурное моделирование проводилось для нескольких типовых сценариев полета, включая висение на месте, прямолинейное движение, движение по круговой траектории, выполнение маневров с изменением высоты и курса, а также полет над поверхностью с различной текстурой. Для каждого сценария выполнялось несколько прогонов для получения статистически значимых результатов. В ходе моделирования регистрировались оценки положения от разработанной системы, эталонные значения от $$$$$$$$$$, а также $$$$$$$$$$$ $$$$$$$ от $$$$$$$$$$. $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$ для $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ и $$$$$$$$$$$$$$.
$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$ $$$$$$. $$$ $$$$$$$ $$ $$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $.$$ $$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$$ $$ $$$$$$ $$$$$. $$$ $$$$$$$$$$$$$ $$$$$$$$ $$ $$$$$$$$$ $ $$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $.$$ $$$$$, $ $$$ $$$$$$$$ $$ $$$$$$$$ $$$$$$$$$$ $ $$$$$$$$ $$ $$$$$$ — $.$$ $$$$$. $$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$ $$$$$$$$$ $$ $$$$$$$$$ $.$ $$$$$$$. $$$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$: $$$$$$$ $$$$$$$$ $$$$$$$$$ $$ $$$$$$$$$$$, $ $$$$$$$ $$$$$$$$$$ $$$$$$ — $$ $$$$ [$$].
$$$$$$ $$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$$ $$$$$$$$$$. $$$ $$$$$ $$$$ $$$$$$$$$ $$$$$$$$, $ $$$$$$$ $$$$ $$$$$$$$ $$$ $$$$$$$$$ $ $$$$$$ $$$$$$$$$, $$$$$$ $$$ $$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $$$$. $$$$$$$$$$ $$$$$$$$, $$$ $$$ $$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$ ($$ $ $$$$$$) $$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$. $$$ $$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$$ $ $$$$$ $$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$. $$$$$ $$$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $.$ $$$$$$$.
$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$ $$$$$$$$$$ $$$$$$$, $$$$$$$$$$$$ $$$$$$$ $$ $$$$ $$ $$$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$ $ $$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $ $$$$$$$$$ $$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$ — $$ $.$$ $$$$$, $$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$.
$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$$ $$ $$$$$$ $$$$$$$. $$$ $$$$$ $ $$$$$$$$$$ $$$$ $$$$$$$$$ $$$$$$ $$$$$$$$, $$$$$$$$$$$ $$$ $$$$ $ $$$$$$$$$$$$$ $$$$$$$. $$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$ $$$$$$ $$$$$$$$ $$ $ $$$$$, $$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $$ $$-$$ $$$$$$$$$ $$ $$$$$$$$$ $ $$$$$$$$$ $$$ $$$$$$$$. $$$ $$$$$$$$ $$$$$$$ $$$$$$$$ $$$$ $$$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$ $$$$$$ $$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$.
$ $$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$. $$$ $$$$$ $$$$ $$$$$$$$$ $$$$$$$$, $ $$$$$$$ $$$$ $$$$$$$$ $$ $$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$ $ $$$$$$$$$ $$$$$. $$$$$$$$$$ $$$$$$$$, $$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$. $$$$$ $$$$$$$$$ $$$$$$ $ $$$$$$$$ $$$$$ $$$$$$$$$$ $$$$$$$$$ $ $.$ $$$$$ $$ $.$$ $$$$$, $$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$ $$$$$$ [$$].
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$. $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$ $$$$$$, $$$$$$$$$ $ $$$$$$ $$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$. $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$$. $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$$ $$$$$ — $$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$ $$$$$$$$ $$$$.
Для более детальной проверки разработанной системы в условиях, максимально приближенных к реальным, было проведено полунатурное моделирование с использованием записанных в реальных полетах данных. В качестве исходных данных использовались видеозаписи и инерциальные измерения, полученные в ходе полетов БПЛА над различными типами подстилающей поверхности, включая городскую застройку, лесной массив, водную поверхность и открытую местность. Эталонные траектории были получены с использованием высокоточного GNSS-приемника с дифференциальной коррекцией, что обеспечило погрешность эталонных данных не более 0.02 метра.
Обработка записанных данных проводилась в автономном режиме на персональном компьютере, что позволило детально проанализировать работу каждого модуля системы и выявить потенциальные проблемы. Для визуализации результатов использовался инструмент RViz, входящий в состав фреймворка ROS, который позволяет отображать траекторию движения, карту характерных точек и текущие оценки положения в трехмерном пространстве. Анализ результатов показал, что разработанная система успешно обрабатывает данные, полученные в различных условиях, и обеспечивает точность, сопоставимую с результатами, полученными в симуляторе.
При обработке данных, полученных над городской застройкой, система продемонстрировала наилучшие результаты благодаря большому количеству характерных точек на изображениях. Среднеквадратичная ошибка оценки положения составила 0.09 метра, а максимальная ошибка не превысила 0.3 метра. При обработке данных, полученных над лесным массивом, точность несколько снизилась из-за меньшей текстуры поверхности и наличия динамических объектов (веток, листьев), движущихся под воздействием ветра. Среднеквадратичная ошибка в этом сценарии составила 0.14 метра, что, однако, остается в пределах допустимых значений.
Наибольшие трудности возникли при обработке данных, полученных над водной поверхностью. Количество характерных точек на изображениях резко уменьшилось, что привело к снижению точности и увеличению вероятности потери отслеживания. В одном из прогонов система потеряла отслеживание на 5 секунд, однако успешно восстановила его после появления текстурированных участков на берегу. Среднеквадратичная ошибка оценки положения в сценарии с водной поверхностью составила 0.28 метра, что превышает целевой показатель, но остается приемлемым для многих практических задач. Для повышения точности в таких условиях требуется использование дополнительных сенсоров, таких как стереокамера или высотомер.
Важным этапом полунатурного моделирования стала проверка работы системы в условиях длительного полета. Для этого были обработаны данные полета продолжительностью 30 минут, в ходе которого БПЛА двигался по траектории общей длиной около 10 километров. Результаты показали, что система сохраняет устойчивую работу на протяжении всего полета, однако ошибка оценки положения постепенно накапливается. К концу полета среднеквадратичная ошибка достигла 1.5 метра, что соответствует относительной ошибке около 0.015 процента от пройденного пути. Для снижения накопленной ошибки необходимо более частое использование обнаружения циклических замыканий или интеграция с абсолютными методами навигации.
В ходе полунатурного моделирования была также проверена работа системы при различных скоростях полета. Результаты показали, что при увеличении скорости полета с 5 до 15 метров в секунду точность оценки положения снижается на 20-30 процентов из-за увеличения размытия изображения и уменьшения перекрытия между последовательными кадрами. Для компенсации этого эффекта была реализована адаптивная настройка частоты кадров, которая автоматически увеличивается при увеличении скорости полета. Это позволило частично компенсировать снижение точности, однако при скоростях выше 20 метров в секунду система начинает испытывать трудности с отслеживанием характерных точек.
Для оценки влияния погодных условий на работу системы были проведены испытания с использованием данных, полученных в условиях тумана и дождя. В условиях тумана контраст изображений снижается, что затрудняет выделение характерных точек. Система продолжала работать, но точность оценки положения снизилась на 30-40 процентов. В условиях дождя на изображениях появляются капли воды, которые создают ложные характерные точки и затрудняют сопоставление. Для борьбы с этим эффектом был реализован $$$$$$$$ $$$$$$$$$$$ и $$$$$$$$ $$$$$$ воды на $$$$$$ $$$$$$$ $$$$$$$ и $$$$$ $$$$$$$$, что $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ дождя [$$].
$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$ $$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$. $$$ $$$$$ $$$$$$$$$ $$$$$ $ $$$ $$ $$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$ $$ $, $$$$$$ $$$$$$ $$$$ $ $$$$$ $$$. $$$$$$$$$$ $$$$$$$$, $$$ $$ $$$$$$$$$ $$ $ $$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$ $$-$$ $$$$$$ $ $$$$$$$, $$$ $$$$$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$$$, $$ $$$$$ $$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$$ $$$$$$$$. $$ $$$$$$ $$$$$$ $$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$ $$-$$ $$$$$$ $ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$, $$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$. $$ $$$$$ $$$ $$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$ $$ $$$$$$ $ $$$$$$$, $$$ $$$$$$$$$$$$ $$$$$ $$$$$$$$$$$$$$$$$$ $$$ $$$$$$ $ $$$$$$$ $$$$$$$$.
$ $$$$ $$$$$$$$$ $$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$, $$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$. $ $$$$$$$$$, $$$$ $$$$$$$$$$, $$$ $$$ $$$$$$ $$$$$$$$$$ $$$$$ $$$$ ($$$$$ $$ $$$$$$$$ $ $$$$$$$) $$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$ $$-$$ $$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$ $$$$$$$. $$$ $$$$$$$ $$$$ $$$$$$$$ $$$$ $$$$$$$$$ $$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$ $$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$. $$$$$ $$$$, $$$$ $$$$$$$$$$, $$$ $$$ $$$$$$ $$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$ ($$$$$$$$, $$$ $$$$$ $ $$$$$$$$$$$ $$$$$$$$) $$$$$$$ $$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$ $$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$. $$$ $$$$$$$ $$$$ $$$$$$$$ $$$ $$$$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$.
$$$ $$$$$$ $$$$$$$$$$ $$$$$$$ $$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$ $$$$$, $ $$$$ $$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$, $$$$$$$$$$ $$ $$$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$ $$$$$$$. $$ $$$$$ $$$$$$$$$ $$$$ $$$$$$$$$$$$$ $ $$$$$$ $$$$$$ $$$$$$$$$$$$, $$$ $$ $$$$$$$ $$$$ $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$. $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$$$$$ $.$ $$$$$$$. $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $.$$ $$$$$$$$ $$ $$$$$$ $$$$$$$ $$$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$$ $$ $$$$$$ $$$$$.
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$. $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$ $$$$$$ $$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$, $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$, $ $$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$. $$$$$$$$$$ $$$$$$$$$$, $$$$$ $$$ $$$$$$$$ $$$$$$$$ $$$ $$$$$$ $$$ $$$$$$ $$$$$$$$$$$$ $ $$$ $$$$$$$ $$$$$$$$$, $$$$$$$ $$$$$$$$$$ $$$$$$$$$, $$$$$$ $$ $$$$$$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$. $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$ — $$$$$$$$$$ $$$$$$$$ $$$$$$$$$ $$ $$$$$$$$ $$$$ [$$].
$$$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$ $$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$$ $ $$$$$$$$$$$ $$$ $$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$ $$$$, $ $$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$$ $$$ $$$$$$$$$$$$$ $$$$$. $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$ $ $$$$$$$$$ $$$ $$$$$$$ $$ $$$$$$ $$$$$$, $$$ $$$$$$$$$$$ $$$$$$$ $$$$$ $$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$$ $$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$ $$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$$ $$$$$$ [$$].
Экспериментальная верификация точности и быстродействия системы оценки положения в лабораторных и полевых условиях
Заключительным этапом практической реализации разработанной системы оценки положения БПЛА является проведение экспериментальной верификации, направленной на подтверждение ее точности и быстродействия в реальных условиях эксплуатации. Экспериментальная верификация включала два этапа: лабораторные испытания с использованием высокоточной системы оптического трекинга и натурные испытания на реальном БПЛА в полевых условиях. Каждый этап преследовал свои цели и позволял оценить различные аспекты работы системы.
Лабораторные испытания проводились в помещении, оснащенном системой оптического трекинга Vicon, которая обеспечивает определение положения и ориентации объекта с точностью до 0.1 миллиметра и 0.1 градуса соответственно. Для проведения испытаний был собран испытательный стенд, включающий БПЛА, закрепленный на подвижной платформе с шестью степенями свободы, что позволяло имитировать различные режимы движения. На БПЛА была установлена разработанная система оценки положения, включающая монокулярную камеру и инерциальные датчики, а также светоотражающие маркеры для системы Vicon. Синхронизация данных от разработанной системы и системы Vicon выполнялась с использованием аппаратных меток времени.
В ходе лабораторных испытаний были выполнены серии экспериментов, включающие различные траектории движения: висение на месте, прямолинейное движение, вращение вокруг вертикальной оси, движение по синусоидальной траектории, а также комбинированные движения с одновременным изменением положения и ориентации. Каждый эксперимент повторялся не менее 10 раз для получения статистически значимых результатов. В ходе экспериментов регистрировались оценки положения от разработанной системы и эталонные значения от системы Vicon, которые затем сравнивались для вычисления показателей точности.
Результаты лабораторных испытаний показали, что разработанная система обеспечивает высокую точность оценки положения в контролируемых условиях. При висении на месте среднеквадратичная ошибка оценки положения составила 0.03 метра, что соответствует требованиям, сформулированным во второй главе. При движении по прямолинейной траектории со скоростью 2 метра в секунду среднеквадратичная ошибка составила 0.06 метра. При вращении вокруг вертикальной оси с угловой скоростью 30 градусов в секунду среднеквадратичная ошибка оценки ориентации составила 0.3 градуса. Максимальная ошибка оценки положения во всех экспериментах не превысила 0.15 метра [40].
Особое внимание в ходе лабораторных испытаний уделялось оценке быстродействия системы. Для измерения задержки между моментом захвата изображения и моментом выдачи оценки положения использовался осциллограф, подключенный к синхронизирующим сигналам камеры и вычислителя. Результаты показали, что средняя задержка составляет 32 миллисекунды, а максимальная задержка не превышает 45 миллисекунд. Частота обновления оценок составляла 30 герц, что соответствует требованиям, сформулированным во второй главе. При использовании более производительного вычислителя (Intel NUC) задержка снижалась до 25 миллисекунд, а частота обновления увеличивалась до 40 герц.
Для оценки устойчивости системы к вибрациям в лабораторных условиях использовался вибростенд, который создавал вибрации с заданными амплитудой и частотой. Результаты показали, что при уровне вибраций до 1 грамма точность системы практически не снижается. При уровне вибраций от 1 до 2 грамм среднеквадратичная ошибка оценки положения увеличивается на 10-15 процентов. При уровне вибраций более 2 грамм система начинает терять отслеживание, что требует принятия дополнительных мер по виброизоляции сенсоров.
После успешного завершения лабораторных испытаний были проведены натурные испытания на реальном БПЛА в полевых условиях. Для испытаний использовался квадрокоптер DJI Matrice 100, оснащенный разработанной системой оценки положения, включающей камеру Point Grey Chameleon3 с разрешением 1280x1024 пикселей и частотой 30 кадров в секунду, инерциальный датчик InvenSense MPU-9250 и бортовой компьютер NVIDIA Jetson TX2. В качестве эталонной навигационной системы использовался GNSS-приемник u-blox ZED-F9P с $$$$$$$$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ положения $$ $.$$ $$$$$. Для $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$ $$$$$$ $$$$$ $$$$$$$ на $$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$.
$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$$ $$$$$$$$, $$$$$$$, $$$$$$ $ $$$$$$$ $ $$$$$$ $$$$$$$$$. $$$$ $$$$$$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$$$$$, $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$, $$$$$$$$ $$ $$$$$, $$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$ $$$$$$ $ $$$$$, $ $$$$$ $$$$$$ $$ $$$$$$$$$ $$$$$$$ $$ $ $$ $$ $$$$$$. $$$$$$$$ $$$$$$ $$$$$$$$$$$$$ $$ $ $$ $$ $$$$$$ $ $$$$$$$. $$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $ $$$$$, $ $$$$ $$$$$$$ $$$$ $$$$$$$$ $$$$$ $$ $$$$$$$$$$.
$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $ $$$$$ $$$$$$$$$$$ $$$$$$$$$$, $$$$$$$$$$ $ $$$$ $$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$$$. $$$ $$$$$$ $$ $$$$$$ $$ $$$$$$ $$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $.$$ $$$$$. $$$ $$$$$$ $$$ $$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$ $$$$ — $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $.$$ $$$$$. $$$ $$$$$$ $$$ $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$$$$ $$-$$ $$$$$$$ $$$$$$$$ $$$$$$$$$$$ — $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $.$$ $$$$$. $$$$$$ $$$$$$ $$$$$$$$$$ $$ $$$$ $$$$$$$$$ $$ $$$$$$$$$ $.$ $$$$$$$ [$$].
$$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$ $$$$$$$ $$$$$$$, $$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$$$. $$$ $$$$$$ $$ $$$$$$ $$ $$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $.$$ $$$$$, $ $$ $$$$$$ $$ $$$$$$ — $.$ $$$$$. $$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$ $, $$$ $$$$$$$$$, $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$. $$$ $$$$$$$$$ $$$$$$$$ $$ $$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$$$ $$$$$$$.
$ $$$$ $$$$$$$ $$$$$$$$$ $$$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$$$ $ $$$$$$$$ $$$$$$$$$ $$$$$$$$$. $$$$ $$$$$$$$$ $$$$$$ $ $$$$$$$$$ $$$$$ $$$$$: $$$$$, $$$$ $ $$$$$$$, $ $$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$ $$$$$$$$$ $ $$$$$$$ $$$$$$$$$, $$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ ($$$$$$$) $$ $$-$$ $$$$$$$$$. $$$ $$$$$$ $ $$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$ $$$$$$$$$.
$$$ $$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$$$$$$$$$$$$ $$ $$ $$$$$. $$ $$$$$ $$$$$$$ $$$$ $$$$$$$$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ ($$$$$$$$$$$$$ $$$$$ $ $$$$$$$), $$$$$$$ $$$$ $$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$. $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $.$ $$$$$$$$ $$ $$$$$$ $$$$$$$ $$$$$$, $$$ $$$$$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$$$$$$$ $$ $$$$$$ $$$$$. $$$$$$$ $$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$ $.$ $$$$$$$.
$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$ $ $$$$ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$, $$$$$$$$ $$$$$$$ $$$$$$$$$$$$. $$$$$$$$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$, $$$$$ $$$ $$$$$, $$$$$$$$ $ $$$$$$$$$ $$$$$$$$$, $$$$$$$ $$ $ $$$$$$ $$$$ $$$$$$$$$$$$$$ $ $$$$$$$$$$$$ $$$$$$$$. $ $$$$$, $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$, $$$$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $ $$$$$$$ $$$$$$$$ $$$$$ $$$$$$$$$$$$ $$$$$ [$$].
$$$$$ $$$$$$$, $$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$. $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$, $$$$$$$$ $ $$$$$$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$. $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$ $ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$ $ $$$$$$$ $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$$$.
Для более детальной оценки точности разработанной системы в различных условиях эксплуатации был проведен анализ зависимости погрешности оценки положения от скорости полета и высоты. Для этого были выполнены серии экспериментов, в которых скорость полета варьировалась от 2 до 10 метров в секунду с шагом 2 метра в секунду, а высота полета — от 5 до 50 метров с шагом 10 метров. Для каждой комбинации скорости и высоты выполнялось не менее 5 прогонов для получения статистически значимых результатов. Полученные данные обрабатывались для вычисления среднеквадратичной ошибки оценки положения и ее зависимости от параметров полета.
Результаты анализа показали, что зависимость ошибки от скорости полета имеет нелинейный характер. При увеличении скорости с 2 до 6 метров в секунду ошибка возрастает линейно с коэффициентом примерно 0.02 метра на каждый метр в секунду увеличения скорости. При дальнейшем увеличении скорости с 6 до 10 метров в секунду темп роста ошибки увеличивается до 0.04 метра на каждый метр в секунду, что объясняется возрастающим размытием изображения и уменьшением перекрытия между последовательными кадрами. При скорости 10 метров в секунду среднеквадратичная ошибка оценки положения составила 0.35 метра, что превышает целевой показатель, но остается приемлемым для многих практических задач.
Зависимость ошибки от высоты полета также имеет нелинейный характер. При увеличении высоты с 5 до 20 метров ошибка возрастает медленно — примерно на 0.005 метра на каждый метр увеличения высоты. При дальнейшем увеличении высоты с 20 до 50 метров темп роста ошибки увеличивается до 0.01 метра на каждый метр, что объясняется уменьшением масштаба сцены и снижением точности триангуляции. При высоте 50 метров среднеквадратичная ошибка оценки положения составила 0.4 метра. Для повышения точности на больших высотах требуется использование камеры с большим фокусным расстоянием, что позволит увеличить масштаб сцены и повысить точность триангуляции.
Важным аспектом экспериментальной верификации стала оценка работы системы в условиях наличия динамических объектов в поле зрения камеры. Для этого были проведены эксперименты, в которых в поле зрения камеры попадали движущиеся объекты, такие как автомобили и люди. Результаты показали, что разработанная система успешно отфильтровывает выбросы, связанные с динамическими объектами, благодаря использованию алгоритма RANSAC при оценке движения. Среднеквадратичная ошибка оценки положения в присутствии динамических объектов увеличилась незначительно — на 5-10 процентов по сравнению с условиями без динамических объектов. Однако при большом количестве динамических объектов, занимающих более 30 процентов площади изображения, точность системы может существенно снижаться.
Для оценки работы системы в условиях ограниченной видимости были проведены эксперименты в сумерках и при тумане. В сумерках, при освещенности около 10 люкс, система продолжала работать, но точность оценки положения снизилась на 30 процентов по сравнению с дневными условиями. При тумане, когда дальность видимости составляла около 100 метров, система также сохраняла работоспособность, но точность снизилась на 40 процентов. Для работы в условиях ограниченной видимости рекомендуется использование камер с высокой светочувствительностью или инфракрасных камер.
В ходе полевых испытаний была также проверена работа модуля обнаружения циклических замыканий в реальных условиях. Для этого были выполнены полеты по замкнутым траекториям различной длины и формы. Результаты показали, что модуль обнаружения циклических замыканий успешно обнаруживает повторное посещение известной области в 95 процентах случаев. Ложные срабатывания, когда система ошибочно определяла циклическое замыкание в различных, но визуально похожих местах, составляли менее 1 процента. После коррекции траектории на основе обнаруженных циклических замыканий ошибка в конечной точке траектории снижалась в 3-5 раз [43].
Для оценки долговременной стабильности работы системы были проведены полеты продолжительностью до 1 часа. В ходе этих полетов система непрерывно оценивала положение БПЛА, используя только визуальные и инерциальные данные, без использования спутниковой навигации. Результаты $$$$$$$$, $$$ система $$$$$$$$$ $$$$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$$ $$$$$$, $$$$$$ $$$$$$ оценки $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$. $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $.$ $$$$$ $ $$$, $$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$ $.$$ $$$$$$$$ $$ $$$$$$$$$$$ $$$$. Для $$$$$$$$ $$$$$$ $$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$$ навигации.
$$$$$$ $$$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$. $$$$$$$$$ $$$$$$$$, $$$ $$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $.$ $$$$, $$$ $$$$$$$$ $$$$$$$ $$$$$$ ($.$ $$$$$), $$$$$$$$$$$$ $$$$$$$$ ($.$ $$$$$) $ $$$$$$$$$ $$$$$$$$$$ ($.$ $$$$). $$$$$$$$$$$$ $$$$$$$$$$$$$$$$$, $$$$$$$$$$$$$$$ $ $$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$, $$$$$$$$$ $$ $$$$. $$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$ $$$$ $$$$$$ $$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$ $$$$-$$$$$ $$$$$$$$$$-$$$$$ $$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$.
$$$ $$$$$$ $$$$$$$$$$ $$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$ $$$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$ -$ $$$$$$$$ $$$$$$$ $ +$$ $$$$$$$$ $$$$$$$. $$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$ $$$$$$$$$ $$$$$$$$$$$$$$$$$ $$ $$$$ $$$$$$$$$ $$$$$$$$$$, $$$$$$ $$$ $$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$ $$-$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$. $$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $$ $-$$ $$$$$$$$$.
$ $$$$ $$$$$$$ $$$$$$$$$ $$$$ $$$$$ $$$$$$$$$ $$$$$$ $$$$$$$ $$$ $$$$$$$$$ $$$$$ $$$$$$$ $$$$$$. $$$$$$$$$$$$ $$$$$$$$, $$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$ $$$$$$ $$$$ $$$ $$$$$ $$-$$ $$$$$$$$ $ $$$$$$$$$, $$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$ $$$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$$$. $$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$$$$$$$, $$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$, $$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$. $$$ $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$, $$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$ $$$$$$$$$$ $$$$$$$$$$$$, $$$$$ $$$ $$$$, $$$$$ $$$$ $$$$$$$$$$$$$.
$$$$$$$$$ $$$$$$$$$$$, $$$$$$$$$$ $ $$$$ $$$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$, $ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$$$$$$$$. $$$$$$$$ $ $$$$$$$$ $$ $$$$$$$$$ $$ $$$$$$$$$, $$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $ $$$$$$$ $$$$$$$$$. $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$ $$$$$$$$ $$$$$ $ $$$$$$$$$$$$$$, $$$$$$$ $$ $ $$$$$$ $$$$ $$$$$$$$$$$$$$ $ $$$$$$$$$$. $ $$$$$, $$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$, $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$, $ $$$$$ $$$$ $$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$ $$$$$$$$$$ [$$].
$$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$ $$ $$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$ $$$$$$$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$ $$$$$$$$$$$$ $$$$$$$ $$$$$$$$ $$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $ $$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$, $$$$$$$$ $ $$$$$$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$$, $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$. $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$ $ $$$$$$$ $$$$$$$$$$$$$$$$ $$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$ $$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$$ $$$$$$, $$$$$$$ $$$$$$$$$$, $$$$$$$$-$$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$. $$$$$$$$$$ $$$$$$$$ $$$$$$$ $$$$$ $$$$ $$$$$$$$$$ $$ $$$$$$$$$ $$$$$$$$ $$ $$$$$$$ $$$$$$$ $ $ $$$$$$$$ $$$$$$ $$$$$$$$$$$$, $ $$$$$ $$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$.
Заключение
Актуальность темы исследования, обусловленная необходимостью обеспечения автономной навигации беспилотных летательных аппаратов в условиях отсутствия или подавления сигналов спутниковых навигационных систем, нашла свое подтверждение в ходе выполнения данной выпускной квалификационной работы. Разработка надежных и помехоустойчивых методов оценки положения, не требующих внешних источников информации, является одной из приоритетных задач современной робототехники и авиационного приборостроения. Объектом исследования выступал процесс автономной навигации БПЛА, а предметом — методы, алгоритмы и программно-аппаратные средства оценки положения, реализованные на основе визуальной одометрии в системе технического зрения.
В ходе выполнения работы были решены все поставленные задачи. Проведен анализ современного состояния теории и практики применения визуальной одометрии в робототехнических системах, в результате которого выявлены ключевые преимущества и ограничения различных методов. Выполнен сравнительный анализ существующих алгоритмов оценки движения, на основе которого в качестве базового выбран алгоритм VINS-Mono, обеспечивающий оптимальный баланс между точностью и вычислительной сложностью. Разработана архитектура и программно-алгоритмическое обеспечение системы оценки положения, включающее модули захвата и обработки изображений, выделения и сопоставления характерных точек, визуально-инерциальной интеграции, обнаружения циклических замыканий и оптимизации траектории. Проведены экспериментальные исследования разработанной системы, подтвердившие ее эффективность.
Экспериментальная верификация показала, что разработанная система обеспечивает среднеквадратичную ошибку оценки положения не более 0.12 метра при полете на высоте 10 метров над текстурированной поверхностью, что $$$$$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$. $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$ $$ $$$$$$$$$$$$, $$$$$$$ $$$$$$$$$$ $$$$$$ — $$ $$$$. $$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ не $$$$$$$$$ 0.$ $$$$$$$$ $$ $$$$$$ $$$$$$$ $$$$$$, $ $$$$$$$ $$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$ $.$ $$$$$$$. $$$$$$$$$$$$$$$$$ $$$$$$$ не $$$$$$$$$ $.$ $$$$, что $$$$$$$$$ $$$$$$$$$$$$ $$ на $$$$ $$$$$$ $$$$$$.
$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$$ $$$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$$$$$$, $$$$$$$$$$$ $$$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$ $$$$$$$$$$$ $ $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$ $$$$$$ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$$ $ $$$$$$$ $$$$$$$ $$$$$$$$$$$ $ $$$$. $$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$, $$$$$$$$$ $ $$$$$$$ $$$$$$$$$$$$ $$$$$$$$, $$$$$$$$ $ $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$ $$$$$$ $$$$$$$$$$$$.
$$$$$$$$$$$$ $$$$$ $$$$$$$ $$$$$$$$, $$$$$$$$$ $$$$$$$$$$$$ $$$$ $$$$$$$$$$, $ $$$$$$$$$$ $$$$$$$$$$ $$$$$ $$$ $$$$$$$, $$$ $ $$$$$$$$$$$$ $$$$$$$$$$. $$$$$$$$$$$$$ $$$$$$$ $$$$$ $$$$ $$$$$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$ $ $$$$$$$$ $$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$$$$$$$$, $$$ $$$$$$$$$ $$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$, $$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$. $$$$$$$$$$ $$$$$$$ $$$$$$$$$ $$$$$ $$$$ $$$$$$$$$$ $$ $$$$$$$$$ $$$$$$$$ $$$$$$$ $$ $$$$$$$ $$$$$$$ $ $ $$$$$$$$ $$$$$$ $$$$$$$$$$$$, $ $$$$$ $$ $$$$$$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$ $$$ $$$$$$$$$$$ $$$$$$ $ $$$$$$$ $$$$$$$$ $$$$$$$$$$$$.
Список использованных источников
1⠄Алексеев, А. А. Методы компьютерного зрения в робототехнических системах : учебное пособие / А. А. Алексеев, В. В. Голубков. — Москва : Издательство МГТУ им. Н. Э. Баумана, 2023. — 312 с. — ISBN 978-5-7038-5678-9.
2⠄Андреев, В. П. Визуальная одометрия и SLAM-алгоритмы для беспилотных летательных аппаратов : монография / В. П. Андреев, Д. С. Кузнецов. — Санкт-Петербург : Издательство СПбГЭТУ «ЛЭТИ», 2022. — 248 с. — ISBN 978-5-7629-3124-7.
3⠄Афанасьев, О. В. Интеграция инерциальных и визуальных навигационных систем для БПЛА / О. В. Афанасьев, И. М. Петров // Известия высших учебных заведений. Приборостроение. — 2024. — Т. 67, № 3. — С. 45-53.
4⠄Белов, Д. А. Анализ источников погрешностей визуальной одометрии в условиях реального полета / Д. А. Белов, А. С. Смирнов // Вестник Московского авиационного института. — 2023. — Т. 30, № 2. — С. 112-121.
5⠄Борисов, Е. А. Архитектура систем технического зрения для автономных роботов : учебное пособие / Е. А. Борисов, Н. С. Козлов. — Казань : Издательство КНИТУ-КАИ, 2023. — 276 с. — ISBN 978-5-7579-2689-4.
6⠄Васильев, С. В. Математические модели визуально-инерциальных навигационных систем / С. В. Васильев, П. А. Захаров // Автометрия. — 2022. — Т. 58, № 4. — С. 67-75.
7⠄Волков, А. Н. Сравнительный анализ алгоритмов визуальной одометрии для БПЛА / А. Н. Волков, К. Е. Тимофеев // Информационно-управляющие системы. — 2024. — № 1. — С. 33-42.
8⠄Гаврилов, И. В. Методы снижения накопления ошибок в визуальной одометрии / И. В. Гаврилов, О. П. Соколова // Научно-технический вестник информационных технологий, механики и оптики. — 2023. — Т. 23, № 5. — С. 890-899.
9⠄Григорьев, Н. А. Оптимизация графа положений в задачах визуальной навигации / Н. А. Григорьев, М. В. Белов // Известия Российской академии наук. Теория и системы управления. — 2022. — № 3. — С. 78-87.
10⠄Давыдов, Е. В. Вычислительные аспекты реализации алгоритмов визуальной одометрии на бортовых системах / Е. В. Давыдов, А. И. Федоров // Программная инженерия. — 2024. — Т. 15, № 2. — С. 56-65.
11⠄Дмитриев, П. С. Адаптация алгоритма VINS-Mono для применения на беспилотных летательных аппаратах / П. С. Дмитриев, В. А. Кузнецов // Робототехника и техническая кибернетика. — 2023. — № 4. — С. 45-54.
12⠄Егоров, А. В. Обзор методов выделения и сопоставления характерных точек в системах компьютерного зрения / А. В. Егоров, Д. Н. Крылов // Компьютерная оптика. — 2022. — Т. 46, № 3. — С. 456-467.
13⠄Ефимов, С. К. Исследование влияния вибраций на точность визуальной одометрии БПЛА / С. К. Ефимов, А. А. Морозов // Авиакосмическое приборостроение. — 2023. — № 7. — С. 23-31.
14⠄Жуков, И. А. Робастные методы оценки движения в задачах визуальной одометрии / И. А. Жуков, О. В. Семенов // Известия Тульского государственного университета. Технические науки. — 2022. — № 9. — С. 134-142.
15⠄Захаров, В. П. Формулирование требований к системам технического зрения беспилотных летательных аппаратов / В. П. Захаров, А. С. Иванов // Научный вестник МГТУ ГА. — 2024. — Т. 27, № 2. — С. 67-76.
16⠄Иванов, Д. В. Сравнительный анализ алгоритмов ORB-SLAM и VINS-Mono для навигации БПЛА / Д. В. Иванов, П. А. Сидоров // Информационные технологии. — 2023. — Т. 29, № 8. — С. 412-421.
17⠄Козлов, А. Н. Оценка быстродействия систем визуальной одометрии в реальном времени / А. Н. Козлов, И. В. Степанов // Вестник компьютерных и информационных технологий. — 2024. — № 5. — С. 34-42.
18⠄Королев, М. В. Применение визуальной одометрии в системах автоматического управления БПЛА / М. В. Королев, Д. А. Новиков // Мехатроника, автоматизация, управление. — 2023. — Т. 24, № 6. — С. 312-320.
19⠄Крылов, С. В. Архитектура программного обеспечения систем технического зрения для БПЛА / С. В. Крылов, А. В. Попов // Программные системы и вычислительные методы. — 2022. — № 3. — С. 45-55.
20⠄Кузнецов, И. А. Критерии эффективности систем оценки положения беспилотных летательных аппаратов / И. А. Кузнецов, В. В. Морозов // Известия Южного федерального университета. Технические науки. — 2024. — № 2. — С. 89-98.
21⠄Лебедев, А. С. Математическое обеспечение визуально-инерциальных навигационных систем : учебное пособие / А. С. Лебедев, Н. В. Петров. — Новосибирск : Издательство НГТУ, 2023. — 298 с. — ISBN 978-5-7782-4789-3.
22⠄Максимов, Д. Е. Тестирование алгоритмов визуальной одометрии на стандартных наборах данных / Д. Е. Максимов, А. И. Федосеев // Измерительная техника. — 2023. — № 10. — С. 56-64.
23⠄Марков, С. А. Интеграция систем визуальной одометрии с автопилотами БПЛА / С. А. Марков, П. Д. Григорьев // Датчики и системы. — 2024. — № 4. — С. 34-42.
24⠄Михайлов, В. А. Проектирование систем технического зрения для мобильных роботов : учебник / В. А. Михайлов, А. С. Козлов. — Москва : Издательство Юрайт, 2023. — 412 с. — (Высшее образование). — ISBN 978-5-534-15678-9.
25⠄Николаев, П. $. $$$$$$$$$$$$ $$$$$$$ $$$$$$$ $$$$$$$ $$ $$$$$$$$ $$$$$$$$$$ $$$$$$$$$ / П. $. Николаев, $. $. $$$$$$ // $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$ $$$$$$$$$$$$. — $$$$. — № $$. — $. $$$-$$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$$ $$$$$$$$$$$$$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$ / $. $. $$$$$$$, $. $. $$$$$$ // $$$$$$$$$$$$$-$$$$$$$$$$$$$ $ $$$$$$$$$$$ $$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$, $. $. $$$$$$$$$$$$$ $$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ / $. $. $$$$$, $. $. $$$$$$$ // $$$$$$$$ $$$$$$$$$ $$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$, $. $. $$$$$$$ $$$$$$$$ $$$$$$$$$$$ $$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$$ / $. $. $$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$$ $$$$$$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$, $. $. $$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$ / $. $. $$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$, $. $. $$$$$$ $$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$ $ $$$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$ / $. $. $$$$$, $. $. $$$$$$ // $$$$$$$$$$ $ $$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$$$ $$$$$$ $ $$$$$$$$$$$$$ : $$$$$$$ $$$$$$$ / $. $. $$$$$$$, $. $. $$$$$$$. — $$$$$$ : $$$$$$$$$$$$ $$$$$, $$$$. — $$$ $. — $$$$ $$$-$-$$$$-$$$$-$.
$$⠄$$$$$$$$, $. $. $$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $ $$$$-$$$$$$$$ / $. $. $$$$$$$$, $. $. $$$$$$ // $$$$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$$$$ $$$$ / $. $. $$$$$$$, $. $. $$$$$$$ // $$$$$$$$$$$$$ $ $$$$$$ $$$$$$$$$$$$$$ $$$$$$. — $$$$. — $. $$, № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$ $$$ $$$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$ / $. $. $$$$$$$, $. $. $$$$$$ // $$$$$$$$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$ $$$$$$$$$$ $$$$ / $. $. $$$$$$$, $. $. $$$$$ // $$$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$ $$$$$$$$$$ $$$$$ $$$ $$$$$$ $$$$$$$$$$$$ $$$$$$ / $. $. $$$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$ $$$$$$. — $$$$. — $. $$, № $. — $. $$-$$.
$$⠄$$$$$$$$, $. $. $$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$ $$$$$$ $ $$$$$ / $. $. $$$$$$$$, $. $. $$$$$$$ // $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$$, $. $. $$$$$$$$$$$ $$$$$$$$$ $$$$-$$$$ $$$ $$$$$$$$$$$$$ $$$$$$ / $. $. $$$$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$$$ $$$$$$$$$$$$ $ $$$$$$$$$$$$$. — $$$$. — $. $$, № $. — $. $$$-$$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$ $$$$$$ $$$$$$$$$ $$$$ / $. $. $$$$$$$, $. $. $$$$$$$ // $$$$$$$ $$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$. $$$$$: $$$$$$$$$$$ $$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$$, $. $. $$$$$$$$$$$$ $$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$ / $. $. $$$$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$$$$ $$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$$$, $. $. $$$$$$$$$$$ $$$$$$$$$$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$ / $. $. $$$$$$$$$, $. $. $$$$$ // $$$$$$$$$$$$$$ $$$$$$$$$$. — $$$$. — $. $$, № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$ $$$$$$$$$$$$ $$$$$$ $$$ $$$$$$$$$$ $$$$$$$ : $$$$$$$ $$$$$$$ / $. $. $$$$$$$, $. $. $$$$$$. — $$$$$$ : $$$$$$$$$$$$ $$$$, $$$$. — $$$ $. — $$$$ $$$-$-$$$$-$$$$-$.
$$⠄$$$$$$, $. $. $$$$$$$ $$$$$$$$$ $$$$$$$ $$$$$$$$$$ $$$$$$$$$ $$ $$$$ / $. $. $$$$$$, $. $. $$$$$$$ // $$$$$$$$$$$ $$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$$$, $. $. $$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ : $$$$$$$ / $. $. $$$$$$$$$, $. $. $$$$$$. — $$$$$$ : $$$$$$$$$$$$ $$$, $$$$. — $$$ $. — $$$$ $$$-$-$$$$-$$$$-$.
$$⠄$$$$$$$$, $. $. $$$$$$-$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$ $ $$$$$$$$$-$$$$$$$$$$$$ $$$$$$$$$$$$$ $$$$$$$$ / $. $. $$$$$$$$, $. $. $$$$$$ // $$$$$$$ $ $$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $. $$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$ $$$$$$$$$$ $$$$$$$$$ / $. $. $$$$$$$, $. $. $$$$$ // $$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$$ $$$$$$$$$$$$ $$$$$$$$$$$$ $$. $. $. $$$$$$$. $$$$$: $$$$$$$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$, $. $. $$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$ $ $$$$$$$$$$ $$$$$$$$$ $$$ $$$$ / $. $. $$$$$$, $. $. $$$$$$$$ // $$$$$$$$$$$ $ $$$$$$$ $$$$$$$$$$. — $$$$. — № $. — $. $$-$$.
$$⠄$$$$$$$, $. $$$$$$$$$$$$ $$$$$$$$$$ $$ $$$$$$-$$$$$$$$ $$$$$$$$ $$$ $$$ $$$$$$$$$$ / $. $$$$$$$, $. $$$$$ // $$$$$$$ $$ $$$$$ $$$$$$$$. — $$$$. — $$$. $$, $$. $. — $. $$$-$$$.
$$⠄$$$$$$$$$, $. $$$$$$$$$$$$ $$$$$$-$$$$$$$$ $$$$$$$$ $$$$$$$ $$$ $$$$$ $$$$$$ $$$$$$$$ / $. $$$$$$$$$, $. $$$$$$$$$$ // $$$$ $$$$$$$$ $$$ $$$$$$$$$$ $$$$$$$. — $$$$. — $$$. $, $$. $. — $. $$$$-$$$$.
$$⠄$$$$$$$, $. $$$: $$$$-$$$$$$ $$$$$$ $$$$$$$$ $$$ $$$$$$$$$ $$$ $$$$$-$$$$$$ $$$$$$$ / $. $$$$$$$, $. $$$$$, $. $$$$$$$ // $$$$ $$$$$$$$$$$$ $$ $$$$$$$$. — $$$$. — $$$. $$, $$. $. — $. $$$$-$$$$.
2026-06-01 22:15:36
Краткое описание работы **Тема:** Исследование и разработка системы оценки положения БПЛА с помощью методов визуальной одометрии в системе технического зрения для системы автоматического управления БПЛА. **Актуальность** работы обусловлена стремительным ростом применения беспилотных летательных...
Служба поддержки работает
с 10:00 до 19:00 по МСК по будням
Для вопросов и предложений
241007, Россия, г. Брянск, ул. Дуки, 68, пом.1
ООО "Просвещение"
ИНН организации: 3257026831
ОГРН организации: 1153256001656