热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

表面缺陷检测数据集综述及GitHub开源项目推荐

本文综述了表面缺陷检测领域的数据集,并推荐了多个GitHub上的开源项目。通过对现有文献和数据集的系统整理,为研究人员提供了全面的资源参考,有助于推动该领域的发展和技术进步。

Surface-Defect-Detection

🐎📈 collect Surface-Defect-Detection paper and dataset 🐋




原文链接,参看我的Github:https://github.com/Charmve/Surface-Defect-Detection


目前, 基于机器视觉的表面缺陷装备已经在各工业领域广泛替代人工肉眼检测,包括3C、汽车、家电、机械制造、半导体及电子、化工、医药、航空航天、轻工等行业。传统的基于机器 视觉的表面缺陷检测方法,往往采用常规图像处理 算法或人工设计特征加分类器方式。一般来说,通常利用被检表面或缺陷的不同性质进行成像方案的设计,合理的成像方案有助于获得光照均匀的图像,并将物体表面缺陷明显的体现出来。近年来,不少基于深度学习的缺陷检测方法也被广泛应用在各种工业场景中。

对比计算机视觉中明确的分 类、检测和分割任务, 缺陷检测的需求非常笼统. 实 际上, 其需求可以划分为三个不同的层次: “缺陷是什么”(分类)、“缺陷在哪里”(定位)和“缺陷是多少”(分割)。


一、表面缺陷检测关键问题


1、小样本问题

目前深度学习方法广泛应用在各种计算机视觉 任务中, 表面缺陷检测一般被看作是其在工业领域的具体应用。在传统的认识中, 深度学习方法无法直接应用在表面缺陷检测中的原因是因为在真实的 工业环境中, 所能提供的工业缺陷样本太少。

相比于ImageNet数据集中1400多万张样本数据, 表面缺陷检测中面临的最关键的问题是小样本问题, 在很多真实的工业场景下甚至只有几张或几十张缺陷图片。 实际上, 针对于工业表面缺陷检测中关键问题之 一的小样本问题, 目前有4种不同的解决方式:

1)数据扩增、生成

最常用的缺陷图像扩 增方法是对原始缺陷样本采用镜像、旋转、平移、扭曲、滤波、对比度调整等多种图像处理操作来获取 更多的样本。另外一种较为 常见方法是数据合成, 常常将单独缺陷融合叠加到 正常(无缺陷)样本上构成缺陷样本。

2)网络预训练与迁移学习

一般来说,,采用小样本来训练深度学习网络很容易导致过拟合, 因此 基于预训练网络或迁移学习的方法是目前针对样 本中最常用的方法之一。

3)合理的网络结构设计

通过设计合理的网络 结构也可以大大减少样本的需求。基于压缩采样定理来压缩和扩充小样本数据, 使 用CNN直接对压缩采样的数据特征进行分类. 相比 于原始的图像输入, 通过对输入进行压缩采样能大 大降低网络对样本的需求. 此外, 基于孪生网络的表 面缺陷检测方法也可以看作是一种特殊的网络设计, 能够大幅减少样本需求。

4)无监督或半监督

在无监督模型中, 只利用正 常样本进行训练, 因此不需要缺陷样本. 半监督方法 可以利用没有标注的样本来解决小样本情况下的网络训练难题。


2、实时性问题

基于深度学习的缺陷检测方法在工业应用中包括三个主要环节: 数据标注、模型训练与模型推断. 在实际工业应用中的实时性更关注模型推断这一环节. 目前大多数缺陷检测方法都集中在分类或 识别的准确性上, 而很少关注模型推断的效率。有不少方法用于加速模型, 例如模型权重量化和模型剪枝等。另外,虽然现有深度学习模型 使用GPU作为通用计算单元, 但随着技术发展, 相信FPGA会成为一个具有吸引力的替代方案。


二、工业表面缺陷检测常用数据集

1)钢材表面:NEU-CLS(可用于分类、定位任务)

地址:http://faculty.neu.edu.cn/yunhyan/NEU_surface_defect_database.html


在这里插入图片描述



2)太阳能板:elpv-dataset

地址:https://github.com/zae-bayern/elpv-dataset



3)金属表面:KolektorSDD

The dataset is constructed from images of defected electrical commutators that were provided and annotated by Kolektor Group d.o.o… Specifically, microscopic fractions or cracks were observed on the surface of the plastic embedding in electrical commutators. The surface area of each commutator was captured in eight non-overlapping images. The images were captured in a controlled environment.



