YOLO26 鸟类检测误差分析

Local benchmark · Error analysis · 2026-07-21

原始 YOLO26 鸟类检测实测:十组失败与召回案例

同一套未经微调的 COCO 权重,在“真实复杂场景”和“干净单鸟图”上表现像两个模型。本报告从 5,919 张测试图和六组预测中逐图重算 TP、FP、FN,解释差异来自目标尺寸、密集实例、定位口径还是模型容量,并把结论转成可执行的数据集计划。

YOLO26n / s / m 原始权重COCO bird + CUB-200-2011Apple MPS · 640 px置信度 0.25 · IoU 0.50
5,919测试图片:COCO 125 + CUB 5,794
6,221非 crowd 鸟框:COCO 427 + CUB 5,794
29.5%YOLO26m 对 COCO 小鸟的召回;仍漏掉约七成
99.12%YOLO26m 对 CUB 单鸟图的正图命中率
Executive decision

先选 S,优先补数据,不急着堆 M

原始 COCO 模型已经能处理“主体明显的标准鸟图”,但真正的拍鸟场景瓶颈集中在小目标、密集鸟群、遮挡/异常姿态和框边界。YOLO26s 是下一轮微调的更合理起点;YOLO26m 应保留为上限对照,而不是默认生产模型。

01

复杂场景不是“鸟种不够”这么简单

COCO 上从 N 升到 M,召回由 37.0% 增至 52.7%,但 M 对小鸟也只有 29.5%。更大模型能补回一部分目标,却无法替代高分辨率、小鸟样本和密集标注。

02

当前 FP 混合了三种问题

有些是真背景误报,有些是同一只鸟的重复框,还有些是框到鸟体但与人工框 IoU 不足 0.5。三者分别对应 hard negative、NMS/标签一致性、定位训练,不能统统塞进“非鸟”类别。

03

CUB 高分不能证明可用于全图库

CUB 每图一只明显主体,而且没有无鸟图。99% 命中说明模型认识典型鸟外观,但没有测到树枝、叶片、远处黑点、空镜头等你最在意的误报来源。

最重要的统计边界:两个评估集都只包含“有鸟”图片,因此不能计算真正的二分类 Accuracy、Specificity 或无鸟 FPR。本报告中的 Precision 是检测框层面的精确率;它不能回答“10,000 张无鸟照片里会误报多少张”。下一轮必须加入明确标注的本地无鸟测试集。
Scope & protocol

测了什么,没测什么

以下所有分数都来自保存的原始预测重新计算;没有训练、微调或改权重。COCO 的 13 个 crowd 框从自定义 TP/FP/FN 中排除,因此尺寸召回的分母是 427 个普通鸟框,而不是注释文件中的 440 个总框。

项目COCO bird val2017CUB-200-2011 test解释
图片 / 鸟框125 / 440(含 13 crowd)5,794 / 5,794COCO 多实例、尺度跨度大;CUB 一图一只主体鸟。
评估分辨率640 px,MPS,batch 8所有模型同条件,便于横向比较。
保存阈值 / NMSconf ≥ 0.001 / NMS IoU 0.70保留低分预测,之后可重新评估不同工作点。
本报告工作点conf ≥ 0.25 / 匹配 IoU ≥ 0.50预测按置信度排序,一对一贪心匹配。
能回答框级 AP、P/R/F1、正图命中、速度、不同尺寸召回、逐图错误类型适合判断原始模型上限和微调方向。
不能回答真实无鸟误报率、Lightroom 全图库准确率、模糊/对焦失败分片表现这些需要本地负样本和质量标签。
本机实测:指标、速度、逐图匹配官方资料:数据集与模型定义分析判断:原因与优先级限制:正样本测试集
Six-run benchmark

总体结果:域差异大于型号差异

CUB 的 AP50 都接近 0.98,但 COCO AP50 只有 0.52–0.70。模型变大确实提高召回和框质量,不过复杂场景的性能缺口远大于 N/S/M 之间的差距。

