掌桥专利:专业的专利平台
掌桥专利
首页

基于YOLO算法的玻璃仪器检测方法、装置及相关设备

文献发布时间:2023-06-19 13:45:04


基于YOLO算法的玻璃仪器检测方法、装置及相关设备

技术领域

本发明涉及人工智能领域,尤其涉及一种基于YOLO算法的玻璃仪器检测方法、装置及相关设备。

背景技术

目前对于实验考试大多采用图像检测自动评分,而对于实验中的玻璃仪器检测,多采用目标检测算法。实验使用的玻璃器皿种类多,例如试剂瓶、烧杯、量筒等。由于玻璃仪器透明度高,实验操作过程中手持遮挡严重,使用目前常见的目标检测识别算法对透明目标特征提取能力弱,受环境和光线影响较大,难以准确检测识别。

发明内容

本发明实施例提供了一种基于YOLO算法的玻璃仪器检测方法、装置及相关设备,旨在解决现有技术中YOLO算法对于玻璃仪器的检测准确度较低的问题。

第一方面,本发明实施例提供了一种基于YOLO算法的玻璃仪器检测方法,包括:

采用多维度特征提取模块对输入图像进行不同维度的特征提取,得到多维度的原特征图;

按低维度特征图与高维度特征图融合的规则对所述原特征图进行特征融合,得到多维度的特征融合图;

通过YOLO算法对所述特征融合图进行分类预测、位置坐标回归和类别置信度计算,得到分类结果、回归结果和类别置信度,并根据所述分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失;

根据所述分类损失、回归损失和置信度损失对YOLO算法的模型参数进行更新,得到最优的YOLO算法;

将目标检测图像输入所述YOLO算法进行目标检测,得到检测结果。

第二方面,本发明实施例提供了一种基于YOLO算法的玻璃仪器检测装置,其包括:

特征提取模块,用于采用多维度特征提取模块对输入图像进行不同维度的特征提取,得到多维度的原特征图;

特征融合模块,用于按低维度特征图与高维度特征图融合的规则对所述原特征图进行特征融合,得到多维度的特征融合图;

损失计算模块,用于通过YOLO算法对所述特征融合图进行分类预测、位置坐标回归和类别置信度计算,得到分类结果、回归结果和类别置信度,并根据所述分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失;

参数更新模块,用于根据所述分类损失、回归损失和置信度损失对YOLO算法的模型参数进行更新,得到最优的YOLO算法;

检测模块,用于将目标检测图像输入所述YOLO算法进行目标检测,得到检测结。

本发明实施例提供了一种基于YOLO算法的玻璃仪器检测方法、装置及相关设备。该系统包括采用多维度特征提取模块对输入图像进行不同维度的特征提取,得到多维度的原特征图;按低维度特征图与高维度特征图融合的规则对所述原特征图进行特征融合,得到多维度的特征融合图;通过YOLO算法对所述特征融合图进行分类预测、位置坐标回归和类别置信度计算,得到分类结果、回归结果和类别置信度,并根据所述分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失;根据所述分类损失、回归损失和置信度损失对YOLO算法的模型参数进行更新,得到最优的YOLO算法;将目标检测图像输入所述YOLO算法进行目标检测,得到检测结果。该方法通过对图像进行多维度特征提取,基于多维度特征图像进行特征融合,基于融合后的特征图像训练YOLO算法,提高YOLO算法对于目标的检测准确度。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法的流程示意图;

图2为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法一实施例的流程示意图;

图3为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法中步骤S110的子流程示意图;

图4为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法中步骤S120的子流程示意图;

图5为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法中步骤S130的子流程示意图;

图6为本发明实施例提供的基于YOLO算法的玻璃仪器检测装置的框架示意图;

图7为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法中的网络结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

请参阅图1所示,图1为本发明实施例提供的基于YOLO算法的玻璃仪器检测方法的流程示意图,该方法包括步骤S110~S150;

步骤S110、采用多维度特征提取模块对输入图像进行不同维度的特征提取,得到多维度的原特征图;

本实施例中,玻璃仪器包括实验使用的玻璃器皿,玻璃器皿种类繁多,例如试剂瓶、烧杯、量筒等,此处不一一列举。由于玻璃仪器透明度高,实验操作过程中手持遮挡严重,使用目前常见的目标检测识别算法对透明目标特征提取能力弱,受环境和光线影响较大,难以准确检测识别。利用多维度特征提取模块对输入图像进行不同维度的特征提取,得到输入图像多个维度的原特征图。其中,维度可以是输入图像大小的8×8、16×16、32×32。此外,输入图像可以从实验桌的多方位摄像机获取,以得到不同视角的实验图像,方位可以是前视角、后视角、顶视角和侧视角。