offical link: https://www.vicos.si/Downloads/KolektorSDD

百度网盘链接:https://pan.baidu.com/share/init?surl=HSzHC1ltHvt1hSJh_IY4Jg

提取码:1zlb

The dataset consists of:


  • 50 physical items (defected electrical commutators)
  • 8 surfaces per item
  • Altogether 399 images:
    – 52 images of visible defect
    – 347 images without any defect
  • Original images of sizes:
    – width: 500 px
    – height: from 1240 to 1270 px
  • For training and evaluation images should be resized to 512 x 1408 px

For each item the defect is only visible in at least one image, while two items have defects on two images, which means there were 52 images where the defects are visible. The remaining 347 images serve as negative examples with non-defective surfaces.



4)PCB板检测:DeepPCB

地址:https://github.com/Charmve/Surface-Defect-Detection/tree/master/DeepPCB

在这里插入图片描述



5)AITEX数据集(面料缺陷)

数据集下载链接:

https://pan.baidu.com/s/1cfC4Ll5QlnwN5RTuSZ6b7w

提取码:b9uy

该数据库由七个不同织物结构的245张4096 x 256像素图像组成。数据库中有140个无缺陷图像,每种类型的织物20个,除此之外,有105幅纺织行业中常见的不同类型的织物缺陷(12种缺陷)图像。图像的大尺寸允许用户使用不同的窗口尺寸,从而增加了样本数量。Internet上的数据库还包含所有具有缺陷的图像的分割mask,使得白色像素表示缺陷区域,其余像素为黑色。



6)天池布匹缺陷数据(竞赛)

数据下载链接:

https://pan.baidu.com/s/1LMbujxvr5iB3SwjFGYHspA

提取码:gat2

在布匹的实际生产过程中,由于各方面因素的影响,会产生污渍、破洞、毛粒等瑕疵,为保证产品质量,需要对布匹进行瑕疵检测。布匹疵点检验是纺织行业生产和质量管理的重要环节,目前人工检测易受主观因素影响,缺乏一致性;并且检测人员在强光下长时间工作对视力影响极大。由于布匹疵点种类繁多、形态变化多样、观察识别难道大,导致布匹疵点智能检测是困扰行业多年的技术瓶颈。本数据涵盖了纺织业中布匹的各类重要瑕疵,每张图片含一个或多种瑕疵。数据包括包括素色布和花色布两类,其中,素色布数据约8000张,用于初赛;花色布数据约12000张,用于复赛。



7)天池铝型材表面瑕疵数据集(竞赛)

数据集下载链接:

https://tianchi.aliyun.com/competition/entrance/231682/information

数据介绍:在铝型材的实际生产过程中,由于各方面因素的影响,铝型材表面会产生裂纹、起皮、划伤等瑕疵,这些瑕疵会严重影响铝型材的质量。为保证产品质量,需要人工进行肉眼目测。然而,铝型材的表面自身会含有纹路,与瑕疵的区分度不高。传统人工肉眼检查十分费力,不能及时准确的判断出表面瑕疵,质检的效率难以把控。近年来,深度学习在图像识别等领域取得了突飞猛进的成果。铝型材制造商迫切希望采用最新的AI技术来革新现有质检流程,自动完成质检任务,减少漏检发生率,提高产品的质量,使铝型材产品的生产管理者彻底摆脱了无法全面掌握产品表面质量的状态。大赛数据集里有1万份来自实际生产中有瑕疵的铝型材监测影像数据,每个影像包含一个或多种瑕疵。供机器学习的样图会明确标识影像中所包含的瑕疵类型。

在这里插入图片描述



8)弱监督学习下的工业光学检测(DAGM 2007) Weakly Supervised Learning for Industrial Optical Inspection

数据下载链接:

https://hci.iwr.uni-heidelberg.de/node/3616

在这里插入图片描述



数据集介绍:


  • 主要针对纹理背景上的杂项缺陷。

  • 较弱监督的训练数据。

  • 包含是个数据集,前六个为训练数据集,后四个为测试数据集。

  • 每个数据集均包含以灰度8位PNG格式保存的1000个“无缺陷”图像和150个“有缺陷”图像。每个数据集由不同的纹理模型和缺陷模型生成。

  • “无缺陷”图像显示的背景纹理没有缺陷,“无缺陷”图像的背景纹理上恰好有一个标记的缺陷。

  • 所有数据集已随机分为大小相等的训练和测试子数据集。

  • 弱标签以椭圆形表示,大致表示缺陷区域。



