缸体六面加内壁要360°覆盖,鱼眼镜头用点位数量换覆盖,0.4mm黑点靠分割加二次校验兜
发动机缸体六个外表面加内壁都要查:缸面、底面、冷面、挺面、齿面、飞面,还有内部空间。工件个头大,产线输送来料,合格件放行、缺陷件拦截。人工在节拍内走完六面加内壁本就不现实,细微缺陷的漏检率还高,检测完了也留不下结构化数据。
六个面加内壁,先算点位数再算分辨率
多面覆盖的第一道账是点位数:每个面要几个取像位,内壁从哪个方向进得去,相邻点位的视野怎么衔接。点位数定下来,节拍预算才有着落;点位数压不下来,分辨率再高也拍不完。鱼眼镜头在这里的作用是减少点位数——大视场角让单次取图覆盖范围显著扩大,六面加内壁的覆盖在 90 秒节拍内才可行,以现场验收结果为准。
鱼眼换的是点位数量,代价是边缘形变
大视场角是用边缘形变换来的。鱼眼图像越靠边缘,形变越明显,同一尺寸的缺陷在不同位置呈现的像素形态不同。这对判定有两层影响:一是缺陷尺寸的判读要结合位置做补偿;二是点位数减少后,单个点位的判定责任变重,边缘区域的成像质量必须单独验证。选型时如果只看到点位少、节拍快,忽略了边缘区域的成像一致性,现场调试会很吃力。
分割负责不漏,二次校验负责不冤
深度学习实例分割对图像逐像素识别缺陷区域并分类,它的强项是敏感度:可疑区域基本都能被框出来。但敏感度高意味着误报也多,所以方案保留传统算法对疑似缺陷做二次精准判定。两个环节的分工是清楚的:分割保漏检率可控,二次校验压误报。两个环节的阈值按现场缺陷样本持续优化,而不是一次调死。
0.4mm 在图像里占几个像素
可识别 0.4mm 微小黑点,这个能力的物理前提是分辨率:0.4mm 的缺陷在图像中要占到多个像素,才谈得上被分割网络分离出来。所以相机分辨率不是选型时的余量项,而是硬约束——视野、工作距离、像素数三者共同决定能不能看到 0.4mm。缺陷尺寸要求越细,分辨率要求越高,这是没法靠算法绕过去的。
一缸一档
检测数据与缸体二维码绑定上传 MES,缺陷类型、位置与判定结论结构化存储。每台缸体的检测结果与其身份绑定,形成一缸一档的可追溯记录,可按缸体检索,支撑批次追溯与工艺改进。结构化存储的意义在后续:只有合格或不合格的记录无法做缺陷分布分析,带上类型与位置的记录才能回答哪类缺陷在哪个区域反复出现。
指标要放在一起看
整体准确率超 99.5%、缺陷拦截率超 99%、漏检率不超过 1%,系统 7×24 小时稳定运行,以现场验收结果为准。这三个指标放在一起看才有意义:拦截率高说明缺陷件基本拦住了,漏检率低说明放行的件里问题少,准确率则反映整体判定的可靠性。单个指标好看而其他两项失守的情况,在缺陷检测项目里并不少见。
覆盖与误报之间的余地
鱼眼镜头会不会让缺陷判不准?
边缘区域会有影响,需要按位置做补偿并在验收时单独核对边缘成像。中心区域受形变影响相对小。
为什么要保留传统算法做二次校验?
因为分割的敏感度是以误报为代价换来的。二次校验按规则复核可疑区域,把误报剔掉,两者结合才能同时守住漏检与误报。
六面覆盖一定要用鱼眼吗?
不一定。常规镜头增加点位也能覆盖,代价是点位数与节拍。鱼眼的价值是用更少的点位换覆盖,适合节拍紧、点位预算有限的多面工件。