Создавай приложения для дронов на основе ИИ с помощью Ultralytics YOLO11
Узнай, как создавать приложения для дронов на основе ИИ с помощью Ultralytics YOLO11, обеспечивая обнаружение объектов в реальном времени и выполнение задач компьютерного зрения с использованием дронов.
Abirami Vina7 мин. чтения
Покупки в магазине и онлайн могут казаться похожими, но за ними стоят разные логистические процессы. В магазинах нужно пополнять запасы на полках, а онлайн-заказы требуют доставки до двери. Благодаря технологическому прогрессу оба формата покупок меняются параллельно.
Например, серьёзные изменения происходят в сфере доставки. Дроны с ИИ меняют способы доставки товаров домой. Ожидается, что за следующее десятилетие эти умные дроны выполнят около 808 миллионов доставок, превратив небо в новейший маршрут доставки товаров повседневного спроса.
Дроны-доставщики используют искусственный интеллект (AI) и компьютерное зрение — подраздел ИИ для анализа визуальных данных, — чтобы ориентироваться и обходить препятствия. Модели компьютерного зрения, такие как Ultralytics YOLO11, помогают дронам обнаруживать и отслеживать объекты в реальном времени, позволяя лучше понимать окружающую среду и взаимодействовать с ней.

Рис. 1. Дрон-доставщик несёт посылку к месту назначения.
Такие компании, как Meituan, и DJI уже интегрируют компьютерное зрение в свои дроны. Быстрое распространение дронов в различных отраслях способствует росту рынка дронов с ИИ, объём которого, по прогнозам, к 2031 году достигнет 206,9 миллиарда долларов.
В этой статье мы подробнее рассмотрим, как модели компьютерного зрения, такие как Ultralytics YOLO11, применяются в решениях на базе дронов, например для доставки. Мы разберём пример, который покажет, как разрабатывать и тестировать эти технологии до их применения в реальных условиях.
Обнаружение домов с помощью Ultralytics YOLO11 на дронах#
Важная функция дронов-доставщиков — обнаруживать дома во время полёта. Чтобы воссоздать эту возможность и разобраться, как она работает, мы обучим модель компьютерного зрения находить дома на видеозаписях, снятых с воздушного дрона. Для этого мы дообучим Ultralytics YOLO11: настроим предварительно обученную модель YOLO11 на размеченных примерах, чтобы она распознавала и обнаруживала дома.
Для этого нам понадобятся качественные видеоданные с дрона. Интересно, что реалистичные кадры с воздуха можно создать даже без доступа к настоящему дрону. Давай посмотрим, как это сделать.
Создание искусственного видео с дрона с помощью Google Earth Studio#
Google Earth Studio — это веб-инструмент для создания анимации, с помощью которого можно создавать статичные и анимированные материалы на основе спутниковых снимков и 3D-изображений Google Earth. С его помощью можно создавать реалистичные видеосъёмки с воздуха.
Сначала открой Google Earth Studio и создай проект, как показано ниже.
Чтобы войти, тебе понадобится аккаунт Google.

Рис. 2. Создание проекта в Google Earth Studio.
После входа можно выбрать место для искусственного видео с дрона. Чтобы найти нужную локацию, воспользуйся строкой поиска в верхнем левом углу страницы. В этом примере мы выберем Канаду. Поскольку мы собираемся обучать модель обнаруживать дома, на видео с дрона они должны быть сняты с воздуха.

Рис. 3. Выбор места в Google Earth Studio.
Затем можно задать первый и последний кадры, чтобы создать движение камеры дрона. Выбрав начальную точку съёмки, установи первый кадр с помощью синих ромбов, как показано ниже.

Рис. 4. Установка первого кадра с помощью синих ромбов.
Затем можно выбрать последний кадр, чтобы задать точку назначения дрона. Это поможет создать эффект движения на видеозаписи. Для этого передвинь выделенную ниже полосу вправо к нужному моменту времени. Ещё раз воспользуйся синими ромбами, чтобы установить последнюю точку.

Рис. 5. Установка последнего кадра перемещением полосы.
Наконец, сохрани проект и запусти рендеринг, нажав красную кнопку «Render» в правом верхнем углу страницы. В результате ты получишь готовое видео с дрона и создашь искусственную видеозапись.

Рис. 6. Рендеринг итогового видео.
Как разметить данные с дрона?#
Теперь, когда мы создали искусственную видеозапись с дрона, нужно разметить или аннотировать дома на видео. Также потребуется разделить видео на отдельные кадры.
Для начала установим LabelImg — инструмент для разметки изображений с открытым исходным кодом. Его можно установить прямо из терминала с помощью установщика пакетов pip, выполнив команду: «pip install labelImg».
После установки запусти инструмент в терминале или командной строке командой «labelImg». Откроется страница, показанная ниже.

Рис. 7. Интерфейс инструмента LabelImg.
Тем временем можно разделить видео на кадры с помощью онлайн-конвертера видео в изображения или инструмента FFmpeg. FFmpeg — это набор библиотек и инструментов для обработки мультимедийного контента, такого как аудио, видео, субтитры и связанные с ними метаданные.
Чтобы извлечь каждый кадр из видеозаписи с дрона, выполни в терминале следующую команду:
ffmpeg -i input_video.mp4 frame_%04d.pngПосле разделения видеозаписи с дрона на кадры можно приступать к разметке объектов (домов) на них. Открой папку с изображениями в инструменте LabelImg и размечай объекты на каждом изображении. Убедись, что LabelImg настроен на сохранение меток в формате YOLO, а затем сохрани и проверь каждое размеченное изображение. После разметки можно переходить к обучению Ultralytics YOLO11 на этих данных.

