缺陷检测是工业视觉技术中最重要的组成部分。业务广泛,场景丰富,技术难点高、工作量大。今天我们要介绍的是关于金属表面缺陷检测应用。
一般情况下,工业视觉相机分为面阵和线阵,大部分有点要求的场景对应需要的相机都比较贵,动辄几千块,相机还要配套光源、镜头,都比较贵,一套成像系统下来一万块也只是入门级别的。算法的研发费用也是比较贵的,一种产品缺陷的研发周期至少也是一个月以上,往往需要一个小团队共同开发。很多场景的缺陷至今是无法解决或者无法实用的。这就造成了有的场景利润低,用人工比用机器更省钱,有的场景利润高,可惜没人能作出实用的系统。

对于缺陷的类别,国标中是有定义的,分了很多种情况,针对不同的厂家需求也有不同的要求。比方说印,可分为压印,划痕,坑的具体科目。这里主要分为三类,印,电镀不良及脏污。
训练流程如下:
1、将扫描图片根据金属件宽度缩放到指定大小,并进行微弱的随机放大缩小;
2、设定窗口大小如15x15,以滑动窗口的形式,扫描金属件,得到样本,其中正样本为缺陷面积占窗口大于20%,类别为面积最大的类型(考虑到有交际的情况),负样本为缺陷面积占窗口小于1%,其他情况舍弃(保留中间地带进行界限区分);
3、采用简单的卷积网络作为分类器训练,多个分类器形成级联分类器;
预测过程如下:
1、对输入图像,根据金属件宽度缩放到指定大小;
2、滑动窗口对缺陷的每一块进行分类;
3、用生长算法将小的缺陷框合成一个大的框输出