基于轻量化YOLOv4的死淘鸡目标检测算法

2024-05-30 22:29:39漆海霞李承杰黄桂珍
中国农机化学报 2024年5期
关键词:深度学习

漆海霞 李承杰 黄桂珍

摘要:针对目前死淘鸡目标检测研究较少,高精度检测算法体积大难以部署至移动式设备等问题,提出一种基于YOLOv4的轻量化死淘鸡目标检测算法。采集大规模蛋鸡养殖工厂笼中死淘鸡图片,建立目标检测数据集;在算法中引入MobileNetv3主干提取网络与深度可分离卷积来降低模型体积;并在最大池化层前添加自注意力机制模块,增强算法对全局语义信息的捕获。在自建数据集中的试验结果表明,改进算法在死淘鸡目标检测任务中有更高的准确度,其mAP值与召回率分别达到97.74%和98.15%,模型大小缩小至原算法的1/5,在GPU加速下帧数达到77帧/s,检测速度提高1倍,能够满足嵌入式部署需求。

关键词:死淘鸡识别;深度学习;轻量化网络;MobileNet;深度可分离卷积

中图分类号:S831.4+9

文献标识码:A

文章编号:2095-5553 (2024) 05-0195-07

收稿日期:2022年9月19日  修回日期:2023年2月27日*基金项目:广州市科技项目(20212100026)

第一作者:漆海霞,女,1969年生,湖南株洲人,博士,副教授;研究方向为智慧农业、农业机器人、农业无人系统等。E-mail: qihaixia_scau@126.com

Dead chicken target detection algorithm based on lightweight YOLOv4

Qi Haixia1, 2, 3, Li Chengjie1, Huang Guizhen1

(1. School of Engineering, South China Agricultural University, Guangzhou, 510642, China;

2. National Precision Agriculture International Joint Research Center for Aerial Pesticide Application Technology,

Guangzhou, 510642, China; 3. Guangdong Provincial Laboratory of Lingnan Modern Agricultural Science and

Technology, Guangzhou, 510642, China)

Abstract:

Aiming at the problems that there are few studies on dead chicken target detection and the large size of the high-precision detection algorithm makes it difficult to deploy to mobile devices, a lightweight dead chicken target detection algorithm based on YOLOv4 is proposed. Firstly, the team collects images of dead chickens in cages from large-scale egg production plants to build a target detection dataset. Then, MobileNetv3 backbone extraction network with depth-separable convolution is introduced in the algorithm to reduce the model size. Finally, a self-attentive mechanism module is added before the maximum pooling layer to enhance the algorithms capture of global semantic information. Experimental results in a self-built dataset show that the improved algorithm has higher accuracy in the dead pheasant target detection task, with mAP values and recall rates of 97.74% and 98.15% respectively. The model size is reduced to 1/5 of the original algorithm, and the frame rate reaches 77 frames/s under GPU acceleration, doubling the detection speed and meeting the requirements of embedded deployments.

Keywords:

identification of dead chicken; deep learning; lightweight network; MobileNet; deep separable convolution

0 引言

隨着工业化智能化设备在养殖业上的应用,我国的畜禽养殖企业正在向智能化、无人化方向高速发展,其中养鸡业的规模化、产业化程度正在与日俱增[1]。在大型鸡舍的规模化养殖中氨气、温度、湿度、光照强度等外在因素对鸡的生长健康与免疫功能等产生重大影响,同时可能造成鸡群的行为变化和发育异常,甚至产生传染性疾病[2]。鸡是恒温动物,对生活环境稳定性要求高,现代化农业使得高产指标成为鸡遗传因素的关键,这使得鸡群对环境要求变得更加苛刻,因此鸡舍中每日都会大量死淘鸡出现[3, 4]。为降低鸡群的死亡率,对鸡舍的环境控制与鸡群的福利化养殖成为研究重点,多种防控技术整合、多功能便携式监测设施的研发,有利于促进智能化鸡舍的发展[5]。

