APP下载

基于改进YOLO v5s的经产母猪发情检测方法研究

2023-03-07薛鸿翔沈明霞刘龙申陈金鑫单武鹏孙玉文

农业机械学报 2023年1期
关键词:发情期公猪发情

薛鸿翔 沈明霞 刘龙申 陈金鑫 单武鹏 孙玉文

(1.南京农业大学工学院, 南京 210031; 2.农业农村部养殖装备重点实验室, 南京 210031;3.南京农业大学人工智能学院, 南京 210031; 4.南京农业大学动物科技学院, 南京 210095)

0 引言

能繁母猪的存栏量直接关系到我国生猪养殖产业的发展,发情检测是能繁母猪繁殖工作的重要技术环节。提高发情检测的及时性和准确性,确保发情母猪能够适时配种,减少空怀母猪数量,提高能繁母猪的利用率,是提升猪场生产效益的关键[1-3]。

目前,母猪发情检测主要采取人工试情法,通过刺激母猪肋部、腹部、外阴部,对母猪的静立反应状态进行人工判断,该方法费时费力,并且严重依赖于配种人员的查情经验[4-6],难以满足规模化养殖对母猪发情状态实时检测的需求。

自动检测母猪发情状态已逐渐成为研究热点,OSTERSEN等[7]采用射频识别技术统计母猪通过“瞭望窗”接触公猪的频率,以24 h作为识别时间,发情检测的错误率为95.0%,灵敏度为60.7%,特异性为98.8%。CORNOU等[8]采用自动饲喂器统计母猪的采食频次,建立单变量动态线性模型,采用此方法识别母猪发情的灵敏度为75.0%,特异性为95.4%。庄晏榕等[9]根据大白母猪试情时双耳竖立的特征,建立基于卷积神经网络(CNN)的大白猪发情行为识别方法,并设定发情时双耳竖立时间阈值,以鉴定母猪是否发情,但该方法需要公猪试情,实现自动化检测难度较大。LEI等[10]将母猪双耳竖立时间、母猪和假猪鼻的交互行为作为发情特征,利用神经网络模型对大白母猪发情行为进行分类。现有的发情检测方法大都需要公猪参与,且存在检测耗时长、错误率高、灵敏性低等问题,难以满足实际养殖的管理需求。

为进一步提高经产母猪发情自动检测速度和准确率,本文提出一种基于改进YOLO v5s的母猪发情检测方法。首先,对获取的仿生公猪试情的数据进行处理,建立经产母猪发情检测数据集;其次,通过稀疏训练、迭代通道剪枝、模型微调等方式重构模型,实现模型压缩与加速;最后,构建基于改进YOLO v5s的母猪交互行为识别模型,以此模型为基础,对仿生公猪试情的视频数据进行分类,以期实现养殖环境下母猪发情状态的精准检测。

1 数据集构建

1.1 实验数据采集

经产母猪视频数据于2021年9月15日—11月12日在江苏省盐城市射阳县黄沙港镇尚宝牧业第三畜牧场内采集。本研究的实验对象为36头体况相近、繁殖胎次相同的经产大长母猪(大约克公猪与长白母猪杂交所繁育的二元母猪),经产母猪在哺乳期结束后由产床转移至限位栏内。母猪妊娠舍内部环境温度范围为24~27℃,相对湿度66%~82%,湿帘与风机保持24 h常开。连续采集7 d视频数据,实验期间上下午各进行一次人工查情,并测定母猪的雌二醇与孕酮激素含量变化情况[11]。

数据采集系统主要由仿生公猪、巡检设备、网络传输模块与数据存储模块4部分组成,如图1所示。巡检设备搭载分辨率为2 560像素×1 440像素的海康威视红外摄像头(DS-2CD3346WD-I型),摄像头距地高度2.3 m,仿生公猪搭载公猪气味剂释放设备(内置Boarmate公猪信息素)和公猪发声器[12],每次试情时间为3 min,摄像头采集的视频通过网络传输模块、海康威视网络硬盘录像机(DS-8832N-K8-8×6T型)等设备存储至硬盘,可通过服务器端实时查看。

图1 视频采集示意图Fig.1 Sketch of video acquisition

1.2 数据集制作

实验数据集的制作包括图像获取、图像筛选、图像标注、Mosaic数据增强、数据集格式化等过程[13]。

(1)图像获取:从网络硬盘录像机中截取仿生公猪3 min试情的监控视频片段,采用Python脚本文件将视频截取为.jpg格式的图像,所截图像的时间间隔为1 s。

(2)图像筛选:剔除质量较差的图像,此类图像多拍摄于极端恶劣天气,同时删除相似度过高的图像,最终得到9 820幅有效图像。

