本文是【AI工业自动化第三期】深度学习+机器视觉:下一代工业视觉检测技术路线 的观看笔记,看完之后,收获良多。
文中图片来自 B站视频:
文章目录
深度学习 + 传统机器视觉:下一代工业视觉检测技术路线 认识工业视觉系统
官网上的一个截图:
工业视觉与计算机视觉不同:
对检测结果要作出一系列行动。
成像、光源设计这一块儿,工业视觉背景更加单一。
四大领域:
引导在工业视觉中很重要。
测量:核心在于精度。硬件、光学影响比较大,其实与AI这一块儿关系不大。
识别:条码、OCR字符 复杂度不高,但是难点在于软硬件结合。
引导:对算法要求较高。2D定位:模板匹配(较简单) 3D定位:上下料、物流。
检测:国内有能力做复杂缺陷检测的公司比较少。 AI主战场
大部分工业视觉的全景
工业视觉检测现状:
工厂质检员比例:10%->30%
组装这一块儿随着自动化技术提高,需要的人工降低了,但是质检这一块儿,人工比例却越来越高。
对于误检,工厂里边很多这样的:前面AOI系统检测,后边配几个人工
为什么?
深度学习的优势与劣势
AI工业检测落地流程
红色是用AI去做和传统不一样的地方。
工业里面的并不是一味地堆数据。
数组类型、怎么标注。
第六步中,传统:先做出来,然后再派技术支持到现场部署。 深度学习:先有一个粗略的模型,到现场后再完成算法。
案例:
AIDI用于连接器检测
3C精密模组检测方案:
刮伤、压伤都属于行业难点,一般用AI去做。
AIDI连接器检测算法方案
真正使用传统算法做的只有圆点超1/2(B面),其他有的是用传统算法辅助。
AI落地工业视觉的难点与阿丘解决之道
小样本效果好->加大样本测试后效果又变差 ->深渊 :加大数据量后,有的缺陷检测率提高了,有些缺陷检测率降低了,进入震荡期,很多公司到这一步就放弃了。
AI落地工业视觉很难,套路很少。
让算法趋于可控。
AI工业检测四大坑
很多外行人低估缺陷检测难度。
缺陷检测难度远远高于定位。
需求之坑:1. 客户要求漏检、过检都为0。客户不懂技术,会有过高的预期。2. 有些公司就让你过来,也不提具体需求,就说你只要把现在的质检员替换掉就OK了,哈哈哈,真实,这样会比较费劲儿,后期需求更改啥的很麻烦,这种客户直接拒绝就好。
数据之坑:
模型之坑:过拟合:小样本上比较好,大样本效果差。
经验:工业检测上,神经网络的层数没必要太多,基本上20多层已经完全够了,层数过深的话,模型复杂度高于问题复杂度,容易出现过拟合。
模型迁移:传统方法通过改参数,AI的话需要进行迁移。
AIDI:工业人工智能视觉检测平台软件
第一步缺陷定位容易出现过检,通过第二步像素级分析,通过一些像素级技术, 降低过检,最后分类。
应用场景
开始推销软件了,哈哈
解答问题
工业图像会有自己的一个特点,比如样本比较少,图片比较大(一张图片上百M,甚至一个G),所以会有几个方向,第一块儿是小样本的问题。第二块儿是非监督模式,用正向本建模的问题(好像是这个词)。第三块儿是数据生成的问题。第四块儿是高分辨率图像处理的问题。
这个问题很大程度上是取决于客户的一个周期,客户的规划。一般如果客户配合比较好的话,预计2~3个月,阿丘这边比较快,因为阿丘这边不做整机设备,只做AI软件,只需要和视觉系统集成商,包括设备公司去合作,一般2到3个月,第一套、第二套上线,后边copy的话,如果类似的产品,时间会比较快。
转产的成本我没太理解,我就按迁移吧,从0到1、以及从1到N是一个非常有意思的问题,也是一个必须解决的问题。如果说产品类似的话,大体上,基本上98%的基准版是有了,但是后面还需要上线,根据产线的数据再做一个迭代,等于说是你软硬件的工作是有了,主要核心迭代算法模型就OK了。这里边一般需要一个技术支持在现场,去采集一些图片,在之前的基础上再加一下样本,尤其是检测不太好的样本,做一个。
我觉得这个问题不太好回答,是因为他看起来具体但有点抽象,这和场景关联度比较高,以及它脏污脏在什么地方,这个如果有问题,可以私下交流。
其实阿丘不是做AOI或者AVI这一块儿的,我们是做AOI或者AVI里面的AI软件或AI算法算法工具平台这一块儿,有点偏通用的属性。可能行业里边知道的,康耐视、WIDI、,所以我们偏软件这一块儿,但是我们的产品,AI、DI这一块儿会在客户的AOI系统上面去使用。比如说对精密结构件的检测
首先,工业流程核心环节是什么,检测这个事很多人可能认为它不是工业流程中特别核心的一个事,会有这种认知。我觉得我这样回答这个问题吧,首先工业里边哪些地方需要AI吧,目前看来,几个地方比较多,第一个就在于设备的预警这一块儿,第二个在于质量控制这一块儿,第三个在于设备参数的优化这一块儿,但这一块儿更倾向于传统机器视觉。所以关于工业流程的核心,质量控制也是企业很关心的一个点。 做外观检测或者做检测绝不是简单的为了替代人,它是质量管控非常重要的一个工具。稍微展开一点,检测这一块儿分为过程中检测和最终环节检测,过程中检测主要为了监控它,我究竟出现哪些质量的问题,哪些出现的概率比较高,哪些出现的概率比较低,我下一步决定干什么,出现概率比较高的缺陷与哪些工艺相关,哪些工艺设备对它的影响比较大,这样可以去做质量的工艺分析,去改善工艺制程,在面板半导体领域等,已经在往这方面去做了。不同领域会有不同的进度。
这要根据场景的复杂度,根据我们的经验,不需要的太多,单一的缺陷的话,图片在30到50张,多一点的话,100张、200张,超过千张的比较少。
这个问题如果结合案例来讲的话会更好一点,打标签核心的话,就是标注信息的时候把信息量标出来,就有些的你不一定只标注缺陷,缺陷的一些周边信息,背景信息都标注出来,可能会有助于你解决问题。
有信心
正样本一般不需要生成,正样本非常好收集,一般会生成负样本,比如划伤。17年研究过数据生成,但是计算机生成的图像和真实数据还是有区别的,所以当时做的不太深。但是19年,我们也在尝试,在用神经网络去做,但这个目前不是一个通识的问题。
确实,在工业场景是需要研究小样本问题的,大数据不在于它数量的大,而在于它信息的大,尽量让信息的密度加大。就比如说,一类缺陷可能有三五十张,20类的话,也就有1000张左右,只要它能够把主流的模式涵盖调,再使用一些数据生成的技术,把它扩一下,但是真的不需要太多。技术细节不能在这里share,哈哈
OCR的识别简单,但是如果涉及到中文、日文、英文的字符,比如缺了一个点,这属于印刷品缺陷检测,这有一定复杂度,但是可解。
看场景吧,不能一概而论。
最近有接触过智能验布这一块儿,目前没有完全上线,技术论证这一块儿还需要一些优化。
精细一点的缺陷需要用分割辅助其他的一些方法,大的比较宏观的缺陷用正样本建模就OK了。这里面有使用不同模块儿的问题。
对缺陷这一块儿不能单纯的看成图像的问题,缺陷认知三段论:缺陷分关键的缺陷、重要的缺陷(我觉得这里阿丘嘴瓢了,应该是不重要的缺陷吧)、主观性的缺陷(有争议的缺陷,需要去和客户谈一个标准)
AIDI我们目前涉及的行业六七个有了,如果具体场景的话,六七十个场景是有的。
正常如果我们不参与协助辅导的话,这个时间不太可控,如果他们有有经验的工程师的话,一个两个月的都有。如果我们去协助的话,是以周为单位。
这个也是客户喜欢提出的问题,我个人认为这有点钻牛角尖了。首先,确实会出现
一些新的缺陷之前在设计模型、训练没有做的这种情况,但这并不意味着AI算法识别不出来,AI算法其实是一个偏模式的特征工程,比如说你这个新缺陷和之前的某个缺陷比较像,而且比较像,一般情况下能识别出来。如果识别不出来,就在模型的基础上把这些东西加进去,重新一下。如果有问题,再调整一下,通过这种方式可以解决。
真的想落地的话,公司需要具备设计网络的能力,可以参考,或者说
等一系列经典的网络,细节这一块儿,比如loss函数,很多地方需要自己调整。
很多人和时间扑上去,开始会出现这种情况,但是随着你做的有经验,这个边界成本会降下来,我们的客户群主要以中间商为主,很少做终端客户,即便是终端客户,也是他们的自动化部门。所以,目前公司其实是没有很大的人员投入
这个问题很专业。传统方法的需要花很长时间和精力去设计算子,但是深度学习会好很多,成本会降低,效率会提升。
我们不做最终的解决方案,但是我们的合作伙伴中有在做这方面的一些检测。其实目前并没有看到特别成熟方案。手机2.5D缺陷检测这一块儿,有些公司做的还OK
这个和行业差异有关,有钱的行业它的容忍度高,比如3C的话,大概在一年半以内。 拿我们AIDI来做的话,大概6个月到12个月,能够回收成本。
参考: