技本功丨互联网+工业视觉异常检测分析

2024-06-14 20:18

本文主要是介绍技本功丨互联网+工业视觉异常检测分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

胡丰——袋鼠云高级算法专家

袋鼠云人工智能实验室负责人。十年图像处理、模式识别、机器视觉等方面的研发工作,主要研究领域为:智能交通、工业视觉分析、OCR、视频智能质量诊断、智能球机跟踪、人脸等方向,发表第一作者发明专利十余篇、国际发明专利一篇。

我国工业互联网已经形成“三条途径”:一是打造智能工厂,提高企业内部生产效率,通过互联网技术以及一些相关的机器视觉、图象算法、模式识别的方式,提高企业的生产效率;二是打造智能产品,延伸企业外部的价值链;三是汇聚产业链资源,实现向平台运营的转变,打造数据驱动的生态运营能力。

 

基于互联网的条件下,结合工业场景,提出端加云的解决方案,方案如下图:

端+云的完整解决方案

 

在该解决方案部署中分为本地端云端。在本地端中分成两部分:一个是数据层,数据层在一些生产设备以及相应的业务系统中实时会场生成的数据;另一个是本地运行层,产生的数据经过本地运行层,运行层实时获取数据,获取数据之后,一方面进行数据的存储,另一方面对获取到的数据进行模型计算,计算完之后进行决策,决策后又可以进行下一轮的操作。

在云端接收离线的序列数据,在云端基于大数据平台进行一个模型分析及模型训练,训练之后把更新的模型再下发到本地进行更新,依次循环可以不断的提高系统能力及算法能力。

基于机器视觉的应用场景分析

人类对世界的认知非常简单,我们可以一眼看出一个水果是苹果还是橘子。但换成计算机,怎么写个程序让机器来分辨人和猫、苹果和橘子呢?实际上在我们考虑的过程中,可以基于以下几个方面进行思考,首先以我们最直观的方式来看,比如说颜色、形状、纹理、边缘轮廓等,转换成计算机,我们通过颜色直方图把最低的三个分量特征都提取出来,苹果是偏向红色,橘子是偏向橙色,这样可以分析出来;然后再通过形状,比如把某省地图轮廓提取出来作为一个特征,利用图象中心到轮廓的距离作为一个距离特征;再高一层次可以进行结构特征,基于底层的特征,一些边缘、形状进行一个结构分析。

最左边的结构特征实际上是一个心理学图,不同的人看到的维度不同,有一些人看到的是白色的一个酒杯,但是换成另外一些人去看,这是两个面对面的人脸,这种通过图象分析可以把结构提出来,然后右边菱形的结构,以及一些知识图库的纹理结构,都是结构特征。

深度学习提取特征

前面是传统的图象处理常用方法,采用基于深度学习的特征提取方法。深度学习的方法相对来说比较简单,就是把我们输入的图象输入网络,每个网络对不同的过程进行一个迭代训练。在我们的网络前期,像一些低级的特征比如简单的边缘纹理特征,在中间部分我们就可以学到一个相对高级一点的结构特征,比如说我们做人脸识别的时候,是可以把里面的一些眼睛、嘴巴、耳朵等提取出来,再往高处走可以得到,最后就可以把物体的模型给训练出来,比如说训练出人脸的大致轮廓,这是通过深度学习方法提取的特征。

异常检测分析

特征提取完之后,进行异常检测分析。图中目标是让我们在图里面去找出哪一个是与其他不一样?因为工业场景中会有一些异常的目标异常分析,异常分析跟上图是挺相似的,在工业中也是一样,我们就是要把异常目标给自动定位分类出来。

对于异常目标分析,首先是要进行一个模型训练,模型训练过程是这样的,先是对获取到的图象进行特征提取,比如说像一些颜色纹理、一些结构,甚至是用一些深度学习的方法自动去提取特征,提取特征之后建立模型,得到一个模型表达式,比如说我们模型可以用图中这个分布函数来表示,模型的分布形式跟我们建立的方法有关系,我们可能是用一些信息方法,也有可能是二维的曲面,或者多维的曲面。

