使用 Ultralytics YOLO11 构建 AI 驱动的无人机应用
了解如何使用 Ultralytics YOLO11 构建 AI 驱动的无人机应用,实现实时目标检测和基于无人机的计算机视觉任务。

店内购物和网购看起来可能相似,但它们依赖不同的物流方式。实体店需要补充货架上的商品,而网购订单则依赖送货上门。得益于技术进步,这两种购物体验正在同步发生变化。
例如,配送方式正在发生重大转变。AI 驱动的无人机正在改变商品送到我们家中的方式。据预计,未来十年,这些智能无人机将完成约 8.08 亿次配送,让天空成为日常商业配送的最新路线。
配送无人机利用人工智能 (AI) 和计算机视觉(AI 的一个子领域,用于分析视觉数据)进行导航并绕开障碍物。像Ultralytics YOLO11这样的计算机视觉模型可以帮助无人机实时检测和跟踪物体,让无人机更好地理解并与周围环境互动。

图 1。一架配送无人机正将包裹送往目的地。
美团和 DJI 等公司已经开始将计算机视觉集成到无人机中。事实上,无人机在各行业的迅速普及,推动AI 无人机市场预计到 2031 年增长至 2069 亿美元。
本文将详细介绍如何将 Ultralytics YOLO11 等计算机视觉模型用于无人机配送等无人机应用。我们将通过一个示例,展示如何在实际场景中使用这些技术之前对其进行开发和测试。
使用 Ultralytics YOLO11 在无人机上检测房屋#
配送无人机的一项关键能力,是在导航过程中检测房屋。为了重现这一能力并了解其工作原理,我们将训练一个计算机视觉模型,使其能够识别航拍无人机拍摄的视频画面中的房屋。我们将为此对 Ultralytics YOLO11 进行自定义训练,也就是使用带标签的示例微调预训练 YOLO11 模型,使其能够识别和检测房屋。
为此,我们需要高质量的无人机视频数据。有趣的是,即使没有真正的无人机,我们也可以生成逼真的航拍视频。下面来看看具体做法。
使用 Google Earth Studio 创建模拟无人机镜头#
Google Earth Studio 是一款基于 Web 的动画工具,用户可以利用 Google Earth 的卫星图像和 3D 影像创建静态和动画内容。我们可以用它来制作逼真的航拍视频。
首先,打开 Google Earth Studio 并创建项目,如下所示。
你需要使用 Google 账号登录。

图 2. 在 Google Earth Studio 中创建项目。
登录后,你可以为模拟无人机视频选择地点。使用页面左上角的搜索栏搜索地点。在本教程中,我们选择加拿大。另外,由于我们要训练模型检测房屋,因此无人机视频应包含房屋的航拍视角。

图 3. 使用 Google Earth Studio 选择地点。
接下来,我们可以设置首帧和末帧,以呈现模拟无人机镜头的运动效果。选好无人机镜头的起始位置后,使用蓝色菱形设置首帧,如下所示。

图 4. 使用蓝色菱形设置首帧。
接下来,我们可以选择末帧来确定无人机的目的地,从而为无人机视频营造移动效果。为此,将下方突出显示的滑动条向右拖动到特定时间点,以创建镜头移动效果。再次使用蓝色菱形设置最后一个点。

图 5. 移动滑动条设置末帧。
最后,点击页面右上角的红色“Render”按钮,即可保存并渲染项目。这样就能生成无人机镜头的最终视频,成功制作出模拟无人机视频素材。

图 6. 渲染最终输出视频。
如何标注无人机数据?#
制作好模拟无人机视频素材后,下一步是标记或标注其中的房屋。我们还需要将视频拆分成单独的帧。
首先,我们要安装 LabelImg。LabelImg 是一款开源图像标注工具。你可以使用 pip 包安装程序,在终端中运行以下命令直接安装:“pip install labelImg”。
安装后,你可以在终端或命令提示符中运行命令 ‘labelImg’ 来启动该工具。随后会显示如下页面。

图 7. LabelImg 工具界面。
同时,我们可以使用在线视频转图像转换器,或使用名为 FFmpeg 的工具将视频拆分为帧。FFmpeg 是一组用于处理音频、视频、字幕及相关元数据等多媒体内容的库和工具。
你可以使用以下终端命令,从无人机视频中拆分出每一帧:
ffmpeg -i input_video.mp4 frame_%04d.png将无人机视频拆分成帧后,我们就可以开始标注其中的物体(房屋)。在 LabelImg 工具中打开图像文件夹,即可逐张标注图像中的物体。请务必保存并检查每张已标注的图像。完成图像标注后,我们就可以使用这些数据训练 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 YOLO11 模型,并根据你的配置进行训练。
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 模型进行预测。推理是指根据模型在训练期间学到的内容,使用模型分析新的、未见过的数据。在本例中,模型可以通过在图像或视频中的特定物体(如房屋)周围绘制边界框,来查找并标记这些物体。
要进行预测,你可以使用以下 Python 代码,在输入视频上运行训练好的 Ultralytics YOLO11 模型。在本例中,我们将使用训练时采用的同一段模拟无人机视频;你也可以根据需要使用其他视频文件。
# 导入库
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 和航拍无人机的一些其他实际用途:
-
监控与安防:AI 无人机可用于实时监控大面积区域。它们可以检测入侵行为、跟踪可疑活动,并加强国境及大型公共活动的安保。
-
灾害应对与搜救:配备热成像摄像头和目标检测功能的无人机可以帮助在灾区寻找幸存者。无人机还可以评估损失并运送应急物资。
-
农业与精准农业:集成计算机视觉的无人机可用于分析作物健康状况并检测病害,帮助农民提高产量、降低成本。
-
测绘与地理空间分析:通过采集高分辨率 3D 地图,AI 无人机可以协助城市规划和土地测量。与传统方法相比,它们能更快、更准确地评估地形。
要点#
搭载计算机视觉技术的 AI 无人机正在改变许多行业,从包裹配送到应急救援和农业,无所不包。本指南将介绍如何创建虚拟无人机视频、标注其中的对象、训练 Ultralytics YOLO11,以及使用它检测房屋。
将目标检测应用于无人机拍摄的视频,可以让无人机变得更智能,使其能够实时自动识别和跟踪对象。随着技术进步,AI 驱动的无人机很可能会在加快配送、提升安保水平和协助灾害应对方面发挥更大作用。
加入我们的社区,并浏览我们的 GitHub 仓库,进一步了解视觉 AI;查看我们的许可选项,开启你的计算机视觉项目。对制造业中的 AI或汽车行业中的计算机视觉等创新感兴趣?访问我们的解决方案页面,了解更多。










