一、那个价值百万的“瞎眼”系统
去年冬天,老李给我打电话,语气里带着绝望:“又崩了,客户那边产线停了,就因为几个针尖大的黑点。”我赶到现场,那台花了大价钱堆起来的视觉检测设备,正把一堆良品乱七八糟地扔进废料筐。屏幕上的NG图亮得刺眼——其实只是工件表面正常的纹理。
说实话,这种事我见多了。机器视觉这行,最怕的不是算法复杂,而是你永远不知道下一批料会出什么幺蛾子。光线偏一度,灰尘多一粒,整个系统就跟你翻脸。😤

那次之后,我们干脆把供应商的方案推倒重来。光源换了四家,镜头从定焦换到远心,算法模型从头训。三个月,你知道我怎么过来的吗?每天盯着屏幕到眼瞎,就为了那0.5%的误报率。❗
二、光源才是爹,算法只是孙子
很多刚入行的人,一上来就研究深度学习模型,YOLO、UNet、Transformer…觉得换个大模型就能解决一切。天真。我见过太多项目,视觉检测失败的原因根本不是算法不行,而是照明方案烂得像坨屎。
举个例子。一个透明塑料件上的细微划痕,你拿环形光正面打,啥也看不见;换个低角度条形光,划痕立刻像伤疤一样凸出来。这就是光的艺术。选光源、调角度、加偏光片……这些才是真正的技术活。✅

有一次,为了检测一个曲面金属件上的氧化斑点,我们试了同轴光、穹顶光、甚至专门订制了多光谱光源。最后发现,用紫外光配合特定滤光片,斑点直接荧光反应,简单粗暴。那一刻我真想抽自己——早干嘛去了!
三、“万能”算法?不存在的

现在AI概念吹上天,好像视觉检测用上深度学习就能包治百病。但现实是,你收集的缺陷样本可能连训练集的十分之一都不到。小样本、类不平衡,是永恒的坑。
问:为什么我的模型在训练集上准确率99%,一上线就瞎?
答:过拟合呗。你在实验室精心采样的那批图,跟产线上的光照、抖动、脏污完全不是一回事。模型记住了背景的噪点,而不是真正的缺陷特征。改进?先老老实实做数据增强,模拟现场干扰,别指望 magic trick。
问:缺陷样本太少,只有几十个,怎么训模型?
答:传统方法和深度学习结合。可以先上图形匹配、差分,把可疑区域框出来,再用一个小型分类网络做二次确认。或者试试异常检测架构,像PatchCore、CFA,用良品训练,检测异常。不过话说回来,这些方法也有各自的坑,调参能调出抑郁症。
所以,不要迷信算法。扎实的成像、稳定的机构、合理的阈值,往往比一个花哨的神经网络靠谱得多。💡
四、那些让你血压飙升的机械细节

视觉系统绝对不是挂个相机就完事。振动!——你体会过因为旁边冲床一砸,图像抖成波浪的感觉吗?安装支架的刚性、减震垫的选择,差之毫厘,缪以千里。
还有温度。夏天车间里四十几度,工业相机热噪声起来,暗电流一大,图像全是麻点。你标定好的检测阈值,一夜之间全废。后来我们在相机外面包了水冷套,又加装散热风扇,才勉强稳住。😫
说实话,干这行久了,我从理想主义者变成了实用主义者。别追求极致,能稳定跑三个月不出大乱子,就是好系统。什么99.99%的检测率,那都是PPT里的数字。
五、几点血泪建议,省你一年弯路

1. 做好打光档案:每款产品,把最佳打光方案拍成标准文档,连光源型号、角度、亮度的数值都记死。人员更替时,这就是圣经。
2. 留足调试余量:验收时指标别卡太死,给自己留点灰度。现场环境和实验室天差地别,你永远想不到操作工会用怎样的奇葩方式“用”设备。
3. 警惕软件更新:算法库升级?先拿历史图集回放一遍再说。我遇到过某大厂算法升级后,把原来的划痕检出率直接砍半,差点背锅。
最后,视觉检测终究是个工程问题,不是纯算法问题。你得懂光、懂机械、懂工艺,甚至懂点人情世故——因为很多时候,产线阿姨的一句“今天料有点油”比你的传感器预警还准。👵