《深度学习工业缺陷检测》专栏介绍 & CSDN独家改进实战

发布时间:2023年12月17日

?💡💡💡深度学习工业缺陷检测

1)提供工业小缺陷检测性能提升方案,满足部署条件;

2)针对缺陷样品少等难点,引入无监督检测;

3)深度学习 C++、C#部署方案;

4)实战工业缺陷检测项目,学习如何选择合适的框架和模型;

layers?parametersGFLOPs?mAP50mAP50-95
YOLOv8n?16830060388.10.6790.322
YOLOv8n_smallobject?207297772012.50.7020.359
Wasserstein loss16830060388.10.7140.342
YOLOv8n_CSPStage23229827428.10.7270.339
YOLOv8n_smallobject _CSPStage303295352812.50.7340.376
YOLOv8n_smallobject _CSPStage+Wasserstein loss303295352812.50.8140.416

目录

?💡💡💡深度学习工业缺陷检测

1.基于Yolov8的工业小目标缺陷检测

1.1 动态蛇形卷积(Dynamic Snake Convolution),实现暴力涨点 | ICCV2023

1.2 微小目标检测可能存在检测能力不佳的现象,添加一个微小物体的检测头

1.3 SPD-Conv,低分辨率图像和小物体涨点明显

1.4大缺陷小缺陷一网打尽的轻量级目标检测器GiraffeDet

?1.5 多检测头结合小缺陷到大缺陷一网打尽的轻量级目标检测器GiraffeDet

?1.6?Wasserstein Distance Loss,助力工业缺陷检测

1.7 工业部署级解决方案:?多头检测器+小缺陷到大缺陷一网打尽的+Wasserstein Distance Loss

2.工业缺陷检测全流程解决方案

2.1?工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题

2.2??工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题(二)

2.3??工业缺陷检测全流程解决方案,提供检测+后处理、分割+后处理、检测+RoI分割+后处理解决方案

3.深度学习部署

3.1??Opencv DNN + C++部署

3.2?C++ GPU部署方式介绍:ONNX Runtime

3.3?YOLOV8 Onnxruntime Opencv DNN C++部署

4.深度学习工业项目分享

4.1?基于yolov5的缺陷检测算法(工件缺陷)

4.2? 手机背板缺陷分割

4.3?小目标摄像头镜头缺陷检测?

4.4?划痕缺陷检测?

4.5?玻璃瓶盖缺陷检测

4.6?菌落(colony)计数


1.基于Yolov8的工业小目标缺陷检测

1.工业油污数据集介绍
三星油污缺陷类别:头发丝和小黑点,["TFS","XZW"]?

数据集大小:660张,包括部分良品图像,提升背景检测能力。

数据集地址:https://download.csdn.net/download/m0_63774211/87741209

缺陷特点:小目标缺陷,检测难度大,如下图所示;

1.1 动态蛇形卷积(Dynamic Snake Convolution),实现暴力涨点 | ICCV2023

Dynamic Snake Convolution?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.679提升至0.743

??主要的挑战源于细长微弱的局部结构特征与复杂多变的全局形态特征。本文关注到管状结构细长连续的特点,并利用这一信息在神经网络以下三个阶段同时增强感知:特征提取、特征融合和损失约束。分别设计了动态蛇形卷积(Dynamic?Snake?Convolution),多视角特征融合策略与连续性拓扑约束损失。?

?????????我们希望卷积核一方面能够自由地贴合结构学习特征,另一方面能够在约束条件下不偏离目标结构太远。在观察管状结构的细长连续的特征后,脑海里想到了一个动物——。我们希望卷积核能够像蛇一样动态地扭动,来贴合目标的结构。

原始mAP@0.5 0.679提升至0.743

YOLOv8-C2f-DySnakeConv summary: 249 layers, 3425894 parameters, 0 gradients, 8.7 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:04<00:00,  2.15s/it]
                   all         66        187      0.722      0.668      0.743      0.342
                   TFS         66        130      0.582        0.6      0.638      0.295
                   XZW         66         57      0.862      0.737      0.847      0.388

基于Yolov8的工业小目标缺陷检测(2):动态蛇形卷积(Dynamic Snake Convolution),实现暴力涨点 | ICCV2023_AI小怪兽的博客-CSDN博客

1.2 微小目标检测可能存在检测能力不佳的现象,添加一个微小物体的检测头

多头检测器?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.679提升至0.702

原始mAP@0.5 0.679提升至0.702

YOLOv8n_4 summary (fused): 207 layers, 2977720 parameters, 0 gradients, 12.5 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:04<00:00,  1.64s/it]
                   all         66        187       0.68      0.612      0.702      0.359
                   TFS         66        130      0.486      0.487       0.52      0.228
                   XZW         66         57      0.875      0.737      0.885       0.49

基于Yolov8的工业小目标缺陷检测(3):多检测头提升小目标检测精度_AI小怪兽的博客-CSDN博客

