共计 1234 个字符,预计需要花费 4 分钟才能阅读完成。
深度学习的 AI智能 AOI和传统的 AOI, 视觉算法最大的不同就在于特征提取。传统的视觉学习算法, 需要依赖人手动从数据中提取特征, 基于这些提取的好的特征, 用简单的算法进行判断或分类, 图像对比这一类的传统算法, 进行判断或者处理。但是人工设置参数是个很耗时繁琐的过程, 往往需要大量反复的尝试, 且参数的设置效果因人而异, 且总结的规则和经验也无法在不同任务之间复用, 提取到的低纬度特征比较难区分不同的缺陷。而深度学习最大的特点便是利用深度神经网络从原始数据中自动学习提取特征, 这不但避免了人工特征提取的问题, 能学到更复杂抽象和更能泛化的特征, 使得深度学习具有更好的通用性, 同时特征的学习也会随着数据增加而提升, 这使得学习算法会随着数据的质量和数量持续迭代提升性能, 在很多任务上能达到更好的精度

以 SMT AOI 中的 PCBA 板编程阶段为例, 目前市面上所有的 SMT AOI 都需要人工进行编程, 而这一过程的核心就是基于规则和经验, 让编程人员来手动提取 PCBA 板图片上元器件的各个特征, 这些特征包括元器件的外框、焊锡区域、OCR 文字区域, 以及更详细的用于判断不同缺陷的子区域等等, 除了区域选择, 编程人员还需要对这些区域设定例如颜色、位移等容忍范围的阈值作为后续判定缺陷的规则。并且不同类型的元器件, 这些特征区域和判定规则都不一样, 所以需要每类器件都需要重新编程。这导致整个编程过程非常繁琐耗时, 一块新 PCBA 板的编程可能消耗几十分钟到几个小时不等。而且因为后面用于判断缺陷的算法, 都依赖于人工编程提取的图片特征, 最终 AOI 的稳定性 / 误报率也很依赖于编程人员的经验和判断。
现在市面上已经有不少厂家尝试在做到 一键编程 去进行检测, 但这些往往都是基于丰富的 元器件库 的导入达到的加速, 所以整个过程的本质依旧是没变, 这种 AOI 并不是真正意义上的 智能 AOI。这种可以自动画框的 AOI 依旧高度依赖于人工提取图片特征来进行缺陷比对, 且在遇到新的未知元器件或者料号不准确时, 元器件库的作用便无法发挥, 又得回归到缓慢繁琐的人工画框调试。检测设备对于元器件库与人力的依赖依旧很高。
真正的 一键编程, 是采用了深度学习来自动提取图片特征后, 在不需要元件库的情况下实现的。AOI 中的深度学习算法在不需要任何额外训练的情况下, 可以自动准确地检测出客户提供的不同 PCB 板上不同元器件以及其重要组成区域(封装、焊盘、引脚、OCR 和极性等), 而且需要在后续判断缺陷中也使用深度学习算法, 这样编程不需要像传统 AOI 一样人为确定颜色容忍度, 进步大大简化了编程流程, 提高了编程的效率。所以只有真正基于深度学习的 AOI, 实现了真正意义上的自动一键编程, 将 PCB 板编程所需要的时间缩短到了几十秒到几分钟。根据图 1 所示, 红色代表 AI 算法自动完成, 蓝色是人工参与的部分, 可以看到深度学习的 AOI 设备的 PCB 板基本不需要人工参与, 因此对编程人员的培训也变得非常简单。此外, 在编程阶段深度学习算法的持续训练和提升, 也能直接惠及到所有的客户用户的应用上。