数据集模型参数mAP50–95AP50PrecisionRecallF1正图命中速度
COCO bird
125 图 / 427 普通框
YOLO26n2.57M0.3330.52477.5%37.0%50.1%67.2%98.6 img/s
YOLO26s10.01M0.4250.63774.4%45.7%56.6%76.0%58.3 img/s
YOLO26m21.90M0.4690.69677.3%52.7%62.7%81.6%25.8 img/s
CUB test
5,794 图 / 5,794 框
YOLO26n2.57M0.7930.97892.5%96.1%94.3%96.1%147.4 img/s
YOLO26s10.01M0.8300.98795.1%98.3%96.7%98.3%77.1 img/s
YOLO26m21.90M0.8500.98894.1%99.1%96.6%99.1%27.4 img/s

COCO 目标尺寸召回

COCO 绝对面积口径:small < 32²,medium < 96²,large ≥ 96²。分母分别为 234 / 115 / 78。

N · 小鸟
12.8%
S · 小鸟
22.6%
M · 小鸟
29.5%
N · 中鸟
55.7%
S · 中鸟
67.0%
M · 中鸟
76.5%
N · 大鸟
82.1%
S · 大鸟
83.3%
M · 大鸟
87.2%

模型升级的实际收益

  • COCO N→M:mAP 增加 13.6 个百分点,召回增加 15.7 个百分点,正图命中增加 14.4 个百分点;吞吐降为约 26%。
  • CUB S→M:召回只增加 0.79 个百分点,但吞吐由 77.1 降到 27.4 img/s,约慢 2.8 倍。
  • S 的位置:对复杂场景比 N 多召回 37 个框;对 CUB 已命中 98.3% 正图。它留下足够容量,同时让微调迭代速度可接受。
  • 阈值影响:把阈值从 0.25 提到 0.50,COCO M 的精确率从 77.3% 升到 90.8%,但召回从 52.7% 降到 41.5%。阈值不是免费的“去误报”按钮。
结论:先用 YOLO26s 做单类 bird detector,并在本地验证集上校准阈值。只有当同一数据、同一分辨率下仍出现明确容量瓶颈,再把 M 作为升级项。
10 paired cases

十组失败与召回

每组从原始图、YOLO26n、s、m 四个面板横向对比。青色为人工 GT,黄绿色为 TP,红色为未匹配预测。红框不一定是“背景认成鸟”:它也可能是重复框,或框到真实鸟但 IoU 没过 0.5。

人工鸟框 匹配成功 未匹配预测 / FP。框上的数字为置信度。

COCO 火车站远景中的十二只极小鸟,YOLO26n、s、m 均未召回
CASE 01 · COCO

三种模型都漏掉的极小目标

12 GT · N/S/M 均 TP 0 · 同类候选 20 图

看到了什么

远处天空中的鸟接近点状,最小框只占画面约 0.0012%,640 输入后几乎没有可稳定利用的纹理。三种模型在 0.25 以上都没有输出。

原因与动作

主因是有效像素不足,不是模型参数不足。加入本地远距离小鸟、提高到 960/1280 或切片推理;训练时增加小目标 copy-paste 与 P2 检测头实验。只换 M 不够。

海滩密集鸟群,只有 YOLO26m 召回少量鸟
CASE 02 · COCO

只有 M 在密集鸟群中召回

25 GT · M TP 4 / FP 5 / FN 21 · 同类候选 9 图

看到了什么

N 完全无输出,S 产生 3 个未匹配框,M 成功匹配 4 只,但仍漏掉 21 只。密集、重叠、浪花背景和相似尺度共同放大了检测难度。

原因与动作

容量能帮助实例分离,但密集小鸟还受 stride、NMS 和“所有实例是否标全”影响。数据中要专门建立 flock 分片;检查 NMS,加入密集标注图,并报告每图召回而不只看“是否命中”。

台阶上三只鸟与猫,S 和 M 召回一只鸟,M 另对猫产生未匹配框
CASE 03 · COCO

