Комп'ютерний зір (оптичний потік, MoCap, VIO, уникання)
Техніки комп'ютерного зору дозволяють комп'ютерам використовувати візуальні дані для розуміння їх оточення.
PX4 використовує системи комп'ютерного зору (переважно запущені на супутніх комп'ютерах) для підтримки наступних функцій:
- Оптичний потік забезпечує оцінку швидкості у двох вимірах (з використанням камери, спрямованої вниз, та датчика відстані, спрямованого вниз).
- Захоплення руху забезпечує оцінку позиції у трьох вимірах за допомогою візійної системи, яка знаходиться поза транспортним засобом. Це переважно використовується для внутрішньої навігації.
- Візуальна інерціальна оцінка положення забезпечує оцінку позиції та швидкості у трьох вимірах за допомогою вбудованої візійної системи та ІВП. Це використовується для навігації в тих випадках, коли інформація про позицію GNSS відсутня або ненадійна.
- Уникання перешкод забезпечує повну навігацію навколо перешкод під час польоту за запланованим маршрутом (наразі підтримуються місії). Це використовує PX4/PX4-Avoidance, яке працює на супутньому комп'ютері.
- Уникнення зіткнення використовується для зупинки транспортних засобів перед тим, як вони зіткнуться з перешкодою (переважно при польоті у ручних режимах).
TIP
Набір для розвитку автономності візійної системи PX4 (від Holybro) - це надійний та доступний набір для розробників, які працюють з комп'ютерним зором на PX4. Він поставляється без попередньо встановленого програмного забезпечення, але включає приклад реалізації уникання перешкод для демонстрації можливостей платформи.
Захоплення руху
Захоплення руху (MoCap) - це техніка оцінки тривимірного положення (позиції та орієнтації) транспортного засобу з використанням механізму позиціонування, який знаходиться поза транспортним засобом. Системи захоплення руху найчастіше виявляють рух за допомогою інфрачервоних камер, але також можуть використовуватися інші типи камер, лідар або ультраширокосмуговий радіорухометр (УШР).
:::note Захоплення руху (MoCap) часто використовується для навігації транспортного засобу в ситуаціях, де відсутній GPS (наприклад, всередині приміщень) та надає позицію відносно локальної системи координат. :::
Для отримання інформації про MoCap, перегляньте:
- Оцінка зовнішньої позиції
- Літання з використанням захоплення руху (VICON, NOKOV, Optitrack)
- EKF > Зовнішня візійна система
Візуальна інерціальна оцінка положення (VIO)
Візуальна інерціальна оцінка положення (VIO) використовується для оцінки тривимірного положення (позиції та орієнтації) та швидкості руху транспортного засобу відносно місцевої початкової позиції. Часто використовується для навігації транспортного засобу в ситуаціях, де GPS відсутній (наприклад, всередині приміщень) або ненадійний (наприклад, при польоті під мостом).
VIO використовує візуальну одометрію для оцінки положення транспортного засобу на основі візуальної інформації, поєднаної з інерційними вимірами від ІНС (для корекції помилок, пов'язаних з швидким рухом транспортного засобу, що призводить до поганого захоплення зображення).
:::note Однією з відмінностей між VIO і MoCap є те, що камери/ІНС VIO базуються на транспортному засобі, і додатково надають інформацію про швидкість. :::
Для отримання інформації щодо налаштування VIO на PX4 дивіться:
Оптичний потік
Оптичний потік забезпечує оцінку швидкості у двох вимірах (з використанням камери, спрямованої вниз, та датчика відстані, спрямованого вниз).
Для отримання інформації про оптичний потік, перегляньте:
Порівняння
Оптичний потік та VIO для оцінки локального положення
Обидва методи використовують камери і вимірюють різницю між кадрами. Оптичний потік використовує камеру, спрямовану вниз, тоді як VIO використовує стереокамеру або камеру з відстеженням під кутом 45 градусів. Припускаючи, що обидва методи добре калібруються, який з них краще для оцінки локального положення?
Консенсусом здається:
Оптичний потік:
- Оптичний потік, спрямований вниз, надає вам планарну швидкість, яка коригується на кутову швидкість за допомогою гіроскопа.
- Вимагає точної відстані до землі і передбачає планарну поверхню. Враховуючи ці умови, це може бути настільки ж точним / надійним, як VIO (для польотів у приміщенні)
- Має більшу надійність, оскільки має менше станів, ніж VIO.
- Значно дешевший і легший у налаштуванні оскільки для цього потрібен лише датчик оптичного потоку, дальномір та налаштування кількох параметрів (які можна підключити до керуючого пристрою польоту).
VIO:
- Дорожче придбати і складніше налаштувати. Потребує окремий супутній комп'ютер, калібрування, програмне забезпечення, конфігурацію та інше.
- Буде менш ефективним, якщо відсутні точкові особливості для відстеження (на практиці реальний світ зазвичай має точкові особливості).
- Більш гнучкий і дозволяє додаткові функції, такі як уникання перешкод і картографування.
Комбінація (об'єднання обох) ймовірно найбільш надійна, хоча не обов'язкова в більшості реальних сценаріїв. Зазвичай ви оберете систему, яка відповідає вашому робочому середовищу, потрібним функціям та обмеженням вартості:
- Використовуйте VIO якщо ви плануєте летіти на відкритому повітрі без GPS (або на відкритому повітрі) або якщо вам потрібно підтримати уникання перешкоди та інші функції зору комп'ютера.
- Використовувати оптичний потік, якщо ви плануєте лише літати в приміщенні (без GPS) і вартість є важливою.
Зовнішні ресурси
- XTDrone - ROS + PX4 середовище симуляцій для комп'ютерного бачення. У Посібнику з роботи з дроном XT є все необхідне для початку роботи!