基于自注意力时空特征融合的吮乳仔猪计数方法

文档序号:33110185发布日期:2023-02-01 02:02阅读:39来源:国知局
基于自注意力时空特征融合的吮乳仔猪计数方法

1.本发明涉及视频图像行为识别技术领域,尤其涉及一种结合深度网络密度估计和自注意力时空特征融合的实现吮乳行为的仔猪数量计数方法。


背景技术:

2.由于母猪乳头不足、乳头疾病、哺乳区域有限、仔猪内部竞争和仔猪患病等,母猪哺乳时并非所有仔猪同时表现出吮乳行为,而分析参与吮乳的仔猪数量有利于了解仔猪的营养摄取情况,并从仔猪角度评估母猪的母性行为能力。通过人工观察仔猪吮乳行为,来判断仔猪营养摄入和健康状况及母猪母性优劣,耗时耗力且具有时效滞后性,难以实现规模养殖模式下吮乳行为的长时间、连续性统计分析。利用计算机视觉技术自动分析吮乳的仔猪个数不仅节约人力,而且降低人为判断误差。
3.相关的现有技术主要利用计算机视觉识别母猪的哺乳行为,并非从仔猪的角度分析参与吮乳的仔猪数量,不能直接用于仔猪营养摄取情况的评估。
4.当前基于计算机视觉的动物行为识别方法主要关注行为发生与否,而不能直接由密度分布预测发生某种行为的动物个数。在限位分娩栏、自由分娩栏场景下,光线复杂(如保温灯干扰、光线昏暗等)、仔猪拥挤黏连及严重的母猪及栏杆遮挡,使其逐个吮乳行为个体检测甚为困难。
5.因此,如何提供一种高效的、直接的吮乳仔猪计数方法是本领域技术人员亟需解决的问题。


技术实现要素:

