基于AI图像识别的智能缺陷检测系统,在钢铁行业的应用-技术方案

目录

概述

废钢智能检判方案简介

废钢智能检判系统优势及价值

废钢人工检判过程

废钢等级检判标准

废钢检判结果

智能检判方案-废钢智能检判算法

算法一:废钢等级识别算法

算法二:不合格料的位置识别算法

算法三:不合格料的类型识别算法

算法四:不合格料重量输出算法

算法五:密闭件识别算法

算法六:油污件识别算法

补充算法

智能检判方案-智能检判算法流程

废钢图像数据采集

废钢图像数据标注

软件功能描述-智能远程操作台

移动APP

硬件配置

硬件示意图硬件布置示意图如下:

硬件清单

网络方案-网络拓扑图

关于网络的其他要求


注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料,将在公众号CTO Plus发布,请关注公众号:CTO Plus

原文:基于AI图像识别的智能缺陷检测系统,在钢铁行业的应用-技术方案 (qq.com)

图片

在公众号CTO Plus前面的文章《基于AI图像识别的工业缺陷检测应用系统(GPU&FPGA)》中对我的AI图像识别产品在工业领域的缺陷检测应用场景做了大概的描述,包括应用场景、实施案例和优势。本篇文章我将进一步介绍下这款产品的技术方案。

如有应用需求和问题咨询欢迎后台联系本文作者,联系方式(同微信):15801030767

概述

当前国内外钢铁企业在废钢检判过程主要依靠人工识别判定,由于缺乏高
效、准确、方便的验收工具,废钢质检员往往只能依靠个人的专业知识和经验。

废钢厂废钢品种繁多,等级细分明确,废钢质量的检判最主要是通过人工
肉眼目测的方式对废钢进行判级以及识别杂质等不合格料。传统的质检判定主观性较强,判定异议较多,系统性的管理与追溯不够完备。

废钢智能检判系统将实现自动化数据采集与精准化数据管理,并应用深度
图像识别技术,辅助人工进行废钢的判级和不合格料的识别,可识别各种不同级别废钢的比例,并给出定价和杂质重量,以及提供密闭件油污件报警。

根据目前实际情况,可以先在炼钢车间的 2 个车位做项目验证,验收通过
后再推广或者迁移到其余车位。

废钢智能检判方案简介

  • 自动识别车体,通过目标检测算法直接锁定卸货车辆开始检测。

  • 算法满足多种场地和卸货场景。包括:航吊车吸盘、抓钢机抓取、直卸车卸货摊平、码头船运场景等。

  • 通过多重维度(厚度、形状、大小、颜色、新旧)精准识别废钢等级和扣杂重量。

  • 可识别多种不合格料型:杂质、密闭件、油污件、超长件、次料、机械生铁等,并给出实时的报警。

  • 多路监控视频实时切换,并可提供历史回看。系统信息达到可追溯,可核查。

  • 支持多个卸料位同时工作,即多用户同时工作。

图片

废钢智能检判系统优势及价值

  • 避免人工检判误差导致的损失。人工检测结果难免不稳定,低于评判基准时则会造成钢厂成本的增加。

  • 系统可实现 7*24 检判,全天可接收废钢车辆,有效提高工作效率。

  • 提高公开公正性,系统有视频和高清图片存储,可审计可追溯,实现透明化的管理。

  • 有效规避安全隐患,质检员可远离卸货现场,远程与系统协同工作。

  • 有效提高识别不合格料的准确率,系统算法可精准识别密闭件、油污件等不合格料,严格杜绝危险料型进炉危险。

  • 大大降低了相关人员的工作强度,有助于提高员工满意度,减少人才流失。


废钢人工检判过程


检判流程:

  1. 废钢货车过磅称重,并先自己申报废钢料型。

  2. 开入指定卸料检判位,用吸盘卸料。一般由 1-2 名检验员进行评判。

  3. 检验员观察车厢及吸盘卸下来的料,废钢卸完后检验员根据经验直接给出该车等级和扣杂等结果,并将结果录入手操器,进入公司系统。
    空车过磅称重,结算。

