基于YOLOv4的猪耳检测方法研究

【www.zhangdahai.com--可行性研究报告】

左若雨, 陈 丰, 陈 蒙, 周 稳, 陈敏权

(安徽科技学院 机械工程学院,安徽 凤阳 233100)

我国是世界养猪大国,国内生猪养殖量约占全球生猪总养殖量的56.6%[1]。2021年我国猪肉消费量占肉类消费比重已达到60%以上[2]。2018年全球性猪瘟对猪肉产量增长产生了巨大影响,让我国猪肉总产量比从2018年的62.70%,下滑至2019年的55.6%[3]。对此农业农村部出台了一系列政策,以确保生猪产能稳定,由此可见生猪养殖业已关系到国计民生。猪肉作为人们肉类食品主要来源,因此生猪疾病问题,直接关系到社会经济利益和食品安全。

生猪养殖的过程中,常常伴随着各种各样的疾病,如猪瘟、猪肺疫、猪流感、传胸、蓝耳病等[4-5],以上疾病均在生猪耳部有不同程度体现,同时当前我国中小型猪舍内疾病巡检仍为人工观测[6],不能对发病猪只进行及时检测。随着智能化的进程,近年来,基于卷积神经网络的图像处理方法被广泛应用于农业生产中[7]。在养猪行业中,国内外很多学者,针对生猪疫情检测开展了不同程度的研究,在生猪检测模型中,YOLO模型发展尤为迅速。嵇杨培等[8]基于可见光光谱对猪只行为进行识别,其识别进食[9]、饮水行为[10]准确率分别达到94.59%和96.49%。Li等[11]使用卷积神经网络[12]对猪只个体进行检测。生猪健康状况不仅可从体表判断,从其体温也可以得出同样结论。为防止人畜交叉感染,保护猪只福利,肖德琴等[13]采用非接触式测温,对生猪耳部[14-16]温度自动提取,该方法对于耳部检测的准确率为97.6%,单幅图像平均检测时间为12 ms。

中小型猪舍环境复杂,容易引发猪只疾病,为及时准确判别猪只健康状况,本研究针对猪只生病时其耳部特征会发生变化的情况,提出一种基于猪耳识别猪只疾病的检测与预警网络模型。

1.1 YOLO算法模型

传统的目标检测方法包括图像分割、SVM分类器、边缘检测等。由于传统的目标检测方法存在算法复杂、检测速度慢、计算量大、检测精度低、自适应差等缺点,且特征提取需要人工完成,算法开发周期长,使得传统方法在农业领域的应用与推广相对困难。

YOLO系列模型采用端到端的预测方式,拥有运行速度快、模型简单、可进行实时监测等一系列优点,被广泛应用于各个领域。YOLO将识别整合为一个过程,较两阶段的检测方式优点更加突出。YOLOv1对目标检测速度很快,但对于近距离目标,定位会偏差。YOLOv2沿用了YOLOv1的思路,以Darknet-19作为基础网络,召回率大大提升,但模型稳定性有所下降。YOLOv3在前两代基础之上,采用Darknet-53的网络结构,提升了模型的稳定性和收敛速度,同时也提高了对于小目标的预测能力,但是检测速度慢于前两代。

YOLOv4对主干网络、激活函数、损失函数、训练方法以及数据处理等方面都进行了不同程度优化,具体结构如图1所示,与前几代算法相比,其准确率更高、收敛速度更快。通过分析猪耳部轮廓特征,决定采用YOLOv4作为快速检测算法。根据YOLOv4提取的特征对其进行进一步分析,由此来完成生猪耳部区域快速检测、定量工作,实现猪只疾病检测与预警。

图1 YOLOv4结构图Fig.1 YOLOv4 structure diagram

1.2 数据集采集及扩展

本研究数据集为自然条件下,主动多角度采集的2 250幅生猪图像。对数据集进行人工筛选,将相似度极高的图片剔除,避免数据冗沉,保证数据库的质量。深度学习需要大量的数据,过小的训练集会对训练结果产生过拟合影响,因此为确保模型的识别准确度,提高泛化能力,以及提升鲁棒性,通过旋转、翻转、缩放等多种方法随机组合的形式,如图2所示,以扩展数据集样本量。由于数据集处理后顺序较为紊乱,需要对数据集重新进行统一编号,这里使用LabelImg按照PASCAL VOC数据集的标注格式,对数据集内图像特征依次进行标注,生成含有目标信息与类别信息的XML标注文件。同时在对图像的特征进行标注时,标注框应尽量与猪耳外侧边缘紧贴,以减少由于人为标注产生的误差。

图2 数据增强Fig.2 Data augmentation