在一实施例中,如图2所示,步骤S110之前,包括:

步骤S210、识别所述输入图像的原始尺寸,根据所述原始尺寸对所述输入图像进行等比例缩放;

步骤S220、对所述输入图像的数据结构和数据格式进行转化,得到张量类型的输入图像,且所述输入图像的像素点数据在-1到1之间。

本实施例中,对输入图片进行预处理,若输入图像格式为BGR,则交换通道为RGB;之后将输入图像等比例缩放到32的倍数,实际尺寸也可以是别的,为了缩小后续计算量与提高模型精度,优选尺寸大小为768×768。特征图大小均以768为基础,短边中缺损的部分用(127,127,127)像素填充,然后将whc排布的数据结构转化为cwh排布的数据,以利于GPU中CUDA单元并行加速计算,并将输入图像的数据格式由Int8转为float32,再除以255使输入图像的像素点数据在-1到1之间,减小数据溢出的可能性,最后将预处理完的输入图像数据类型转化为GPU中的张量类型。

在一实施例中,如图3所示,步骤S110包括:

步骤S310、将所述输入图像输入所述第一子模块进行特征提取,得到第一特征图;

步骤S320、将所述第一特征图输入第二子模块进行特征提取,得到第一维度特征图;

步骤S330、将所述第一维度特征图输入第三子模块进行特征提取,得到第二维度特征图;

步骤S340、将所述第二维度特征图输入第四子模块进行特征提取,得到第三维度特征图;

步骤S350、将所述第三维度特征图输入第五子模块进行特征提取,得到第四维度特征图,其中,所述第三维度特征图和第四维度特征图的维度相同。

本实施例中,多维度特征提取模块包括第一子模块、第二子模块、第三子模块、第四子模块及第五子模块。具体的,将输入图像输入第一子模块进行特征提取,得到第一特征图;将第一特征图输入第二子模块进行特征提取,得到第一维度特征图;将第一维度特征图输入第三子模块进行特征提取,得到第二维度特征图;将第二维度特征图输入第四子模块进行特征提取,得到第三维度特征图;将第三维度特征图输入第五子模块进行特征提取,得到第四维度特征图。

具体的,如图7所示,第一子模块由1个注意力卷积层(FOCUS)和1个CBL普通卷积层组成;第二子模块由2个卷积层(CBL)、2个跨局部卷积层(CSP)组成;第三子模块由1个卷积层(CBL)、1个跨局部卷积层(CSP)、1个混合池化层(MPM)和1个1×1空间可分离卷积组成;第四子模块由1个普通卷积层(CBL)、1个跨局部卷积层(CSP)、1个混合池化层(MPM)和1个1×1空间可分离卷积层组成;第五子模块由1个普通卷积层(CBL)、1个跨局部卷积层(CSP)、1个金字塔池化层(SPP)组成和1个1×1空间可分离卷积层组成。

进一步的,将第一特征图输入第二子模块进行特征提取,具体包括:第一特征图先经过2个卷积层(CBL)进行卷积处理,得到第一卷积结果,接着将一次卷积结果依次输入2个跨局部卷积层(CSP)进行卷积处理,得到第一维度特征图。将第一维度特征图输入第三子模块进行特征提取,具体包括:先经过卷积层(CBL)进行卷积处理,得到第二卷积结果,然后经过跨局部卷积层(CSP)对第二卷积结果进行卷积处理,得到第三卷积结果;接着输入混合池化层(MPM)对第三卷积结果进行池化,得到池化结果,最后经过1×1空间可分离卷积层对池化结果进行卷积处理,得到第二维度特征图。将第二维度特征图输入第四子模块进行特征提取,具体包括:将第二维度特征图先经过卷积层(CBL)进行卷积处理,得到第四卷积结果,然后经过跨局部卷积层(CSP)对第四卷积结果进行卷积处理,得到第五卷积结果;接着经过混合池化层(MPM)对第五卷积结果进行池化,得到池化结果,最后经过1×1空间可分离卷积层对池化结果进行卷积处理,得到第三维度特征图。将第三维度特征图输入第五子模块进行特征提取,具体包括:先经过卷积层(CBL)进行卷积处理,得到第六卷积结果,然后经过跨局部卷积层(CSP)对第六卷积结果进行卷积处理,得到第七卷积结果;接着输入金字塔池化层(SPP)对第七卷积结果进行池化,得到池化结果,最后经过1×1空间可分离卷积层对池化结果进行卷积处理,得到第四维度特征图。