(3)图像标注:使用开源软件LabelImg对目标区域进行人工标注,标注的类别包括“sow”、“boar”、“contact”3类。标注完成后,保存成后缀名为.xml格式的文件,文件名与图像名保持一致。

(4)Mosaic数据增强:根据母猪与仿生公猪交互行为在图像中出现位置的不确定性以及交互区域光照变化的特点,为减轻过拟合,扩大模型的应用场景,增强模型鲁棒性,采用Mosaic数据增强方式将原始图像进行数据扩充,本文采用几何变形、随机剪接、光照与色彩调节等方式,并随机添加边缘空白,Mosaic数据增强后的效果如图2所示[14]。

图2 Mosaic数据增强效果Fig.2 Mosaic data augment effect

(5)数据集格式化:以PASCAL VOC标准格式对数据集进行格式化,将原图置于images目录下,将相应的标签文件置于Labels文件夹下,运行voc-YOLOv5.py脚本文件在文件夹Main目录下生成包含图像名称的Train.txt、Test.txt文件,按8∶1∶1将标注好的数据随机分配至训练集、测试集和验证集中[15]。

2 模型构建与优化

2.1 模型网络结构

母猪与仿生公猪交互行为的准确识别是判定母猪是否发情的关键。由于母猪与仿生公猪交互行为发生区域相比于整幅图像较小,且后期模型需应用于规模化猪场,综合考虑模型检测速度与精度,本文以YOLO v5算法作为网络基准模型,对其进行优化,将优化后的模型作为母猪发情检测模型。 YOLO v5目标检测算法的主要过程如图3所示。

图3 YOLO v5算法目标检测示意图Fig.3 Schematic of object detection based on YOLO v5 algorithm

YOLO v5算法是一种基于YOLO v3-SPP和YOLO v4的网络框架,包含YOLO v5s、YOLO v5m、YOLO v5x、YOLO v5l 4个版本[16]。YOLO v5网络模型主要由Input、Backbone、Neck、Prediction 4个模块组成,Input模块用于实现交互行为图像的输入、Backbone模块用于实现交互行为图像特征提取、Neck模块用于实现交互行为图像特征融合、Prediction模块用于实现交互行为位置预测[17]。YOLO v5网络结构示意图如图4所示。

图4 YOLO v5网络结构示意图Fig.4 YOLO v5 network model structural sketch

在输入端,通过使用Mosaic数据增强方法丰富数据表征,采用GIOU损失函数(Generalized_IOU_NM)预测筛选框,并引入含有Focus结构和CSP结构的基准网络[18]。其中,Focus结构主要用于完成切片操作,使交互行为特征提取更加充分,有效减少下采样过程数据的丢失[19]。CSP结构主要用以降低计算瓶颈和内存开销,利用CSP优化核心网络可提高模型检测性能,增强卷积神经网络的学习能力,充分减少计算量和推理时间。在Backbone层和末端Neck输出层之间引入FPN+PAN结构,可有效提升推理速度[20]。

2.2 模型剪枝

考虑到猪场实际生产条件的限制,为便于经产母猪发情行为识别所需的软硬件部署。本研究在YOLO v5s网络的基础上,对模型进行结构化剪枝,以充分降低模型的复杂度,在保证模型识别精度的同时,提高模型的识别速度[21]。模型通道剪枝流程如图5所示,主要包括稀疏训练、通道剪枝、模型微调3个过程[22]。

图5 模型通道剪枝流程 Fig.5 Channel level pruning of model

为了缩短卷积神经网络的训练时间,在较短的时间内得到最佳模型,本文在YOLO v5s网络的批量归一化层(Batch normalization, BN)加入超参数γ和ρ[23],采用缩放与平移两种操作对通道数据进行归一化处理,以学习神经网络的特征分布,其计算方法为

(1)

式中Sin——BN层输入

Sout——BN层输出

μA——样本数据的均值

σA——样本数据的标准差

p——避免除数为0时所使用的微小正数

在BN层的各通道加入尺寸因子,同时在损失函数中引入惩罚项,与网络权重联合训练得到稀疏网络的尺寸因子γ[24],其计算公式为

(2)

式中L——添加正则化惩罚项的损失函数

l1——原始网络的损失函数

λ——平衡因子

g(γ)——缩放因子的损失函数

u——所有剪枝通道的集合

式(2)第2项为L1正则化(L1-Normalization),用于降低模型的复杂度。当网络权值W接近0时,即得到稀疏网络,最后进行模型微调,目的是挖掘神经网络的潜在性能[25]。BN层调整流程如图6所示。

