上周在调试一个前向碰撞预警模块时,遇到了一个典型问题:夜间低光照环境下,系统对横穿马路的行人漏检率突然飙升到15%以上。日志里模型置信度飘忽不定,时而0.9,时而0.3,但帧间光照条件其实没有剧烈变化。这个问题让我重新审视了YOLOv11在自动驾驶场景下的几个关键设计细节——今天我们就聊聊这些实战中的门道。
数据层面的“暗区陷阱”
自动驾驶的数据集往往在白天场景下表现亮眼,但一到夜间或隧道入口,模型性能就容易滑坡。我们早期直接用COCO预训练权重做微调,结果在阴影区域的误检率高得离谱。后来发现,问题出在数据分布的断层上。YOLOv11的骨干网络对光照突变敏感,尤其是低对比度边缘容易丢失。
我们的解决方案是在数据增强阶段引入“光照抖动模块”,不是简单调整亮度,而是模拟车灯扫过、树影晃动、隧道明暗交替的连续变化。这里有个坑要注意:直接对整图做随机亮度调整会破坏车道线等关键特征的连续性,我们改为分区域渐进式调整,模拟真实光影过渡。
# 模拟车灯渐亮效果的区域增强defgradual_lighting_augment(img,center_x,ra