Ответ ДА.Я редко использую GPS в своей задаче навигации.Разница лишь в том, насколько сложным вам должно быть аппаратное / программное обеспечение, чтобы быть
DJI OSDK
Для большей части моего проекта в прошлом году я использую DJI OSDK ROS для полетаДрон с чистой LDIAR или камерой.посмотрите пример видео отсюда.Внутри работает визуальная внутренняя навигация со стерео узлом.Я пробовал с DJI A3 / N3 / M100 / M210 / M600.все работает отлично.Сложное аппаратное обеспечение, но программное обеспечение простое и понятное. https://www.youtube.com/watch?v=1AbfRENy3OQ&t=90s
DJI MSDK или PSDK
Для других случаев, таких как DJI MSDK или PSDK (если у вас есть доступ), вы можетеиспользуйте другие методы, такие как потоковое видео и делайте это на месте, а затем отправьте команду управления.Посмотрите мое видео (это не DJI A3, но схожая концепция. Я отбрасываю эту идею после школьного проекта, так как она не подходит для реального коммерческого применения).Это PTAM с EKF для слияния IMU https://www.youtube.com/watch?v=6xNINp7nnDge
Код, идущий сзади, отсюда https://github.com/tum-vision/tum_ardrone.
DJIMSDK предназначен для замены этой ссылки, упомянутой в tum_arrone https://github.com/AutonomyLab/ardrone_autonomy.
Все, что вам нужно сделать, - это изменить систему ввода и вывода исходного кода на Android C ++ lib.Это нелегкая работа, но я уже видел, как другие делают это.Он прост в аппаратном обеспечении, но больше работает в программном обеспечении
DJI WSDK
Даже для DJI Windows SDK вы все равно можете использовать чистый подход на основе PTAM в многофункциональной области.Как показано на рисунке ниже.Это полуавтоматическая визуальная одометрия от группы ETH.Его минимальные усилия как в аппаратном, так и в программном обеспечении.Единственная проблема в том, что вам нужно, чтобы это была многофункциональная область.
Я совершенно не согласен с @Ken, поскольку оптический поток предназначен только для удержания положения низкого уровня / микроконтроллера.Он не предназначен для динамической оценки одометрии / состояния.Для высокоуровневой общей локализации и картирования требуется как минимум визуальная одометрия / SLAM.И не только на небольшой высоте, средняя и большая высота также будет работать, как показано на рисунке ниже
Код для получения этого изображения доступен наздесь https://github.com/uzh-rpg/rpg_svo