6.有鉴于此,本发明提供了提供一种基于自注意力时空特征融合的吮乳仔猪计数方法,能够通过直接预测吮乳仔猪数量的方式,为评估仔猪营养摄取情况提供关键信息。
7.为了实现上述目的,本发明采用如下技术方案:
8.一种基于自注意力时空特征融合的吮乳仔猪计数方法,包括以下步骤:
9.s1、采集包含母猪和若干头仔猪的视频;
10.s2、构建centernet网络和flownet网络;利用所述centernet网络检测视频中母猪处于侧卧姿态的视频片段提取关键帧序列,检测侧卧母猪包围框的延伸区域为感兴趣区域,并利用所述flownet网络获取所述关键帧序列对应的光流图像序列;
11.s3、利用双流cnn分别对关键帧序列中的rgb图像和光流序列提取空间特征和时域特征,进而利用空间转换向量和时域转换向量将提取到的空间特征和时域特征转化为空间特征向量和时域特征向量,将空间特征向量和时域特征向量融合获得求和特征向量;
12.s4、将融合特征向量输入融合transformer后输出的向量,作为时域transforme和空间transformer的query,联合所述时域特征向量和空间特征向量分别输入时域transformer和空间transformer,输出的向量分别与所述时域特征向量和空间特征向量进行求和归一化处理后分别输入前馈网络,所述前馈网络的输出分别与所述时域特征向量和
空间特征向量再次求和归一化处理,分别输出的列向量、行向量进而构建自注意力矩阵;
13.s5、将双流cnn输出的空间特征和时域特征拼接获得融合时空特征,融合时空特征与自注意力矩阵进行元素积操作,得到自注意力时空特征图;
14.s6、自注意力时空特征图输入吮乳仔猪中心点回归分支输出吮乳仔猪的位置估计,以及自注意力时空特征图输入吮乳仔猪数量回归分支输出参与吮乳仔猪数量的估计。
15.优选的,所述s2中,利用所述centernet网络检测视频中母猪处于侧卧姿态的视频片段提取关键帧序列,检测侧卧母猪包围框的延伸区域为感兴趣区域具体包括如下步骤:
16.s211、将视频图像输入预设母猪定位及其姿态分类网络centernet,如果母猪姿态被判断为侧卧,则该帧图像属于关键图像序列且母猪检测结果会传入s212;如果被判断为非侧卧,则过滤该帧视频图像;
17.s212、将侧卧母猪检测包围框长宽边向两头延伸同样距离,延伸后的范围作为感兴趣区域。
18.优选的,所述s3具体包括如下步骤:
19.s31、选取每个关键帧序列中的rgb图像输入空间卷积支流网络,提取关键图像序列的空间特征;关键帧序列对应的所有光流序列输入时域卷积网络支流网络,提取关键图像序列的时域特征;
20.s32、分别利用可学习时域转换向量和空间转换向量与s31提取的所述空间特征和时域特征相乘,获得空间特征向量和时域特征向量,并分别叠加位置编码;
21.s33、对s32获得的叠加位置编码后的空间特征向量和时域特征向量求和获得融合特征向量。
22.优选的,所述s4具体包括如下步骤:
23.s41、将所述融合特征向量输入融合transformer后输出的向量作为时域和空间transformer的query;
24.s42、将所述时域特征向量和空间特征向量分别作为时域transformer和空间transformer的key及value;
25.s43、时域transformer和空间transformer的输出分别与时域特征向量和空间特征向量相加并归一化后,分别输入时域前馈网络和空间前馈网络,所述时域前馈网络和空间前馈网络均由两层全连接层构成;
26.s44、所述时域前馈网络和空间前馈网络的输出分别与时域特征向量和空间特征向量相加并归一化,分别输出列向量和行向量,列向量与行向量相乘获得自注意力矩阵。
27.优选的,所述s5具体包括如下步骤:
28.s51、将双流cnn输出的空间特征和时域特征按通道拼接,获得所述融合时空特征;
29.s52、融合时空特征与所述自注意力矩阵进行元素积得到自注意力时空特征图。
30.优选的,所述s6中,自注意力时空特征图输入吮乳仔猪中心点回归分支输出吮乳仔猪的位置估计,具体包括如下步骤:
31.s611、以训练视频帧的吮乳仔猪包围框中心点坐标作为目标位置,以该目标位置作为高斯核中心,以包围框最小外接圆半径作为高斯核半径,建立该目标的空间位置高斯概率分布,将所有目标的空间位置高斯概率分布叠加获得视频图像帧对应的真实吮乳仔猪中心点概率热图,用于模型训练,所述吮乳仔猪中心点回归分支损失函数
[0032][0033]
其中n代表热图中目标个数,y
xyc
代表真实热图上的数值,代表预测热图上的数值,α=1且β=2;
[0034]
s612、将从待测视频图像得到的自注意力时空特征图输入吮乳仔猪中心点回归分支,获得吮乳仔猪中心点概率热图,通过最大池化操作筛选出备选中心点的坐标,最终输出概率大于阈值p的吮乳仔猪中心点坐标。
[0035]
优选的,所述s6中,自注意力时空特征图输入吮乳仔猪数量回归分支输出吮乳仔猪数量的估计具体包括如下步骤:
[0036]
s621、利用两层卷积网络对训练视频帧的自注意力时空特征图继续提取特征,以吮乳仔猪包围框中心点坐标作为高斯二维分布中心,生成真实吮乳仔猪密度高斯分布热图fg,用于模型训练,所述吮乳仔猪数量回归分支网络的损失函数l
number
为网络预测热图f
p
和fg的欧氏距离损失:
[0037]
l
number
=∑||f
p-fg||2[0038]
将所述l
centerpoint
和l
number
求和作为训练吮乳仔猪计数网络的最终损失函数l:
[0039]
l=l
centerpoint
+l
number