其中,注意力卷积层(FOCUS)由3通道输入4切片成12通道,输出的特征图维度下降为原来的二分之一,再用一个卷积核为3×3扩充为1的卷积,以较小的计算量对输入的3通道下采样并获得足够的特征通道。另外,两个卷积层(CBL)中,一个卷积层(CBL)为3×3卷积+BN正则化+Leaky-Relu激活函数的组合;另一个卷积层(CBL)为3×3卷积+正则化+Hard-Swish激活函数组成。跨局部卷积层(CSP)将输入的特征图分成两部分,一部分使用一个卷积层(CBL)输出,一部分使用由多个CBS模块组成的残差结构模块输出,接着使用1×1卷积层使特征图通道数与输入时一致,最后将两部分特征图拼接到一起。金字塔池化层(SPP)由1×1、3×3、5×5、7×7区域最大池化实现,通过0值边缘填充使四种池化输出的特征图大小一致,将四种特征图拼接到一起。混合池化层(MPM)在SPP金字塔池化所用的4个最大池化的基础上,增加了一个1×7和一个7×1的均值池化,增加对长条形仪器的特征提取效果。

步骤S120、按低维度特征图与高维度特征图融合的规则对所述原特征图进行特征融合,得到多维度的特征融合图;

本实施例中,由于低维度特征图的感知野较小且特征描述能力弱,难以检测输入图像内的玻璃仪器,因此将高维度特征图与低维度特征图进行特征融合,得到多个维度的特征融合图。具体的,高维度特征图向上融合时,先经过一个带门控制的空间可分离力卷积(LCFI)进行卷积,再经过一个普通卷积(CSP),然后使用pixel-suffer上采样,将上采样的特征图拼接到低维度特征图,最后通过1*1空间可分离卷积将通道数调整到与低维度特征图一致,得到多个不同维度的特征融合图。

在一实施例中,如图4所示,步骤S120包括:

步骤S410、将所述第二维度特征图依次进行空间可分离卷积、跨局部卷积、上采样处理,得到与所述第一维度特征图维度相同的第一上采样特征图,将所述第一上采样特征图与第一维度特征图进行拼接,得到第一维度融合图;

步骤S420、将所述第三维度特征图进行上采样处理,得到第二上采样特征图,将所述第二上采样特征图与第二维度特征图进行特征融合,得到第二维度融合图;

步骤S430、对所述第四维度特征图与第五维度特征图进行特征融合,得到第三维度融合图。

本实施例中,将第二维度特征图依次进行空间可分离卷积、跨局部卷积、上采样处理,得到与第一维度特征图维度相同的第一上采样特征图,将第一上采样特征图与第一维度特征图进行拼接,得到第一维度融合图;将第三维度特征图进行上采样处理,得到第二上采样特征图,将第二上采样特征图与第二维度特征图进拼接,得到第二维度融合图;由于第四维度特征和第五位图特征的维度相同,因此直接对第四维度特征图与第五维度特征图进行拼接,得到第三维度融合图。

例如,现要将104×104特征图A、52×52特征图B和26×26特征图C进行特征融合。将104×104特征图A与52×52特征图B进行融合,对104×104特征图A依次进行空间可分离卷积、跨局部卷积、上采样处理,得到52×52特征图A,接着对52×52特征图A和52×52特征图B进行拼接,得到52×52特征融合图。将52×52特征图B与26×26特征图C进行融合,对52×52特征图B依次进行空间可分离卷积、跨局部卷积、上采样处理,得到26×26特征图B,接着对26×26特征图B和26×26特征图C进行拼接,得到26×26特征融合图。

步骤S130、通过YOLO算法对所述特征融合图进行分类预测、位置坐标回归和类别置信度计算,得到分类结果、回归结果和类别置信度,并根据所述分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失;

步骤S140、根据所述分类损失、回归损失和置信度损失对YOLO算法的模型参数进行更新,得到最优的YOLO算法;

步骤S150、将目标检测图像输入所述YOLO算法进行目标检测,得到检测结果。

本实施例中,通过YOLO算法对多个不同维度的特征融合图进行分类预测、位置坐标回归和类别置信度的计算,得到分类结果、回归结果和类别置信度;并根据分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失。基于分类损失、回归损失和置信度损失对YOLO算法的模型参数进行迭代更新,得到最优的YOLO算法;以最优的YOLO算法对目标检测图像进行目标检测,确定目标检测图像中对应的玻璃仪器。IOU就是用来度量目标检测中预测框与真实框的重叠程度,本实施例回归损失使用CIOU计算,CIOU是IOU的一种优化方式,解决了一般IoU无法直接优化两个框框没有重叠的部分。

在一实施例中,如图5所示,步骤S130包括:

步骤S510、按预设的锚框数量以及特征融合图的维度数量,生成多个候选框,其中候选框分为正样本、负样本、忽略样本三种;

步骤S520、对于每一个输入标签,与多个候选框进行比较,计算CIOU,并将CIOU最大的候选框作为正样本,并将正样本的候选框设为已分配且不参与下一个输入标签的计算;

