【YOLOv11模型改进系列】04 解耦头+动态标签分配:让YOLOv11在小目标检测上怒提3个点 04 解耦头+动态标签分配:让YOLOv11在小目标检测上怒提3个点开篇故事:智慧交通项目里的“漏检噩梦”去年我接手一个智慧交通项目,要在高清监控画面里检测路口的行人、自行车和摩托车。YOLOv11的官方模型跑出来,大卡车、公交车检测得稳稳当当,可一到远处的小目标——比如50米外的一个行人、一辆共享单车——mAP直接掉到0.45。甲方产品经理盯着漏检的截图,问我:“你不是说YOLOv11很强吗?怎么连个人都认不出来?”我翻看训练日志,发现损失函数一直在震荡,尤其是分类损失和回归损失之间互相“打架”。后来我意识到:YOLOv11默认的耦合检测头,把分类和回归任务绑在一起,导致小目标特征被大目标“挤压”了。这就好比让一个厨师同时切菜和炒菜,手忙脚乱,两样都做不好。痛点拆解:耦合头的“三宗罪”1. 任务冲突:分类和回归抢资源YOLOv11的检测头里,分类分支和回归分支共享同一组卷积层。假设你有一个小目标(比如远处行人)和一个大目标(近处卡车)同时出现,模型会优先学习大目标的形状特征,小目标的回归任务被“淹没”在梯度里。2. 标签分配僵化:小目标“无人认领”默认的标签分配策略(比如YOLOv5的跨网格匹配)对大目标友好,但对小目标来说,正样本数量太少。一个10×10像素的行人,可能只有1个锚点能匹配上,而一个200×200的卡车有5个锚点。小目标在训练时几乎“被遗

本月热点