EfficienetAD异常值检测之瓷砖表面缺陷检测(免费下载测试数据集和模型)

背景

当今制造业蓬勃发展,产品质量把控至关重要。从精密电子元件到大型工业板材,表面缺陷哪怕细微,都可能引发性能故障或外观瑕疵。人工目视检测耗时费力且易漏检,已无法适应高速生产线节奏。在此背景下,表面缺陷异常值检测技术应运而生,为保障产品质量筑牢根基。
在工业 4.0 浪潮下,各行业制造精度与速度飙升。汽车、3C 产品等领域,零部件表面质量直接关联成品性能与市场竞争力。然而,传统检测手段难应对复杂工艺下的微小缺陷。EfficienetAD 表面缺陷异常值检测技术应需登场,凭借高效精准算法,突破瓶颈,助力企业严守质量关。
本文以磁砖表面为例,说明异常值检测算法EfficienetAD的应用
工程戳这里获取,含模型

数据集

Baidu Netdisk 提取码:8888

data
├── test
│   ├── crack
│   ├── glue_strip
│   ├── good
│   ├── gray_stroke
│   ├── oil
│   └── rough
└── train
    └── good

训练

python abnormalnet.py --type train

训练输出

epoch 386,current batch loss 2.834839, total loss: 764.140365, best loss: 539.619580, best epoch: 357, lr: 0.000859: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.68it/s]
epoch 387,current batch loss 2.765792, total loss: 580.103407, best loss: 539.619580, best epoch: 357, lr: 0.000828: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 56.39it/s]
epoch 388,current batch loss 2.763565, total loss: 547.897930, best loss: 539.619580, best epoch: 357, lr: 0.000105: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.39it/s]
epoch 389,current batch loss 3.261899, total loss: 566.002666, best loss: 539.619580, best epoch: 357, lr: 0.000216: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 56.52it/s]
epoch 390,current batch loss 3.099142, total loss: 631.268924, best loss: 539.619580, best epoch: 357, lr: 0.000926: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.32it/s]
epoch 391,current batch loss 2.652505, total loss: 564.764595, best loss: 539.619580, best epoch: 357, lr: 0.000737: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.40it/s]
epoch 392,current batch loss 2.483046, total loss: 537.808009, best loss: 539.619580, best epoch: 357, lr: 0.000048: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.93it/s]
Intermediate map normalization: 100%|███████████████████████████23/23 [00:00<00:00, 24.16it/s]
Intermediate inference: 100%|████████████████████████████| 117/117 [00:03<00:00, 32.69it/s]
Intermediate image auc: 100.0000
epoch 393,current batch loss 2.791982, total loss: 582.599108, best loss: 537.808009, best epoch: 392, lr: 0.000312: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.78it/s]
epoch 394,current batch loss 2.874834, total loss: 735.932301, best loss: 537.808009, best epoch: 392, lr: 0.000973: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.20it/s]
epoch 395,current batch loss 2.617457, total loss: 565.374229, best loss: 537.808009, best epoch: 392, lr: 0.000636: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.27it/s]
epoch 396,current batch loss 2.653447, total loss: 544.357111, best loss: 537.808009, best epoch: 392, lr: 0.000012: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 56.21it/s]
epoch 397,current batch loss 3.644118, total loss: 593.403939, best loss: 537.808009, best epoch: 392, lr: 0.000418: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.94it/s]
epoch 398,current batch loss 3.141065, total loss: 634.366765, best loss: 537.808009, best epoch: 392, lr: 0.000997: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 55.15it/s]
epoch 399,current batch loss 2.824724, total loss: 543.553844, best loss: 537.808009, best epoch: 392, lr: 0.000528: 100%|████████████████████████████████████████████████| 207/207 [00:03<00:00, 56.30it/s]

测试auc值

python abnormalnet.py --type auc

输出

load weights from: output/best.pkl
Inference: 100%|████████████████| 117/117 [00:06<00:00, 18.17it/s]
Image auc: 100.0000

单张测试

python abnormalnet.py --type test -i data/test/crack/001.png