将数据集按照8∶1∶1的比例随机分为3组,训练集1 800幅,验证集225幅,测试集225幅,图3为生猪数据集的部分数据集图像。

图3 部分数据集图像Fig.3 Part of the dataset image

1.3 环境配置与参数设置

实验使用 Pytorch 框架搭建网络,并在工作站上进行训练。硬件环境为 Inter Core CPU,i9-9900K@3.60 GHz的处理器、32 GB机身自带内存,显存为11 GB的GeForce RTX 2080Ti GPU,软件环境为Windows10,3.6版本的Python编程语言,1.3版本的Pytorch语言框架。

模型训练过程中,需要将已标注好的数据集进行聚类,在模型中引入IOU值,以作为衡量标准,使用聚类得到的anchor box与bounding box进行计算,比较选出其中最大值,最终得到多图像尺度下anchor box的大小,共计9种,按照对应原则,依据面积大小将9种anchor box分配给3种不同尺度的特征图,如表1所示。

表1 先验框尺寸Table 1 Size of anchor box

训练时,将图像像素以416×416输入至模型中,设置训练参数如表2所示,当迭代至损失曲线收敛时可选择停止训练,通过比较,选用最小损失参数作为模型权重以完成训练。

表2 训练参数Table 2 Training parameters

2.1 图像处理

特征分析操作需在灰度图像条件下进行,因此,将图像转化为灰度图像并进行降噪处理,通过对比,椒盐滤波效果优于其他方法,可完整保留图像细节特征,处理结构如图4所示。

图4 图像处理流程图Fig.4 Flow chart of image processing

通过YOLOv4与区域图像处理可以得到目标图像,并将目标区域位置信息显示出来,对特征区域进行优化处理,结果如图5所示。

图5 耳部区域提取Fig.5 Extraction of ear region

根据结果可知,本算法对生猪耳部区域提取准确,可较好保留生猪耳部区域细节,结合红外热像仪,一定程度上可以替代人工观测生猪健康状况。

2.2 效果与评价指标

为客观评价猪耳部区域检测的效果,使用测试集对训练网络进行测试,选择平均精度值(mAP)、召回率作为生猪耳部区域检测模型的评价指标。

(1)

(2)

其中,TP为准确预测猪耳部区域的数量,FN为预测错误的数量,FP为未识别出的数量。mAP为模型中所训练类别的平均值,代表模型的检测性能。YOLOv4在训练过程中的迭代次数与平均损失值变化如图6所示,可以看出,开始时模型迅速拟合,同时损失值也快速下降,随着迭代次数的增加,损失值在震荡中不断趋于平稳,这说明YOLOv4对生猪耳部区域检测具有较好的识别效果,识别效果如图6所示。

经实验得到YOLOv4检测生猪耳部区域的mAP为97.21%,Recall为92.22%,能够实现生猪耳部区域的快速、有效检测,表明本文算法基于猪耳识别的猪只疾病检测具有可行性。

本研究为实现猪只疾病检测与预警,对猪耳部区域特征展开研究,实现对猪耳识别、提取耳部特征并进行分类识别的目的,基于实时监控观测猪耳部信息特征,通过视觉的方法,达到猪只疾病监测的效果,为后续猪只疾病预警提供技术支撑。本研究仍处于实验阶段,还未实现产业化,仅为一个有益探究。研究采用非接触式检测方式,仅依赖于猪场原有监控设备,投入成本低且可以保护猪只福利,取代传统的人工巡查,避免人畜交叉感染的同时又提高了检测效率,提高养殖效益。本研究方法硬件结构简单、成本低廉, 具有较好的推广应用前景和实际价值。

猜你喜欢 耳部猪只生猪 猪呼吸道疫病的发生原因与防控方法研究畜禽业(2021年7期)2021-12-04生猪贴“秋膘” 管理要跟上今日农业(2021年19期)2021-11-27耳部用药安全须知中老年保健(2021年8期)2021-08-24猪胃溃疡的病因与防治措施中国畜禽种业(2020年4期)2020-12-16提高装猪坡道装载效率的研究猪业科学(2020年10期)2020-12-13猪舍富集的环境对猪只的影响?猪业科学(2020年7期)2020-12-11右耳撕脱伤再植修复术围手术期护理中国美容医学(2018年5期)2018-08-29铜绿假单胞菌耳部感染临床研究健康必读·下旬刊(2018年6期)2018-07-24耳部瘢痕疙瘩的序列综合治疗中国美容医学(2016年6期)2016-08-312016年2月生猪市场行情及分析中国动物保健(2016年3期)2016-05-07

推荐访问:检测方法 研究 YOLOv4

本文来源:http://www.zhangdahai.com/shiyongfanwen/kexingxingyanjiubaogao/2023/0608/608575.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!