图6 BN层通道剪枝示意图Fig.6 Diagram of batch normalization layer channel sparse

2.3 非极大值抑制优化

在仿生公猪试情场景下,当母猪接近仿生公猪或母猪部分遮挡公猪时,由于交并比(Intersection over union,IOU)较大,经过非极大抑制处理后,只剩下单一检测框,在一定程度上增加了漏检概率[26]。针对以上问题,本文在非极大值抑制(Non-maximum suppression,NMS)部分,采用DIOU非极大值抑制(Distance_IOU_NMS)代替GIOU非极大值抑制(Generalized_IOU_NMS),在预测框与真实框重叠区域的判定基础上,增加对目标框中心点欧氏距离的计算。当仿生公猪与母猪目标框出现IOU较大、中心距离也较大时,判定为两个目标,以提升模型的检测精度[27]。其中,DIOU计算公式为

(3)

式中DIOU——距离交并比

IOU——交并比

d——目标框之间的中心距

c——目标框最小外接矩形的对角距离

DIOU_NMS的处理逻辑为

(4)

式中si——分类评价得分

ε——非极大值抑制阈值

DIOU_NMS能够将重叠面积与目标预测框中心距综合考虑,可较为精确地筛选目标框。

2.4 评价指标

本文评价指标分为2部分,第1部分为交互行为识别结果评价,使用模型大小、模型训练时间、平均精确率、召回率、F1值、单幅图像平均检测时间、单帧视频平均检测时间等指标评估模型的检测性能[28]。第2部分为发情检测结果评价,使用错误率、灵敏度、特异性、准确率4个指标评估发情测试试验效果[29]。

3 结果与分析

3.1 模型训练与测试

在完成网络的调整后,将建立的数据集输入至优化后的网络进行训练,并采用图像批量检测与视频检测两种方式对训练完成的模型进行测试。

3.1.1试验平台

模型依赖于Pytorch 1.6深度学习框架,试验平台处理器型号为Intel CoreTM i7-11700k,显卡型号为NVIDIA GTX3090,显卡内存为24 GB,在Ubuntu 18.04操作系统上配置Python 3.8、CUDA 11.4、OpenCV 4.5.1等深度学习环境。

3.1.2模型训练

在模型训练前,统一各个网络模型的参数,其中迭代轮次设置为160个,批量大小设置为16,初始学习率设置为0.01,循环学习率设置为0.1,初始冲量设置为0.98,初始权重衰减系数设置为0.000 5,每个迭代周期保存一次模型,选取最优的模型作为交互行为识别模型。训练160个迭代轮次的分类损失值、边框损失值和目标损失值曲线如图7所示。

图7 分类损失值、边框损失值和目标损失值曲线Fig.7 Results of classification loss, bounding box loss and object loss

由图7可知,优化后的模型YOLO v5gs收敛速度较YOLO v5s、YOLO v5m、YOLO v5l、YOLO v5x 4个模型更快, 160个迭代轮次的时间开销较YOLO v5s模型缩短36 min,较YOLO v5x模型缩短164 min,改进后的模型内存占用量仅5.7 MB,较改进前缩小60%,更易于部署与使用。优化后的模型与原始模型的精确率、召回率、平均精度均值(mAP)曲线如图8所示。

图8 模型测试效果Fig.8 Results of model tested

图8中,平均精度均值(mAP)表示所有类别平均精度的平均值,本文类别数为3。mAP0.5表示交并比阈值为0.5时的平均精度均值,mAP0.5∶0.95表示交并比阈值在[0.5,0.95]之间每隔0.05取1次mAP,然后取得的平均值。由图7、8可知,模型轻量化后,在保证精度基本不下降的同时,能够有效提高检测速度,选取160个迭代轮次中最优权重模型作为发情行为识别模型。

3.1.3模型测试

采用图像批量检测与视频检测两种方式对模型进行测试。选取978幅图像进行检测,改进后的模型图像平均检测时间仅为2 ms,检测速度较YOLO v5s提升15%,推理时间缩短0.3 ms。为进一步说明改进后的模型在交互行为识别的适用性,本文将改进后的模型与同为单次目标检测器(one stage)的EfficientDet-D0目标检测算法以及两阶段目标检测器(two stage)的Faster R-CNN进行对比,交并比阈值均设置为0.5,模型效果如 表1 所示,根据对比,改进后的模型识别效果优于上述两种算法。

表1 模型效果对比Tab.1 Comparison of model effect