1.3 SPD-Conv,低分辨率图像和小物体涨点明显

SPD-Conv?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5?0.679提升至0.775

SPD- conv由一个空间到深度(SPD)层和一个非跨步卷积层组成。SPD组件推广了一种(原始)图像转换技术[29]来对CNN内部和整个CNN的特征映射进行下采样:

?原始mAP@0.5 0.679提升至0.775

YOLOv8n_SPD summary (fused): 174 layers, 3598934 parameters, 0 gradients, 49.2 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:13<00:00,  4.51s/it]
                   all         66        187      0.741      0.693      0.775      0.415
                   TFS         66        130      0.593      0.562      0.629      0.314
                   XZW         66         57       0.89      0.825       0.92      0.516

基于Yolov8的工业小目标缺陷检测(4):SPD-Conv,低分辨率图像和小物体涨点明显_AI小怪兽的博客-CSDN博客

1.4大缺陷小缺陷一网打尽的轻量级目标检测器GiraffeDet

??GiraffeDet?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.679提升至0.727

?

?????????本文提出了GiraffeDet用于高效目标检测,giraffe包含轻量space-to-depth chain、Generalized-FPN以及预测网络

????????FPN旨在对CNN骨干网络提取的不同分辨率的多尺度特征进行融合。上图给出了FPN的进化,从最初的FPN到PANet再到BiFPN。我们注意到:这些FPN架构仅聚焦于特征融合,缺少了块内连接。因此,我们设计了一种新的路径融合GFPN:包含跳层与跨尺度连接,见上图d。

?原始mAP@0.5 0.679提升至0.734

YOLOv8n_4_CSPStage summary: 303 layers, 2953528 parameters, 0 gradients, 12.5 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:04<00:00,  1.56s/it]
                   all         66        187      0.689       0.68      0.734      0.376
                   TFS         66        130      0.523      0.554      0.571      0.267
                   XZW         66         57      0.855      0.807      0.896      0.486

基于Yolov8的工业小目标缺陷检测(5):大缺陷小缺陷一网打尽的轻量级目标检测器GiraffeDet,暴力提升工业缺陷检测能力_AI小怪兽的博客-CSDN博客

?1.5 多检测头结合小缺陷到大缺陷一网打尽的轻量级目标检测器GiraffeDet

多头检测器+?GiraffeDet?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.679提升至0.734

基于Yolov8的工业小目标缺陷检测(6):多检测头结合小缺陷到大缺陷一网打尽的轻量级目标检测器GiraffeDet,暴力提升工业小目标缺陷检测能力_AI小怪兽的博客-CSDN博客

?原始mAP@0.5 0.679提升至0.734

YOLOv8n_4_CSPStage summary: 303 layers, 2953528 parameters, 0 gradients, 12.5 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:04<00:00,  1.56s/it]
                   all         66        187      0.689       0.68      0.734      0.376
                   TFS         66        130      0.523      0.554      0.571      0.267
                   XZW         66         57      0.855      0.807      0.896      0.486

?1.6?Wasserstein Distance Loss,助力工业缺陷检测

Wasserstein Distance Loss?| ??亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.679提升至0.727

??

Wasserstein distance的主要优点是

  1. 无论小目标之间有没有重叠都可以度量分布相似性;
  2. NWD对不同尺度的目标不敏感,更适合测量小目标之间的相似性。

NWD可应用于One-Stage和Multi-Stage Anchor-Based检测器。此外,NWD不仅可以替代标签分配中的IoU,还可以替代非最大抑制中的IoU(NMS)和回归损失函数。在一个新的TOD数据集AI-TOD上的大量实验表明,本文提出的NWD可以持续地提高所有检测器的检测性能。

?原始mAP@0.5 0.679提升至0.727

?

YOLOv8n summary (fused): 168 layers, 3006038 parameters, 0 gradients, 8.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:04<00:00,  1.45s/it]
                   all         66        187      0.673      0.649      0.714      0.342
                   TFS         66        130      0.573      0.579      0.615      0.283
                   XZW         66         57      0.772      0.719      0.813      0.401

基于Yolov8的工业小目标缺陷检测(7):Wasserstein Distance Loss,助力工业缺陷检测_AI小怪兽的博客-CSDN博客

1.7 工业部署级解决方案:?多头检测器+小缺陷到大缺陷一网打尽的+Wasserstein Distance Loss

?原始mAP@0.5 0.679提升至0.814

??

YOLOv8_4_CSPStage summary: 303 layers, 2953528 parameters, 0 gradients, 12.5 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:04<00:00,  2.19s/it]
                   all         66        187      0.783      0.705      0.814      0.416
                   TFS         66        130      0.647      0.619      0.693      0.317
                   XZW         66         57      0.919      0.792      0.935      0.514

https://cv2023.blog.csdn.net/article/details/133273158

番外篇(一):工业端面小目标计数检测

