[发明专利]基于动态环境特征和加权贝叶斯分类器的缺陷提取方法有效
申请号: | 201910005050.1 | 申请日: | 2019-01-03 |
公开(公告)号: | CN109816638B | 公开(公告)日: | 2021-05-14 |
发明(设计)人: | 殷春;张昊楠;程玉华;黄雪刚;薛婷;陈凯;石安华 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06T7/00 | 分类号: | G06T7/00;G06T7/11;G06T7/13;G06K9/62;G01N25/72 |
代理公司: | 成都行之专利代理事务所(普通合伙) 51220 | 代理人: | 温利平 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 动态 环境 特征 加权 贝叶斯 分类 缺陷 提取 方法 | ||
1.一种基于动态环境特征和加权贝叶斯分类器的缺陷提取方法,其特征在于,包括以下步骤:
(1)、将红外热像仪获取的热图像序列用三维矩阵S表示,其中的元素S(i,j,t)表示热图像序列的t帧热图像的第i行、第j列的像素值;
(2)、从三维矩阵S选出最大像素值S(izz,jzz,tzz),其中,izz、jzz和tzz分别表示最大像素值像素点所在行的行数、所在列的列数以及所在帧的帧数;
(3)、对于三维矩阵S的tzz帧,选取第jzz行,根据像素值的变化,选取P个像素值跳变点,跳变点位于两个跳变像素值像素点之间,以跳变点按行对三维矩阵S进行划分,得到P+1个行数据块;
在第p个行数据块Sp中(p=1,2,...,P+1),找到最大像素值,记为其中,分别表示第p个行数据块Sp中最大像素值像素点所在行的行数、所在列的列数以及所在帧的帧数,则最大像素值对应的瞬态热响应为t=1,2,...,T,T为三维矩阵S帧的总数量;
设置第p个行数据块Sp的温度阈值为THREp,计算瞬态热响应与距离最大像素值即温度最大值像素点所在列由近及远像素点像素值对应的瞬态热响应之间的相关度Reb,b依次取1,2,...,并判断相关度Reb是否小于温度阈值THREp,当小于时,停止计算,此时,像素点间距b为第p个行数据块行数据块Sp的行步长,记为CLp;
(4)、对于三维矩阵S的tzz帧,选取第izz行,根据像素值的变化,选取Q个像素值跳变点,跳变点位于两个跳变像素值像素点之间,以跳变点按列对三维矩阵S进行划分,得到Q+1个列数据块;
在第q个列数据块Sq中(q=1,2,...,Q+1),找到最大像素值,记为其中,分别表示第q个列数据块Sq中最大像素值像素点所在行的行数、所在列的列数以及所在帧的帧数,则最大像素值对应的瞬态热响应为t=1,2,...,T,T为三维矩阵S帧的总数量;
设置第q个列数据块Sq的温度阈值为THREq,计算瞬态热响应与距离最大像素值即温度最大值像素点所在行由近及远像素点像素值对应的瞬态热响应之间的相关度Red,d依次取1,2,...,并判断相关度Red是否小于温度阈值THREq,当小于时,停止计算,此时,像素点间距d为第d个列数据块Sq的列步长,记为CLq;
(5)、分块分步长选取瞬态热响应
(5.1)、依据步骤(3)选取的P个像素值跳变点按列以及步骤(4)选取的Q个像素值跳变点按行对三维矩阵S进行分块,得到(P+1)×(Q+1)个数据块,行上第p、列上第q个数据块表示为Sp,q;
(5.2)、对于每个数据块Sp,q,设置阈值DD,初始化集合编号g=1,初始化像素点位置i=1,j=1,并将最大像素值S(izz,jzz,tzz)对应的瞬态热响应S(izz,jzz,t),t=1,2,...,T,存储在集合X(g)中;然后计算数据块Sp,q中像素点位于i行,j列的瞬态热响应Sp,q(i,j,t),t=1,2,...,T,与集合X(g)间的相关度Rei,j,并判断:
如果Rei,j<DD,则g=g+1,并将瞬态热响应Sp,q(i,j,t),t=1,2,...,T作为一个新特征存储在集合X(g)中;否则,令i=i+CLp,继续计算下一个瞬态热响应Sp,q(i,j,t),t=1,2,...,T与集合X(g)的相关度;如果i>Mp,q,则令i=i-Mp,q,j=j+CLq,即变化到第j+CLq列进行计算,如果j>Np,q,则瞬态热响应选取完毕,其中,Mp,q、Np,q分别为数据块Sp,q的行数、列数;
(6)、步骤(5)选取的所有(P+1)×(Q+1)个数据块的所有集合X(g)即瞬态热响应为G条,对这G条瞬态热响应进行特征提取,并分为K类
(6.1)、特征提取:
计算每条瞬态热响应的能量:
其中,g为瞬态热响应序号,g=1,2,...,G,xg,t为瞬态热响应g在t帧的像素值;
计算每条瞬态热响应在吸热过程中的温度变化率:
其中,tmid表示加热终止帧序号,t0表示加热起始帧序号;
计算每条瞬态热响应在放热过程中的温度变化率:
其中,tend表示放热结束帧序号;
计算每条瞬态热响应的平均温度值:
计算每条瞬态热响应的最大温度值:
完成特征提取后,每条瞬态热响应可以表示为:g=1,2,...,G;
(6.2)、将每个特征下的连续数值离散化,离散化后每个特征由4个离散的数值标记:
能量由很大E1、较大E2、较小E3、很小E4表示,同样的,吸热过程中的温度变化率由很大Vup1、较大Vup2、较小Vup3、很小Vup4表示,放热过程中的温度变化率由很大Vdown1、较大Vdown2、较小Vdown3、很小Vdown4表示,平均温度值由很大Tave1、较大Tave2、较小Vave3、很小Vave4表示,最大温度值由很大Tmax1、较大Tmax2、较小Tmax3、很小Tmax4表示;
(6.3)、设置分类数目为K,类别表示为:C=(c1,c2,...,cK),其中有一类表示无缺陷类别,剩下表示不同的缺陷类别,环境分为有M个,表示为v1,v2,...,vM,通过计算最大后验概率得到最终的类别:
其中,hnb(Xg)表示求瞬态热响应Xg的类别,即拥有最大后验概率p(ck|Xg)的类别ck为瞬态热响应Xg的类别,p(Eg|ck,vm)、分别表示环境vm下离散能量、吸热过程中的温度变化率、放热过程中的温度变化率平均温度值最大温度值的数值属于类别ck的似然概率;
其中,p(ck)为类别ck的先验概率,其值为:
Ntotal为用于训练的历史数据中瞬态热响应的总数,为用于训练的历史数据中属于类别ck的瞬态热响应条数;
其中,p(vm)为环境vm的先验概率,其值为:
Ntotal为用于训练的历史数据中瞬态热响应的总数,为用于训练的历史数据中在环境vm下的瞬态热响应条数;
(7)、对于K类瞬态热响应寻找每一类的代表,并构成构成一个T×K的矩阵Y
(7.1)、首先求取每一类瞬态热响应的中心,用每一类的均值表示该类的中心即:
其中,每一帧的均值可以通过下式计算:
其中,为ck类瞬态热响应的数量,分别表示ck类第1条、第条瞬态热响应在t帧的像素值;
(7.2)、用表示第ck类的代表,并通过下式计算每一类的代表:
其中,表示除了类别ck以外的其他类别集合;
即在类别ck的条瞬态热响应中找到一条瞬态热响应满足与其他类别cu的瞬态热响应中心的距离和最大;
(7.3)、将K类的瞬态响应代表按列放置,构成一个T×K的矩阵Y;
(8)、将三维矩阵S中的每一帧从第一列开始,将后一列接在前一列的末尾,构成新的一列,得到T帧对应的T列像素值,然后,依据时间先后,将T列像素值依次放置,构成I×J行、T列二维图像矩阵O,用矩阵Y对二维矩阵O进行线性变换,即:得到二维图像矩阵R,其中,为K×T矩阵,是矩阵Y的伪逆矩阵,OT二维图像矩阵O的转置矩阵,得到的二维图像矩阵R为K行、I×J列;
二维图像矩阵R的每一行,按J列依次进行截取,截取的J列按行依次放置,构成一张I×J二维图像,这样K行,得到K张I×J二维图像,这些图片都包含了缺陷区域,为方便缺陷轮廓提取,选择缺陷区域和非缺陷区域像素值差距最大的一张二维图像,并记为f(x,y);
(9)、采用模糊C均值算法对二维图像f(x,y)进行图像分割,实现特征提取:
首先采用模糊C均值算法对的二维图像f(x,y)进行聚类,根据隶属度最大,得到每个像素点所属类别,然后该类别聚类中心的值作为该像素点的幅值,得到分割后的图像,最后,将分割后图像转换成二值图像,即设定阈值为TH,当分割后的图像中像素点幅值大于TH时,将该像素点幅值设为1,否则幅值设为0;二值图像为缺陷图像,从而完成缺陷的提取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910005050.1/1.html,转载请声明来源钻瓜专利网。