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

一种复杂场景的牛脸检测方法及其检测系统

文献发布时间:2024-04-18 19:58:26


一种复杂场景的牛脸检测方法及其检测系统

技术领域

本发明涉及牲畜监测领域,具体而言,涉及一种复杂场景的牛脸检测方法及其检测系统。

背景技术

近年来,基于深度学习的目标检测技术已经成为计算机视觉领域内的研究热点,被广泛应用于日常生活安全、机器人导航、汽车无人驾驶、智能视频监控、交通场景检测及航天航空等领域。目标检测算法在牲畜的实时监测上初见成效,有力地推动了智慧畜牧的快速发展。只有准确地检测识别牲畜,才能为智能管理提供保障,同时也有利于把生态无人农场模式真正引入到农业领域的发展浪潮中。

当前,牛脸检测是实现牛场智能畜牧的关键步骤,牛脸检测的准确性将直接影响到实时监测的效果。传统的目标检测算法通过特征算子提取目标特征,其中以尺度不变性特征转换(Scale-Invariant Feature Transform,SIFT)、方向梯度直方图(Histogram ofOriented Gradient,HOG)等为代表。上述算法在检测精度和速度上存在一定缺陷,无法满足实时监测的要求。随着深度学习的不断发展,以RCNN、Fast-RCNN等为代表的两阶段检测算法和以YOLO、SSD等为代表的一阶段检测算法在检测精度和速度上取得了不错的效果。基于深度学习的牲畜目标检测和识别算法应用前景广阔,尤其在引入注意力机制后可以取得较好的效果。然而,当前的检测算法对于复杂环境下的牛脸检测效果并不理想,例如检测过程中,不同时刻的光线导致逆光现象,牛呈现出来的非静止状态导致模糊现象,以及养殖场的栏杆遮挡等因素,对于牛脸检测十分不利,目前提出的方法并不能综合以上因素,有效解决不同场景的应用问题。

有鉴于此,特提出本发明。

发明内容

有鉴于此,本发明公开了一种复杂场景下的牛脸检测方法,以轻量化深度网络YOLOV7-tiny为基础框架,提出一种复杂场景下基于双分支自适应注意力机制的牛脸检测算法,该算法可以有效针对逆光、遮挡和模糊这几种常见干扰。

具体地,本发明是通过以下技术方案实现的:

第一方面,本发明公开了一种复杂场景的牛脸检测方法,包括如下步骤:

设计了模糊度评价指标、逆光度评价指标以及遮挡率评价指标,并将三种评价指标通过模糊隶属度函数进行归一化,确定自适应权重系数;

基于YOLOV7-tiny在主干特征提取网络引入注意力机制CDAA,设计通道和空间注意力并行结构,并融合所述自适应权重系数;

采用所述自适应权重系数对YOLOV7-tiny损失函数进行优化。

第二方面,本发明公开了一种复杂场景的牛脸检测系统,包括:

设计模块:用于设计模糊度评价指标、逆光度评价指标以及遮挡率评价指标,并将三种评价指标通过模糊隶属度函数进行归一化,确定自适应权重系数;

融合模块:用于基于YOLOV7-tiny在主干特征提取网络引入注意力机制CDAA,设计通道和空间注意力并行结构,并融合所述自适应权重系数;

优化模块:用于采用所述自适应权重系数对YOLOV7-tiny损失函数进行优化。

第三方面,本发明公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述复杂场景的牛脸检测方法的步骤。

第四方面,本发明公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述复杂场景的牛脸检测方法的步骤。

