Сопровождение оператора при управлении полетом квадрокоптера в задачах сельского хозяйства

Автор: Шушков Р.А., Рапаков Г.Г.

Журнал: АгроЗооТехника @azt-journal

Рубрика: Общее земледелие и растениеводство

Статья в выпуске: 4 т.8, 2025 года.

Бесплатный доступ

Повышение эффективности агропроизводства требует внедрения цифровых технологий в современное растениеводство. Одной из ключевых задач агропромышленного комплекса является оперативный мониторинг полей и сельскохозяйственной техники. В этом контексте автономные беспилотные летательные аппараты с функцией слежения за оператором представляют особый интерес, так как помогают автоматизировать сопровождение агронома при объезде угодий; контролировать работу полевой техники в реальном времени; оптимизировать маршруты перемещения по полям. Целью исследования является разработка системы сопровождения оператора беспилотного летательного аппарата, которая позволяет решить научно-технические проблемы обеспечения стабильного трекинга при ограниченных вычислительных ресурсах, предлагая использование доступных платформ для решения задач автоматического следования за оператором; учет типичных скоростей перемещения агронома (5–7 км/ч); снижение требований к квалификации оператора; управление в условиях, когда объект сопровождения занят своими задачами; программирование через Python SDK; использование нейросетевых алгоритмов и методов компьютерного зрения, что обусловливает научную новизну исследования. В результате разработана надежная система сопровождения оператора БПЛА на основе нейросетевого подхода с учетом аппаратных ограничений и оптимизации параметров слежения за объектом в реальных условиях. Получено свидетельство о государственной регистрации программы для ЭВМ «Сопровождение оператора в задаче управления полетом квадрокоптера» с № RU 2025615266. Внедрение системы сопровождения оператора при масштабировании проекта определяет области применения полученных результатов в агропромышленном комплексе региона и позволит снизить трудозатраты агронома на мониторинг посевов, увеличить скорость обследования полей, уменьшить потери урожая за счет раннего выявления проблем, повысить точность агрохимических операций. Результаты работы могут быть использованы в учебном процессе образовательных организаций. Дальнейшие перспективы научно-исследовательской работы связаны с интеграцией технологии в агротехнологические процессы растениеводства с учетом специфики сельскохозяйственных предприятий – партнеров региона.

Еще

Искусственный интеллект, цифровая трансформация, агропромышленный комплекс, беспилотные летательные аппараты, компьютерное зрение

Короткий адрес: https://sciup.org/147252065

IDR: 147252065   |   УДК: 633/635:004.8   |   DOI: 10.15838/alt.2025.8.4.4

Текст научной статьи Сопровождение оператора при управлении полетом квадрокоптера в задачах сельского хозяйства

Беспилотные летательные аппараты (БПЛА) нашли широкое применение в различных сферах человеческой деятельности: от видеосъемки и мониторинга до поисково-спасательных операций и сельского хозяйства (Романец, Мудриченко, 2024; Свинарев, Евтушкова, 2024; Бояринов, 2023). Повышение эффективности агропроизводства требует внедрения цифровых технологий в современное растениеводство (Волотина и др., 2024; Маркова и др., 2020). Одной из ключевых задач агропромышленного комплекса (АПК) является оперативный мониторинг полей и сельскохозяйственной техники (Рапаков, Шушков, 2024). В этом контексте автономные БПЛА с функцией слежения за оператором представляют особый интерес, так как позволяют автоматизировать сопровождение агронома при объезде угодий; контролировать работу полевой техники в реальном времени; оптимизировать маршруты перемещения по полям (Пчелинцева, Андреев, 2019; Кладко, 2018).

Управление дроном с использованием слежения за лицом оператора – это перспективная технология, позволяющая контролировать полет БПЛА; автоматически отслеживать и сопровождать человека квадрокоптером, определяя его местоположение по лицу (или другим визуальным признакам). Однако на практике разработчик сталкивается с множеством проблем, начиная от подключения к дро- ну и вывода изображения с его камеры; включая трудности эксплуатации библиотек для распознавания лиц; ложное детектирование; удержание лица в кадре при передвижении за ним квадрокоптера; подбор библиотеки и методов, дающих возможность с требуемой точностью обнаружить конкретное лицо при минимальных вычислительных затратах (Ка-тернюк и др., 2024).

