友思特应用 | 高精度呈现:PCB多类型缺陷检测系统

导读

PCB等电子产品的精密生产制造过程中,往往需要将缺陷问题100%高精度暴露。友思特 PCB 多类型缺陷检测系统,借由Neuro-T深度学习模型自动排查全部微小缺陷,为工业 PCB 生产制造提供了先进可靠的质量保障。


在现代制造业中,尤其是在高精度要求的电子制造领域,诸如印刷电路板(PCB)生产的过程中,高效且准确地识别和分类多种类型的缺陷至关重要。

针对缺陷检测需求,常见的解决方案有两种:(1)基于目标正常图像数据的模板匹配;(2)训练深度学习模型检测目标缺陷。

第一种方式虽然在特定场景下有效,但面对复杂和多变的实际生产条件,这些方法往往受限于它们的灵活性和鲁棒性。第二种方式不仅能够处理传统技术难以解决的复杂缺陷类型,还能通过不断的学习优化,提高检测的准确性和效率,具有更强的鲁棒性和泛化能力。

友思特技术团队通过 Neuro-T 的 Segmentation(实例分割)模型,搭建了 PCB 多类型缺陷检测系统,为工业 PCB 的生产制造提供了可靠的质量保障。

友思特Neuro-T支持的深度学习模型类型

友思特 Neuro-T 支持八种不同的深度学习模型,其中六类模型适用于缺陷检测领域。具体而言:

有监督学习模型

  • 分类:简单分类目标缺陷的有无,精度高

  • 实例分割:准确识别并分割目标的缺陷区域,精度最高,适合占像素点少(低至10像素点)、形状较简单的缺陷

  • 目标检测:识别和定位目标的缺陷区域,精度高,适合占像素点稍多、形状较复杂的缺陷

  • GAN:人工生成目标的缺陷图像,弥补缺陷数据量不足的问题

无监督学习模型

  • 异常分类:分类目标缺陷的有无,精度高于分类模型(可设置异常阈值),主要适用于数据缺乏场景

  • 实例分割:准确识别并分割异常目标的缺陷区域,精度略低于实例分割模型(可设置异常阈值),主要适用于数据缺乏场景

PCB的六种常见缺陷类型

①missing_hole(焊盘缺失)

图片

②mouse_bite(线路缺口)

图片

③open_circuit(断路)

图片

④Short(短路)

图片

⑤Spur(毛刺)

图片

⑥Spurious(伪铜)

图片

PCB 多类型缺陷检测系统

友思特 PCB 多类型缺陷检测系统主要由 Neuro-R、IDS相机 和 VST-2D 软件组成。PCB缺陷检测模型使用 Neuro-T 中的实例分割模型,通过对数据集进行标注、训练、微调实现,而后独立于 Neuro-T 脱机运行,通过 Neuro-R 实现在主机上运行推理。VST-2D 软件是友思特自研视觉软件,对接 IDS 相机的实时图像流,获取 PCB 的实时图像数据,结合 Neuro-R 调用 Neuro-T 训练的模型,实现缺陷区域的识别、缺陷类型确定以及定位分割并将结果呈现于界面。

系统组成图

图片

系统检测效果图

图片

友思特 Neuro-T 实例分割模型训练 PCB 缺陷检测模型具体操作步骤

1.1 新建项目

图片

1.2 新建数据集

图片

1.3 导入图像数据

图片

2.1 创建标签集

图片

2.2 选择模型类型(Segmentation)

3.1 创建缺陷类别

图片

3.2 选择标注工具

图片

3.3 开始数据标注

图片

  • 数据量较少的情况下,可以手动一一标注;数据量较多时,一一标注耗时耗力,可以使用友思特 Neuro-T 自动标注功能来完成标注工作
  • 项目共693张图像,标注139张,剩余使用自动标注功能完成

  • 自动标注功能的具体步骤为:

1、标注部分数据

图片

2、划分训练集和测试集

图片

3、训练标注模型

图片

4、加载标注模型

图片

5、选中图像自动标注

图片

标注完成的结果图如下所示:

图片

4.1 划分训练集和测试集

图片

4.2 训练模型

图片

4.3 查看模型结果

图片

模型评估结果解读:

图片

IoU (Intersection over Union) 交并比,对于特定的一个实例,指模型预测区域与真实区域的交集比上它们的并集:

图片

式中P为模型预测区域,R为真实区域,单位为像素点个数。

对于深度学习模型,IoU≥50%才算成功被检测出来且效果较好。