示例1:
在这里插入图片描述在这里插入图片描述在这里插入图片描述
示例2:
在这里插入图片描述在这里插入图片描述在这里插入图片描述
示例3:
在这里插入图片描述在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/941203.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【从零开始入门unity游戏开发之——C#篇21】C#面向对象的封装——`this`扩展方法、运算符重载、内部类、`partial` 定义分部类

文章目录 一、this扩展方法1、扩展方法的基本语法2、使用扩展方法3、扩展方法的注意事项5、扩展方法的限制6、总结 二、运算符重载1、C# 运算符重载2、运算符重载的基本语法3. 示例&#xff1a;重载加法运算符 ()4、使用重载的运算符5、支持重载的运算符6、不能重载的运算符7、…

vscode 快速切换cangjie版本

前言 目前阶段cangjie经常更新&#xff0c;这就导致我们可能会需要经常在不同的版本之间切换。 在参加训练营时从张老师那学到了如何使用 vscode 的配置文件来快速进行cangjie版本的切换。 推荐一下张老师的兴趣组 SIGCANGJIE / 仓颉兴趣组 这里以 windows 下&#xff0c;配置…

RCE总结

文章目录 常见漏洞执行函数&#xff1a;1.系统命令执行函数2.代码执行函数 命令拼接符读取文件命令绕过&#xff1a;空格过滤绕过关键字绕过长度过滤绕过无参数命令执行绕过无字母数字绕过利用%0A截断利用回溯绕过利用create_function()代码注入无回显RCE1.反弹shell2.dnslog外…

springmvc的拦截器,全局异常处理和文件上传

拦截器: 拦截不符合规则的&#xff0c;放行符合规则的。 等价于过滤器。 拦截器只拦截controller层API接口。 如何定义拦截器。 定义一个类并实现拦截器接口 public class MyInterceptor implements HandlerInterceptor {public boolean preHandle(HttpServletRequest reque…

前端知识补充—HTML

1. HTML 1.1 什么是HTML HTML(Hyper Text Markup Language), 超⽂本标记语⾔ 超⽂本: ⽐⽂本要强⼤. 通过链接和交互式⽅式来组织和呈现信息的⽂本形式. 不仅仅有⽂本, 还可能包含图⽚, ⾳频, 或者⾃已经审阅过它的学者所加的评注、补充或脚注等等 标记语⾔: 由标签构成的语⾔…

vscode 使用说明

文章目录 1、文档2、技巧显示与搜索宏定义和包含头文件 3、插件4、智能编写5、VSCode 与 C&#xff08;1&#xff09;安装&#xff08;2&#xff09;调试&#xff08;a&#xff09;使用 CMake 进行跨平台编译与调试&#xff08;b&#xff09;launch.json&#xff08;c&#xff…

Python的3D可视化库【vedo】2-5 (plotter模块) 坐标转换、场景导出、添加控件

文章目录 4 Plotter类的方法4.7 屏幕和场景中的坐标点转换4.7.1 屏幕坐标转为世界坐标4.7.2 世界坐标转为屏幕坐标4.7.3 屏幕坐标取颜色 4.8 导出4.8.1 导出2D图片4.8.2 导出3D文件 4.9 添加控件4.9.1 添加内嵌子窗口4.9.2 添加选择区4.9.3 添加比例尺4.9.4 为对象添加弹出提示…

Gin-vue-admin(1):环境配置和安装

目录 环境配置如果443网络连接问题&#xff0c;需要添加代理服务器 后端运行前端运行 环境配置 git clone https://gitcode.com/gh_mirrors/gi/gin-vue-admin.git到server文件目录下 go mod tidygo mod tidy 是 Go 语言模块系统中的一个命令&#xff0c;用于维护 go.mod 文件…

【CSS in Depth 2 精译_088】第五部分:添加动效概述 + 第 15 章:CSS 过渡特效概述 + 15.1:状态间的由此及彼

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第五部分 添加动效 ✔️【第 15 章 过渡】 ✔️ 15.1 状态间的由此及彼 ✔️15.2 定时函数 文章目录 第 5 部分 添加动效 Adding motion第 15 章 过渡 Transitions15.1 状态间的由此及彼 From here…

【翻译】大型 Transformer 模型推理优化