Трекинг за движением оператора по лицу (Face Tracking) при помощи камеры позволяет дрону автоматически сопровождать человека, определяя его местоположение. Для обнаружения лица квадрокоптер использует бортовую камеру и алгоритмы компьютерного зрения (КЗ) на основе OpenCV, нейронных сетей (НС) YOLO и MediaPipe или SSD-MobileNet для мобильных устройств. Отслеживание движения оператора начинается после фиксации положения лица в кадре. Дрон корректирует свой полет так, чтобы удерживать оператора в центре изображения. Для управления дроном система отправляет команды полетному контролеру (вперед/назад, влево/ вправо, вверх/вниз) для сохранения оптимальной дистанции (с помощью PID-регулятора) и угла обзора.

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

Для стабилизации и прогнозирования движения используют:

– фильтрацию дрожания при помощи рекурсивного алгоритма фильтра Калма-на (Kalman Filter), который оценивает вектор состояния динамической системы, используя последовательность зашумленных и неполных сигналов;

– предсказание траектории оператора для плавного сопровождения.

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

Варианты технологических стеков

  • 1.    Для трекинга:

    – совместно применяют библиотеки для задач КЗ – OpenCV и Dlib, которые содержат инструменты для обработки изображений, распознавания лиц и обнаружения объектов с помощью алгоритмов машинного обучения (МО); OpenCV поддерживает обработку изображений (чтение и запись, анализ видео, стереоскопические изображения, поиск объектов); Dlib специализируется на распознавании лиц, обнаружении ориентиров лица и его выравнивании на основе предварительно обученных моделей;

    – масштабируемая модель обнаружения объектов YOLO-NAS от компании Deci AI с технологией автоматического поиска нейронной архитектуры (AutoNAC), генерирующей структуру модели, с высокой точностью и низкой задержкой;

    – кроссплатформенная модель MediaPipe Face Detection как часть библиотеки MediaPipe (Google) для обнаружения лиц и отслеживания их особенностей на изображениях и видео за несколько миллисекунд. Малый размер модели (565 КБ) делает ее пригодной для использования на мобильных устройствах. Модель обеспечивает высокую точность при различных условиях освещения.

  • 2.    Для управления: набор модулей Python SDK при взаимодействии с дро-

  • ном DJI Tello, предоставляет команды для движения, вращения, флипов и управления камерой в ходе натурного моделирования по проекту.

Управление при помощи PID-регулятора применяют для плавного движения дрона за объектом. Интеграция с дроном выполняется по протоколу связи, который поддерживает передачу данных через интерфейс UART (универсальный асинхронный прием/передатчик) и беспроводную сеть Wi-Fi – WiFi/UART и Python SDK.

В целях оптимизации используют C++ вместо Python для критичных участков кода в целях уменьшения задержек; применяют адаптацию к перемене освещения за счет совместного использования цветового пространства HSV (Hue, Saturation, Value) и метода гистограммной коррекции.

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

  • – изучить алгоритмы компьютерного зрения и нейросетевые методы в задаче управления движением квадрокоптера; обеспечить: обнаружение лица при помощи бортовой камеры дрона с использованием алгоритмов компьютерного зрения; отслеживание движения после обнаружения (дрон фиксирует положение лица в кадре и корректирует полет, чтобы удержать оператора в центре изображения); управление квадрокоптером (программа отправляет управляющие полетные команды – вперед/назад, влево/вправо, вверх/вниз для сохранения заданной дистанции и угла обзора); автономная работа без использования GPS, ручного управления (кроме экстренной посадки) в реальном масштабе времени;

    – разработать программное обеспечение на языке программирования Python для автономного слежения БПЛА за оператором на основе компьютерного зрения с использованием трекинга лица, обеспечивающего стабильное сопровождение без необходимости ручного управления с точностью не менее 80% при скорости движения оператора до 1 м/с и задержкой не более 0,5 сек.

Объектом исследования является система автономного слежения беспилотным летательным аппаратом за движущимся оператором на основе компьютерного зрения. Предмет исследования: алгоритмы и методы, обеспечивающие автономное слежение БПЛА за оператором на основе трекинга лица в части алгоритмов компьютерного зрения, системы управления полетом, эффективных вычислений для задач реального времени.

Материалы и методы

Проблема автономного слежения дронов за оператором активно исследуется в последние годы. Сравнительный анализ существующих решений представлен в табл. 1.

На этапе анализа существующих решений традиционным является сравнение методов трекинга: каскады Хаара (КХ; Haar Cascades — HC) vs нейросетевые модели (НС). КХ используют заданные признаки идентификации объектов и обычно обеспечивают меньшую точность, чем НС. Нейросети сами извлекают признаки изображений и лучше адаптируются к конкретным условиям. Преимуществом КХ является более высокая скорость при обработке большого потока людей. НС используют, когда требуется отсутствие ложноположительных срабатываний и корректная идентификация при переменном освещении или нестационарных фонах. Сверточные нейронные сети (CNN), например YOLO, также обеспе-