图片


废钢等级检判标准


项目验证阶段主要实现边角料和重废等散料的智能检判,如表 2-1 所示。将来有机会再一起尝试破碎料的智能检判。

图片


废钢检判结果


当前检判结果由质检员输入到手操器,包含车牌、公司、类型、扣杂等信息,并自动同步到公司计算机系统。


智能检判方案-废钢智能检判算法


算法一:废钢等级识别算法

【采用深度学习、目标检测等算法,首先对图像进行预处理,直方图均衡化以及图像形态学处理。再对图像质量进行检测。最终得出废钢等级的输出结果】

图片


算法二:不合格料的位置识别算法

【采用 YOLO with Darknet,对输入的每张图片,可以识别并标记出杂质等不合格料的位置。】

图片


算法三:不合格料的类型识别算法

【采用 Fast R-CNN,对照片中潜在的杂质目标进行搜索,划定位置范围,然后识别出其所属的类别】

图片


算法四:不合格料重量输出算法

【从 ResNet,Inception,VGG 等算法模型中,选取并训练一个深度卷积神经网络,以照片作为输入,并直接以杂质等不合格料作为输出,实现端到端的含量估算】

图片


算法五:密闭件识别算法

【使用直方图均衡化和伽马矫正等算法,优化成像效果,突出照片目标。使用平滑处理降低图片中的噪声,使用边缘增强突出密闭件轮廓,并给出预警。】

图片


算法六:油污件识别算法

【使用直方图均衡化和伽马矫正等算法,优化成像效果,突出照片目标特征。使用平滑处理降低图片中的噪声,使用边缘增强突出油污件轮廓,并给出预警。】

图片


补充算法

【数据增强】

针对系统上线初期数据量较少的情况,可采用数据增强的方法扩充训练数据集。对已收集到的图片进行随机旋转、随机剪裁、色彩抖动、噪声扰动、水平翻转、竖直翻转中的一种或多种操作,人工增加训练集的大小,丰富数据多样性,避免过拟合。

【迁移学习】

利用公开数据集,比如 ImageNet 对 YOLO 等神经网络模型进行预训练,在其基础上进行参数与知识迁移,从而在更少的计算资源开销与训练时间内实现对废钢检测任务的支持。


能检判方案-智能检判算法流程
 

图片

训练和推理流程:

图片

废钢图像数据采集

  1. 在废钢车间内布点架设摄像头,采集卸料过程中的废钢图像数据。采集出来的图像有两个用途:抽取部分样本做图像标注,用于算法模型训练;实际生产过程中,作为数据源,传递给废钢智能检测算法数据推理系统,用于数据推理。

  2. 现场使用摄像头进行 7*24 小时全程监控,以录像的形式保存,以截图的方式进行截选图片,进行图片的采集工作。

  3. 截图原则: 每车的一次卸料,车辆停靠好位置后,吸盘对钢料有若干次吸取动作,原则上,首先截选车辆停靠后的初始图片,以及截选每一次卸料动作结束后的一张图。即截选第一次卸料动作之前的图,以及每一次动作结束后的图。

  4. 摄像头角度的调整:卸料相对来说比较固定,为了获得高质量的图片,不太需要调整摄像头的角度、焦距等设置,确保摄像头能拍摄到车辆的完整卸货过程即可。

  5. 拍摄内容: 以当前卸料的货车为主体内容,能够看到大部分的车头、大部分的车轮、完整的车厢。


废钢图像数据标注

由废钢厂质检员和专家对收集到的图片数据进行标注和指导,此过程,我司会派遣专业标注工程师进行驻场协助,根据具体情况来安排驻场时间。数据标注为算法重要实现的前提,需要废钢厂质检员和专家的经验指导。

标注举例说明:质检员可通过看卸货图像,圈出不合格料的边界和位置以及写出目测的重量数值;质检员可通过看卸货图像,写出该图片中废钢的等级。


软件功能描述-智能远程操作台