S/M 找回鸟,但更大模型也会看错显著主体

3 GT · N TP 0 · S TP 1 · M TP 1 / FP 1 · 同类候选 11 图

看到了什么

鸟体很小,猫反而是画面中更显著的动物。S 和 M 都找到一只鸟;M 同时给猫附近的大框一个预测,形成“召回提高但并非无副作用”。

原因与动作

加入猫、松鼠、石块等动物形状 hard negatives;训练图必须标全所有小鸟。模型选择要同时看 recall 和 FP/image,不能只看“更大模型找到更多”。

天空中的二十二只飞鸟,YOLO26m 只召回两只
CASE 04 · COCO

命中一只,不等于找全鸟群

22 GT · N 0/22 · S 1/22 · M 2/22 · 多鸟部分召回候选 23 图

看到了什么

如果只按图片级“有鸟/无鸟”,S 和 M 都算成功;但检测任务显示 M 仍漏 20 只。小鸟剪影与天空对比清楚,却因尺寸过小、实例密集而难以逐只定位。

原因与动作

明确产品目标:Lightroom 只需证明“有鸟”时,至少命中一只可以接受;要裁主鸟或数鸟时则不够。评估同时保留 image hit rate 和 box recall,避免指标替产品做决定。

长颈鹿与斑马背景中的两只极小鸟,M 的框靠近目标但 IoU 不足
CASE 05 · COCO

“看见了”却因定位偏差记成失败

2 GT · S TP 1 · M best IoU 0.288 / FP 1 · 定位型候选 1 图

看到了什么

背景中的鸟只有几个像素。M 在正确区域附近给出 0.31 分框,但框与 GT 的重叠不足 0.5,于是同时产生 1 FP + 2 FN;这不是纯粹的语义“没认出鸟”。

原因与动作

小框的几像素偏差会让 IoU 急剧下降。标注时统一极小目标框法,训练中提高小目标权重,并补充中心距离或低 IoU 分片。二分类 presence 头可容忍定位偏差,但不能替代可用鸟框。

水面多鸟图,M 召回十二只并产生六个未匹配框
CASE 06 · COCO

高置信 FP 中混有重复框

13 GT · M TP 12 / FP 6 / FN 1 · 最高未匹配分 0.884

看到了什么

M 的召回很好,但同一鸟附近出现多框,最高未匹配预测达到 0.88。这会显著拉低检测 Precision,却不等同于把“无鸟背景”认成鸟。

原因与动作

先按 IoU/中心距离把 FP 分成 duplicate、localization、background 三类。重复框优先调 NMS、去重和框标签一致性;真正背景 FP 才进入 hard-negative mining。否则把真实鸟裁片错误标成非鸟,会毒化二分类网络。

枝叶遮挡中的橙顶林莺,三种模型均未召回
CASE 07 · CUB

干净数据集也有“目标域难例”

1 GT · N/S/M 均 TP 0 · CUB 全模型漏检候选 25 图

看到了什么

鸟只占画面约 7.7%,枝叶纹理复杂,身体被遮挡且颜色与环境接近。即使 CUB 整体命中率很高,这类伪装与遮挡组合仍让三种模型完全沉默。

原因与动作

专门采集枝叶遮挡、逆光、伪装色和异常姿态,不要只用“居中、完整、清晰”的鸟种分类图。建立 occluded/camouflage 标签分片,才能验证增强是否真的有效。

长尾黑鸟,N 高置信预测但框过短,S 和 M 正确覆盖整只鸟
CASE 08 · CUB

N 不是不认识鸟,而是框得不完整

1 GT · N score 0.916 / IoU 0.458 · S/M TP · 同类候选 153 图

看到了什么

N 对鸟有很高信心,但只覆盖躯干,漏掉长尾,IoU 只有 0.458,于是被记为 FP+FN;S/M 的框与人工框接近重合。

原因与动作

这是模型容量和边界回归收益的典型例子,也是“有无鸟二分类”和“鸟框检测”口径的分叉点。若只做 presence,N 其实已成功;若要裁鸟,必须训练完整可见鸟体的统一框规范。