Таблица 1. Сравнительный анализ современных подходов

Метод Достоинства Недостатки Метод Haar Cascades + PID Простота реализации Низкая точность при освещении <50 люкс Базовая реализация YOLOv4 + DeepSORT Высокая точность Требует GPU Неприменим без модификаций MediaPipe BlazeFace Оптимизация для мобильных CPU Проблемы с боковыми ракурсами Лучший выбор для платформы Tello Нейросетевые методы Автоадаптация к условиям Требуют дообучения Сложно реализовать Haar Cascades + PID Простота реализации Низкая точность при освещении <50 люкс Базовая реализация Источник: составлено авторами. чивают высокую точность и скорость обнаружения объектов. CNN эффективно используют в системах распознавания лиц при сложном освещении или размытии изображений в потоковом режиме. Для обеспечения устойчивости к временным пропаданиям сигнала при трекинге применяют алгоритм SORT (Simple Online and Realtime Tracking), который использует фильтр Калмана для отслеживания объектов в видеоданных в реальном масштабе времени. Баланс скорость vs точность при детекции лица достигается за счет применения легкой и быстрой модели MediaPipe BlazeFace, пригодной для работы на мобильных устройствах. Вначале выполняется грубая локализации ограничивающими прямоугольниками, затем распознаются шесть ключевых точек (кончик носа, углы глаз, центр рта и тра-гионы ушей). Сравнительный анализ алгоритмов детекции представлен в табл. 2.

Комбинация методов HOG (гистограммы направленных градиентов) и SVM (метода опорных векторов) представляет лица в виде набора градиентов и контуров, а затем при помощи МО находит такую границу, которая максимально разделяет классы по признаку: лицо челове-

Таблица 2. Сравнительный анализ алгоритмов детекции

Метод Точность, % FPS на Tello Устойчивость Haar Cascades 65–70 15–18 Низкая HOG+SVM 75–80 10–12 Средняя MediaPipe Face 85–90 20–25 Высокая YOLO-Tiny 88–92 8–10 Средняя Источник: составлено авторами. ка – иной объект. Решение от Google для распознавания лиц и анализа их особенностей – MediaPipe Face (Face Mesh) – входит в библиотеку MediaPipe и позволяет в реальном времени определить 468 3D-ориентиров лица. Легкая и быстрая версия модели YOLO – YOLO-Tiny – состоит из малого количества слоев, что снижает вычислительную нагрузку. YOLO-Tiny используется на устройствах с ограниченными ресурсами (Raspberry Pi, Google Coral и NVIDIA Jetson Nano) для быстрого обнаружения объектов. По результатам сравнительного анализа алгоритмов детекции бесплатный фреймворк от Google для КЗ – MediaPipe – демонстрирует оптимальный баланс при использовании летной платформы Tello в задачах системы слежения за оператором (ССО). Моделирование поведения разработки удобно выполнять в симуляторе Gazebo или AirSim. Для реального тестирования в контролируемых условиях (помещение/ улица) применяются разные сценарии: движение по прямой, зигзагом, с изменением скорости, работа при различном освещении и наличии помех (другие люди, фоновые объекты). Используются метрики: точность трекинга, задержка реакции, энергопотребление. Система трекинга, построенная на основе приведенных алгоритмов и методов, позволит дрону автономно следовать за оператором, сохраняя его в кадре, без использования GPS-меток или ручного управления. Тем не менее, несмотря на прогресс в области управления дроном при помощи ССО, его применение в растениеводстве требует разработки специализированных алгоритмов, устойчивых к полевым условиям и глубокой интеграции с существующими системами точного земледелия.

Ограничения существующих разработок: большинство решений созданы для контролируемых условий; работа в полевых условиях требует учета освещенности и запыленности; необходима оптимизация точность vs энергопотребление. Актуальными являются следующие ключевые научно-технические проблемы, определяющие степень разработанности темы: обеспечение стабильности трекинга при переменной освещенности и смене фона; учет ветровой нагрузки; увеличение времени работы; эффективное использование ограниченного по вычислительной мощности CPU. Перспективные направления исследований: гибридные алгоритмы (комбинация MediaPipe и оптического потока, использование IMU-датчиков дрона); энергоэффективные архитектуры (динамическое управление частотой кадров и оптимизированные нейросетевые модели); специализированные доработки (антипылевые фильтры для камеры и дополнительные датчики освещенности).

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