9)基建表面裂纹检测数据 Cracks on the surface of the construction.

数据集是github上的一个项目,主要是一些基建(水泥表面裂纹),可以访问项目连接:https://github.com/cuilimeng/CrackForest-dataset 或者百度云链接:https://pan.baidu.com/s/1108j5QbDr7T3XQvDxAzVpg

提取码:jajn

在这里插入图片描述



Cracks on the bridge(left) and crack on the road surface.


  • Bridge cracks. There are 2688 images of bridge crack without pixel-level ground truth. From the authors “Liangfu Li Weifei Ma Li Li Xiaoxiao Gao”. Files can be reached by visiting https://github.com/Charmve/Surface-Defect-Detection/tree/master/Bridge_Crack_Image.

  • Crack on road surface. From Shi, Yong, and Cui, Limeng and Qi, Zhiquan and Meng, Fan and Chen, Zhensong. Original dataset can be reached at https://github.com/Charmve/Surface-Defect-Detection/tree/master/CrackForest. We extract the image files of the pixel level ground truth.

10)磁瓦缺陷数据集 Magnetic tile dataset

Magnetic tile dataset by ourselves. Can be downloaded from https://github.com/Charmve/Surface-Defect-Detection/tree/master/Magnetic-Tile-Defect, which was used in our paper “Surface defect saliency of magnetic tile”, the paper can be reach by here or here

在这里插入图片描述

Figure 1. An overview of our dataset.

This is the datasets of the paper “Saliency of magnetic tile surface defects”
The images of 6 common magnetic tile defects were collected, and their pixel level ground-truth were labeled.



11)铁轨表面缺陷数据集 RSDDs dataset

RSDDs数据集包含两种类型的数据集:第一种是从快车道捕获的I型RSDDs数据集,其中包含67个具有挑战性的图像。第二个是从普通/重型运输轨道捕获的II型RSDDs数据集,其中包含128个具有挑战性的图像。

两个数据集的每幅图像至少包含一个缺陷,并且背景复杂且噪声很大。

RSDDs数据集中的这些缺陷已由一些专业的人类观察员在轨道表面检查领域进行了标记。

在这里插入图片描述



官方链接:http://icn.bjtu.edu.cn/Visint/resources/RSDDs.aspx

链接:https://pan.baidu.com/share/init?surl=svsnqL0r1kasVDNjppkEwg

提取码:nanr



12)Kylberg Texture Dataset v. 1.0



Figure 2. Example patches from each one of the 28 texture classes.

Short description


  • 28 texture classes, see Figure 2.
  • 160 unique texture patches per class. (Alternative dataset with 12 rotations per each original patch, 160*12=1920 texture patches per class).
  • Texture patch size: 576x576 pixels.
  • File format: Lossless compressed 8 bit PNG.
  • All patches are normalized with a mean value of 127 and a standard deviation of 40.
  • One directory per texture class.
  • Files are named as follows: blanket1-d-p011-r180.png, where blanket1 is the class name, d original image sample number (possible values are a, b, c, or d), p011 is patch number 11, r180 patch rotated 180 degrees.

offical link:http://www.cb.uu.se/~gustaf/texture/



更多数据集可参考:

https://github.com/abin24/Surface-Inspection-defect-detection-dataset


三、Surface Defect Detection Papers

收集一些表面缺陷检测的文章,主要检测对象是:金属表面、LCD屏、建筑、输电线等缺陷或异常检物。方法以分类方法、检测方法、重构方法、生成方法为主。电子版论文放在了paper文件的对应日期文件下。

详见本仓库 Papers



* Update by Sep.27 2020 ©Charmve
推荐阅读
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 导航栏样式练习:项目实例解析
    本文详细介绍了如何创建一个具有动态效果的导航栏,包括HTML、CSS和JavaScript代码的实现,并附有详细的说明和效果图。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • ImmutableX Poised to Pioneer Web3 Gaming Revolution
    ImmutableX is set to spearhead the evolution of Web3 gaming, with its innovative technologies and strategic partnerships driving significant advancements in the industry. ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 如何高效创建和使用字体图标
    在Web和移动开发中,为什么选择字体图标?主要原因是其卓越的性能,可以显著减少HTTP请求并优化页面加载速度。本文详细介绍了从设计到应用的字体图标制作流程,并提供了专业建议。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
author-avatar
手机用户2502931567
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有