开篇故事
上个月,我去一家汽车零部件工厂做项目验收。客户的生产线检测工位装了两台海康相机,白天检测精度99.2%,一到晚上换班就掉到91%。
车间主任急得直跺脚:“你们算法是不是有bug?白天好好的,晚上就瞎了?”
我蹲在生产线旁观察了两个小时,发现问题出在灯光上——白天自然光+补光灯,光照均匀;晚上只有补光灯,而且灯管老化,照在零件表面的光斑分布完全变了。
更麻烦的是,生产线时不时要切换产品型号,每次切换后光照条件都不一样。
客户之前试过全局Gamma校正,试过直方图均衡化,效果都不稳定。
有个工程师甚至写了个if-else逻辑:如果平均亮度低于某个阈值就提亮,结果在部分暗区反而过曝了。
这就是我今天要讲的核心问题:YOLO模型在极端光照变化场景下,如何实现自适应的、鲁棒的推理?不是简单调个Gamma,而是让模型自己学会“看情况办事”。
痛点拆解
常见错误实现
很多人的第一反应是:把图像亮度归一化到某个固定范围。我见过太多这样的代码:
defnaive_lighting_fix(image)