准确率 (Accuracy) ,衡量模型在所有类别上整体预测的准确程度:

图片

精确率 (Precision) ,衡量模型将数据预测为缺陷的精准程度:

图片

召回率 (Recall) ,衡量模型成功找到缺陷的能力:

图片

精确率和召回率的调和平均值 (F1 Score) ,综合考虑精确率和召回率两个指标:

图片

式中:

  • TP为正确判断为A类缺陷(真实也是A类缺陷)的数量

  • TN为错误判断为A类缺陷(真实为非A类缺陷)的数量

  • FP为正确判断为非A类缺陷(真实为非A类缺陷)的数量

  • FN为错误判断为非A类缺陷(真实为A类缺陷)的数量。

本应用案例有六类缺陷,对每类缺陷的指标取均值。

模型检测效果图

图片

黑色字样+黄色框:原始标注结果

紫色字样+阴影框:预测结果

友思特缺陷检测系统套装

Neuro-R

图片

Neuro-R 可实现无缝整合训练软件创建的模型至支持各种环境和编程语言的运行时 API,其独特性在于——不仅仅是简单地传递模型推断结果,还可以利用各种 API 以创造性的方式从多个模型生成结果,Neuro-R 是友思特缺陷检测系统套装的重要组成部分。

Neuro-T

图片

Neuro-T 使用简单的图形用户界面,通过自动优化深度学习模型结构和训练参数来创建出性能最佳的模型,无需任何深度学习经验,即可运行自己的深度学习项目。在系统中,Neuro-T 是用于训练模型的核心工具。

2D 工业相机

图片

友思特 2D 工业相机结合了支持USB3视觉标准的高质量全局快门传感器技术和具有成本效益的uEye XCP相机平台,是流行的USB2接口的uEye LE相机系列的最佳、高性能和长期替代品。借助友思特自研视觉软件 VST-2D,对接IDS相机的实时图像流,即可获取PCB的实时图像数据。

欢迎访问官网,探索丰富案例:https://viewsitec.com/neurocle/

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

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

相关文章

TLF9471 - High-Speed CAN FD Transceiver

