无人机航拍小目标检测:YOLO11 实战与 PyQt6 应用
本项目针对无人机航拍场景下的小目标检测难题,基于 YOLO11 系列模型,在 VisDrone 2019 数据集上进行训练与优化,并配套开发了基于 PyQt6 的桌面应用,支持图片、视频及摄像头的实时检测与训练指标可视化。
一、项目概述
无人机航拍图像具有目标尺度小、密集分布、多尺度混合等特点,传统检测算法往往难以取得理想效果。我们采用 Ultralytics YOLO11 框架,结合 VisDrone 数据集进行训练,实现了对行人、车辆等 10 类交通相关目标的高效检测。同时,为了便于模型验证与日常使用,还开发了配套的桌面应用。
二、数据集准备
2.1 数据集简介
本项目使用的是 VisDrone 2019-DET 数据集,由天津大学机器学习与数据挖掘实验室 AISKYEYE 团队发布,对应 ICCV 2019 "Vision Meets Drone" 挑战赛。这是面向无人机视角目标检测的大规模基准数据集。
2.2 数据规模
| 子集 | 图像数量 | 说明 |
|---|---|---|
| 训练集 (train) | 6,471 张 | 用于模型训练 |
| 验证集 (val) | 548 张 | 用于超参数调优与模型选择 |
| 测试集 (test-dev) | 1,610 张 | 含标注,可进行论文实验与结果发布 |
- 总标注框数量:超过 260 万个边界框
- 图像来源:288 个视频片段 + 10,209 张静态图像
- 图像格式:JPEG (.jpg)
2.3 目标类别
数据集包含 10 个预定义类别:
| 类别 ID | 英文名称 | 中文名称 |
|---|---|---|
| 0 | pedestrian | 行人 |
| 1 | people | 人群 |
| 2 | bicycle | 自行车 |
| 3 | car | 小汽车 |
| 4 | van | 面包车 |
| 5 | truck | 卡车 |
| 6 | tricycle | 三轮车 |
| 7 | awning-tricycle | 带篷三轮车 |
| 8 | bus | 公交车 |
| 9 | motor | 摩托车 |
2.4 数据集特点
- 地理位置:覆盖中国 14 个不同城市,相距数千公里
- 场景类型:涵盖城市、乡村等多种环境
- 小目标特性:无人机航拍高度较高,目标在图像中占据像素较少,大量目标归一化后宽度或高度小于 2%