本发明的方案针对复杂场景下牛脸检测精度低的问题,提出一种基于双分支自适应注意力机制的复杂场景下牛脸检测方法。核心思想是:首先针对模糊、逆光和遮挡三种干扰因素分别设计了评价指标,并将三种不同类型的评价指标通过模糊隶属度函数进行归一化,并确定自适应权重系数,真实反映目标所处场景的复杂性;之后,基于YOLOV7-tiny在主干特征提取网络引入一种新型注意力机制CDAA(Composite dual-branch adaptiveattention),设计通道和空间注意力并行结构,并融合自适应权重系数,有效提高网络在复杂场景下的特征提取能力,解决复杂场景下网络检测精度差的问题;最后,将图像场景评价指标引入损失函数,对大尺度网格损失函数的权重进行自适应调整,使网络在训练过程中更专注于数量较多的小型目标,从而提升网络整体的检测精度。该方法相比传统的目标检测方法更加准确,效果更好,有较好的实用价值。

尤其针对实际牧场中牛脸常常由于模糊、逆光和遮挡三种常见环境因素的严重干扰,导致现有轻量化算法检测精度低、鲁棒性差的情况,给出了实际的解决方案。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1AA-YOLOV7-tiny网络结构图;

图2拉普拉斯算子;

图3随机遮挡图像;

图4CDAA注意力模块结构图;

图5特征可视化结果对比图;

图6不同场景对比测试图;

图7多种场景混合对比测试图;

图8不同模型对比测试图;

图9为本发明实施例提供的一种计算机设备的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本发明提供了一种复杂场景的牛脸检测方法,包括如下步骤:

设计了模糊度评价指标、逆光度评价指标以及遮挡率评价指标,并将三种评价指标通过模糊隶属度函数进行归一化,确定自适应权重系数;

基于YOLOV7-tiny在主干特征提取网络引入注意力机制CDAA,设计通道和空间注意力并行结构,并融合所述自适应权重系数;

采用所述自适应权重系数对YOLOV7-tiny损失函数进行优化。

上述检测方法主要包括图像评价指标设计阶段以及目标检测阶段两部分构成,具体为:

A.图像评价指标设计阶段:

1)模糊度评价指标设计:模糊评价指标是由边缘检测决定的,图像通过拉普拉斯算子对x和y方向分别求二阶导数再经过求方差运算可以得到模糊评价系数,计算公式如下:

式中

2)逆光度评价指标:根据图像高对比度和高亮度的属性,可以把图像转换为灰度图,将灰度值处于0~30和220~255的像素统一转化为255,其余像素的灰度值则变为0。经过统计的方法可以得到灰度值大于0的像素个数,最后再与图像的总像素个数做比值就可以得到一个逆光度的评价指标,计算公式如下:

x

式中,Q

3)遮挡率评价指标:牧场中的养殖牛大多数情况下处于围栏之中,牛脸检测存在被栏杆遮挡的情况,通过计算遮挡面积与真实框面积的比值就可以得到遮挡率的评价系数,计算公式如下:

式中,S

4)基于模糊隶属度的评价指标:引入模糊隶属函数将三个评价指标进行归一化,获得该图像场景的综合评价指标。根据实际情况,图像的模糊度选用偏小型模糊隶属度函数,逆光度和遮挡率选用偏大型模糊隶属度函数。因此,设计如下计算公式如(5)-(7)所示:

公式(5)-(7)分别为模糊度、逆光度和遮挡率的模糊隶属度函数,当图像的模糊度小于a

B.目标检测阶段:

1)提出一种CDAA注意力机制

该注意力机制以ECA注意力机制为基础,引入空间位置信息,形成通道和空间并行的双分支注意力机制。同时,使用动态加权方法,为通道注意力机制和空间注意力机制两个分支赋予权重系数α和β,该权重系数代表两个注意力分支的加强程度,由模糊度、逆光度和遮挡率三个评价指标确定。通道注意力分支加入全局最大池化特征通道,通过融合全局平局池化和全局最大池化实现通道注意力分支,使网络可以用全局信息来选择性地强调信息特征,并抑制冗余特征,对检测目标边缘特征具有选择性地突出,可较好的解决图像模糊和遮挡问题。空间注意力分支可用来赋予特征信息不同位置的重要性,突出重要的空间位置,抑制空间信息冗余。为有选择性地区分通道注意力机制和空间注意力机制在不同复杂场景下的作用,使用两种机制自适应加权并行融合结构,实现对不同场景的应用。