基于大数据和人工智能技术,对钢厂内的各类信息源进行整合与分析,形成了一套操作简单、功能齐全的可视化信息平台。平台通过角色和权限管理,帮助提升管理者的工作效率,辅助一线作业工人进行科学决策,同时降低运维人员的操作负担。

(1)智能监控:底层 AI 技术加持,实现关键环节作业监控

图片

  1. 智能检判:基于卸货过程中的图像数据,通过 AI 算法进行智能分析,实现对废料重量的实时分析及卸货状态预警;

  2. 智能分析作业行为:在有人员作业的场景,调用 AI 算法,进行作业行为和护具佩戴的智能分析,并对发现的违规操作进行提示;(可选)

  3. 监控屏幕自由组合:可根据业务需求,自由调取摄像头列表中的监控画面;

(2)控制台:场内数据实时更新,帮助企业掌握作业动态

图片

  • 智能化流程管理:利用摄像头和识别算法,将入场审查、称重、卸货、结算离场等关键环节的数据进行信息化整合,实现对场内全流程业务数据的统一管理;

  • 场内业务实时统计:自动整合当日入场车辆数、废料重量、报警信息等关键业务信息,并进行实时动态更新;

  • 智能检判算法表现:直观展示关键业务环节中使用的智能检判算法的资料和模型表现;

  • 摄像头状态一览:展示⼚区内所有摄像头的信息和监控状态;

(3)数据⾯板

图片

  1. 数据面板:将历史业务数据可视化,帮助企业透析运营状况

  2. 订单总量、分布及趋势:对企业历史订单数量进行定制化的统计分析,包括同比环比、增量存量等;

  3. 智能检判算法的历史表现:将智能检判算法模型的历史表现可视化,轻松追溯预测记录;

  4. 卸货报警消息统计:对关键业务的报警信息进行可视化,掌握订单质量;

  5. 回收钢材种类的分布及趋势:将各类钢材重量比值和趋势可视化,直观了解业务状态;

  6. 智能分析:支持标注、训练及服务更新,赋能算法持续迭代

  7. 数据标注:使用定制化图像标注工具,对卸货场景的图片数据进行标注,系统自动将标注后的图片文件转化为标准模型输入结构;(可选)

  8. 模型训练:系统内置 AutoML 模块,用户只需要简单的选择数据集与模型种类,即可快速训练出新的模型及测试结果;(可选)

  9. 服务更新:自动汇总所有已上线及未上线过的 服务及其模型表现,轻松对服务进行更新;(可选)


移动APP

为实现工厂作业全流程的信息化、智能化目标,“卸货智能助手”APP 辅助卸货现场的质检员,完成卸货区车辆定位、预测服务调用、卸货报警等多项工作。

图片

硬件配置

硬件示意图
硬件布置示意图如下:

每个车位上方安装高清网络摄像头,尽量满足无遮挡正面俯视车厢的角度,可以安装到车间两侧的墙上,与行车吸盘互不干扰。

图片

硬件清单

硬件配置清单如下:

图片

网络方案-网络拓扑图

各服务器均考虑负载均衡、互为备份,不仅保证系统可以平滑升级,也保证单点服务器出现故障以后,不会导致系统出现致命错误而停止服务;中心与移动信息中心通讯链路采用移动专线接入方式,保证数据采集设备通讯的安全性、稳定性及速度。

系统各主机之间均采用千兆链路连接,可以保证系统在扩容后内部网络依然能够满足各主机间数据传输需要。

图片


关于网络的其他要求


工厂网络工作人员可以协助开通公网网络端口,可允许我司实施人员远程操控现场摄像头的角度和其他参数。

本产品的应用可以扩展到教育、医疗、金融、精密制造等行业,后面有时间再做这几个行业的应用场景分享,如有需求,请在公众号CTO Plus后台联系本作者,联系方式(同微信):15801030767

更多关于Go的相关技术点,敬请关注公众号:CTO Plus后续的发文,有问题欢迎后台留言交流。
 

图片