Для постановки задачи исследования выявлены основные проблемы существующих систем. На основании анализа современного состояния исследований определены ключевые недостатки применяемых технологий управления при помощи ССО БПЛА в растениеводстве:

– низкая надежность в полевых условиях: точность распознавания снижается при ярком солнечном свете, наличии пыли/ аэрозолей химикатов в воздухе;

– технические ограничения: высокое энергопотребление алгоритмов, несовместимость с распространенными сель-хоздронами.

Tello представляет собой перспективную платформу для проведения исследований. Ключевой задачей становится разработка с использованием специализированных алгоритмов, учитывающих аппаратные ограничения и условия сель-хозприменения при масштабировании проекта с переходом на более мощные полетные решения. Наибольший потенциал в этом случае показывает комбинация MediaPipe для детекции и адаптированного оптического потока для трекинга.

Результаты и обсуждение

Анализ и использование инструментальных средств ССО в ходе проектирования программной технологии сопровождения оператора для платформы Tello позволили остановиться на основном стеке инструментов разработки (табл. 3) .

Библиотеки компьютерного зрения Python:

– обработка видео в реальном времени opencv-python 4.11.0.86;

– детекция лица оператора mediapipe 0.10.21 (mediapipe blazeface 2.0);

– управление Tello djitellopy 2.5.0;

Таблица 3. Инструменты разработки

Категория

Инструмент

Версия

Назначение

Язык программирования

Python

3.6–3.13

Основной язык разработки

IDE

VS Code

1.75–1.100

Среда разработки с поддержкой Python/ C++, Python-расширений.

Интеграция с DJI Tello Python SDK

IDE

PyCharm (опционально)

2025.1.1.1

Среда разработки с поддержкой Python. Отладка сложных алгоритмов, визуализация данных, профилирование кода

Создание изолированных сред

Docker

3.9

Тестирование на разных версиях Python

Источник: составлено авторами.

К альтернативным вариантам относятся: – для квантованных моделей (опционально) tensorflow-lite 2.17.0;

– для квантованных моделей на RPi (опционально) tflite-runtime 2.10.0;

– для Jetson Nano – torch 1.13.0 и torchvision (если требуется YOLO);

– для ускорения OpenCV – opencv-contrib-python-headless.

Инструменты отладки и профилирования в части набора утилит представлены в табл. 4.

Таблица 4. Инструменты отладки и профилирования

Инструмент

Команда/ Использование

Назначение

cProfile

python -m cProfile main.py

Профилирование производительности

Pyflakes

pyflakes gesture_ controller.py

Статический анализ кода

OpenCV Video

Capture

cv2.VideoCapture(0).

get(cv2.CAP_PROP_FPS)

Проверка FPS видеопотока

Источник: составлено авторами.

Рис. Блок-схема решения

Источник: составлено авторами.

В случае необходимости построения графиков (точности/ производительности) используется Python-библиотека визуализации данных средствами 2D– 3D графики Matplotlib или функционал OpenCV. Tello SDK Logging обеспечивает встроенное логирование команд.

Максимальную производительность при работе в контролируемых условиях обеспечивает ноутбук i5-1135G7 с видеокартой не ниже GeForce GTX 1660 Super. При этом производительность фреймворка MediaPipe для обработки лица человека составит не менее 18 FPS. Для работы в полевых условиях рекомендуется использовать: одноплатный микрокомпьютер Raspberry Pi 5, 8 GB или платформу от компании NVIDIA, которая предназначена для создания приложений на базе искусственного интеллекта – Jetson Nano. Аппаратные перспективы улучшения определяются использованием Jetson Nano при работе в полевых условиях и добавлением ИК-камеры для эксплуатации в сумерках. Алгоритмически улучшения возможны за счет предсказание перемещения лица оператора за несколько кадров. Блок-схема решения представлена на рис.

Исходный текст разработанной программы и пояснения к тексту программы представлены в заявке № 2025613414 и датой регистрации 25.02.2025 по резуль- татам, которой получено свидетельство о государственной регистрации программы для ЭВМ «Сопровождение оператора в задаче управления полетом квадрокоптера» с № RU 2025615266 и датой публикации 03.03.2025 г. Краткая характеристика программы: тип ЭВМ: IBM РС-совмест. ПК; язык: Python; ОС: Windows 7/10; объем программы: 7,07 Кб1.