本发明主要针对复杂场景下牛脸检测精度差的问题。本发明主要使用Pytorch框架构建的深度神经网络及使用Ubuntu系统搭建的深度学习实验平台,配合自建牛脸检测数据集验证算法的有效性。数据集分别取自Coco数据集中牛的图片371张,以及实际牧场拍摄的饲养牛图片202张,数据集总计573张图片,均采用labelimg进行目标标注。由于数据集较小,在YOLO算法中增加了随机数据增强算法,其中包括随机遮挡、翻转、放缩、色域变换、改变对比度和马赛克数据增强等方法对数据集进行扩充,扩充后的图片数量为5438。最后将数据集中处于复杂场景的图片选取300张作为测试集,剩余图片按照0.9:0.1的比例划分为训练集和验证集。

本发明算法使用目标检测的通用评价指标平均检测精度mAP(Mean AveragePrecision)、每秒帧率FPS、精准率(Precision)和召回率(Recall)作为模型的性能评价指标。其计算公式如下:

Precision是指预测正确的目标与预测结果的比值,Recall是指预测正确的目标与真实目标的比值,其中TP、FP和FN分别代表真阳性、假阳性和假阴性。通过计算出的Precision和Recall,以Precision为纵坐标,Recall为横坐标画出PR曲线,PR曲线下的面积即为AP值,由于本文的检测目标只有一类,只需计算AP即可。FPS代表了目标检测的速度,即每秒内处理图片的数量,可以通过检测一张图片所需的时间再取倒数得到FPS值。

现有技术中,当图像存在模糊、逆光和遮挡干扰时,小目标牛脸的检测精度受影响最大,而实际数据集图像中往往小型目标数量较多。尤其在实际场景中,牛脸往往占据图像尺寸较小,远距离拍摄的牛脸呈现出小目标物体的特征。当检测目标受到不同复杂度场景干扰时,YOLOV7-tiny算法各尺度网格损失函数的权重系数固定,无法针对大尺度网格的权重进行调整,这将导致不同复杂度场景下小目标牛脸的预测信息不精确。为此,本发明在YOLOV7-tiny损失函数的基础上对其进行优化,根据图像场景的复杂程度将大尺度网格损失函数的权重进行自适应调整,使网络在训练过程中更专注于数量较多的小型目标,从而提升网络整体的检测精度。

实施例

本实施例的方法实现了复杂场景下的牛脸检测,主要包括图像评价计算阶段、目标检测阶段两大部分,如图1为该算法整体架构图,算法的具体实施过程如下:

A.图像评价指标阶段:

步骤1:将制作的牛脸数据集按照训练集和测试集按照0.9:0.1的比例随机划分开,之后将训练集按照0.9:0.1的比例划分训练使用和验证使用。

步骤2:将图像输入网络中计算图像的三个评价指标,首先使用如附图2所示的拉普拉斯算子对x和y方向分别求二阶导数再经过求方差运算可以得到模糊评价系数;之后通过把图像转换为灰度图,将灰度值处于0~30和220~255的像素统一转化为255,其余像素的灰度值则变为0。经过统计的方法可以得到灰度值大于0的像素个数,最后再与图像的总像素个数做比值就可以得到逆光度的评价指标;最后,通过python语言为正常图像添加随机的人为遮挡,实际效果如附图3所示,针对640×640大小的图片,为了保证随机遮挡的有效性,使用python算法随机添加三条240×20的灰条来模拟栏杆遮挡。通过计算遮挡面积与真实框面积的比值就可以得到遮挡率的评价系数。

步骤3:引入模糊隶属函数将三个评价指标进行归一化,获得该图像场景的综合评价指标。

