Python社区  »  机器学习算法

深度学习工业应用: 缺陷检测

新机器视觉 • 1 周前 • 65 次点击  

本文转自知乎,原文

 https://zhuanlan.zhihu.com/p/39250908

1. 应用背景

      随着机器视觉,工业自动化的快速发展,工业4.0的概念已经被提上日程。传统很多需要人工来手动操作的工作,渐渐的被机器所替代。这当然也是人类科技进步和发展的必然趋势,工业的进步到头来还是服务于人类,给人类带来高质量的生活体验,而不是整天做着乏味无趣的工作。

图一 自动化车间


    这里我要讨论的话题是关于缺陷检测机器自动化方面,先说下现状吧,在富士康,伯恩光学,蓝思,信利等国内几大知名半导体制造厂商的朋友肯定看到过下面的画面。

图二 车间


     近几年随着智能手机,平板,各种触摸设备的火速发展,促进了玻璃半导体行业的巨大需求。读者不乏看看周边的朋友,我想平均每个人都至少有2部移动设备吧,一部手机,一部平板。但是使用者有没有思考过这些电子产品的构成。我们就拿屏幕和内部芯片来举个例子。

    每一台智能触摸设备都会佩戴一块屏幕,其中就有盖板玻璃。盖板玻璃在安装在触摸设备之前,在类似图一,图二的车间中经过了好几道检测工序, 其中很关键的一道工序就需要无数QC质检的火眼金金帮我们剔除掉有缺陷的玻璃, 最终来到我们用户手中的玻璃是没有缺陷,或者说基本没有缺陷的。当我们看到图二中的情景,我们是否想用如今的高科技来解救一下他们繁琐无趣的工作,当然我这样说肯定有人反对。

     Anyway, 上面之所以说了这么多,还是想让大家清楚的知道现在工业界的一个真正的需求, 所以下面我们要讨论的话题就是如何来解救现在工厂中正在睁大眼睛,埋头检测玻璃或者其他物体表面缺陷的少女们~

2. 传统视觉检测

在机器学习,深度学习还没有发展的这么火热之前, 国外几款做的几款非常好的视觉软件业内人士应该都很清楚。比如Halcon, Visionpro, Cognix, MIL等等都是业内用的比较多,而且比较成功的视觉软件。其中很多模块都有定位,测量,检测等功能。

   但是这些传统的方法来做缺陷检测大多都是靠人来特征工程, 从形状,颜色, 长度,宽度,长宽比来确定被检测的目标是否符合标准,最终定义出一系列的规则来进行缺陷检测。这样的方法当然在一些简单的case中已经应用的很好, 唯一的缺点是随着被检测物体的变动,所有的规则和算法都要重新设计和开发,即使是同样的产品,不同批次的变化都会造成不能重用的现实。

  总结:传统机器视觉算法通常处理容易提取,容易量化的特征:颜色、面积、圆度、角度、长度等。

3. 深度学习检测

随着机器学习, 深度学习的发展,很多人眼很难去直接量化的特征, 深度学习可以搞定, 这就是深度学习带给我们的优点和前所未有的吸引力。很多特征我们通过传统算法无法量化,或者说很难去做到的, 深度学习可以搞定。特别是在图像分类, 目标检测这些问题上取得了显著的提升。下图是近几年来深度学习在图像分类问题上取得的成绩。

图三 图像分类


下图是近几年来深度学习算法在目标检测问题上的发展。

图四 目标检测


     之所以提出上面的算法, 是因为这些算法给其他领域提供了很多参考和借鉴意义。比如本文讨论的缺陷检测, 上面的很多网络的特点,以及方法都给了我们很多的启发,我们在设计网络结构的时候,配合自己在产线部署的硬件性能,设计适合项目的网络结构。

    当然,深度学习的方法用来检测,也有自己的很多缺点。例如:数据量要求大,工业数据收集成本高。但是随着数据增强技术,无监督学习的不断进步,在某些应用场景上,这些缺点渐渐被隐藏了。例如学术界正在研究的,自动网络结构设计,自动数据标注等等。所以作者认为随着技术的发展,这个领域将会得到很大的提升,人工检测终将会被机器检测替代。然后你看到的无人工厂更加会无人化~

   具体的检测工业应用,作者在github上有讲的很清楚, 有感兴趣的朋友可以直接链接过去了解。

    地址:

https://github.com/sundyCoder/DEye


推荐阅读

(点击标题可跳转阅读)

最详细、最完整的相机标定讲解

深度学习+机器视觉=下一代检测

视觉检测系统最经典的结构你了解吗?

机器视觉技术的十大应用领域

工业相机和普通相机究竟有什么不同?

基于机器视觉和深度学习的智能缺陷检测

波士顿等移动机器人的视觉算法解析

2020年37个人工智能技术发展趋势

机器视觉的光源选型及打光方案分析

光学三维测量技术及应用

国内80%搞机器视觉的工程师,走的路子是错的!

视觉+机器人,如何实现连接器的自动装配?

机器视觉技术发展的五大趋势

搞懂机器视觉基本内容,这份PPT就够了

机器视觉:PC式视觉系统与嵌入式视觉系统区别  

基于HALCON的机器视觉开发,C++或C#如何选择? 

3D视觉技术在机器人抓取作业中的应用实例

基于机器视觉的粗糙度检测方案

机器视觉常用图像软件对比及分析

工业相机编程流程及SDK接口使用汇总



 End 


商务合作:QQ:1504328545

声明:部分内容来源于网络,仅供读者学习、交流之目的。文章版权归原作者所有。如有不妥,请联系删除。

更多是视觉资讯尽在“新机器视觉”微信公众号~


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/48517
 
65 次点击  
分享到微博