Программа «Сопровождение оператора в задаче управления полетом квадрокоптера» написана на языке программирования Python. Программное обеспечение управляет движением БПЛА на основе автоматического распознавания лица оператора и выполняет следование за человеком при помощи системы технического зрения с использованием нейронной сети для обработки видеопотока с камеры дрона на персональном компьютере.

Функциональные особенности ПО:

– подключение к дрону и вывод изображения с камеры на экран ПК;

– ПО распознает лицо оператора в видеопотоке;

– программа обеспечивает слежение дрона за лицом человека, переводя координаты смещения центральной точки лица относительно центральной точки экрана в команды управления дроном.

Библиотека алгоритмов компьютерного зрения и обработки изображений с открытым кодом OpenCV используется для того, чтобы вывести изображение с квадрокоптера на экран компьютера и отобразить интерфейс. Для идентификации лица человека в кадре применяется функционал библиотеки Mediapipe – мультиплат-форменный фреймворк от Google, состоящий из множества моделей машинного обучения, который широко применяется для обнаружения и распознавания объектов в задачах компьютерного зрения. Для подключения дрона, отправки команд и получения видеопотока с камеры дрона используется библиотека djitellopy. С помощью библиотеки djitellopy происходит подключение к дрону и передача видеопотока на компьютер. Видеоданные обрабатываются при помощи библиотек Mediapipe и OpenCV. Функции OpenCV отвечают за интерфейс ПО, который содержит данные с камеры дрона. Использование Mediapipe позволяет обработать видеопоток и распознать лицо. Координаты смещения передаются для управления дроном и OpenCV для наглядного отображения.

Анализ результатов в ходе тестирования и отладки приложения показал, что при работе над проектом недостаточно базовых возможностей библиотеки OpenCV. Для подключения к дрону и вывода изображения с его камеры требуется аппаратно-ориентированная библиотека djitellopy. Анализ эксплуатационных издержек вынудил разработчиков отказаться от библиотеки face-recognition, где уже представлена функция распознавания лица. В ходе практической реализации алгоритма обнаружения лиц с помощью каскадов Хаара было выявлено, что, несмотря на высокое быстродействие, точностные характеристики сопровождения являются неудовлетворительными. В результате анализа первоисточников и сопоставления альтернативных вариантов выбор был остановлен на библиотеке Mediaрipe с широким спектром возможно- стей. Данный инструмент позволяет помимо простого детектирования человека выполнить поиск полной маски человеческого лица, расположения рук и пальцев, позы. При использовании в проекте библиотека с точностью не менее 80% позволила обнаружить лицо, затратив минимальные ресурсы компьютера. Для реализации алгоритма, отвечающего за слежение дроном при перемещении лица, были использованы методы библиотеки djitellopy. Нагрузка на систему составила: MediaPipe – 55%; Tello SDK – 15%. Для реального тестирования в контролируемых условиях (в помещении и на открытом пространстве) применялись разные сценарии движения оператора: по прямой и зигзагом, с изменением скорости. Работа выполнялась при различном освещении и наличии естественных помех. Общие показатели эффективности сведены в таблицу результатов (табл. 5).

Таблица 5. Сводная таблица результатов

Параметр

Целевое значение

Фактический результат

Отклонение

Точность распознавания

80%

85%

+5%

Средняя задержка

300–500 мс

270 мс

-30 мс

Устойчивость FPS

18

18

Время обучения оператора

10 мин.

8 мин.

-2 мин.

Источник: составлено авторами.

Выводы

Результаты проведенных исследований демонстрируют следующее:

– сопровождение оператора в задаче управления полетом квадрокоптера – это перспективное направление для интеграции с сельхозработами за счет сочетания возможностей машинного обучения, компьютерного зрения и робототехники;

– результат разработки (программный продукт) обеспечивает отслеживание лица человека в реальном масштабе вре- мени и естественных условиях наблюдения при помощи совместного использования камеры квадрокоптера и системы технического зрения на основе методов машинного обучения;

– система автоматического слежения в состоянии обеспечить снижение затрат на обследование посевов и свою окупаемость.

Научная новизна исследования состоит в решении ключевых проблем системы сопровождения оператора БПЛА и обусловлена использованием нейросетевых алгоритмов и методов компьютерного зрения.

Практическая значимость работы определяется возможностями применения разработанного программного обеспечения с перспективами дальнейшего масштабирования проекта в задаче управления дроном без использования штатной радиоаппаратуры. Например, в области растениеводства – при мониторинге состояния полей агрономом, который одновременно решает задачи взятия проб почвы и анализа растительности с видеофиксацией состояния посевов.