B.目标检测阶段:

步骤1:在原网络第一个Multi_Concat_Block后引入具有场景信息的CDAA注意力机制,既保留图像丰富的原始特征信息,避免在下采样过程丢失太多特征,又抑制复杂背景干扰,提高牛脸检测精度。CDAA模块原理图如附图4所示,首先在通道注意力分支引入全局平均池化特征通道,具体计算公式如下:

ω

式(11)中z∈R

s

ω

GMP为全局最大池化,与全局平均池化特征通道的计算过程同理,

步骤2:为能从复杂背景下区分出检测目标,需要对目标中的特征进行聚焦,增加特征之间的判别性,为此,引入空间注意力分支。该分支同样使用通道最大池化和通道平均池化并行结构,在空间维度H×W中沿着通道方向进行压缩,将提取到的通道特征进行特征拼接,得到不同通道特征的融合信息,使提取的特征信息更全面。之后通过卷积将多通道特征压缩为单通道特征,有效地避免通道信息对空间注意力分支产生的干扰。最后将输入特征与得到的空间权重信息相乘形成新的有效特征描述符。空间注意力分支的计算公式如下:

p

式(18)中F

步骤3:在进行特征融合之前,引入自适应权重系数α和β,分别对通道注意力分支和空间注意力分支的权重进行加强。其中α是对通道注意力分支的加权,由模糊度和遮挡率确定;β是对空间注意力分支的加权,由逆光度确定,可加强区域特征,抑制具有强背景的逆光因素。具体计算公式如下:

公式(21)中ph

为解释本发明算法的有效性,通过热力图将中间特征层可视化,输出结果如附图5所示。图中权值大小以颜色(红、黄、绿、蓝)进行区分,颜色越深代表该区域的权值越大,越受到网络关注。在引入CDAA模块后,牛脸附近的深色区域更为密集,周围环境的颜色基本变为绿色和蓝色,地面和牛身体上的红色和黄色区域大幅减少。由此,说明网络加入CDAA模块后可以将网络的关注点集中到牛脸附近,抑制了环境因素的干扰,从而表明了本发明算法的有效性。

步骤4:为使网络在训练过程中更专注于数量较多的小型目标,从而提升网络整体的检测精度。将YOLOV7-tiny损失函数进行优化,具体计算过程如下:

ε=ph

公式(25)中的ε为优化系数,由图像评价指标的权重系数ph

实验例1

为了验证本发明实施例算法的有效性首先在特定数据集上进行消融实验来验证效果,实验结果如表1。

表1 AA-YOLOV7-tiny网络消融实验

由表1可知,本发明的方案经过改进之后检测精度AP值有了明显的提升,尤其是增加了CDAA注意力模块,并进行损失函数优化后,检测精度达到了89.58%,检测速度FPS值也与原网络YOLOV7-tiny非常接近。

为验证本发明方案的算法鲁棒性,选取不同场景以及多种场景同时存在的样本进行测试,其中横排为同一测试样本,竖列为同一检测算法,黄圈与蓝圈圈中的位置为未检测到的牛脸和漏检的牛脸。不同场景的对比测试结果如附图6和附图7所示。附图6第一组图中由于远处存在严重的遮挡和模糊干扰,没有使用本文算法前漏检较多。附图6第二组图片由于远处存在严重逆光干扰,附图6(a)无法检测到远方牛脸;附图6(b)出现误检,将牛尾检测为牛脸;附图6(c)虽然同时增加了ECA注意力和空间注意力,但仍出现两处误检。相比之下,附图6(d)在两种不同场景下的检测效果最佳。由附图7对比结果可知,YOLOV7-tiny的检测效果最差,加入ECANet后,附图7(b)第一组图检测到了栏杆遮挡的牛脸,但还是存在漏检,第二组图出现了将牛背部误检为面部的情况。同时加入ECANet和空间注意力机制后,检测效果有一定提升,附图7(b)第一组图未检测到的牛脸,附图7(c)中可以检测到,但第二组图仍存在误检情况。经过对比,可以看出图附7(d)中针对复杂场景分别加强了相应注意力分支,并优化损失函数,取得了较好的检测效果,有效地检测出模糊逆光和栏杆遮挡条件下的小目标牛脸。

