Версия для печати
Молодежная инженерная команда «СевГУ-ИИАСУ» успешно справилась с непростой задачей: созданием системы, которая помогает беспилотным летательным аппаратам (БПЛА) удерживать стабильное положение в воздухе во время зависания.

Инженерная команда СевГУ разработала механизм точного позиционирования дронов

Работа велась в рамках федерального проекта «Кадры для БАС», куратором которого является Университет 2035. 

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

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

В дальнейшем планируется протестировать разработанное решение на двух аппаратных платформах: Raspberry Pi и NVIDIA Jetson. Основной подход команды основан на исследовании методов визуальной одометрии и навигации, которые используют данные фотосъемки (ортофотопланы) и инерциальные датчики.

Наставник команды, старший преподаватель кафедры «Искусственный интеллект и автономные системы управления» Иван Липко отметил, что особое внимание было уделено созданию собственного набора данных.

«Поскольку у команды изначально не было видеоматериалов с БПЛА, пришлось разрабатывать его с нуля. Для этого был использован крупномасштабный ортофотоснимок карты, по которому с помощью кривых Безье была спроектирована траектория движения аппарата», – рассказал Липко.

Среди выбранных методов трекинга были применены KLT-трекер и легковесная нейросеть LightFlowNet.

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

«В целом мы выяснили, что для хорошей работы алгоритмов GSD должен быть в пределах 3-4 сантиметров на пиксель. Если этот показатель выше, точность определения снижается», – пояснил Иван Липко.

Изучив два подхода к решению задачи, ученые сделали ряд выводов.

Первый, классический метод, оказался весьма доступным: он не требует значительных вычислительных мощностей и может быть реализован даже на маломощных устройствах, таких как Raspberry Pi. Использование более производительного оборудования позволяет добиться более высокой частоты кадров, что делает работу более плавной.

Второй метод, основанный на применении нейросети требует более мощных вычислительных ресурсов. Несмотря на это, результаты оказались весьма обнадеживающими и демонстрировали хорошее качество при различных настройках. Нейросеть показала стабильно высокие результаты как при низком разрешении изображения (144p), так и при более высоком (720p), что является значительным преимуществом.

«Команда продемонстрировала высокий темп работы, интересный и практически реализуемый подход к задаче автономной навигации, а также существенные результаты за настолько небольшой промежуток времени (всего полтора месяца). Интересно было наблюдать за работой команды, быть частью проекта. Удачи вам, и надеемся на дальнейшее сотрудничество», – отметил заказчик исследований, директор по инновациям ООО НПП «АВАКС-ГеоСервис» Василий Каретин.