4、识别率指标定义:学习识别率(Precision、Recall、F1-score、mAP)的计算方法,以及如何针对无人机航拍视角设定合理的识别率阈值
在PX4无人机AI验收体系中,识别率指标是衡量视觉感知系统能否准确理解航拍场景的核心标尺。与地面固定摄像头不同,无人机航拍视角具有高动态、多尺度、俯视畸变、光照剧变等特殊性,这使得识别率指标的计算与阈值设定不能简单套用通用目标检测标准。本章将系统拆解Precision、Recall、F1-score、mAP四类指标的计算逻辑,并结合航拍视角的物理约束,给出阈值设定的工程方法论。
4.1 核心原理:四类指标的计算逻辑与航拍语义
Precision(精确率)衡量模型预测为正样本的结果中真正正确的比例,公式为 Precision = TP / (TP + FP)。在无人机巡检场景中,高Precision意味着模型报出的“缺陷”或“目标”中误报少,能有效减少地面站人工复核的工作量。例如在电力线路绝缘子检测中,若Precision过低,飞手会被大量虚警干扰,导致任务中断。
Recall(召回率)衡量所有真实正样本中被正确检出的比例,公式为 Recall = TP / (TP + FN)。对于避障系统,Recall是生死攸关的指标——漏检一个障碍物可能导致坠机。PX4避障验收中,Recall通常要求高于Precision,因为漏检的代价远大于误报。
F1-score是Precision与Recall的调和平均数,公式为 F1 = 2 × (P × R) / (P + R)。当两者冲突时(如提高置信度阈值会降低Recall),F1提供单一数值用于模型对比。在PX4的视觉着陆场景中,F1≥0.85通常作为模型可部署的最低门槛。
mAP(mean Average Precision)是目标检测领域最综合的指标。其计算过程为:对每个类别绘制Precision-Recall曲线(通过改变置信度阈值),计算曲线下面积得到AP,再对所有类别取平均。mAP@0.5表示IoU阈值为0.5时的mAP,mAP@0.5:0.95则是在0.5到0.95区间内以0.05步长取多个IoU阈值的平均。航拍场景中,由于目标尺度变化剧烈(同一目标在50米高度和120米高度像素尺寸差异可达6倍),mAP@0.5:0.95更能反映模型的多尺度鲁棒性。
4.2 判断方法:从混淆矩阵到阈值设定的操作流程
在PX4无人机AI验收中,识别率指标的判定需遵循以下标准化流程:
- 构建航拍测试集:采集不同高度(30m、60m、100m)、不同光照(顺光、逆光、阴影)、不同天气(晴天、薄雾)下的图像,确保测试集覆盖任务包线。测试集规模建议不少于500张标注图像,其中小目标(像素面积<32×32)占比不低于30%。
- 确定IoU判定标准:对于目标检测任务,IoU≥0.5判定为TP(True Positive);IoU在0.1~0.5之间判定为定位偏差(计入FP);IoU<0.1视为重复检测(计入FP)。对于像素级分割任务,IoU≥0.7才判定为TP。
- 计算混淆矩阵:统计TP、FP、FN数量,注意航拍场景中“同一目标多框”问题——多个检测框对应同一真实目标时,仅置信度最高的框计为TP,其余计为FP。
- 绘制PR曲线并计算AP:按置信度降序排列所有检测结果,逐步降低阈值,计算每个阈值下的Precision和Recall,绘制曲线并计算面积。
- 设定验收阈值:根据任务风险等级确定最低可接受值。建议参考下表:
| 任务类型 | 关键指标 | 建议阈值 | 说明 |
|---|---|---|---|
| 避障(安全关键) | Recall | ≥0.95 | 漏检直接导致碰撞,Recall优先 |
| 目标识别(巡检) | mAP@0.5 | ≥0.70 | 允许少量误报,但需保证检出率 |
| 精准定位(降落) | F1-score | ≥0.85 | Precision与Recall需平衡 |
| 小目标检测(电力线) | mAP@0.5:0.95 | ≥0.35 | 小目标AP通常偏低,需单独评估 |
4.3 案例拆解:某PX4植保无人机的障碍物识别验收
背景与约束:某农业植保无人机需在农田上方2~5米低空飞行,识别电线杆、树木、行人三类障碍物。飞行高度低导致目标尺度大但运动模糊严重,且背景纹理复杂(作物行、土壤、水渠)。验收要求:避障系统Recall≥0.95,误报率(FP/帧)≤0.5次/帧。
初始现象:使用YOLOv5s模型在自建测试集(800张图像)上测试,mAP@0.5达到0.78,看似达标。但进一步分析发现:Recall=0.88,未达到0.95要求;且“行人”类别Recall仅为0.72,大量远处小尺寸行人漏检。
分析过程:通过逐帧检查漏检样本,发现漏检集中在两类情况:一是行人位于图像边缘(畸变区域),二是行人被作物阴影遮挡。进一步统计发现,漏检行人的平均像素高度仅为28像素,远低于模型训练时的平均目标尺寸(60像素)。
实际操作步骤:
- 将测试集按目标尺寸分层:小目标(<32px)、中目标(32~64px)、大目标(>64px),分别计算Recall,发现小目标Recall仅为0.55。
- 针对小目标优化:将输入分辨率从640×640提升至960×960,并增加浅层特征图的检测头(P2层)。
- 调整置信度阈值:从0.25降至0.15,使更多低置信度小目标被保留,但需同步增加NMS的IoU阈值(从0.45提至0.6)以减少重复框。
- 重新测试:mAP@0.5提升至0.82,整体Recall提升至0.93,小目标Recall提升至0.78。
结果对比:优化后Recall仍差0.02未达标。进一步分析发现,剩余漏检均为运动模糊严重的帧(无人机转弯时)。最终通过引入相邻帧目标跟踪(ByteTrack)进行时序补偿,利用前后帧的检测结果预测漏检目标位置,将Recall提升至0.96,满足验收要求。
风险与代价:输入分辨率提升导致推理时间从12ms增至22ms,在PX4的200Hz控制频率下仍可接受(占用4.4%计算资源)。但跟踪模块增加了CPU负载,需在飞控中预留足够算力。
复盘经验:识别率验收不能只看单一mAP值,必须按目标尺度、光照条件、运动状态分层评估。阈值设定应基于任务风险而非模型最优F1点——避障场景宁可多报(低Precision)也不可漏报(低Recall)。
4.4 常见误区与总结复盘
误区一:混淆“置信度阈值”与“验收阈值”。置信度阈值是模型推理时的内部参数,用于过滤低分框;验收阈值是任务要求的指标下限。两者不能混用——即使模型在置信度0.3时F1最高,若任务要求Recall≥0.95,则需将置信度调低至0.1甚至更低。
误区二:忽略航拍视角的尺度分布偏移。通用数据集(COCO)中目标平均尺寸占图像面积约10%,而航拍图像中目标占比通常小于1%。直接使用COCO预训练模型评估,mAP会系统性偏低约0.15~0.25。正确做法是使用航拍数据集(如VisDrone、UAVDT)进行微调后再评估。
误区三:用mAP@0.5代替mAP@0.5:0.95。mAP@0.5对定位精度不敏感,两个IoU为0.5和0.9的检测框可能获得相同TP判定。对于需要精确避障的无人机,定位误差超过0.5米就可能导致碰撞,因此必须同时报告mAP@0.5:0.95。
误区四:不区分Precision和Recall的优先级。在PX4的降落引导场景中,Precision过低会导致无人机在错误位置反复尝试降落;而在避障场景中,Recall过低直接导致碰撞。验收时应根据任务风险矩阵明确指标优先级,而非简单要求“所有指标均≥0.8”。
总结:识别率指标是PX4无人机AI验收的基石,但必须结合航拍视角的物理特性进行适配。Precision、Recall、F1-score、mAP各有侧重,不能互相替代。阈值设定应遵循“任务风险优先、分层评估、动态调整”的原则。在实际验收中,建议采用“先分层计算、再综合判定”的方法:先按目标尺度、光照、运动状态分层计算各指标,再根据任务权重加权综合。只有将指标计算与航拍场景深度绑定,才能确保AI系统在真实飞行中达到预期安全水平。