[0040]
s622、将待测视频图像中提取到的自注意力时空特征图输入吮乳仔猪数量回归分支网络,将所有预测的吮乳仔猪密度分布热图元素相加获得的数值,作为输入视频片段内表现出吮乳行为仔猪个数,从而完成吮乳仔猪计数。
[0041]
本发明还提供了一种计算机可读介质,所述可读介质存储有指令,当所述指令在所述可读介质上执行时,使得所述可读介质执行所述的基于自注意力时空特征融合的吮乳仔猪计数方法。
[0042]
本发明还提供了一种电子设备,包括存储器和处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现所述的基于自注意力时空特征融合的吮乳仔猪计数方法。
[0043]
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于自注意力时空特征融合的吮乳仔猪计数方法,首先利用centernet检测视频帧中侧卧母猪,以获取视频中吮乳仔猪关键帧和感兴趣区域,克服非吮乳仔猪运动对感兴趣区域时空特征提取的干扰;然后,用时空双流卷积网络提取关键帧视频片段的时空特征,将时空特征转化为时空特征向量,输入时域、空间和融合transformer,获得自注意力矩阵,自注意力矩阵与融合的时空特征进行元素积获得自注意力时空特征图,自注意力时空特征图输入吮乳仔猪数量回归分支完成吮乳仔猪计数。本发明充分利用多路transformer进行时空双模态数据特征融合,并结合深度网络密度评估,实现了高效的吮乳仔猪数量回归。
[0044]
具有以下有益效果:
[0045]
(1)提出利用可学习的空间转换向量和时域转换向量,将空间特征矩阵和时域特征矩阵转化为特征向量的方法,使得时空转换向量能够基于数据驱动方式转换为特征向量,避免了transformer的输入需要对输入二维矩阵像素拉直拼接的传统做法;
[0046]
(2)基于时域、空间和融合transformer的自注意力时空特征图获取方法,提升了仔猪吮乳行为时空特征表达能力;
[0047]
(3)创新地利用热图的方式直接表达了视频段内发生吮乳行为仔猪的数量,避免了通过多目标跟踪的方法逐个判断仔猪吮乳行为从而获得吮乳仔猪数量的间接方法。
附图说明
[0048]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0049]
图1为本发明提供的吮乳仔猪计数深度网络结构图;
[0050]
图2为本发明提供的自注意力时空特征融合网络结构图;
[0051]
图3为本发明提供的基于自注意力时空特征融合的吮乳仔猪计数方法流程图;
[0052]
图4为本发明提供的训练吮乳仔猪计数网络损失函数变化图;
[0053]
图5为本发明提供的吮乳仔猪计数网络预测结果热图;
[0054]
图6为本发明提供的测试集离散样本吮乳仔猪数量预测结果和真实值对比效果图;
[0055]
图7为本发明提供的连续视频测试结果图。
具体实施方式
[0056]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0057]
本发明实施例第一方面公开了一种基于自注意力时空特征融合的吮乳仔猪计数方法,该方法基于整体吮乳仔猪计数网络架构执行,首先利用centernet检测视频帧中侧卧母猪,以获取视频帧吮乳仔猪关键帧和感兴趣区域,克服非吮乳仔猪运动对感兴趣区域时空特征提取的干扰;然后,将时空双流卷积网络提取关键帧视频片段的时空特征转化为时空特征向量,输入时域、空间和融合transformer,获得自注意力矩阵,自注意力矩阵与融合的时空特征进行元素积获得自注意力时空特征图,自注意力时空特征图输入吮乳仔猪数量回归分支完成吮乳仔猪计数。本发明充分利用了基于时空双模态数据特征的多路transformer自注意力焦点,提取高效自注意力时空特征图,实现了直接快速的吮乳仔猪计数,从而解决了人工评估仔猪吮乳频次难的问题。如图1所示,包括如下步骤:
[0058]
s1、采集包含母猪和若干头仔猪的视频;
[0059]
s2、构建centernet网络和flownet网络;利用centernet网络检测视频中母猪处于侧卧姿态的视频片段提取关键帧序列,检测侧卧母猪包围框的延伸区域为感兴趣区域,并利用flownet网络获取关键帧序列对应的光流图像序列;
[0060]
s3、利用双流cnn分别对关键帧序列中的rgb图像和光流序列提取空间特征和时域特征,进而利用空间转换向量和时域转换向量将提取到的空间特征和时域特征转化为空间
特征向量和时域特征向量,将空间特征向量和时域特征向量融合获得求和特征向量;
[0061]
s4、将融合特征向量输入融合transformer后输出的向量,作为时域transforme和空间transformer的query,联合所述时域特征向量和空间特征向量分别输入时域transformer和空间transformer,输出的向量分别与所述时域特征向量和空间特征向量进行求和归一化处理后分别输入前馈网络,所述前馈网络的输出分别与所述时域特征向量和空间特征向量再次求和归一化处理,分别输出的列向量、行向量进而构建自注意力矩阵;
[0062]
s5、将双流cnn输出的空间特征和时域特征拼接获得融合时空特征,融合时空特征与自注意力矩阵进行元素积操作,得到自注意力时空特征图;
[0063]
s6、自注意力时空特征图输入吮乳仔猪中心点回归分支输出吮乳仔猪的位置估计,以及自注意力时空特征图输入吮乳仔猪数量回归分支输出参与吮乳仔猪数量的估计。
[0064]
在一个实施例中,进行视频图像检测之前,首先构建网络模型的训练集和测试集,包括构建母猪检测数据集d1、吮乳仔猪计数网络数据集d2、光流生成网络flownet的训练集kitti。具体执行步骤如下:
[0065]
s11、数据采集:在猪舍正上方安装拍摄俯视视频的图像采集系统,采集包含1只母猪和若干头仔猪吮乳视频,视频采集帧率为f;
[0066]
s12、样本剪辑:将视频剪辑为a秒等时长的视频片段;
[0067]
s13、标注数据:利用目标检测中的包围框定位母猪的位置和躯体范围,处于侧卧姿态的母猪视频图像分类标签为“1”否则为“0”,每个a秒时长视频片段中用包围框定位吮乳持续a秒的仔猪位置;
[0068]
s14、通过竖直翻转、水平翻转和180
°
旋转扩增训练数据集。
[0069]
其中,具有处于侧卧姿态的母猪视频图像分类标签及母猪包围框的视频数据构成母猪检测数据集d1;具有吮乳持续a秒的仔猪位置定位包围框的视频数据构成吮乳仔猪计数网络数据集d2。
[0070]
在一个实施例中,s2中,利用centernet网络检测视频中母猪处于侧卧姿态的视频片段提取关键图像帧序列,检测侧卧母猪包围框的延伸区域为感兴趣区域具体包括如下步骤:
[0071]
s211、将视频图像输入预设母猪定位及其姿态检测网络centernet,如果母猪姿态被判断为侧卧,则该图像属于关键图像序列且母猪检测结果会传入s212;如果被判断为非侧卧,则过滤该帧视频图像;
[0072]
s212、将侧卧母猪检测包围框长宽边向两头延伸同样距离,延伸长度分别为长宽边长的1/2,延伸后的包围框范围作为感兴趣区域,感兴趣区域以外图像像素值均设置为0。
[0073]
本实施例中,执行s211之前还包括利用d1训练centernet的步骤。
[0074]
在一个实施例中,s2中,利用flownet网络获取关键图像帧序列对应的光流图像序列具体包括如下步骤:
[0075]
s221、利用kitti公共数据集训练flownet;
[0076]
s222、将所述关键图像序列输入光流计算网络flownet,对关键图像序列提取哺乳母猪及仔猪的光流图像序列。
[0077]
在一个实施例中,如图2所示,s3具体包括如下步骤:
[0078]
s31、每个剪辑视频片段共有a
×
f帧,其中第1、1/2
×a×
f和a
×
f帧rgb图像输入空
间卷积支流网络resnet-50,提取关键图像序列空间特征;视频片段对应的所有光流序列输入时域卷积网络支流resnet-50,提取关键图像序列时域特征;
[0079]
s32、分别利用可学习时域转换向量和空间转换向量与s31提取的空间特征和时域特征相乘,获得空间特征向量和时域特征向量;可学习时域转换向量和空间转换向量可以将二维矩阵转换为一维向量,如s31输出的空间特征为h
×
w维度,则可学习的空间转换向量维度为w
×
1,提取到的空间特征向量为[h
×
w][w
×
1]=[h
×
1];同理可得时域特征向量,并分别叠加位置编码。
[0080]
s33、对s32获得的叠加位置编码后的空间特征向量和时域特征向量求和获得融合特征向量。
[0081]
在一个实施例中,s4具体包括如下步骤:
[0082]
s41、将融合特征向量输入融合transformer后输出的向量作为时域和空间transformer的query;
[0083]
s42、将时域特征向量和空间特征向量分别作为时域transformer和空间transformer的key及value;
[0084]
s43、时域transformer和空间transformer的输出分别与时域特征向量和空间特征向量相加并归一化后,分别输入时域前馈网络和空间前馈网络,时域前馈网络和空间前馈网络均由两层全连接层构成;
[0085]
s44、时域前馈网络和空间前馈网络的输出分别与时域特征向量和空间特征向量相加并归一化,分别输出列向量和行向量,列向量与行向量相乘获得自注意力矩阵。
[0086]
在一个实施例中,s5具体包括如下步骤:
[0087]
s51、将双流cnn输出的空间特征和时域特征按通道拼接,获得融合时空特征;
[0088]
s52、融合时空特征与自注意力矩阵进行元素积得到自注意力时空特征图。
[0089]
在一个实施例中,如图3所示,s6中,自注意力时空特征图输入吮乳仔猪中心点回归分支网络输出吮乳仔猪的位置估计具体包括如下步骤:
[0090]
s611、对于训练集中的标注数据中的一个吮乳仔猪,以第1/2
×a×
f帧的吮乳仔猪包围框中心点坐标作为目标位置,以该目标位置作为高斯核中心,以包围框最小外接圆半径作为高斯核半径,建立该目标的空间位置高斯概率分布,将所有目标的空间位置高斯概率分布叠加获得视频图像帧对应的真实中心点概率热图,用于模型训练,吮乳仔猪中心点回归分支损失函数
[0091][0092]
其中n代表热图中目标个数,y
xyc
代表真实热图上的数值,代表预测热图上的数值,α=1且β=2时效果最优;
[0093]
s612、将从待测视频图像得到的自注意力时空特征图输入吮乳仔猪中心点回归分支,获得吮乳仔猪中心点概率热图,通过3
×
3最大池化操作筛选出疑似中心点的坐标作为备选,最终输出概率大于阈值p=0.5的吮乳仔猪中心点坐标。
[0094]
在一个实施例中,如图3所示,s6中,自注意力时空特征图输入吮乳仔猪数量回归分支网络输出参与吮乳仔猪数量的估计具体包括如下步骤:
[0095]
s621、利用两层卷积网络对训练视频帧的自注意力时空特征图继续提取特征,以第1/2
×a×
f帧的吮乳仔猪包围框中心点坐标作为高斯二维分布中心,生成真实吮乳仔猪密度高斯分布热图fg,用于模型训练,吮乳仔猪数量回归分支网络的损失函数l
number
为网络预测热图f
p
和fg的欧氏距离损失:
[0096]
l
number
=∑||f
p-fg||2[0097]
将l
centerpoint
和l
number
求和作为训练整体吮乳仔猪计数网络的最终损失函数l:
[0098]
l=l
centerpoint
+l
number