随着深度学习技术在近几年的快速发展,基于深度学习的图像识别技术在蔬果农业、畜禽养殖领域取得了较大的突破[6-9]。目前对猪、牛等大型畜禽动物的研究较多,通常是通过图像识别技术对猪、牛等的健康状态与生活行为进行研究[10-13]。任晓惠等[10]通过支持向量机对奶牛的行为方式进行分类,杨秋妹等[12]使用机器学习算法对猪只的饮水行为进行识别,余秋冬等[14]采用轻量化的YOLOv4算法对高遮挡、高密度猪群进行识别,识别率与召回率高达96.85%和91.75%。目前对于蛋鸡的研究较少,已有的研究主要集中在对蛋鸡生活行为的识别,劳凤丹等[15, 16]应用机器视觉对蛋鸡的采食、躺、站、坐等行为进行识别,为了进一步研究多蛋鸡的群体行为(分布指数、水平活跃等),该团队继续基于深度图像对鸡的运动、饮水等动作进行研究,识别率能达到90%左右。赵守耀等[17]基于轮廓特征对单只蛋鸡行为进行研究,首先获取蛋鸡俯视图获得轮廓的几何特征,然后用极限学习机(ELM)对四种特征进行训练,最后结合最佳的特征组合对蛋鸡进行识别,对采食、躺卧等特征识别率达到91.5%。李娜等[18]基于深度学习对鸡的采食、站立、啄羽等行为做进一步研究。

蛋鸡养殖密度高、数量大,一个规模在五万只鸡左右的鸡舍每天能够产生10~20只死淘鸡,由于鸡舍的恒温温度较高,蛋鸡死亡将产生大量的细菌、病毒和有害气体,若蛋鸡因为禽流感等疾病死亡而没得到及时处理,更可能导致大规模的感染和严重的经济损失[19]。大部分规模化蛋鸡工厂采用饲养员巡检的方式清理死淘鸡,大型鸡舍通常有四层鸡笼,饲养员巡检时需要借助推车,这种工作方式效率低下,不但给饲养员增加了繁重的工作量与安全风险,而且人为巡检方式漏检率也较高,因此在鸡舍中进行智能巡检、实时检测变得十分重要[20]。

为解决规模鸡养殖中的笼中死淘鸡识别问题,本文基于轻量化算法应用,以YOLOv4算法为主要算法,采用MobileNetv3轻量化网络[21]替代其主干网络,同时加入自注意力机制[22]来提升对全局语义信息的识别,将算法颈部标准卷积替换成深度可分离卷积,在保证识别精度的同时,提升检测速度、降低模型大小,为在嵌入式的移动设备上应用部署提供有利的条件。

1 材料与方法

1.1 数据集采集

本试验从模型的生产应用角度展开研究,算法所训练的数据集均为实际生产环境下采集。数据集来自广东广生元公司的蛋鸡养殖场,该养殖场现有投入生产的鸡舍26个,其中包含直立型4层、直立型8层与A字型3层三种鸡舍,数据集选取23、25、26三个直立型4层鸡舍,于2022年5月6—9日进行活鸡与死淘鸡的数据集拍摄。在23号鸡舍拍摄974张鸡龄500天左右的大午金凤品种蛋鸡活鸡图;在25号鸡舍拍摄1 105张鸡龄800天左右换羽期的京粉1号品种蛋鸡活鸡图;在26号鸡舍拍摄703张鸡龄500天左右的罗曼粉品种蛋鸡活鸡图。为收集死淘鸡图,本团队于每日早上7:00与下午14:00对三个鸡舍进行巡检筛查,在巡检过程中共拍摄笼中死鸡519张。根据光线条件与训练需求后筛选出400张清晰可用的死淘鸡图片与2 750张活鸡图片。

1.2 数据集制作

为保证训练所需数据集更为完整,首先对采集的数据图片进行水平翻转、旋转、添加噪声、图像直方均衡等方式进行数据扩充,具体标注比例如表1所示,共扩充为活鸡图5 500张,死鸡图2 000张,对数据集按8∶1∶1的比例分为训练集、验证集与测试集。本试验训练的数据集选用Pascal VOC格式,使用LabelImg图片标注工具对数据集图片中的活鸡与死淘鸡进行手动标注,标注的区域为单只鸡的最小外接矩形,标签名分别为chickens与dead chickens,标注后得到.xml格式文件用于后续模型训练。

2 轻量化死淘鸡目标检测算法

2.1 YOLOv4目标检测算法

YOLOv4算法是2020年Alexey Bochkovskiy团队发表在CVPR会议上的一种目标检测算法,该算法在检测精度与检测速度上都比前代算法有一定提升,其网络结构如图1所示。

該算法为one-stage单阶段算法,共包含主干网络、颈部网络、检测头三个部分。YOLOv4算法是在YOLOv3算法的基础上升级而来的,主要的修改部分有将主干特征提取网络由DarkNet53改为CSPDarkNet53,主干中的激活函数由Leaky relu替换为Mish激活函数,同时将YOLOv3中的FPN特征金字塔改为了PANet网络,最后在训练方式上引入Mosaic数据增强方式、Label smoothing平滑操作与CIOU损失函数等技巧来提高模型的整体识别率。