??端面小目标计数数据集介绍

工业端面小目标计数类别:一类,类别名object

数据集大小:训练集864张,验证集98张

数据集下载地址:目标检测数据集:工业端面小目标缺陷计数数据集_AI小怪兽的博客-CSDN博客

缺陷特点:小目标计数,检测难度大,如下图所示;

?原始性能

??预测结果:

YOLOv8n summary (fused): 168 layers, 3005843 parameters, 0 gradients, 8.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:47<00:00, 15.76s/it]
                   all         96       5055      0.912      0.915      0.936      0.772

1.1??Gold-YOLO,遥遥领先,超越所有YOLO | 华为诺亚NeurIPS23

?

提出了一种全新的信息交互融合机制:信息聚集-分发机制(Gather-and-Distribute Mechanism)。该机制通过在全局上融合不同层次的特征得到全局信息,并将全局信息注入到不同层级的特征中,实现了高效的信息交互和融合。在不显著增加延迟的情况下GD机制显著增强了Neck部分的信息融合能力,提高了模型对不同大小物体的检测能力。?

?

?在Gold-YOLO中,针对模型需要检测不同大小的物体的需要,并权衡精度和速度,我们构建了两个GD分支对信息进行融合:低层级信息聚集-分发分支(Low-GD)和高层级信息聚集-分发分支(High-GD),分别基于卷积和transformer提取和融合特征信息。

?

?原始mAP@0.5 0.936提升至0.945

?

YOLOv8-goldYOLO summary: 359 layers, 6015123 parameters, 0 gradients, 11.9 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:09<00:00,  3.11s/it]
                   all         96       5055       0.91      0.922      0.945      0.787

基于Yolov8的工业端面小目标计数检测(2):Gold-YOLO,遥遥领先,超越所有YOLO | 华为诺亚NeurIPS23_AI小怪兽的博客-CSDN博客

?1.2?小目标计数解决方案: 多头检测器+小缺陷到大缺陷一网打尽的GiraffeDet+Wasserstein Distance Loss

?原始mAP@0.5 0.936提升至0.955

???

YOLOv8_4_CSPStage summary: 303 layers, 2953396 parameters, 0 gradients, 12.5 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 6/6 [00:22<00:00,  3.75s/it]
                   all         96       5055       0.92      0.951      0.955      0.811

基于YOLOv8的端面小目标计数解决方案: 多头检测器+小缺陷到大缺陷一网打尽的GiraffeDet+Wasserstein Distance Loss | 助力工业小目标缺陷检测_AI小怪兽的博客-CSDN博客

未完待续,持续更新中

2.工业缺陷检测全流程解决方案

2.1?工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题

工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题_AI小怪兽的博客-CSDN博客

2.2??工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题(二)

工业无监督缺陷检测,提升缺陷检测能力,解决缺陷样品少、不平衡等问题(二)_AI小怪兽的博客-CSDN博客

2.3??工业缺陷检测全流程解决方案,提供检测+后处理、分割+后处理、检测+RoI分割+后处理解决方案

工业缺陷检测全流程解决方案,提供检测+后处理、分割+后处理、检测+RoI分割+后处理解决方案_AI小怪兽的博客-CSDN博客

3.深度学习部署

3.1??Opencv DNN + C++部署

Yolov5 + Opencv DNN + C++部署_AI小怪兽的博客-CSDN博客

3.2?C++ GPU部署方式介绍:ONNX Runtime

?Yolov5 C++ GPU部署方式介绍:ONNX Runtime_AI小怪兽的博客-CSDN博客

3.3?YOLOV8 Onnxruntime Opencv DNN C++部署

YOLOV8 Onnxruntime Opencv DNN C++部署_AI小怪兽的博客-CSDN博客

4.深度学习工业项目分享

4.1?基于yolov5的缺陷检测算法(工件缺陷)

基于yolov5的缺陷检测算法(工件缺陷)_yolov5做毕设的难点_AI小怪兽的博客-CSDN博客

4.2? 手机背板缺陷分割

基于PaddleSeg的工业缺陷分割检测之手机背板缺陷分割_工业分割数据集_AI小怪兽的博客-CSDN博客

4.3?小目标摄像头镜头缺陷检测?

基于Yolov5的工业缺陷检测之小目标摄像头镜头缺陷检测_yolov5缺陷检测_AI小怪兽的博客-CSDN博客

4.4?划痕缺陷检测?

基于PaddleSeg的划痕检测_AI小怪兽的博客-CSDN博客

4.5?玻璃瓶盖缺陷检测

?基于Yolov5的玻璃瓶盖缺陷检测_玻璃缺陷数据集_AI小怪兽的博客-CSDN博客

4.6?菌落(colony)计数

基于PaddleDetection的菌落(colony)计数_AI小怪兽的博客-CSDN博客

文章来源:https://blog.csdn.net/m0_63774211/article/details/133184240
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。