推荐阅读

  • 基于AI图像识别的工业缺陷检测应用系统(GPU&FPGA)

  • FPGA在工业缺陷检测上的应用实践

  • FPGA图像处理的一些方法、原理和算法优缺点介绍

SteveRocket的博客_CSDN博客-Python进阶,Django进阶,C进阶领域博主SteveRocket擅长Python进阶,Django进阶,C进阶,等方面的知识https://blog.csdn.net/zhouruifu2015/


更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。

关于公众号的描述访问如下链接


关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想把专业领域的技icon-default.png?t=N7T8https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q

推荐阅读:

  • FPGA在工业缺陷检测上的应用实践

  • FPGA设计Verilog基础之Verilog全局变量和局部变量定义

  • FPGA设计Verilog基础之Verilog中clk为什么要用posedge,而不用negedge

  • 初学者必须弄懂的一些基本FPGA设计概念(1)

  • 工作总结之全网最全的103个Verilog关键字总结(上)

  • 工作总结之全网最全的103个Verilog关键字总结(下)​

  • 5G时代的FPGA发展趋势和应用分析

  • FPGA结合chatgpt的应用开发实践

  • FPGA | FPGA设计流程指南 v2.0

  • 设计规范 | 总结开发过程中DDR3和FPGA部分的设计规范

  • 术语一览 | 总结开发过程中关于FPGA的专业术语

  • 用AI帮我写一篇关于FPGA的文章,并推荐最热门的FPGA开源项目

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【再识C进阶3(下)】详细地认识字符分类函数,字符转换函数和内存函数

前言 💓作者简介: 加油,旭杏,目前大二,正在学习C,数据结构等👀 💓作者主页:加油,旭杏的主页👀 ⏩本文收录在:再识C进阶的专栏&#x1…

全网最全面最精华的设计模式讲解,从程序员转变为工程师的第一步

前言 现代社会,技术日新月异,要想跟上技术的更新就必须不断学习,而学习技术最有效方式就是阅读优秀的源码,而优秀的源码都不是简单的逻辑堆积,而是有很灵活的设计模式应用其中,如果我们不懂设计模式&#…

idea2023根据表自动生成+springboot跑起来

idea安装插件 idea中显示数据库连接 就可以看到如下界面 选中你想生成的表,右键如下操作 如上就有了所有需要的后端代码 生成后,要查看一下mapper.xml中的文件是否 正确,若有误请先去修改,例如我的版本下生成了xml文件中缺乏…

基于SpringBoot的银行账目账户管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

51单片机用IIc控制OLED显示数组内容

为了能够看到51单片机接收到的串口数据,我选择了用oled显示收到的数据,特此花重金买了一块oled屏128X64的屏幕大概10来块钱吧!首先要达成的小目标就是能够显示数组的内容,建立一个字符数组,用来接收串口收到的数据&…

基于SpringBoot的古典舞在线交流平台的设计与实现

目录 前言 一、技术栈 二、系统功能介绍 系统主界面 用户注册界面 论坛交流界面 课程详情界面 购物车界面 我的订单界面 管理员登录界面 会员用户管理界面 服饰管理界面 课程管理界面 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着互联网技术…

Python函数:chr()和ord()

两个函数是基于Unicode编码表进行进行字符与字码之间的转换。 chr()函数是通过字码转换成字符: 如图,坐标(1,4e10)丑 使用chr需要线将坐标相加得到:4e11 chr默认传入10进制的字码. 如图是各进制的字码。 也可以传入其他进制,不过需要在前面传入的参数最前…

Docker学习_镜像和容器篇

简介 Docker是一种容器化的技术,可以实现在一台宿主机电脑上运行多个不同的容器,每个容器之间都相互独立,具有完整的一套文件,网络和端口。 可以将其理解为一种虚拟机技术,只不过和VMware等虚拟化技术不同&#xff0…

LM小型可编程控制器软件(基于CoDeSys)笔记三十一:保持变量和非保持变量

