Узнай, как создавать приложения для дронов на базе ИИ с помощью Ultralytics YOLO11, позволяющего в реальном времени обнаруживать объекты и решать задачи компьютерного зрения на базе дронов.
Покупки в магазине и онлайн могут показаться похожими, но они опираются на разную логистику. Магазины нуждаются в пополнении запасов на полках, в то время как онлайн-заказы зависят от доставки к порогу. Благодаря технологическому прогрессу оба вида шопинга перестраиваются параллельно.
Например, серьезные изменения происходят в сфере доставки. Беспилотники с искусственным интеллектом меняют то, как продукты доставляются в наши дома. Ожидается, что в ближайшее десятилетие эти умные дроны будут выполнять около 808 миллионов доставок, превратив небо в новейший маршрут доставки для повседневной торговли.
Дроны-доставщики используют искусственный интеллект (ИИ) и компьютерное зрение, подобласть ИИ, которая используется для анализа визуальных данных, для навигации и маневрирования вокруг препятствий. Модели компьютерного зрения, такие как Ultralytics YOLO11 могут помочь дронам обнаруживать и отслеживать объекты в реальном времени, позволяя им лучше понимать окружающую среду и взаимодействовать с ней.
Такие компании, как Meituan и DJI, уже интегрируют компьютерное зрение в свои дроны. На самом деле, быстрое внедрение дронов в различные отрасли настраивает рынок дронов с искусственным интеллектом на стремительный рост до $206,9 млрд к 2031 году.
В этой статье мы подробно рассмотрим, как модели компьютерного зрения, подобные Ultralytics YOLO11 , могут быть использованы в беспилотных приложениях, таких как доставка грузов дронами. Мы рассмотрим пример, который продемонстрирует, как эти технологии могут быть разработаны и протестированы перед использованием в реальных сценариях.
Ключевой частью дронов-доставщиков является их способность обнаруживать дома во время навигации. Чтобы воссоздать эту способность и понять, как она работает, мы обучим модель компьютерного зрения, которая сможет определять дома на кадрах, снятых с помощью дрона. Для этого мы натренируем YOLO11 , что включает в себя тонкую настройку предварительно обученной модели YOLO11 для распознавания и обнаружения домов с помощью помеченных примеров.
Для этого нам понадобятся высококачественные видеоданные с дрона. Интересно, что даже не имея доступа к настоящему дрону, мы все равно можем генерировать реалистичные воздушные кадры. Давай рассмотрим, как это сделать.
Google Earth Studio - это веб-инструмент для анимации, с помощью которого пользователи могут создавать неподвижный и анимированный контент, используя спутниковые и 3D-снимки Google Earth. Мы можем использовать его для создания реалистичных воздушных кадров.
Первый шаг - открыть Google Earth Studio и создать проект, как показано ниже.
Чтобы войти в систему, тебе понадобится аккаунт Google .
Войдя в систему, ты можешь выбрать место для видео с искусственным дроном. Используя строку поиска в левом верхнем углу страницы, ты можешь искать локации. Для этого туториала мы выберем Канаду. Кроме того, поскольку мы собираемся обучать модель обнаружению домов, на нашем видео с дрона должен быть вид на дома с воздуха.
Далее мы можем задать первый и последний временные кадры, чтобы запечатлеть движение искусственного дрона. Выбрав начальное место для съемки дрона, установи первый кадр с помощью синих бриллиантов, как показано ниже.
Далее мы можем выбрать последний кадр, чтобы определить место назначения дрона. Это поможет нам создать эффект движения для кадров с дроном. Для этого сдвинь полоску (выделена ниже) вправо на определенное время, чтобы создать эффект движения для съемок дрона. И снова используй голубые алмазы, чтобы установить последнюю точку.
Наконец, ты можешь сохранить этот проект и отрендерить его, нажав на красную кнопку "Render" в правом верхнем углу страницы. В результате ты получишь финальный видеовыход съемки с дрона, успешно создав искусственные видеоматериалы с дрона.
Теперь, когда мы создали искусственную видеозапись с дрона, следующим шагом будет маркировка или аннотация домов на ней. Также нам нужно будет разделить отдельные кадры видео.
Чтобы приступить к работе, мы установим LabelImg. LabelImg - это инструмент для маркировки изображений с открытым исходным кодом. Ты можешь установить его прямо из терминала с помощью установщика пакетов pip, выполнив следующую команду: "pip install labelImg".
После установки ты можешь запустить инструмент с помощью команды 'labelImg' в терминале или командной строке. В результате ты попадешь на страницу, показанную ниже.
Тем временем мы можем воспользоваться либо онлайн-конвертером видео в изображение, либо инструментом под названием FFmpeg, чтобы разбить видео на кадры. FFmpeg - это набор библиотек и инструментов для обработки мультимедийного контента, такого как аудио, видео, субтитры и связанные с ними метаданные.
Ты можешь использовать следующую команду терминала, чтобы разделить каждый кадр видео, снятого дроном:
ffmpeg -i input_video.mp4 -vf fps=1 frame_%04d.jpg
После того как мы разделили кадры съемки с дрона, можно приступать к маркировке объектов (домов) на них. Перейдя в папку с изображениями через инструмент LabelImg, мы сможем пометить объекты на каждом изображении. Обязательно сохраняй и проверяй каждое помеченное изображение. После аннотирования изображений мы можем перейти к обучению YOLO11 на этих данных.
Прежде чем приступить к тренировке YOLO11, упорядочим наши изображения и метки. Начни с создания двух папок: одна называется "train", а другая - "valid". Раздели свои изображения между этими папками. Внутри каждой из них создай отдельные подпапки для изображений и соответствующих им файлов меток (в текстовом формате), как показано ниже.
Затем мы можем приступить к обучению модели YOLO11 следующим образом:
from ultralytics import YOLO
# Load a YOLO11 model
model = YOLO("yolo11n.pt") # choose your model, e.g., YOLO11 nano
# Train the model with your data and settings
model.train(data="data.yaml", epochs=100, imgsz=640)
Обученная модель YOLO11 теперь может быть использована для составления прогнозов с помощью процесса, который называется инференцией. Инференция подразумевает использование модели для анализа новых, невидимых данных на основе того, чему она научилась во время обучения. В этом случае модель можно использовать для поиска и маркировки конкретных объектов, например домов, на изображениях или видео, рисуя вокруг них ограничительные рамки.
Чтобы запустить предсказание, ты можешь использовать обученную модель YOLO11 на входном видео, используя следующий код Python . В этом примере мы будем использовать то же видео с искусственным дроном, которое применялось для обучения, но ты можешь использовать любой другой видеофайл, если хочешь.
# Import library
from ultralytics import YOLO
# Load the YOLO model
model = YOLO("best.pt") # Choose your custom-trained model
# Predict the results from the model
results = model.predict(source="path/to/original/video.mp4", show=True, save=True)
После выполнения этого кода будет сохранен выходной видеофайл с предсказаниями и ограничительными рамками.
Обнаружение домов для доставки посылок дронами - это лишь один пример применения компьютерного зрения и YOLO11 . Вот несколько других реальных вариантов использования компьютерного зрения, YOLO11 и воздушных дронов:
Дроны с искусственным интеллектом, работающие на основе компьютерного зрения, меняют многие отрасли, начиная от доставки посылок и заканчивая помощью в чрезвычайных ситуациях и сельским хозяйством. В этом руководстве мы рассмотрели, как создать видео с искусственного дрона, разметить на нем объекты, обучить YOLO11 и использовать его для обнаружения домов.
Применение функции распознавания объектов к видеозаписям с дронов делает их умнее, позволяя автоматически распознавать и отслеживать объекты в режиме реального времени. По мере совершенствования технологий беспилотники с искусственным интеллектом, вероятно, будут играть еще большую роль в ускорении доставки, повышении безопасности и помощи при ликвидации последствий стихийных бедствий.
Присоединяйся к нашему сообществу и изучи наш репозиторий на GitHub, чтобы узнать больше о Vision AI, а также ознакомься с нашими вариантами лицензирования, чтобы начать свои проекты в области компьютерного зрения. Интересуешься такими инновациями, как ИИ в производстве или компьютерное зрение в автомобильной промышленности? Заходи на страницы наших решений, чтобы узнать больше.
Начни свое путешествие с будущим машинного обучения