178、数据增强全景总结:7 种策略的单独使用与组合使用的 20 组消融矩阵

178、数据增强全景总结:7 种策略的单独使用与组合使用的 20 组消融矩阵

上周帮一个做工业质检的团队调YOLOv11,对方反馈说模型在白天产线上跑mAP 0.89,一到夜班就掉到0.72。我第一反应是光照增强没加,结果一看代码,他们只用了RandomHorizontalFlip和Mosaic,连HSV抖动都没开。这种“增强策略拍脑袋选”的问题,我在源码issue里见过不下50次。今天干脆把YOLOv11里能用的7种数据增强策略,从源码实现到消融实验,一次性讲透。

一、YOLOv11的增强管线到底长什么样

先看ultralytics源码里最核心的加载逻辑。在dataset.pyLoadImagesAndLabels类中,增强操作是按顺序堆叠的:

# ultralytics/data/dataset.py 第280行附近# 别被这个顺序骗了,实际执行顺序和定义顺序是反的self.transforms=Compose(