162、YOLOv8改进实战:Transformer Decoder检测头替换——DETR风格端到端检测实现 📅 2026/8/5 12:39:05 162、YOLOv8改进实战:Transformer Decoder检测头替换——DETR风格端到端检测实现从一次线上事故说起去年年底,我在一个工业质检项目上栽了个大跟头。客户要求检测流水线上微小划痕,YOLOv8 baseline跑下来mAP有0.78,看起来还行。但部署到产线后,每天凌晨三点准时出现大量误检——NMS把相邻的划痕片段合并成了一条长划痕,导致良品被误判为次品。更头疼的是,划痕密集区域总有漏检,因为NMS阈值调低了漏检,调高了误检,怎么调都像在钢丝上跳舞。那段时间我盯着TensorBoard上的NMS耗时曲线,突然意识到一个本质问题:YOLOv8的检测头本质上是“先预测一堆候选框,再用NMS暴力筛选”,这种设计在密集小目标场景下,后处理本身就是个瓶颈。DETR的端到端检测思路我早就看过,但一直觉得“Transformer上检测头太慢,工业落地不现实”。直到被NMS折磨到凌晨三点,我决定赌一把——把YOLOv8的检测头换成Transformer Decoder,用匈牙利匹配替代NMS。架构层面的关键差异YOLOv8的检测头是典型的“anchor-free + 解耦头”结构:三个检测层分别处理不同尺度特征,每个检测层输出分类分支和回归分支,最后通过NMS合并结果。这种设计的隐含假设是“每个特征点对应一个物体”,但实际场景中,特征点与物体的对应关系是模糊的——一个物体可能激活多个特征点,一个特征点可能对应多个小物体。Transformer Decoder的思路完全不同:它把检测问题建模成“