Рис. 8. Пример сохранения аннотированных изображений.
Рабочий процесс обучения модели Ultralytics YOLO11#
Перед началом обучения Ultralytics YOLO11 упорядочим изображения и метки. Для начала создай две папки: «train» и «valid». Распредели изображения по этим папкам. В каждой создай отдельные подпапки для изображений и соответствующих файлов меток в текстовом формате, как показано ниже.

Рис. 9. Пример создания папок для изображений и меток.
Затем можно приступить к обучению модели Ultralytics YOLO11:
- Шаг 1: Установи пакет Ultralytics для Python. Для этого выполни в терминале команду «pip install ultralytics». Если возникнут проблемы с установкой, загляни в наше руководство по устранению неполадок — там есть советы и рекомендации, которые помогут их решить.
- Шаг 2: После успешной установки пакета создай файл с именем ‘data.yaml’. Это файл конфигурации датасета, необходимый для обучения модели. В файле data.yaml укажи следующие данные: путь к обучающему датасету, путь к валидационному датасету, число классов (nc) и список названий классов (names), как показано ниже.

Рис. 10. Пример файла data.yaml.
- Шаг 3: После настройки файла ‘data.yaml’ можно начать обучение модели с помощью следующего кода Python. Этот код загружает предварительно обученную модель Ultralytics YOLO11n и обучает её в соответствии с заданными параметрами.
from ultralytics import YOLO
# Загрузи модель YOLO11
model = YOLO("yolo11n.pt") # выбери модель, например YOLO11 nano
# Обучи модель на своих данных и с заданными настройками
model.train(data="data.yaml", epochs=100, imgsz=640)- Шаг 4: После завершения обучения ты должен увидеть результат, похожий на показанный ниже. Это означает, что ты успешно обучил модель Ultralytics YOLO11 для приложений на основе дронов.

Рис. 11. Вывод после обучения модели.
Запуск предсказаний с помощью Ultralytics YOLO11 на дронах#
Теперь обученную модель Ultralytics YOLO11 можно использовать для предсказаний с помощью процесса, который называется инференсом. Во время инференса модель анализирует новые данные, которых раньше не видела, опираясь на знания, полученные при обучении. В данном случае модель может находить и маркировать на изображениях или видео определённые объекты, например дома, обводя их ограничивающими рамками.
Чтобы запустить предсказание, используй обученную модель Ultralytics YOLO11 для анализа входного видео с помощью следующего кода на Python. В этом примере мы возьмём то же искусственное видео с дрона, которое использовали для обучения, но ты можешь выбрать любой другой видеофайл.
# Импортируй библиотеку
from ultralytics import YOLO
# Загрузи модель YOLO
model = YOLO("best.pt") # Выбери свою дообученную модель
# Получи предсказания модели
results = model.predict(source="path/to/original/video.mp4", show=True, save=True)После выполнения этого кода будет сохранён выходной видеофайл с предсказаниями и ограничивающими рамками.

Рис. 12. Кадр из выходного видеофайла.
Интеграция Ultralytics YOLO11 в дроны для различных приложений#
Обнаружение домов для доставки посылок дронами — лишь один из примеров применения компьютерного зрения и Ultralytics YOLO11. Вот ещё несколько примеров использования компьютерного зрения, YOLO11 и воздушных дронов в реальных условиях:
- Наблюдение и безопасность: дроны с ИИ можно использовать для мониторинга больших территорий в реальном времени. Они способны обнаруживать вторжения, отслеживать подозрительную активность и повышать безопасность на государственных границах и крупных общественных мероприятиях.
- Реагирование на стихийные бедствия и поисково-спасательные операции: дроны с тепловизионными камерами и системами обнаружения объектов помогают находить выживших в зонах бедствий. Они также могут оценивать ущерб и доставлять предметы первой необходимости.
- Сельское хозяйство и точное земледелие: дроны с компьютерным зрением можно использовать для анализа состояния посевов и обнаружения болезней, помогая фермерам повышать урожайность и снижать затраты.
- Картографирование и геопространственный анализ: Собирая карты высокого разрешения в 3D, дроны с ИИ могут помогать в городском планировании и межевании земель. Они оценивают рельеф быстрее и точнее, чем традиционные методы.
Главные выводы#
Дроны с ИИ и компьютерным зрением меняют многие отрасли: доставляют посылки, помогают в чрезвычайных ситуациях и сельском хозяйстве. В этом руководстве мы покажем, как создать искусственное видео с дроном, разметить на нём объекты, обучить Ultralytics YOLO11 и использовать модель для обнаружения домов.
Применение обнаружения объектов к видеозаписям с дронов делает их умнее: они могут автоматически распознавать объекты и отслеживать их в реальном времени. По мере развития технологий дроны на базе ИИ, вероятно, будут играть ещё более важную роль: ускорять доставку, повышать безопасность и помогать при ликвидации последствий стихийных бедствий.
Присоединяйся к нашему сообществу и изучи наш репозиторий на GitHub, чтобы больше узнать о визуальном ИИ. Ознакомься с вариантами лицензирования, чтобы начать работу над своими проектами компьютерного зрения. Интересуешься инновациями, например ИИ в производстве или компьютерным зрением в автомобильной отрасли? Посети страницы наших решений, чтобы узнать больше.
Автор
Комментарии
Задай вопрос, поделись результатами или помоги кому-нибудь.