步骤S530、对于每一个候选框,若其与所有输入标签的CIOU均小于预定阈值,则判定该候选框是负样本;

步骤S540、对于每一个候选框,若其与任一输入标签的CIOU大于预定阈值存在多个,则以其中CIOU最大的候选框作为正样本,其他则判定为忽略样本。

本实施例中,为了适应更多玻璃仪器的尺寸大小,预设5种尺寸的锚框。YOLO算法在三个不同维度的特征融合图上生成5个不同尺寸的锚框,按预设的锚框数量以及特征融合图的维度数量,生成多个候选框,其中候选框分为正样本、负样本、忽略样本三种。对于每一个输入标签,与多个候选框进行比较,计算CIOU,并将CIOU最大的候选框作为正样本,并将正样本的候选框设为已分配且不参与下一个输入标签的计算;对于每一个候选框,若其与所有输入标签的CIOU均小于预定阈值,则判定该候选框是负样本;对于每一个候选框,若其与任一输入标签的CIOU大于预定阈值存在多个,则以其中CIOU最大的候选框作为正样本,其他CIOU大于预定阈值但不是最大的则判定为忽略样本。预定阈值可由实际需要自定义设置。

例如,对于P1、P2、P3维度融合图的维度大小分别为96×96、48×48、24×24,5个锚框的长宽比分别为1:1、3:5、5:3、6:1、1:6,通过3个不同维度的维度融合图可生成(96×96+48×48+24×24)×5=60480个候选框。计算每一个输入标签与60480个候选框的CIOU,CIOU最大的为正样本,并将该候选框设为已分配,不再参与下一个输入标签的计算。对于所有输入标签与候选框的CIOU都小于一定阈值的,确定该候选框是负样本;CIOU大于阈值但不是最大值的,认为是忽略样本。由于候选框正样本数量远小于负样本,计算损失时需要提高正样本产生损失的权重,对于忽略样本的CIOU损失、置信度损失、分类损失,在计算整体损失时也将忽略。

本实施例中的网络结构进行三个维度的预测,每个尺度上每个单元格使用5个锚框来预测;接着计算每个候选框的交并比来衡量候选框与真实框的相关度,选择交并比最大的候选框来检测目标。在得到全部预测边框后,设置阈值将置信度较低的候选框去除,剩余候选框再通过非极大值抑制法得到目标检测框。

该方法通过对玻璃仪器图像进行多维度特征提取,得到多个不同维度的特征图,基于多个不同维度的特征图像按低维度特征图与高维度特征图融合的规则进行特征融合,以融合后的特征图像训练YOLO算法,提高YOLO算法对于目标的检测准确度。

本发明实施例还提供一种基于YOLO算法的玻璃仪器检测装置,该基于YOLO算法的玻璃仪器检测装置用于执行前述图像印章去除方法的任一实施例。具体地,请参阅图6,图6是本发明实施例提供的基于YOLO算法的玻璃仪器检测装置的示意性框图。该基于YOLO算法的玻璃仪器检测装置100可以配置于服务器中。

如图6所示,基于YOLO算法的玻璃仪器检测装置100包括特征提取模块110、特征融合模块120、损失计算模块130、参数更新模块140、检测模块150。

特征提取模块110,用于采用多维度特征提取模块对输入图像进行不同维度的特征提取,得到多维度的原特征图;

特征融合模块120,用于按低维度特征图与高维度特征图融合的规则对所述原特征图进行特征融合,得到多维度的特征融合图;

损失计算模块130,用于通过YOLO算法对所述特征融合图进行分类预测、位置坐标回归和类别置信度计算,得到分类结果、回归结果和类别置信度,并根据所述分类结果、回归结果和类别置信度进行损失计算,得到分类损失、回归损失和置信度损失;

参数更新模块140,用于根据所述分类损失、回归损失和置信度损失对YOLO算法的模型参数进行更新,得到最优的YOLO算法;

检测模块150,用于将目标检测图像输入所述YOLO算法进行目标检测,得到检测结。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的基于YOLO算法的目标检测方法。

在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如上所述的基于YOLO算法的目标检测方法。

本实施例中,由于实际应用中部分实验需要进行多轮,因此试题数据中还包括目标实验轮数,在完成所有评分依据的评分之后,会对当前完成的实验轮数进行检查,判断是否达到目标实验轮数,若实验轮数达到目标实验轮数则结束考试;若实验轮数未达到目标实验轮数则继续下一轮的基于YOLO算法的目标检测。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

相关技术
  • 基于YOLO算法的玻璃仪器检测方法、装置及相关设备
  • 基于YOLOv4-tiny算法的电网缺陷检测方法、装置、存储介质及电子设备
技术分类

06120113791787