1 框图描述 2 功能描述 CAN收发器被设计用来承受汽车应用的恶劣条件,并支持12V应用。   SBC的控制器区域网络(CAN)收发器部分在汽车和工业应用中提供高速(HS)差分模式数据传输(最高可达2Mbaud&#xff09…

kali使用msf+apkhook520+cploar实现安卓手的攻击

学习网络安全的过程中,突发奇想怎么才能控制或者说是攻击手机 边找工作边实验 话不多说启动kali 一、使用msfapktool生成简单的木马程序 首先使用kali自带的msfvenom写上这样一段代码 选择安卓 kali的ip 一个空闲的端口 要输出的文件名 msfvenom -p android/met…

【软件测试】个人博客系统测试

个人博客系统测试 一、项目背景1.1 技术背景1.2 功能背景 二、自动化测试2.1 什么是自动化测试2.2 通过使用selenium进行自动化测试的编写(Java实现)2.3 编写测试用例,执行自动化测试2.3.1 输入用户名:test,密码:123,登录成功2.3.…

深度学习图像处理04:图像分类模型训练实战——动物分类

这篇博文不涉及理论知识,主要通过一个完整的深度学习模型训练流程,直观地了解深度学习图像分类任务。有关理论的部分,之前几篇博文已经涉及基础部分,之后也会对一些理论进行补充。 本文将结合代码,主要介绍三部分内容…

halcon缺陷检测-印刷品检测(差异化模型),键盘字符缺陷检测

前言 在实际项目中,印刷品缺陷检测是缺陷检测中的难点项目。通常印刷品检测往往具备缺陷小,缺陷所在位置不固定,出现少印或者多印的情况。并且由于产线原因,大量的印刷品在视野中的大小并不是完全一致的,可能出现细微…

【UE5 C++】访问修饰符public/protected/private继承

限制类与类之间访问级别的方法 public 在类中创建一个public的部分,即" public: ",public之下的所有内容都是公共的,可以在类之间访问 private(最常见) 如若没有指明修饰符,则默认为private 不能在类的外…

文本处理常见命令

目录 前言-了解Linux目录结构 一、cat-查看文件内容 1.表现形式 2.常用选项 3.示例 二、more-查看文件内容 1.表现形式 2.交互操作方法 3.示例 三、less-查看文件内容 1.表现形式 2.交互操作方法 四、head-从头查看文件内容 五、tail-从尾查看文件内容 六、wc-统…

【石上星光】context,go的上下文存储并发控制之道

目录 1 引言2 What?3 How? 3.1 用法一、上下文数据存储3.2 用法二、并发控制 3.2.1 场景1 主动取消3.2.2 场景2 超时取消 3.3 用法三、创建一个空Context(emptyCtx) 4 Why? 4.1 go中的上下文思想 4.1.1 上下文是什么…

17 - Games101 - 笔记 - 材质与外观

**17 **材质与外观 材质与BRDF 自然界中的材质:丝绸、头发、蝴蝶翅膀表面、寿司表面等等 图形学中的材质:同一个模型之所以渲染出不同结果的原因就是因为材质。在图形学中是给不同的物体指定不同的材质,知道它们如何和光线作用后就能正确的…

体验Docker快速部署微信机器人

找到一个 Docker 部署微信机器人的镜像,简单测试一下。 1 使用 Docker 部署 1.1 拉取最新镜像 docker pull dannicool/docker-wechatbot-webhook1.2 Docker 部署 docker run -d --name wxBotWebhook -p 3001:3001 \ -v ~/wxBot_logs:/app/log \ dannicool/docker…

【C++基础】运算符和流程控制语句

C中的运算符和流程控制语句 一、运算符1. C和Java在通用运算符中的不同之处对比2. C中的位运算符2.1 移位运算符2.2 位逻辑运算符 3. 运算时的类型转换总结3.1 隐式类型转换3.2 显式类型转换(强制类型转换) 4. 注意 二、流程控制语句1. C和Java在通用流程…

网工内推 | 安全运维、服务工程师,软考中级、CISP优先,六险一金

01 华成峰科技 招聘岗位:安全运维工程师 职责描述: 1、负责安全产品的运维管理,包括设备升级变更、策略配置优化、设备巡检等; 2、负责7*24小时安全监控与应急响应,包括态势感知日志监测、安全事件分析及处置等&#…

【Keil5-报错】

Keil5-报错 ■ 调试烧录出现问题■ 烧录程序失败■ 编译报错 .\Objects\stm32h7_tms.axf: Error: L6218E: Undefined symbol __heap_base (referred from alloc.o).■ Keil5 load 出错■ No Space in execution regions with .ANY selector matching startup ...■ Execution r…

selenium自动化测试实战

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

SSD涨价停不下来!

随着HBM内存产能短缺问题的出现,存储市场正遭遇另一波供应短缺。在2021年存储市场陷入低迷后,SSD价格已连续下滑约两年。面对市场变化,存储厂商减少了NAND闪存的生产。随着减产策略的有效执行,需求部分回升,导致SSD供应…

Hot100【十一】:最大子数组和

// 定义dp:以i结尾的最大子数组和 dp[i] max(dp[i-1] nums[i],nums[i]) class Solution {public int maxSubArray(int[] nums) {// 1. 不需要特殊处理// 2. 定义dpint[] dp new int[nums.length];dp[0] nums[0];int maxResult nums[0];// 3. dp递推for (int i …

Oracle 在线回缩表

Oracle 在线回缩表 conn scott/tiger DROP TABLE EMP1 PURGE; CREATE TABLE EMP1 AS SELECT * FROM EMP; alter table emp1 enable row movement; -- 启动回缩特性 insert into emp1 select * from emp1; / / commit; -- 增加到14000行 -- 分析表的结构 analyz…

Vue2 —— 学习(五)

一、生命周期 &#xff08;一&#xff09;引入案例 我们想让一行文字按一定频率逐渐变得透明 1. Vue 实例外写法 函数写在 Vue 实例外面也能实现但是不推荐 <body><div id"root"><h2 :style"{opacity}">欢迎学习Vue</h2><…

ELK大型日志收集分析系统

目录 一、 ELK日志分析系统 1.1ELK介绍 1.2ELK各组件介绍 1.2.1ElasticSearch 1.2.2Kiabana 1.2.3Logstash 1.2.4可以添加的其它组件 1.2.4.1Filebeat filebeat 结合logstash 带来好处 1.2.4.2缓存/消息队列&#xff08;redis、kafka、RabbitMQ等&#xff09; 1.2.4…

100道面试必会算法-21-二叉树的最近公共祖先

100道面试必会算法-21-二叉树的最近公共祖先 题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点 p、q&#xff0c;最近公共祖先表示为一个节点 x&#xff0c;满足 x 是 p、q 的祖先且…