所谓变量,就是用字母、数字和下划线组成的一个标识符。 按照数据类型的不同,变量可以分为标准类型和用户自定义类型。其中标准类型包括布尔型 ( BOOL )、整型( INT )、实型( REAL &#xff09…

18.备忘录模式(Memento)

意图:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以在以后将该对象恢复到原先保存的状态。 上下文:某些对象的状态在转换过程中,可能由于某种需要,要求…

ChunJun: 自定义插件

序言 Chunjun的版本兼容可能会有问题,在我们了解了自定义插件后,在修改源码以应对不同的场景就会得心应手了,针对Chunjun1.12.Release版本说明cuiyaonan2000163.com 自定义插件整体流程 从数据流的角度来看ChunJun,可以理解为不同数据源的数据流通过对应的ChunJu…

搭建自己的搜索引擎之三

一、前言 接上一篇 搭建自己的搜索引擎之二,本篇主要讲一下我们如何操作ElasticSearch,就是最简单的增删改查命令怎么写。 二、几个概念 搭建自己的搜索引擎之一 这篇文章我们对比搜索引擎在做海量数据实时查询优于关系型数据库的一些原因&#xff0c…

DevExpress WinForms图表组件 - 直观的数据信息呈现方式!(二)

在上文中(点击这里回顾>>),我们为大家介绍了DevExpress WinForms图表控件的互动图表、图标设计器及可定制功能等,本文将继续介绍DevExpress WinForms图表控件的数据分析、大数据功能等,欢迎持续关注我们哦~ Dev…

【Ubuntu18.04】Autoware.ai安装

Autoware.ai安装 引言1 ROS安装2 Ubuntu18.04安装Qt5.14.23 安装GCC、G4 Autoware.ai-1.14.0安装与编译4.1 源码的编译4.1.1 python2.7环境4.1,2 针对Ubuntu 18.04 / Melodic的依赖包安装4.1.3 先安装一些缺的ros依赖4.1.4 安装eigen3.3.74.1.5 安装opencv 3.4.164.1.6 编译4.1…

桥梁模板人工费多少钱?

桥梁模板是桥梁工程中不可或缺的一部分,它起到支撑和固定混凝土浇筑的作用。在桥梁建设中,模板人工费用是一个重要的成本因素。那么,桥梁模板人工费到底是多少呢?下面我们来详细了解一下。 首先,需要明确的是&#xff…

ESP32IDF出现Syntax Warning in cmake code at column 47报错

前言 (1)ESP32的资料还是挺难找的,遇到bug处理起来挺折磨人的。今天分享一个我遇到的bug,以及处理思路。 报错日志 (1)前天在些博客的时候,做测试发现了一个奇怪的bug,报错日志如下。…

【数据结构初阶】六、线性表中的队列(链式结构实现队列)

相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 【数据结构初阶】五、线性表中的栈(顺序表实现栈)_高高的胖子的博客-CSDN博客 1 . 队列(Queue) 队列的概念和结构: 队列…

手写Hystrix基本原理

本文已收录于专栏 《中间件合集》 目录 概念说明什么是HystrixHystrix解决的问题 提供服务工作流程代码实现HystrixSDKMyHystrixCommand注解MyHystrixProperty注解MyAspect注解解释器 发送请求端引入Hystrix的依赖调用代码 接收请求端执行效果发送请求端 总结提升 概念说明 什…

JAVA:实现Excel和PDF上下标

1、简介 最近项目需要实现26个小写字母的上下标功能,自己去网上找了所有Unicode的上下标形式,缺少一些关键字母,顾后面考虑自己创建上下标字体样式,以此来记录。 2、Excel Excel本身是支持上下标,我们可以通过Excel单元格的样式来设置当前字体上下标,因使用的是POI的m…

通过java向jar写入新文件

文章目录 原始需求分析实施步骤引入依赖核心编码运行效果 原始需求 有网友提问: 我想在程序中动态地向同一个jar包中添加文件,比如,我的可执行jar包是test.jar,我要在它运行时生成一些xml文件并将这些文件添加到test.jar中,请问如何实现&…