2.2 轻量化YOLOv4死淘鸡检测算法

改进后的算法结构如图2所示。主干网络的具体参数如表2所示。

YOLOv4算法有较好的识别精度与识别速度,但是仍有缺陷,特别是主干中的CSPDarkNet53模块将大量的残差结构进行堆叠,这种结构导致模型训练速度慢、模型体积大和难以部署到移动式设备中等问题,这限制了高精度算法在畜禽养殖业的应用。为解决移动设备的部署问题,拓展深度学习算法在畜禽养殖业的使用,本文基于YOLOv4算法设计了轻量化的死淘鸡检测算法。改进算法使用MobileNetV3的主干特征提取网络替代原有的CSPDarkNet53模块,然后在池化层之前加入自注意力机制模块以增加算法对全局信息的提取能力,最后将算法颈部的大部分普通卷积替换成深度可分离卷积,以降低算法体积、减少参数量。

MobileNetV3特征提取网络是Google团队基于前两代版本于2019年提出的新一代特征提取网络,它很好地继承了V1、V2版本的优点,保留了深度可分离卷积结构与逆残差结构,整体速度相比V2版本提高了25%。本文选取精度更高的MobileNetV3-large主干特征提取网络替代CSPDarkNet53主干网络(表2),其中主要包含7个Bneck_A模块与8个Bneck_B模块。

2.2.1 Bneck模块

本文选取的MobileNetV3特征提取网络的主要组成部分是Bneck结构,Bneck分为无轻量注意力结构的Bneck_A和加入轻量注意力模块的Bneck_B两种结构,该模块首先通過一个1×1卷积与一个非线性激活函数进行升维,然后通过一个3×3的深度可分离卷积与一个非线性激活函数,在Bneck_B结构中还加入了轻量级注意力模型SE模块,SE模块的作用主要是对之前特征矩阵的每个通道进行权重分析,然后给更重要的通道赋予高权重以增加算法精准度,最后再通过一个1×1卷积降维,模块结构如图3所示。

2.2.2 自注意力机制模块

在鸡笼死淘鸡目标检测任务中,环境的全局语义信息非常重要,不仅要判断死淘鸡的所在区域,同时死淘鸡附近的信息也很关键,只有掌握好图片的全局信息才能更准确的定位死淘鸡所在区域。将自注意力机制加入神经网络中可以根据图片区域重要性对其分配相应权重,自注意力机制拥有良好的全局感受野,可以根据上下文信息捕获更多的全局语义信息,给信息给予不同的权重值能够使特征信息与目标有更强的关联性,这可以让整体网络训练时更加聚焦在关键信息上。

自注意力机制由问题(Q)、键(K)、值(V)三个基本元素组成,通过计算Q、K之间的相似度可以得到语义信息权重值。通常采用缩放点积函数计算Q、K的相似度,紧接着将缩放后的相似度与Softmax归一化后可以得到语义权重值,最后将每个语义权重值加权求和即可得到自注意力特征,具体如式(1)所示。

P1、P2分别代表活鸡与死淘鸡的识别率,R1、R2分别代表活鸡与死淘鸡的召回率,F11、F12分别代表活鸡与死鸡的F1得分,mAP为活鸡与死淘鸡的平均识别率。

由表3可知,本文算法对比YOLOv4算法死淘鸡准确率提高0.22%,召回率提高3.90%,F1值提高0.02,mAP值提高0.98%;同时改进后的算法将主干识别网络替换成MobileNetv3网络,模型大小为54.1 M减少为YOLOv4模型大小的1/5,并且FPS提升到77.17帧/s;与YOLOv4-tiny相比,本文算法的检测速度不如YOLOv4-tiny快,但是在mAP、召回率、F1值上有明显优势,分别提升1.84%、39.82%、0.16。在电脑端GPU加速下,改进算法识别一张图片的速度为0.013 s,在仅有CPU加速时识别速度为0.08 s/张,均可满足实时识别需求。

为证明本文对YOLOv4算法改进是有效的,本文进行消融试验来与原算法进行比较,对比结果如表4所示。

当仅将主干特征提取网络替换成MobileNetv3时,模型大小减少103 M,mAP减少3.88%,检测速度提升1倍,证明MobileNetv3网络对体积缩小的有效性,同时说明MobileNetv3对算法准确率有比较大的影响。在此基础将算法中的普通卷积替换成深度可分离卷积后,模型体积再次减少104 M,mAP降低0.52%,FPS增大3.82帧/s,说明深度可分离卷积不仅能进一步减小模型体积,同时对检测速度与准确率影响不大。最后在此基础上加入自注意力机制模块,模型稍微增大5 M,检测速度保持稳定,mAP提高5.38%,证明了自注意力机制模块能够增强特征的提取能力。