实验例2

为进一步对实施例的模型性能进行评估,分别将实施例算法AA-YOLOV7-tiny与YOLOV7-tiny同类型的YOLOV5-s、YOLOX-s、YOLOV7-tiny+CBAM以及MobileNetv2-SSD算法进行性能对比。对比结果如表2所示,实际检测效果如附图8所示。

表2不同模型性能对比结果

由表2可知,本发明实施例的AA-YOLOV7-tiny算法检测精度最高,这是因为本算法引入的CDAA注意力模块可以有效地抑制牛场复杂环境的噪声干扰。由附图8(a)可知,MobileNetv2-SSD算法模型虽然模型最小,但检测效果最差,第一组图中远处模糊的小目标牛脸,第二组栏杆遮挡的牛脸及第三组远处逆光、遮挡和模糊同时存在的牛脸都没有检测到。由附图8(b)和(c)可以发现,同系列YOLO算法,由于网络参数量和训练模型的增大,对复杂环境有一定的抗干扰性,但从第二组图中可以看出,这两种算法对于严重遮挡的牛脸检测效果不佳,而且YOLOV5-s在第一组和第三组的模糊和遮挡牛脸均发生漏检。由附图8(d)可见,YOLOV7-tiny算法加入传统CBAM注意力机制后,可以应对部分复杂场景,但对于遮挡场景的鲁棒性太差,第二组和第三组的遮挡牛脸均未检测到。相比前四种模型,本发明提出的AA-YOLOV7-tiny,不仅参数量和模型大小低于YOLOV5-s和YOLOX-s,而且由于引入了CDAA注意力模块,对于复杂环境的牛脸检测具有更好的鲁棒性,使检测精度也高于其他模型。

本发明除了提供了一种复杂场景的牛脸检测方法,还提供了与所述牛脸检测方法所对应的牛脸检测系统,包括:

设计模块:用于设计模糊度评价指标、逆光度评价指标以及遮挡率评价指标,并将三种评价指标通过模糊隶属度函数进行归一化,确定自适应权重系数;

融合模块:用于基于YOLOV7-tiny在主干特征提取网络引入注意力机制CDAA,设计通道和空间注意力并行结构,并融合所述自适应权重系数;

优化模块:用于采用所述自适应权重系数对YOLOV7-tiny损失函数进行优化。

图9是本发明公开的一种计算机设备的结构示意图。参考图9所示,该计算机设备包括:输入装置63、输出装置64、存储器62和处理器61;所述存储器62,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器61执行,使得所述一个或多个处理器61实现如上述实施例提供的一种牛脸检测方法;其中输入装置63、输出装置64、存储器62和处理器61可以通过总线或者其他方式连接,图9中以通过总线连接为例。

存储器62作为一种计算设备可读写存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例所述的一种牛脸检测方法对应的程序指令;存储器62可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等;此外,存储器62可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件;在一些实例中,存储器62可进一步包括相对于处理器61远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置63可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入;输出装置64可包括显示屏等显示设备。

处理器61通过运行存储在存储器62中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理。

本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的牛脸检测方法,存储介质是任何的各种类型的存储器设备或存储设备,存储介质包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等;存储介质可以还包括其它类型的存储器或其组合;另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统;第二计算机系统可以提供程序指令给第一计算机用于执行。存储介质包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。

最后应说明的是:虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

相关技术
  • 一种复杂场景的缺陷在线检测方法及系统
  • 一种场景中复杂事件的检测方法、系统、设备及存储介质
技术分类

06120116489659