选取9月28日15:08—15:11的视频数据检测该模型的识别性能。模型对视频数据检测实际上是对连续图像序列进行检测,模型默认每25 ms获取视频流中图像,然后读取每一帧要检测的图像,将图像转化为OpenCV可显示的BGR格式,然后再输入模型进行检测,导致视频检测速度比图像检测速度慢,单帧图像检测时间为6 ms。结合猪场实际应用场景,此模型的检测速度能够满足实时检测的要求,视频数据的检测结果如图9所示,可实时显示检测进度、图像尺寸、目标类别、检测耗时等信息。

图9 母猪交互行为视频检测结果Fig.9 Recognition results of video of sows’ interactive behavior

受舍内光线变化影响,存在极少量的漏检和误检(约0.5%),如图10所示。由图10可以看出,模型能够对母猪目标准确识别,但由于曝光不足、过度曝光等原因,造成部分仿生公猪目标和交互行为未识别,但该情况一般出现因光线变化,导致图像在三通道与单通道短暂过渡期间。研究进一步将筛选出的900幅光照较差的图像进行测试,交互行为准确率较正常光线条件下低1.5个百分点,由此可见,光线对模型检测交互行为的影响较小。

图10 模型性能的影响因素Fig.10 Influencing factors of model performance

3.2 发情母猪交互行为分析

根据检测模型输出的各个时刻的交互状态,对经产母猪的交互频率进行分析。交互时长统计 3 min 内每头母猪发情期与非发情期交互时长,计算36头母猪发情期与非发情期的平均交互频率。

从表2可知,母猪发情期与非发情期与仿生公猪的交互频率和交互时长均发生显著的变化。当母猪由非发情期进入发情期时,平均交互时长普遍增加3.2~4.4倍,发情时每分钟平均交互时长高达17.21 s;交互频率普遍增加2.3~3.7倍,发情时平均交互频率高达5.61次/min,利用SPSS软件对交互时长和频率进行克鲁斯卡尔-沃利斯检验,均表现出显著性差异(P<0.001)[30]。

表2 发情期与非发情期交互行为分析Tab.2 Analysis of interaction between estrus and non-estrus

3.3 母猪发情检测试验

通过计算交互时长和频率的皮尔逊相关系数可知,两者具有极强相关关系(R=0.86)。本文选用交互时长对母猪发情行为进行研究,选取96个视频片段,视频时长均为3 min,其中包含46组非发情期

母猪行为数据和50组发情期母猪行为数据,模型对行为数据每秒检测1次,单个视频母猪交互时间统计结果如图11所示。

图11 交互时间统计结果Fig.11 Time statistics of interactive behavior

根据图11的统计分布结果,分别以交互时间11、14、17、20、23 s作为是否发情的判定阈值,计算发情识别结果,以错误率、灵敏度、特异性、准确率作为评价指标,其中错误率用以估算未发情的母猪被错误识别为发情母猪的比率,数值越小,表示假报警的次数越少;灵敏度指从发情样本中检出的发情母猪的比率,数值越高,发情检测效果越好;特异性指从未发情样本中检出的未发情母猪的比率,数值越高,发情检测效果越好,由表3可知,以20 s作为发情检测阈值时,发情检测错误率为10.0%,灵敏度为90.0%,特异性为89.1%,准确率为89.6%。

表3 不同判定时间测试结果Tab.3 Test results of different judgment times %

为进一步测试该阈值下光照条件对发情检测的影响,试验挑选包含12组(4组发情期、8组非发情期)存在光照较差的3 min视频数据,并与人工测试结果对比,测试结果表明:以20 s作为发情检测阈值时,模型判定结果与人工检测发情结果相同,研究表明:由光线导致的交互行为误检与漏检对发情判定影响较小。

4 结论

(1)采用深度学习的方法识别检测母猪与仿生公猪的交互行为,平均精确率达97.8%,单幅图像检测时间仅1.7 ms,单帧视频检测时间为6.0 ms,可避免人工查情对母猪所造成的应激,为后续母猪发情检测奠定基础。

(2)以20 s作为发情判定标准时,发情检测错误率为10.0%、灵敏度为90.0%、特异性为89.1%、准确率为89.6%。在保证高灵敏度的同时,降低了检测的错误率,提高了检测的特异性和准确率。

猜你喜欢

发情期公猪发情
《全国优秀公猪站》手册2022 版征集
《全国优秀公猪站》手册2022 版征集
发情相关基因在小尾寒羊性腺轴组织中的表达分析
母牛的发情鉴定和配种
母牛发情的鉴定方法
《全国优秀公猪站》手册(二)
羊的繁殖规律与育种技术
PIC-408系列采用育种技术控制公猪异味
母驴配种注意啥
新疆哈萨克绵羊在乏情期和发情期生殖激素的变化规律