为更加直观地体现算法的改进效果,本文对比分析了几种算法在死淘鸡目标检测测试集上的测试结果,随机抽取了两张结果图片如图7所示。

从图7可以看出,YOLOv4-tiny和EfficientDet-D3算法在多遮挡情况下的死淘鸡识别存在明显不足。Faster R-CNN检测的整体表现不错,但是双阶段检测算法识别时间长、模型大,无法应用于嵌入式设备。改进算法与YOLOv3、YOLOv4算法相比在遮挡情况下有着更优秀的检测结果,同时在死淘鸡识别上本文算法有更高地准确度。

4 结论

1)  本文将轻量化MobileNetv3网络替代YOLOv4算法的主干特征提取网络,同时在最大池化层之前引入自注意力机制模块增加对图片全局信息的把握,最后将算法颈部的大部分标准卷积替换成深度可分离卷积,进一步减少参数量降低模型大小,最后将改进的轻量化YOLOv4目标检测算法应用于笼中死淘鸡目标检测。

2)  改进后算法的模型大小约为YOLOv4算法的1/5左右,在保证高识别准确率与召回率的同时将目标检测时间降低到13 ms左右,检测速度提升到YOLOv4算法的一倍。算法的轻量化使其可以更好地部署到移动式设备上。

3)  根据实际生产环境与条件,本文通过现场采集的方式制作死淘鸡目标检测数据集,并基于该数据集对轻量化死淘鸡检测算法在内的6种算法进行对比试验。对比结果表明:本文的轻量化死淘鸡检测算法在检测速度、检测精度上有较高地综合性能,准确率达到95.57%、召回率达到98.15%、调和平均值达到0.97、平均精度达到97.74%,同时模型大小仅为54.1 M,GPU加速下图片检测速度能达到77帧/s。

4)  本文算法拥有高精度与高检测速度,模型参数量小,算法的精度与速度满足实际生产需要,能够更好地应用于移动式检测场景。

参 考 文 献

[1]

李保明, 王阳, 郑炜超, 等. 畜禽养殖智能装备与信息化技术研究进展[J]. 华南农业大学学报, 2021, 42(6): 18-26.

Li Baoming, Wang Yang, Zheng Weichao, et al. Research progress on intelligent equipment and information technology for livestock and poultry breeding [J]. Journal of South China Agricultural University, 2021, 42(6): 18-26.

[2] 龙长江, 谭鹤群, 朱明, 等. 畜禽舍移动式智能监测平台研制[J]. 农业工程学报, 2021, 37(7): 68-75.

Long Changjiang, Tan Hequn, Zhu Ming, et al. Development of mobile intelligent monitoring platform for livestock and poultry house [J]. Transactions of the Chinese Society of Agricultural Engineering, 2021, 37(7): 68-75.

[3] Kristensen H H, Cornou C. Automatic detection of deviations in activity levels in groups of broiler chickens: A pilot study [J]. Biosystems Engineering, 2011, 109(4): 369-376.

[4] 李保明, 王陽, 郑炜超, 等. 中国规模化养鸡环境控制关键技术与设施设备研究进展[J]. 农业工程学报, 2020, 36(16): 212-221.

Li Baoming, Wang Yang, Zheng Weichao, et al.Research progress in environmental control key technologies, facilities and equipment for laying hen production in China [J]. Transactions of the Chinese Society of Agricultural Engineering, 2020, 36(16): 212-221.

[5] 李保明, 王阳, 郑炜超. 我国规模化养鸡环境控制技术的最新进展[J]. 中国家禽, 2019, 41(9): 1-7.

Li Baoming, Wang Yang, Zheng Weichao.Advances in environment control technology of poultry in China [J]. China Poultry, 2019, 41(9): 1-7.

[6] Hla B, Cla B, Gla B, et al. A real-time table grape detection method based on improved YOLOv4-tiny network in complex background [J]. Biosystems Engineering, 2021, 212(6): 347-359.

[7] Ahamed T. Real time pear fruit detection and counting using YOLOv4 models and deep sort [J]. Sensors, 2021, 21(14): 4803.

[8] 东辉, 陈鑫凯, 孙浩, 等. 基于改进YOLOv4和图像处理的蔬菜田杂草检测[J]. 图学学报, 2022, 43(4): 559-569.