翻译原文&#xff1a;Large Transformer Model Inference Optimization | LilLog 原文作者&#xff1a;Lilian Weng 目录 方法概述蒸馏 Distillation量化 Quantization Transformer 量化的挑战训练后量化 (PTQ) 混合精度量化 Mixed-precision quantization细粒度量化量化的二…

【Leecode】Leecode刷题之路第88天之合并两个有序数组

题目出处 88-合并两个有序数组-题目出处 题目描述 个人解法 思路&#xff1a; todo代码示例&#xff1a;&#xff08;Java&#xff09; todo复杂度分析 todo官方解法 88-合并两个有序数组-官方解法 方法1&#xff1a;直接合并后排序 思路&#xff1a; 代码示例&#xff1a…

Java图片拼接

最近遇到一个挺离谱的功能&#xff0c;某个表单只让上传一张图&#xff0c;多图上传会使导出失败。跟开发沟通后表示&#xff0c;这个问题处理不了。我... 遂自己思考&#xff0c;能否以曲线救国的方式拯救一下&#xff0c;即不伤及代码之根本&#xff0c;又能解决燃眉之急。灵…

bridge between Lua world and the .NET

一、新建项目&#xff1a;luademo 安装包&#xff1a;<PackageReference Include"NLua" Version"1.7.3" /> using NLua; using System;namespace luademo {internal class Program{static void Main(string[] args){Lua state new Lua();for (int …

跟着问题学23番外——反向传播算法理论(1)

前向传播与反向传播 在单层神经网络的优化算法里&#xff0c;我们讲到优化算法是为了寻找模型参数使得网络的损失值最小&#xff0c;这里详细介绍一下应用的基础——反向传播算法。 在神经网络中&#xff0c;梯度计算是通过反向传播算法来实现的。反向传播算法用于计算损失函…

Liveweb视频融合共享平台在果园农场等项目中的视频监控系统搭建方案

一、背景介绍 在我国的大江南北遍布着各种各样的果园&#xff0c;针对这些地处偏僻的果园及农场等环境&#xff0c;较为传统的安全防范方式是建立围墙&#xff0c;但是仅靠围墙仍然无法阻挡不法分子的有意入侵和破坏&#xff0c;因此为了及时发现和处理一些难以察觉的问题&…

华为IPD流程6大阶段370个流程活动详解_第二阶段:计划阶段 — 86个活动

华为IPD流程涵盖了产品从概念到上市的完整过程,各阶段活动明确且相互衔接。在概念启动阶段,产品经理和项目经理分析可行性,PAC评审后成立PDT。概念阶段则包括产品描述、市场定位、投资期望等内容的确定,同时组建PDT核心组并准备项目环境。团队培训涵盖团队建设、流程、业务…

开源轮子 - EasyExcel01(核心api)

EasyExcel01 - 核心api 本文整理自掘金大佬 - 竹子爱熊猫 https://juejin.cn/post/7405158045662576640 文章目录 EasyExcel01 - 核心api一&#xff1a;初相识EasyExcel1&#xff1a;写入excel入门2&#xff1a;读取Excel入门 二&#xff1a;数据模型注解1&#xff1a;读写通用…

实验13 C语言连接和操作MySQL数据库

一、安装MySQL 1、使用包管理器安装MySQL sudo apt update sudo apt install mysql-server2、启动MySQL服务&#xff1a; sudo systemctl start mysql3、检查MySQL服务状态&#xff1a; sudo systemctl status mysql二、安装MySQL开发库 sudo apt-get install libmysqlcli…

【java基础系列】实现数字的首位交换算法

在java中&#xff0c;手写实现一个数字的首位交换算法实现 实现效果 实现代码 核心业务代码 public static void main(String[] args) {int[] arr {1,2,3,4,5};int temp arr[0];for (int i 0; i < arr.length; i) {System.out.print(arr[i]);}System.out.println(&quo…

kubeadm一键部署K8S 集群架构

kubeadm一键部署K8S 集群架构(centos7) https://www.k8src.cn/ https://kubernetes.io/zh-cn/docs/home/ https://blog.csdn.net/m0_58709145/article/details/140128179 https://blog.csdn.net/jiaqijiaqi666/article/details/129745828 Kubeadm init报错[ERROR CRI]: contai…