发明内容
为了解决上述技术问题,本发明的目的在于提供一种基于人工智能的透视材料缺陷检测方法与系统,所采用的技术方案具体如下:
本发明提供一种基于人工智能的透视材料缺陷检测方法,方法包括:
获取待检测透视材料的RGB图像,所述待检测透视材料的一面被覆盖物覆盖,从待检测透视材料被覆盖一面的对面采集所述RGB图像;
获取RGB图像中每个像素的透射率和光强表征值,组成每个像素的初始描述子;
将所有像素的初始描述子组成的数据集升维得到若干高维数据集;
对每个高维数据集进行多元高斯混合建模,根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集记为第一高维数据集;
根据RGB图像中每个像素对应第一高维数据集的数据点的高维描述对RGB图像进行超像素分割,得到若干超像素区域;
对每个超像素区域进行图像复原,根据图像复原前后各超像素区域的变化确定透视材料的缺陷程度。
进一步地,利用暗通道先验算法获取每个像素的透射率。
进一步地,所述光强表征值为每个像素的最大通道值。
进一步地,所述根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集包括:
获取高维数据集的判别值EVA:
其中,Σi为高维数据集对应多元高斯混合模型的第i个子高斯模型的协方差矩阵,μi、μj分别为高维数据集对应多元混合高斯模型的第i个、第j个子高斯模型的均值向量,K为多元高斯混合模型的子高斯模型个数;
选取判别值最大的高维数据集为第一高维数据集。
进一步地,所述对每个超像素区域进行图像复原包括:
利用暗通道先验算法获取RGB图像的第一复原图;
对每个超像素区域进行维纳滤波;
将维纳滤波后的各超像素区域组合构成RGB图像的第二复原图;
将第二复原图作为引导图对第一复原图进行引导滤波,得到第三复原图,第三复原图即为对各超像素区域复原的最终结果。
本发明还提供一种基于人工智能的透视材料缺陷检测系统,系统包括:
图像采集模块,用于获取待检测透视材料的RGB图像,所述待检测透视材料的一面被覆盖物覆盖,从待检测透视材料被覆盖一面的对面采集所述RGB图像;
初始描述子获取模块,用于获取RGB图像中每个像素的透射率和光强表征值,组成每个像素的初始描述子;
升维分析模块,用于将所有像素的初始描述子组成的数据集升维得到若干高维数据集;对每个高维数据集进行多元高斯混合建模,根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集记为第一高维数据集;
缺陷分析模块,用于根据RGB图像中每个像素对应第一高维数据集的数据点的高维描述对RGB图像进行超像素分割,得到若干超像素区域;对每个超像素区域进行图像复原,根据图像复原前后各超像素区域的变化确定透视材料的缺陷程度。
进一步地,利用暗通道先验算法获取每个像素的透射率。
进一步地,所述光强表征值为每个像素的最大通道值。
进一步地,所述根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集包括:
获取高维数据集的判别值EVA:
其中,Σi为高维数据集对应多元高斯混合模型的第i个子高斯模型的协方差矩阵,μi、μj分别为高维数据集对应多元混合高斯模型的第i个、第j个子高斯模型的均值向量,K为多元高斯混合模型的子高斯模型个数;
选取判别值最大的高维数据集为第一高维数据集。
进一步地,所述对每个超像素区域进行图像复原包括:
利用暗通道先验算法获取RGB图像的第一复原图;
对每个超像素区域进行维纳滤波;
将维纳滤波后的各超像素区域组合构成RGB图像的第二复原图;
将第二复原图作为引导图对第一复原图进行引导滤波,得到第三复原图,第三复原图即为对各超像素区域复原的最终结果。
本发明实施例至少具有如下有益效果:
本发明基于透视率以及光强表征值获取高维数据集,并基于相应的判别方法获取较好的高维数据集以用于超像素分割,提高了超像素分割精度,进一步提高了透视材料的缺陷检测精度,尤其提高了覆盖物不可去除情况下的透视材料缺陷检测精度。本发明结合维纳滤波得到的复原图,提高了暗通道复原图的质量,提高了透视材料的缺陷程度评价精度。
具体实施方式
为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合较佳实施例,对依据本发明提出的一种基于人工智能的透视材料缺陷检测方法与系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
下面具体的说明本发明所提供的一种基于人工智能的透视材料缺陷检测方法与系统的具体方案。
本发明一个实施例提供一种基于人工智能的透视材料缺陷检测方法,该方法包括以下步骤:
步骤1,获取待检测透视材料的RGB图像,所述待检测透视材料的一面被覆盖物覆盖,从待检测透视材料被覆盖一面的对面采集所述RGB图像。覆盖物表面包括图案、花纹、文字等。覆盖物可以理解为一张图片。
透视材料在应用中,其上往往覆盖了各种图形花纹或文字,而且很多时候覆盖的图形花纹、文字无法被去除,在这种情况下,检测透视材料的缺陷存在一定难度,本发明基于图像处理、人工智能技术实现该情况下的透视材料缺陷检测,且具有较高的检测精度。将待检测透视材料视为长方体,待检测透视材料的一面被覆盖物覆盖,利用相机从待检测透视材料被覆盖面的对侧面(与被覆盖面平行的透视材料平面)采集图像,相机的像平面与透视材料平面平行。需要说明的是,覆盖物可以将透视材料的一面全部覆盖,也可以部分覆盖。
步骤2,获取RGB图像中每个像素的透射率和光强表征值,组成每个像素的初始描述子。本发明基于暗通道先验算法获取每个像素的透射率,所述光强表征值为每个像素的最大通道值。
本实施例利用暗通道先验算法获取每个像素的透射率。暗通道先验是一项经过统计学获得的定理。其通俗意义在于,对于自然界图像,自然景物中到处都是阴影或者彩色,这些景物的图像的暗原色总是很灰暗的。对于一透视材料的RGB图像,可根据以下公式获得暗通道图像:
其中,Jdark(v)代表暗通道图像中点v(vertex)的像素值:从每个像素点y各通道值Jc(y)选取最小通道值,获得一张灰度图;然后对这张灰度图利用最小值滤波,求出暗通道图像中每个像素点的值。
暗通道先验指出:Jdark→0,在本发明中即:对于一个无透视材料覆盖的图像,其暗通道图像中的像素值,都无限接近于0。
基于暗通道先验理论,本发明采集的待检测透视材料的RGB图像可以表示为以下形式:
I(v)=J(v)·t(v)+A·(1-t(v))
其中,I(v)为待检测透视材料的RGB图像(也可称为透视材料覆盖的图像),J(v)为无透视材料覆盖的图像(即覆盖透视材料的原图,包括覆盖的覆盖物),A为环境光值,t(v)为材料在 v位置的局部透射率。根据暗通道先验算法得到像素点v的透射率t(v)。
透射率虽然能较好地表征材料的模糊程度,但由于透视材料通常会存在反光、光照不均匀等情况,基于暗通道先验算法获得的部分像素点的透射率可能不准确。本发明利用每个像素点的光强表征值来解决这一问题,因此需要计算每个点的局部光照强度。可利用每个像素点的亮通道值,作为局部光强。即:
其中,A(v)代表像素点v的局部光照强度;c代表RGB通道的索引;Ic(v)代表待检测透视材料的RGB图像点v处的索引为c的通道值。
至此,可以获得每个像素的初始描述子:
Px,y=[t(x,y),A(x,y)]
初始描述子Px,y为二维向量;t(x,y)代表像素点(x,y)的透射率;A(x,y)代表像素点(x,y)的局部光强即光强表征值。
步骤3,将所有像素的初始描述子组成的数据集升维得到若干高维数据集;对每个高维数据集进行多元高斯混合建模,根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集记为第一高维数据集。
由于后续步骤需要对图像进行超像素分割,而本方法中,每个像素点只有两个维度的描述,数据维度过低,降低超像素分割的准确率,因此需要一种合适的方法将数据映射到高维,再进行超像素分割。
将数据映射到高维的方法有很多,可以采用核函数映射方法将数据映射到高维,也可利用等价格拉姆矩阵完成升维。设各像素初始描述子构成的原始数据集为P={P1,P2,…,PN},升维之后的高维数据为X={X1,X2,…,XN},其中,N代表像素数量,升维后的数据点与升维前的数据点一一对应。获取高维数据的格拉姆矩阵,构建约束条件:高维数据的格拉姆矩阵与原始数据集的格拉姆矩阵相同。根据这一约束条件,可获得大量的高维数据的组合: Xtotal={X1,X2,…,XZ},其中,上标Z代表根据约束条件生成的高维数据集的个数。Xtotal中的所有数据集都是原始数据在高维的可能存在的映射,Xtotal中数据集的维度可以相同,也可以不同,其维度至少是三维。
需要在这些数据集中选取一个较好的高维数据集。由于本方案构建高维数据集的目的在于,确保后续超像素分割步骤中,高维数据能够具备最大的可分性,利用具备这一特性的数据集进行超像素分割的时候,才能够确保超像素分割的精准度最高。为选取高维数据集,首先可假设透视材料的透射程度分布为高斯分布,事实上,自然界绝大部分的数据分布也符合这个假设。针对每个高维数据集进行多元高斯混合建模,并利用EM算法求取符合约束条件的均值向量以及协方差矩阵。
本发明提供三种实施方式选取较好的高维数据集,均能获取较好的超像素分割效果,其计算复杂度依次递增。根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集的一种实施方式为:获取高维数据集的判别值EVA:
其中,Σi为高维数据集对应多元高斯混合模型的第i个子高斯模型的协方差矩阵,μi、μj分别为高维数据集对应多元混合高斯模型的第i个、第j个子高斯模型的均值向量,K为高维数据集对应多元高斯混合模型的子高斯模型个数;选取判别值最大的高维数据集为第一高维数据集。
本发明还提供根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集的另一种实施方式:获取高维数据集的判别值EVA:
其中,σΔ为集合{||(μi-μj)||2}的标准差,其中,i,j∈[1,K]且i≠j。σ∑为集合{||Σi||2}的标准差,其中,i∈[1,K],选取判别值最大的高维数据集为第一高维数据集。此实施方式考虑了差异的分布,可以获得子模型间更为分散、子模型内数据较为集中的高维数据集。
本发明还提供根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集的第三种实施方式:
其中,M为所有像素的透射率序列,X为高维数据集,sim()为相似度比较函数,可以通过获取M(将M视为一维向量组,可得其格拉姆矩阵)与X的格拉姆矩阵差值的绝对值(差值矩阵的L1范数)衡量M与X的相似度。本实施方式进一步考虑了与透射程度的关联关系,选取子模型间更为分散、子模型内数据较为集中且与透射程度更相似的高维数据集。
步骤4,根据RGB图像中每个像素对应第一高维数据集的数据点的高维描述对RGB图像进行超像素分割,得到若干超像素区域。对每个超像素区域进行图像复原,根据图像复原前后各超像素区域的变化确定透视材料的缺陷程度。
根据第一高维数据集的高维描述进行超像素分割,设获得了K个超像素区域,分别记为{ROI1,ROI2,…,ROIK}。
利用暗通道先验算法可以获得一个粗糙的无透视材料覆盖的图像,但是获得的图像可能出现高频信息缺失的情况,不能满足本发明对图像的质量要求。因此,本发明利用维纳滤波分别对每个超像素区域复原,获得引导图,基于该引导图对粗糙的无透视材料覆盖的图像进行质量提升。具体地,对每个超像素区域进行图像复原包括:利用暗通道先验算法获取 RGB图像的第一复原图;对每个超像素区域进行维纳滤波;将维纳滤波后的各超像素区域组合构成RGB图像的第二复原图;将第二复原图作为引导图对第一复原图进行引导滤波,得到第三复原图,第三复原图即为对各超像素区域复原的最终结果。将在前获得的超像素区域映射到第三复原图,得到复原的超像素区域集合{R1,R2,…,RK}。优选地,维纳滤波过程包括:获取超像素区域所有像素的初始描述子的均值,得到均值向量,将均值向量作为先验噪声,对超像素区域进行维纳滤波。
接下来,计算每个对应超像素区域的差异Ek,即Ek=∥Rk-ROIk∥,k的取值区间[1,K]。取 Ek最小的超像素区域,近似为无缺陷区域。待检测透视材料的缺陷程度DE:
其中,S(ROIj)代表ROIj的面积,S代表图像的总面积;Ebase为min(Ek)。本步骤的输出为待检测透视材料的缺陷程度。
本发明另一种实施例提供一种基于人工智能的透视材料缺陷检测系统,系统包括:
图像采集模块,用于获取待检测透视材料的RGB图像,所述待检测透视材料的一面被覆盖物覆盖,从待检测透视材料被覆盖一面的对面采集所述RGB图像;
初始描述子获取模块,用于获取RGB图像中每个像素的透射率和光强表征值,组成每个像素的初始描述子;
升维分析模块,用于将所有像素的初始描述子组成的数据集升维得到若干高维数据集;对每个高维数据集进行多元高斯混合建模,根据每个高维数据集对应的均值向量集合和协方差矩阵集合选取一个高维数据集记为第一高维数据集;
缺陷分析模块,用于根据RGB图像中每个像素对应第一高维数据集的数据点的高维描述对RGB图像进行超像素分割,得到若干超像素区域;对每个超像素区域进行图像复原,根据图像复原前后各超像素区域的变化确定透视材料的缺陷程度。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。