无监督模式下的自适应阈值分割方法、系统、介质及电子设备与流程
本发明涉及工业自动化领域,涉及深度学习,特别涉及无监督分割算法,具体是一种无监督模式下的自适应阈值分割方法、系统、介质及电子设备。
背景技术:
1、在工业自动化的缺陷检测环节中,现在普遍都会使用基于深度学习原理的图像分割或者目标检测算法,这类算法首先需要收集大量的缺陷图,然后对它们将缺陷的部分标注出来,接着才能进行模型的训练和验证。比如下图1中的坚果被撞破,它就属于要检测出来的不合格图,那么我们会对这个缺陷位置通过标注得到一张对应的标注图,如图2所示,黑色的像素点代表背景,即对于人来说不属于缺陷,而白色的像素点代表的是缺陷。
2、然而上述的算法的缺点也显而易见;第一,需要大量的人工标注,这本身就非常耗时,而且每张图都需要工程师精心地标注,不能标错或者漏标,这也进一步导致费时费力,因此效率低下;第二,许多工厂的零件难以收集大量的缺陷样本,因为生产的过程中几乎所有的零件都是合格样本,即没有缺陷的样本,如此一来,在只有少量样本的前提下,训练出来的模型的检测能力往往不够稳定。
3、因此现在又逐渐兴起一种新型的深度学习算法,可以实现无需训练不合格样本只训练合格样本的算法,同时又能保证模型具有检测缺陷的能力。由于只训练合格样本自然也就不需要人工参与标注工作,这就是异常算法或者叫无监督分割算法。目前这种算法已经有不少的研究,而且确实创造出了能够应用于实际业务的算法,进一步促进了缺陷检测的发展。
4、对于工业自动化领域来说,不仅追求稳定的检测检测能力,而且还要追求实时检测的高速性,目前比较适合这样需求的算法最典型的就是efficientad,这也是常用的异常检测(无监督分割)算法之一。
5、但现有的无监督分割算法仍然存在以下缺陷:需要人工去标注缺陷图和调节得分阈值:无监督分割算法在许多介绍资料中都提及只需收集正常样本来训练模型,这点本身确实没有错;因为基于深度学习原理的算法的重点在于模型本身,而决定模型的好坏是模型的训练,加上无监督算法的训练范式决定了确实只需训练正常样本。
6、但是,无监督算法要想实现真正的自动化,还需要注意一个点,那就是最终划分合格部分和不合格部分的得分的阈值。无监督分割算法在模型输出大小上与有监督算法一样,都会得到与原图大小一样的得分图。判别每个像素点是属于合格还是不合格的依据也是一样的,数值越小代表是缺陷的可能性越小,越大代表缺陷的可能性越大。但是不同的是有监督分割算法的输出是概率图,即范围是0~255,最终训练完后的效果往往是不需要再去调节阈值的,直接取得分的上下限的一半即127便可完成。但是无监督分割的输出异常图的得分理论上是没有上限的限制,而且能够很好地划分不合格和合格的最佳阈值也不是根据上下限的一半决定的。
7、所以首先如果没有带缺陷的不合格图的话,阈值的划分就只能根据合格图的得分来定,但是模型如果没见过不合格图的得分那就很难保证之前选定的阈值将合格和不合格两个类划分得很好。其次在有不合格图的情况下,如果想要实现自适应阈值的模式,普遍的做法是通过求出最佳f1-score指标,来寻找到最佳的阈值,但是f1-score指标需要对不合格图的缺陷做标注才能求得。
8、综上所述,无监督算法美其名曰无需收集缺陷图和对应的标注工作,但是阈值划分的问题导致它并不能一步到位直接被用来稳定地检测,本质上仍然需要收集缺陷图和对应的标注工作,然后再去获取最佳的划分阈值。
技术实现思路
1、本发明的目的在于提供一种无监督模式下的自适应阈值分割方法、系统、介质及电子设备,用于解决上述背景技术中指出的问题。
2、第一方面,本发明提供一种无监督模式下的自适应阈值分割方法,所述无监督模式下的自适应阈值分割方法包括:获取验证集;所述验证集包括合格图像组和不合格图像组;其中,所述合格图像组包括合格图像;不合格图像组包括不合格图像;将所述验证集输入至无监督图像分割模型,以获取对应的得分图;根据所述得分图的值获取对应所述得分图的异常得分,以基于所述异常得分获取合格数组和不合格数组;其中,所述合格数组包括所有所述合格图像对应的得分图的异常得分;所述不合格数组包括所有所述不合格图像对应的得分图的异常得分;根据所述合格数组和所述不合格数组确定目标划分阈值,以使对应的过杀率和漏检率之和为最小,进而基于所述目标划分阈值实现无监督模式下的自适应阈值分割。
3、本发明中,提出了一种通过优化过杀率和漏检率之和这个目标,来获取最佳的阈值分割算法(即目标划分阈值),同时不需要人为地参与标注工作,真正实现了无监督模式下的自适应阈值分割。
4、在第一方面的一种实现方式中,所述根据所述得分图的值获取对应所述得分图的异常得分包括:将所述得分图的值按照从大到小的顺序排列,取预设位置的值作为所述异常得分。
5、在第一方面的一种实现方式中,所述根据所述合格数组和所述不合格数组确定目标划分阈值包括:比较所述合格数组中最小的数值和所述不合格数组中最小的数值;若所述合格数组中最小的数值小于所述不合格数组中最小的数值,则按照从小到大的顺序,依次将所述合格数组中的数值与所述不合格数组中最小的数值进行比较,直至所述合格数组中,出现第一目标数值大于或等于所述不合格数组中最小的数值,以根据第一数值和第二数值计算得到所述目标划分阈值;其中,所述第一数值为所述合格数组中,小于所述第一目标数值,且最接近所述第一目标数值的数值;所述第二数值所述不合格数组中最小的数值;若所述合格数组中最小的数值大于或等于所述不合格数组中最小的数值,则按照从小到大的顺序,依次将所述不合格数组中的数值与所述合格数组中最小的数值进行比较,直至所述不合格数组中,出现第二目标数值大于所述合格数组中最小的数值,以根据第三数值和第四数值计算得到所述目标划分阈值;其中,所述第三数值为所述合格数组中最小的数值;所述第四数值为所述第二目标数值。
6、本实现方式中,提供了一种目标划分阈值的确定方法,整个过程无需人工参与有监督分割一样的标注流程,也不需要人去参与调节划分合格图像和不合格图像的阈值参数,同时又达到了理想的分割效果,实现了无监督模式下的自适应阈值分割算法。
7、在第一方面的一种实现方式中,所述目标划分阈值的计算公式为:
8、k=(a+b)/2;
9、其中,k表示所述目标划分阈值;a表示所述第一数值或所述第三数值;当a表示所述第一数值时,b表示所述第二数值;当a表示所述第三数值时,b表示所述第四数值。
10、在第一方面的一种实现方式中,所述过杀率的计算公式为:
11、p1=(l1-m)/l1;
12、其中,p1表示所述过杀率;l1表示所述合格数组的长度;m取1,或m为依次将所述合格数组中的数值与所述不合格数组中最小的数值进行比较的比较次数,m取正整数,且m≤l1;
13、所述漏检率的计算公式为:
14、p2=(n-1)/l2;
15、其中,p2表示所述漏检率;l2表示所述不合格数组的长度;当m取1时,n为依次将所述不合格数组中的数值与所述合格数组中最小的数值进行比较的比较次数,n取正整数,且n≤l2;当m为依次将所述合格数组中的数值与所述不合格数组中最小的数值进行比较的比较次数时,n取1。
16、在第一方面的一种实现方式中,所述无监督模式下的自适应阈值分割方法还包括:根据所述第一数值和所述第二数值,或根据所述第三数值和所述第四数值,计算目标距离,并将所述目标距离作为评价指标优化所述无监督图像分割模型;所述目标距离的计算公式为:
17、d=(b-a)/(max-min);
18、其中,d表示所述目标距离;a表示所述第一数值或所述第三数值;当a表示所述第一数值时,b表示所述第二数值;当a表示所述第三数值时,b表示所述第四数值;max表示所有所述得分图对应的异常得分的最大值;min表示所有所述得分图对应的异常得分的最小值。
19、本实现方式中,提出了一种新的评价指标,实现了进一步更细致地判断模型是否更好,从而保存更好的模型,提高了模型的检测效果。
20、在第一方面的一种实现方式中,在所述根据所述得分图的值获取对应所述得分图的异常得分的步骤之前,所述无监督模式下的自适应阈值分割方法还包括:按照从大到小的顺序对所述得分图的值进行排列,以获取特征分布曲线;确定基准点;所述基准点的横坐标为所述特征分布曲线上,从右往左第一个大于0的点的横坐标,所述基准点的纵坐标为所述得分图的值的最大值的相反数;从右向左遍历所述特征分布曲线上的点,直至出现目标点与所述基准点之间的斜率小于转折点与所述基准点之间的斜率;其中,所述转折点位于所述目标点的右侧,且所述转折点为最靠近所述目标点的一个点;所述转折点的纵坐标作为排在第90%的值;中间点的纵坐标作为排在第99%的值;所述中间点为所述特征分布曲线上,横坐标为所述转折点的横坐标与0的中心;根据所述排在第90%的值和所述排在第99%的值对所述得分图进行标准化处理,以获取标准化处理后的得分图;所述根据所述得分图的值获取对应所述得分图的异常得分包括:将所述标准化处理后的得分图拉伸变换为一维向量后,根据所述标准化处理后的得分图的值获取所述异常得分。
21、本实现方式中,提供了一种标准化处理的算法,通过根据特征分布曲线找到合适的转折点,从而确定了更合适的背景点(对应排在第90%的值)和异常点(对应排在第99%的值)的分布,提高了标准化的稳定性,使得无监督分割算法在数据集的广泛性上效果更好。
22、第二方面,本发明提供一种无监督模式下的自适应阈值分割系统,所述无监督模式下的自适应阈值分割系统包括:第一获取模块,用于获取验证集;所述验证集包括合格图像组和不合格图像组;其中,所述合格图像组包括合格图像;不合格图像组包括不合格图像;模型输入模块,用于将所述验证集输入至无监督图像分割模型,以获取对应的得分图;第二获取模块,用于根据所述得分图的值获取对应所述得分图的异常得分,以基于所述异常得分获取合格数组和不合格数组;其中,所述合格数组包括所有所述合格图像对应的得分图的异常得分;所述不合格数组包括所有所述不合格图像对应的得分图的异常得分;阈值确定模块,用于根据所述合格数组和所述不合格数组确定目标划分阈值,以使对应的过杀率和漏检率之和为最小,进而基于所述目标划分阈值实现无监督模式下的自适应阈值分割。
23、第三方面,本发明提供一种电子设备,所述电子设备包括:处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行上述的无监督模式下的自适应阈值分割方法。
24、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被电子设备执行时实现上述的无监督模式下的自适应阈值分割方法。
25、如上所述,本发明所述的无监督模式下的自适应阈值分割方法、系统、介质及电子设备,具有以下有益效果:
26、(1)与现有技术相比,本发明提供了一种可以真正实现无需标注就能正确评估模型的无监督模式;对于得分结果(即异常得分)的阈值划分不需要人工参与,也可以取到最合适的值(即目标划分阈值),这样可以直接将模型与阈值参数应用于实际的检测中,达到了自适应阈值的智能效果。
27、(2)本发明对于模型的好坏,采用了更细致的评价指标(即目标距离)来评价,由此可以获得更能区分正常样本与异常样本的模型,提高了模型的检测效果。
28、(3)针对得分图是由两部分结果图构成的算法,传统方法在少部分数据集上的效果会因为值的标准化的过程出现问题,本发明提出了更先进更智能的算法解决了这个问题,使得无监督分割算法在数据集的广泛性上效果更好。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com