以二维的平面为例,假设模型提取的特征为x1,x2 ,我们学到的模型是一个分类面,分类面里面有一个正常的样本,同时假设x1,x2正相关,即x1越大,x2也就越大,通过模型计算可以将红色的异常点自动检测出来。现在对待这种异常,在分类面之外我们可以自动的分出来。

模型训练完之后肯定要进行使用,使用的时候先把训练好的模型部署到产线上,产线上启动后实时对图象进行获取,然后进行特征提取,经过模型输出最终的决策。在一些产线的分析过程中,实时去监测一些关键的曲线,对这些曲线进行可视化的实时输出结果,比如图中这些曲线,我们在做的过程中的一些关键因素通过曲线的方式打印出来。

通过曲线可以去回判维系,比如说我们是哪一个产线,或者是哪一台机器出了问题,然后这个曲线跟历史相对应的会出现一些异常,利用曲线实时去决策,以及可以根据一些历史的信息去判断,这些机器是什么时候开始出现这些故障的。

图像场景分析

另外,在我们一些实际案例中会碰到一些比较恶劣的环境,比如说一些环境下,在生产产线上有一些是有毒的,还有高温、高压、高辐射的一些场景,这种情况用人眼或者一些可见光的摄像头是很难观察出来的。我们采用红外热感相机进行分析,获取到红外热感应的图象结果图,对这个结果图再进行图象分割,分割完之后就可以得到对应的容器位置,然后我们对容器的位置内部再进行一个异常分析,就可以得到异常区域,然后对异常区域进行分类,因为杂质有多种多样,有液体的、固体的,最终可以得到一个决策结果,可以返推回去是什么原因造成这个结果的。

我们还有产线管道热辐射管道监控,在产线有一些燃油传输管道,还有一些特殊液体的传输管道,我们要实时去监控,液体经过有一个温度,如果温度过高,很容易会造成产线管道的快速老化,一些老化之后会爆开或者裂开渗漏出来,我们采用红外方式获取一个实时图象,然后对图象再进行分割,之后再进行一个标注,像蓝色代表数字方向的一个管道,绿色是横向的一个管道。标注完之后对应标注管道进行曲线的监控,得到右边的工作监控图,通过这个图就可以知道管道的实时温度,以及相关的监控值。这样可以继续帮助厂商从历史体系图中查看相关的情况。

写在文末:

11月3日AICUG人工智能技术沙龙网易专场活动中,袋长老胡丰为大家分享了《工业品缺陷异常检测及识别》的内容,此篇文章也是基于演讲内容来撰写。

这篇关于技本功丨互联网+工业视觉异常检测分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1061409

相关文章

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

Java.lang.InterruptedException被中止异常的原因及解决方案

《Java.lang.InterruptedException被中止异常的原因及解决方案》Java.lang.InterruptedException是线程被中断时抛出的异常,用于协作停止执行,常见于... 目录报错问题报错原因解决方法Java.lang.InterruptedException 是 Jav

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Olingo分析和实践之EDM 辅助序列化器详解(最佳实践)

《Olingo分析和实践之EDM辅助序列化器详解(最佳实践)》EDM辅助序列化器是ApacheOlingoOData框架中无需完整EDM模型的智能序列化工具,通过运行时类型推断实现灵活数据转换,适用... 目录概念与定义什么是 EDM 辅助序列化器?核心概念设计目标核心特点1. EDM 信息可选2. 智能类

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1

Olingo分析和实践之ODataImpl详细分析(重要方法详解)

《Olingo分析和实践之ODataImpl详细分析(重要方法详解)》ODataImpl.java是ApacheOlingoOData框架的核心工厂类,负责创建序列化器、反序列化器和处理器等组件,... 目录概述主要职责类结构与继承关系核心功能分析1. 序列化器管理2. 反序列化器管理3. 处理器管理重要方