[0099]
训练过程的损失函数如图4所示。
[0100]
s622、将待测视频图像中提取到的自注意力时空特征图输入吮乳仔猪数量回归分支网络,将所有预测的吮乳仔猪密度分布热图元素相加获得的数值,作为输入视频片段内表现出吮乳行为仔猪个数,从而完成吮乳仔猪计数。
[0101]
本发明实施例第二方面还公开了一种计算机可读介质,可读介质存储有指令,当指令在可读介质上执行时,使得可读介质执行第一方面公开的基于自注意力时空特征融合的吮乳仔猪计数方法。
[0102]
本发明实施例第三方面还公开了一种电子设备,包括存储器和处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现第一方面公开的基于自注意力时空特征融合的吮乳仔猪计数方法。
[0103]
下面给出利用本发明实施例测试集进行吮乳仔猪数量预测的测试结果:
[0104]
利用相关系数r2和均方误差mse作为数据集d2中的测试集的评价指标,其定义如下:
[0105][0106][0107]
式中,n表示测试样本总数量,yi、和分别代表吮乳仔猪数量、预测值和平均值。
[0108]
如图5-7所示,测试集包含250个离散样本和一段连续的哺乳母猪及仔猪视频。图5为网络输出吮乳仔猪数量回归热图,网络能够明显区分吮乳猪群和非吮乳猪群;图6中的r2和mse分别为0.96和1.08;图7中吮乳仔猪真实数量和预测数量非常接近,反映了本发明的有效性。
[0109]
综上所述,在采用以上方案后,本发明为猪场环境下发生吮乳行为的仔猪数量估计提供了新方法,能有效解决传统人工监测方式耗时、耗力的问题,克服规模化生猪养殖场景下仔猪拥挤黏连且易被遮挡的缺点,实现智能化的吮乳仔猪计数方法,为自动化养殖中仔猪营养摄入监控提供技术参考。
[0110]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0111]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。
对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1