Dong Hui, Chen Xinkai, Sun Hao, et al. Weed detection in vegetable field based on improved YOLOv4 and image processing [J]. Journal of Graphology, 2022, 43(4): 559-569.

[9] Li D, Zhang K F, Li Z B, et al. A spatiotemporal convolutional network for multi-behavior recognition of pigs [J]. Sensors, 2020, 20(8): 2381.

[10] 任晓惠, 刘刚, 张淼, 等. 基于支持向量机分类模型的奶牛行为识别方法[J]. 农业机械学报, 2019, 50(S1): 290-296.

Ren Xiaohui, Liu Gang, Zhang Miao, et al.Dairy cattles behavior recognition method based on support vector machine classification model [J]. Transactions of the Chinese Society for Agricultural Machinery, 2019, 50(S1): 290-296.

[11] Lao F, Brown-Brandl T, Stinn J P, et al. Automatic recognition of lactating sow behaviors through depth image processing [J]. Computers and Electronics in Agriculture, 2016, 125: 56-62.

[12] 杨秋妹, 肖德琴, 张根兴. 猪只饮水行为机器视觉自动识别[J]. 农业机械学报, 2018, 49(6): 232-238.

Yang Qiumei, Xiao Deqin, Zhang Genxing.Automatic pig drinking behavior recognition with machine vision [J]. Transactions of the Chinese Society for Agricultural Machinery, 2018, 49(6): 232-238.

[13] Sa J, Choi Y, Lee H, et al. Fast pig detection with a top-view camera under various illumination conditions [J]. Symmetry, 2019, 11(2): 266.

[14] 余秋冬, 杨明, 袁红, 等. 基于轻量化YOLOv4的生猪目标检测算法[J]. 中国农业大学学报, 2022, 27(1): 183-192.

Yu Qiudong, Yang Ming, Yuan Hong, et al. Pig object detection algorithm based on lightweight YOLOv4 [J]. Journal of China Agricultural University, 2022, 27(1): 183-192.

[15] 劳凤丹, 杜晓冬, 滕光辉. 基于深度图像的蛋鸡行为识别方法[J]. 农业机械学报, 2017, 48(1): 155-162.

Lao Fengdan, Du Xiaodong, Teng Guanghui.Automatic recognition method of laying hen behaviors based on depth image processing [J]. Transactions of the Chinese Society for Agricultural Machinery, 2017, 48(1): 155-162.

[16] 劳凤丹, 滕光辉, 李军, 等. 机器视觉识别单只蛋鸡行为的方法[J]. 农业工程学报, 2012, 28(24): 157-163.

Lao Fengdan, Teng Guanghui, Li Jun, et al.Behavior recognition method for individual laying hen based on computer vision [J]. Transactions of the Chinese Society of Agricultural Engineering, 2012, 28(24): 157-163.

[17] 趙守耀, 陆辉山, 王福杰, 等. 基于轮廓特征的单只蛋鸡行为识别方法[J]. 中国农机化学报, 2022, 43(2): 143-147, 181.

Zhao Shouyao, Lu Huishan, Wang Fujie, et al. Recognition method of single layer behavior based on contour feature [J]. Journal of Chinese Agricultural Mechanization, 2022, 43(2): 143-147, 181.

[18] 李娜, 任昊宇, 任振辉. 基于深度学习的群养鸡只行为监测方法研究[J]. 河北农业大学学报, 2021, 44(2): 117-121.

Li Na, Ren Haoyu, Ren Zhenhui. Research of behavior monitoring method of flock hens based on deep learning [J]. Journal of Hebei Agricultural University, 2021, 44(2): 117-121.

[19] 瞿子淇. 无人养鸡场死鸡检测方法研究[D]. 长春: 吉林大学, 2019.

Qu Ziqi.Study on detection method of dead chicken in unmanned chicken farm [D]. Changchun: Jilin University, 2019.

[20] 胡子康. 死鸡捡拾机器人欠驱动末端执行器的研究[D]. 保定: 河北农业大学, 2021.

Hu Zikang. Research on underactuated end-effector of dead chicken picking robot [D]. Baoding: Hebei Agricultural University, 2021.

[21] Howard A, Sandler M, Chu G, et al. Searching for MobileNetV3 [C]. 2019 IEEE/CVF International Conference on Computer Vision (ICCV). IEEE, 2020.

[22] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need [C]. 2017 Advances in Neural Information Processing Systems. NIPS, 2017.

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
现代情报(2016年10期)2016-12-15 11:50:53
利用网络技术促进学生深度学习的几大策略
考试周刊(2016年94期)2016-12-12 12:15:04
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
软件导刊(2016年9期)2016-11-07 22:20:49