枝叶中的黄胸拟鹂,N 无输出,S 框偏小,M 正确召回
CASE 09 · CUB

N/S 漏检,M 用更准边界完成召回

1 GT · S score 0.715 / IoU 0.475 · M IoU 0.978 · 同类候选 35 图

看到了什么

S 已找到正确鸟体,却因只差 0.025 IoU 没过线;M 的框达到 0.978。枝叶横穿身体、尾部延伸和细长目标形状共同影响边界。

原因与动作

验证集要同时展示 IoU 0.50/0.75 和 image-level hit;训练时加入遮挡长尾鸟、边缘鸟和细长框。若生产只需“有鸟”,可设置独立 presence 判定,不应直接拿检测 TP 作为二分类标签。

展翼蜂鸟,N 对躯干和翅膀产生多个局部框,S 和 M 正确覆盖全鸟
CASE 10 · CUB

异常姿态让小模型把“部件”当“整鸟”

1 GT · N IoU 0.521 / FP 2 · S/M IoU ≈ 0.98 · 定位提升候选 330 图

看到了什么

展翼蜂鸟的轮廓非常规,N 给出多个局部框;S/M 能把翅膀和躯干合成一个完整实例。它显示更强特征融合对姿态变化和整体性有帮助。

原因与动作

数据中增加飞行、展翼、俯冲、背向、半鸟等姿态;标注规范明确“框完整可见轮廓”。再用 duplicate/part-box 分片监控是否只学会了鸟头或鸟身局部纹理。

十组案例合起来说明:当前主要问题不是单一的“鸟/非鸟二分类能力不足”。它至少由小目标信息不足、密集实例、遮挡伪装、姿态整体性、边界回归、重复框和真实背景误报七类机制组成。继续训练二分类网络可以做 presence 复核,但不能解决鸟框、密集召回与重复框;更不能把所有检测 FP 直接当作“非鸟”训练样本。
Next dataset plan

下一步:本地目标域优先,三轮闭环

第一版数据集不追求“最大”,而追求标签完整、切片可解释、训练/测试隔离。先建立能量化真实无鸟误报的固定测试集,再用两轮 hard-negative mining 把你已经看到的典型误报系统化。

建议的数据组成

规模为下一阶段规划值
数据块建议规模必须标签用途与注意
固定本地 test1,000–1,500 图presence、全鸟框、场景/连拍组、错误切片鸟/无鸟各约一半;只用真实原图,不做增强,不再进入训练。
本地真实有鸟训练图2,000–3,000 图标全所有鸟框;truncated、occluded、size、pose优先七月照片目标域;多鸟图不得只标主鸟。
本地明确无鸟图1,500–2,000 图presence=0、hard-negative 类型树枝、叶片、飞机、飞虫、反光、水面、猫、松鼠、石块、远处黑点。
质量失败但仍有鸟800–1,500 图presence=1、bbox、defocus、motion_blur、under/overexposure模糊鸟不能标成“非鸟”;同时服务检测与后续质量评分。
COCO bird train3,237 图 / 10,542 框沿用官方 bbox保留复杂通用场景;与本地数据分阶段混合,避免覆盖目标域。
CUB train 抽样2,000–4,000 图沿用单鸟 bbox补鸟外观和姿态,但批次占比控制在约 10–20%,不让干净主体域主导。
每轮 hard-negative300–800 图 × 2确认无漏标鸟;记录模型、阈值、误报类型从剩余本地图库低阈值扫出最高分错误,价值高于随机加数千图。

切片标签

tinyedgetruncatedoccludedflockflightdefocusmotion_blurcamouflagehard_negative_type

这些标签主要用于评估分片,不必全部进入模型类别。

拆分规则

日期 × 地点 × 连拍组 × 原始文件拆分,而不是逐图随机。清晰帧、模糊增强、裁切版本必须留在同一 split,防止同一场景泄漏。

黄金指标

