ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

094、YOLOv11改进-工业质检缺陷分类检测——基于动态标签分配与Shape-IoU的即插即用模块,缺陷分类mAP提升3.8%

094、YOLOv11改进-工业质检缺陷分类检测——基于动态标签分配与Shape-IoU的即插即用模块,缺陷分类mAP提升3.8% 094、YOLOv11改进-工业质检缺陷分类检测——基于动态标签分配与Shape-IoU的即插即用模块,缺陷分类mAP提升3.8%一、调试现场的真实困境上个月在产线质检项目上栽了个跟头。客户那边送来一批手机中框的缺陷样本,划痕、压伤、脏污三类缺陷,数据量不大,每类也就两千来张。我直接拿YOLOv11s跑了个baseline,mAP@0.5卡在82.3%死活上不去。最头疼的是脏污类——模型总把反光区域误检成脏污,召回率只有61%。翻来覆去调了三天参数,从学习率到anchor size,从数据增强到NMS阈值,能动的都动了,mAP就涨了0.5%。后来盯着loss曲线看,发现分类分支收敛得不错,但回归分支的IoU loss一直在0.12附近震荡。问题出在标签分配上——YOLOv11默认的TaskAlignedAssigner对工业缺陷这种小目标、形状不规则的情况不够友好,正样本分配太死板,导致回归分支学不到精细的形状信息。二、动态标签分配:别让正样本分配成为瓶颈YOLOv11的标签分配策略本质上是静态的——根据预测框和GT的IoU、分类得分加权排序,topK个候选框作为正样本。这在通用场景下够用,但工业缺陷有个特点:缺陷区域形状差异极大,划痕是细长条,压伤是圆形,脏污是不规则块。静态topK分配会让形状匹配度低的缺陷被分配到质量差的预测框,回归分支越学越偏。我改成了动态阈值分配,核心思路是让每个GT自己决定需要多少个正样本,而不是硬性规定topK。具体做法:
返回列表