社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

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

小白学视觉 • 2 月前 • 98 次点击  

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

本文转自知乎,原文
 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


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


下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/174715
 
98 次点击