presence recall、specificity/FPR、FP/1,000 无鸟图、box AP50/75、每图 recall,以及 tiny/blur/edge/occluded/flock 各分片指标。

三轮执行路线

YOLO26s 主线
1

冻结测试集,再训练第一个 S 基线

从七月图库按连拍组抽 1,000–1,500 张固定测试图;训练集先做 4,000–6,000 张。以 YOLO26s 单类 bird fine-tune,640 与 960 做受控对比,其他超参数尽量不变。

2

把 FP 拆成三桶,做第一轮 hard-negative mining

对剩余图库低阈值扫描:duplicate/localization 不进入非鸟;background FP 才补无鸟样本。同步复核所有 FN 是否漏标,尤其是小鸟群和画面边缘。

3

按剩余错误决定架构升级

小鸟为主:960/tiles/P2;普通鸟仍漏:补目标域与标签;树枝误报:hard negatives 或小分类器复核;局部框/重复框:定位与 NMS;只有容量曲线仍未饱和时再上 M。

建议的消融矩阵

一次只改一个变量
实验模型 / 分辨率数据变化要回答的问题晋级条件
A0原始 YOLO26s / 640固定本地 test 的真实基线作为所有实验共同对照
A1YOLO26s / 640本地 + COCO 微调目标域数据能补多少召回和误报FPR 下降且各难例 recall 不倒退
A2YOLO26s / 960同 A1小鸟瓶颈是否主要来自分辨率tiny recall 增益覆盖速度成本
A3YOLO26s / 640A1 + hard negatives真实背景误报能否系统下降FP/1,000 无鸟图显著下降,正样本 recall 保持
A4YOLO26m / 640完全同 A1同数据下是否仍有容量瓶颈增益明显且吞吐/内存可接受
A5S detector + 轻量分类复核只用 background FP 裁片二阶段是否比单纯提阈值更好同 recall 下 FPR 优于 A3
关于继续用二分类网络:可以,但更适合作为“整图 presence 辅助”或“检测框复核器”。检测器仍负责给出位置;二分类器只接收人工确认的鸟裁片/背景裁片。不要把 duplicate 或 IoU 0.49 的真实鸟框标成非鸟,否则它会学会拒绝你最需要召回的难鸟。
Reproducibility

可复核性与文件审计

六组预测都保留到置信度 0.001,可重算不同工作点。模型文件、数据注释和官方 CUB 压缩包均记录哈希;评估脚本未调用训练接口,审计结果通过。

权重身份

  • YOLO26n:2,572,280 参数,5.54 MB,SHA-256 9b09…4fef
  • YOLO26s:10,009,784 参数,20.42 MB,SHA-256 646f…a1b
  • YOLO26m:21,896,248 参数,44.26 MB,SHA-256 401c…0b7

分析产物

  • benchmark_summary.csv:六组总体指标
  • predictions.json:每模型/数据集原始预测
  • scale_recall.csv:逐框尺寸召回
  • selected_cases.json:十组案例的 TP/FP/FN 与 IoU
  • audit.json:完整性和未训练审计
Primary sources

来源与口径

本报告的具体分数、速度与案例均为 2026-07-21 本机实测;数据集和模型定义链接到官方资料。案例图来自本次评估所用公开数据集,并叠加本地计算的预测框。

解释规则

  • 实测:从冻结预测和 GT 重算,可由项目文件复核。
  • 判断:案例原因是结合框、尺寸和场景的工程解释,不等同于模型内部因果证明。
  • 代表性:十组案例按预定义失败模式排序选取,用于解释机制;候选数用于显示该模式并非孤例,但不应当作全图库流行率。
  • 许可:公开数据仅用于本次技术评估;再分发或商用前应复核各数据集条款。
不要把 CUB 99% 直接写进产品承诺。它成立于“每张图都有一只明显鸟”的测试域。真正决定 Lightroom 写星体验的是:本地无鸟图 FPR、连拍组稳定性、模糊鸟召回、边缘/极小鸟召回,以及误报是否集中在可治理的少数类型。