一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

异常检测方法、计算机装置及存储介质与流程

2022-09-02 19:26:26 来源:中国专利 TAG:


1.本技术涉及产品检测领域,特别是指一种异常检测方法、计算机装置及存储介质。


背景技术:

2.在实际工业生产过程中,部分产品的表面存在难以避免的缺陷。表面异常不仅会对产品的美观和舒适度产生不良影响,更严重者还会影响产品的使用性能。为了实现对产品的质量控制,外观异常检测是实际工业生产过程中非常重要的一个环节。传统的人工检测方法对人工检测员的主观判断依赖度很高,而且还有实时性差、劳动强度大等缺点,因此对实际产品进行图像采样,并基于采样的图像进行自动异常检测具备很重要的实际应用价值。


技术实现要素:

3.鉴于以上内容,有必要提供一种异常检测方法、计算机装置及存储介质,可以辅助检测产品异常,以解决上述问题。
4.所述异常检测方法、计算机装置及存储介质,包括:使用正常图像训练自编码器模型;将待检测图像输入所述自编码器模型,判断所述自编码器模型能否基于所述待检测图像生成重建图像:当不能基于所述待检测图像生成重建图像时,确定所述待检测图像为异常图像;当能够基于所述待检测图像生成重建图像时,获得与所述待检测图像对应的重建图像;及基于缺陷判断准则判断所述重建图像是否有异常。
5.可选地,所述使用正常图像训练自编码器模型包括:收集预设数量的正常图像;获得所述预设数量的正常图像中的每个正常图像的隐含低维向量h;利用所述预设数量的正常图像中的每个正常图像的隐含低维向量h训练学习成为一个t分布。
6.可选地,所述获得与所述每个图像对应的隐含低维向量h包括:对所述每个正常图像进行图像处理得到每个正常图像对应的图像向量x;将所述每个正常图像的向量x进行压缩得到每个正常图像对应的隐含低维向量h。
7.可选地,所述利用隐含低维向量h训练学习成为一个t分布包括:利用所述隐含低维向量h的分布相似性,对变分自编码器模型进行训练,将所述隐含低维向量h训练学习成为一个t分布。
8.可选地,所述t分布的密度函数表达式为:
[0009][0010]
其中,t表示所述隐含低维向量h;v为自由度且v=n-1,其中,n为样本的数量;γ为γ函数。
[0011]
可选地,所述判断所述自编码器模型能否基于待检测图像生成重建图像包括:基于所述自编码器模型的多层神经网络获得所述待检测图像的重建概率p;当所述待检测图像的重建概率p小于且等于重建阈值δ时,确定不能基于所述待检测图像生成重建图像;当
所述待检测图像的重建概率p大于所述重建阈值δ时,确定能够基于所述待检测图像生成重建图像。
[0012]
可选地,所述缺陷判断准则为:获得所述待检测图像与所述重建图像之间的图像均方误差mse;当所述图像均方误差mse小于且等于误差阈值τ时,确定所述检测图像为正常图像;当所述图像均方误差mse大于所述误差阈值τ时,确定所述检测图像为异常图像。
[0013]
可选地,所述图像均方误差mse的计算公式为:式中,y为所述待检测图像的像素,为所述待检测图像的重建图像的像素。
[0014]
所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现所述异常检测方法。
[0015]
所述计算机装置包括存储器和至少一个处理器,所述存储器中存储有至少一个指令,所述至少一个指令被所述至少一个处理器执行时实现所述异常检测检查方法。
[0016]
相较于现有技术,所述异常检测方法、计算机装置及存储介质,可以使用自编码器模型基于t分布的性质来检测产品是否存在异常,提高产品检测的效率和准确率。
附图说明
[0017]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0018]
图1是本技术较佳实施例的异常检测方法的流程图。
[0019]
图2是本发明较佳实施例的异常检测系统的功能模块图。
[0020]
图3是本发明较佳实施例的计算机装置的架构图。
[0021]
主要元件符号说明
[0022]
计算机装置3处理器32存储器31异常检测系统30获取模块301执行模块302摄像机33
[0023]
如下具体实施方式将结合上述附图进一步说明本技术。
具体实施方式
[0024]
为了能够更清楚地理解本技术的上述目的、特征和优点,下面结合附图和具体实施例对本技术进行详细描述。需要说明的是,在不冲突的情况下,本技术的实施例及实施例中的特征可以相互组合。
[0025]
在下面的描述中阐述了很多具体细节以便于充分理解本技术,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术
人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0026]
除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术。
[0027]
参阅图1所示,为本技术较佳实施例的异常检测方法的流程图。
[0028]
在本实施例中,所述异常检测方法可以应用于计算机装置中,对于需要进行异常检测的计算机装置,可以直接在计算机装置上集成本技术的方法所提供的用于异常检测的功能,或者以软件开发工具包(software development kit,sdk)的形式运行在计算机装置上。
[0029]
如图1所示,所述异常检测方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
[0030]
步骤s1、计算机装置使用正常图像训练自编码器模型。
[0031]
在一个实施例中,所述使用正常图像训练自编码器模型包括(a1)-(a3):
[0032]
(a1)收集预设数量的正常图像。
[0033]
所述正常图像是指对无瑕疵的产品所拍摄的图像。对应地,对存在瑕疵的产品所拍摄的图像称为异常图像。在一个实施例中,可以利用工业摄像机拍摄获取所述预设数量的正常图像。由于正常工作下拍摄产生的图像均为正常无瑕疵样本,获取容易,实时拍摄足够的(例如,10万张)正常图像作为训练样本。
[0034]
(a2)获得所述预设数量的正常图像中的每个正常图像的隐含低维向量h。
[0035]
在一个实施例中,可以对所述每个正常图像进行图像处理(例如,主成分分析降维)得到每个正常图像对应的图像向量x;利用编码器(encoder)将所述每个正常图像的图像向量x进行压缩得到每个正常图像对应的隐含低维向量h。
[0036]
(a3)利用所述预设数量的正常图像中的每个正常图像的隐含低维向量h训练学习成为一个t分布。
[0037]
在一个实施例中,所述利用所述预设数量的正常图像中的每个正常图像的隐含低维向量h训练学习成为一个t分布包括:利用所述隐含低维向量h的分布相似性,对变分自编码器(variational auto-encoder,vae)模型进行训练,将所述隐含低维向量h训练学习成为一个t分布。
[0038]
在一个实施例中,所述t分布的密度函数表达式为:
[0039][0040]
其中,t表示所述隐含低维向量h;v为自由度且v=n-1,其中,n为样本的数量(例如,10万);γ为γ函数。
[0041]
步骤s2、计算机装置将待检测图像输入所述自编码器模型。
[0042]
在一个实施例中,所述待检测图像可以为对待检测的产品进行拍摄所获得的图像。
[0043]
步骤s3、计算机装置判断所述自编码器模型能否基于所述待检测图像生成重建图像。当不能基于所述待检测图像生成重建图像时,执行s6;当能够基于所述待检测图像生成重建图像时,执行s4。
[0044]
在一个实施例中,所述判断所述自编码器模型能否基于待检测图像生成重建图像包括:基于所述自编码器模型的多层神经网络获得所述待检测图像的重建概率p;当所述待检测图像的重建概率p小于且等于重建阈值δ时,确定不能基于所述待检测图像生成重建图像;当所述待检测图像的重建概率p大于重建阈值δ时,确定能够基于所述待检测图像生成重建图像。
[0045]
在一个实施例中,所述重建阈值δ的选择方式依赖于对所述自编码器模型缺陷检测能力的期望,一般基于对缺陷检测召回率和准确率的平衡进行选择。如果期待高的准确率,推荐方法是取所有所述训练样本重建概率的最大值;而如果期望召回率较高,推荐基于所述训练样本重建概率的一种统计值作为阈值。比如假设所述训练样本重建概率服从高斯分布,可以将高斯分布的90%分位值作为所述重建阈值。
[0046]
步骤s4、当能够基于所述待检测图像生成重建图像时,计算机装置利用所述自编码器模型获得与所述待检测图像对应的重建图像。
[0047]
步骤s5、计算机装置基于缺陷判断准则判断所述重建图像是否有异常。当所述重建图像是有异常时,执行s6;当所述重建图像是无异常时,执行s7。
[0048]
在一个实施例中,所述基于缺陷判断准则判断所述重建图像是否有异常包括(b1)-(b2):
[0049]
(b1)获得所述待检测图像与所述重建图像之间的图像均方误差(mean squared error,mse)。
[0050]
在一个实施例中,所述图像均方误差mse的计算公式为:式中,y为所述待检测图像的像素,为所述待检测图像的重建图像的像素。
[0051]
(b2)当所述图像均方误差mse≤误差阈值τ时,确定所述检测图像为正常图像;当所述图像均方误差mse》误差阈值τ时,确定所述检测图像为异常图像。
[0052]
在一个实施例中,所述误差阈值τ的选择方式依赖于对所述自编码器模型缺陷检测能力的期望,一般基于对缺陷检测召回率和准确率的平衡进行选择,可以将t分布的90%分位值作为所述误差阈值。
[0053]
在一个实施例中,所述t分布的分布相似性具有相似的更相似,不相似的更不相似的特点,所述t分布偏重长尾分布。举例而言,所述待检测图像的瑕疵越大,在所述t分布中就会越靠近分布的尾端使得重建概率越小,无法被重建。
[0054]
步骤s6、计算机装置确定所述待检测图像为异常图像。
[0055]
步骤s7、计算机装置确定所述待检测图像为正常图像。
[0056]
上述图1详细介绍了本技术的异常检测方法,下面结合图2和图3,对实现所述异常检测方法的软件系统的功能模块以及实现所述异常检测方法的硬件装置架构进行介绍。
[0057]
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
[0058]
参阅图2所示,是本技术较佳实施例提供的异常检测系统的模块图。
[0059]
在一些实施例中,所述异常检测系统30运行于计算机装置3中。所述异常检测系统30可以包括多个由程序代码段所组成的功能模块。所述异常检测系统30中的各个程序段的程序代码可以存储于计算机装置3的存储器31中,并由至少一个处理器32所执行,以实现异常检测功能(详见图2描述)。
[0060]
本实施例中,所述异常检测系统30根据其所执行的功能,可以被划分为多个功能
模块。所述功能模块可以包括:获取模块301、执行模块302。本技术所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
[0061]
具体地,获取模块301可以用于获取摄像机33拍摄的正常图像和待检测图像。执行模块302可以用于使用所述正常图像训练自编码器模型。执行模块302还可以用于将待检测图像输入所述自编码器模型,判断能否基于所述待检测图像生成重建图像:当不能基于所述待检测图像生成重建图像时,确定所述待检测图像为异常图像;当能够基于所述待检测图像生成重建图像时,利用所述自编码器模型获得与所述待检测图像对应的重建图像;及基于缺陷判断准则判断所述重建图像是否有异常。
[0062]
参阅图3所示,为本技术较佳实施例提供的计算机装置的结构示意图。在本技术较佳实施例中,所述计算机装置3包括存储器31、至少一个处理器32、摄像机33。本领域技术人员应该了解,图3示出的计算机装置的结构并不构成本技术实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机装置3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
[0063]
在一些实施例中,所述计算机装置3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
[0064]
需要说明的是,所述计算机装置3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本技术,也应包含在本技术的保护范围以内,并以引用方式包含于此。
[0065]
在一些实施例中,所述存储器31用于存储程序代码和各种数据,例如安装在所述计算机装置3中的异常检测系统30,并在计算机装置3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31包括只读存储器(read-only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read-only memory,eprom)、一次可编程只读存储器(one-time programmable read-only memory,otprom)、电子擦除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
[0066]
在一些实施例中,所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(central processing unit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述计算机装置3的控制核心(control unit),利用各种接口和线路连接整个计算机装置3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机装置3的各种功能和处理数据,例如执行异常检测的功能。
[0067]
尽管未示出,所述计算机装置3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任
意组件。所述计算机装置3还可以包括多种传感器、蓝牙模块、wi-fi模块等,在此不再赘述。
[0068]
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
[0069]
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是服务器、个人电脑等)或处理器(processor)执行本技术各个实施例所述方法的部分。
[0070]
在进一步的实施例中,结合图3,所述至少一个处理器32可执行所述计算机装置3的操作装置以及安装的各类应用程序(如所述的异常检测系统30)、程序代码等,例如,上述的各个模块。
[0071]
所述存储器31中存储有程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图2中所述的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到异常检测的目的。
[0072]
在本技术的一个实施例中,所述存储器31存储一个或多个指令(即至少一个指令),所述至少一个指令被所述至少一个处理器32所执行以实现图1所示的异常检测的目的。
[0073]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0074]
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0075]
另外,在本技术各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
[0076]
对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其他的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
[0077]
最后所应说明的是,以上实施例仅用以说明本技术的技术方案而非限制,尽管参照以上较佳实施例对本技术进行了详细说明,本领域的普通技术人员应当理解,可以对本技术的技术方案进行修改或等同替换,而不脱离本技术技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献