2024年4月7日发(作者:仲孙金)
第44卷第2期
2021年3月
河北农业大学学报
JOURNAL OF HEBEI AGRICULTURAL UNIVERSITY
Vol.44 No.2
Mar.2021
文章编号:1000-1573(2021)02-0117-05
DOI
:10.13320/.2021.0035
基于深度学习的群养鸡只行为监测方法研究
李 娜
1
,任昊宇
2
,任振辉
1
(1.河北农业大学 机电工程学院, 河北 保定 071001;2.河北农业大学 现代科技学院,河北 保定 071001)
摘要:畜禽的行为能够反映其健康状况、环境舒适度等福利信息,是评价畜禽福利状况的重要指标。为了实时
自动监测鸡舍中鸡群的行为状况,提出了1种基于深度学习的鸡群行为监测方法。用摄像头连续4个月每天
7:00—17:30记录散养鸡群在鸡舍内的活动,筛选7 988幅图片对鸡只的采食、站立、趴卧、梳羽、啄羽和打架
行为进行标注,利用YOLO v4目标检测模型识别,各行为平均精确率分别为采食96.67%、站立90.34%、趴卧
78.46%、梳羽82.01%、啄羽63.38%、打架67.14%,模型总体平均精确率为79.69%。为进一步提高啄羽行为
检测结果,采用了时间序列分析方法提取持续时间大于30 s的啄羽行为。实验结果表明,该方法可以实现群养
鸡只行为的实时自动监测,解决人工不能全天实时监测的问题,为精准化养殖提供了可能。
关 键 词: YOLO v4;鸡只行为识别;时间序列;精准畜牧业
中图分类号:TP202;S66
文献标志码:A
开放科学(资源服务)标识码(OSID):
Research of behavior monitoring method of flock hens based on deep learning
LI Na
1
, REN Haoyu
2
, REN Zhenhui
1
(1. College of Mechanical and Electrical Engineering, Hebei Agricultural University, Baoding 071001, China; 2.
College of Modern Science
&
Technology, Hebei Agricultural University, Baoding 071001, China)
Abstract: The behavior of livestock and poultry can reflect their health condition, environmental comfort level
and other welfare information, which is an important index to evaluate the welfare status. In order to monitor the
behavior of the chickens in the chicken house automatically and in real time, a deep learning method was proposed
to monitor the behavior of chickens. The camera recorded chicken activities everyday from 7:00 to 17:30 for four
months in the chicken house. Eating, standing, lying, preening, feather pecking and fighting behaviors of chickens
were labeled in 7988 images, the average precision (AP) rates were 96.67%, 90.34%, 78.46%, 82.01%, 67.14% and
63.38% respectively, and the mean average precision (mAP) was 79.69%. To improve the feather pecking behavior
detection, a method of time series analysis was used, which could extract the feather pecking behavior lasting more
than 30s. The experimental results show that this method can realize real
-
time automatic monitoring of the behavior
of chickens, and solve the problem that human beings cannot monitor the behavior of chickens all day long, which
provides the possibility for precision livestock farming.
Keywords: YOLO v4; hen behavior recognition; time series; precision livestock farming
收稿日期:2020-11-15
基金项目: 河北省科技计划项目 (16236605D-2).
第一作者:李 娜(1979-),女,河北保定人,博士研究生,讲师,主要从事智能化检测与自动控制技术研究.
E-mail:****************.cn
通信作者: 任振辉(1968-),男,河北保定人,博士,教授,主要从事智能化检测与自动控制技术研究.
E-mail:***************.cn
本刊网址:
http: // hauxb. hebau. edu. cn
118河北农业大学学报第44卷
随着信息技术的飞速发展,畜牧业也由传统的
养殖管理向着信息化、自动化的方向发展。精准畜
牧业(Precision livestock farming, PLF)定义为使用
过程工程的原理和技术应用于畜牧业,自动监测、
建模和管理动物生产
[1]
。其核心是实时、自动和持
续的监测畜禽的行为,以改善其健康状况和福利状
况,也为长期的监控产品质量提供最好的保证。目前,
视频监控越来越多地应用在畜禽养殖中,由于其可
以非入侵无接触的长期监测动物,与可穿戴设备如
耳标、RFID等相比,不会影响动物的活动,廉价经
济,并且随着计算机视觉技术的快速发展,使得用
摄像头监测动物行为、自动分析动物的福利和健康
成为可能
[2-5]
。
随着深度学习理论的快速发展,众多研究者将
其应用在畜禽养殖中,尤其在复杂场景下识别猪、
牛的行为,具有良好的性能
[6-9]
。鸡只识别方面,
王娟等
[10]
基于YOLO v3识别了本交笼养鸡的喝水
(86.88%)、站立(94.57%)、吃食(93.10%)、
交配(94.72%)、打架(88.67%)和展翅(92.02%)
行为。基于深度学习理论的畜禽行为识别应用在猪、
牛等大型动物上较多,由于鸡只的个体小、数量大,
应用深度学习实现鸡只个体行为识别的研究较少。
在众多深度学习算法中,YOLO系列算法
[11-12]
是目前运行速度快、多目标检测准确率较高的算法,
符合实时处理的要求。本试验以YOLO v4目标检测
算法为基础,旨在研究散养鸡群在鸡舍中的行为,
实现对鸡只采食、站立、趴卧、梳羽、啄羽和打架
行为的实时、自动监测。
1 材料与方法
1.1 数据采集
本试验于2019年8月27日到12月22日在河
北省无极县石家庄鑫农机械有限公司河北农业大学
研究生实践教育基地进行;模拟林下养殖模式,使
用1种长宽高为3 m×1.95 m×1.95 m的可移动鸡
舍,舍外圈定20 m
2
的户外活动范围。研究对象为
同批次3月龄蛋鸡20只,饲养于可自由进出户外活
动区的鸡舍内,每日于7:00
—
8:00、15:00
—
16:00间
进行喂食,鸡只可自由采食、饮水、活动。海康威
视C5C摄像头安装在鸡舍内屋角顶端,如图1所示。
试验期间摄像头每天7:00
—
17:30采集鸡群的活动,
视频分辨率1 920×1 080,帧率15 fps。
注:1食槽;2摄像头盲区。
图1 移动鸡舍内摄像头安装示意图
Fig.1 Camera installation in hen house
1.2 YOLO v4目标检测算法
YOLO(You only look once)算法是1种 “one-
stage”的端到端目标检测算法,与R-CNN系列的
“two-stage”相比,YOLO最大的特点是将物体类
别和物体位置用回归的方法1次预测,大大提高运
行速度,可以满足实时处理的要求。
YOLO v4算法训练时采用Mosaic数据增强的
方法,主干网络采用全卷积神经网络CSPDarkNet53
提取图像特征,改进的激活函数为Mish;为了增加
网络感受视野,Neck网络使用SPP-block和PAN
收集低级和高级特征图进行信息融合;Head仍然采
用YOLO算法进行物体类别和位置的预测。此算法
对目前CNN领域的最新算法和优化策略做了大量实
验,使得使用单个1080 Ti或2 080 Ti的GPU就可
以训练出快速、准确的目标检测器,对于小目标检
测也有不错的效果
[13]
。
1.3 模型训练
本试验计算机配置:CPU Intel Core i7-9700,
主频 3 GHz,内存32 GB,显卡NVIDIA GeForce
GTX 2080Ti, CUDA 版本10.1.120,CUDNN版本
7.4.1,所有程序在 Windows 10 操作系统下进行。
随机选取不同日期不同时间段的7 988幅图片
作为数据集。使用LabelImg软件,对鸡只的采食、
站立、趴卧、梳羽、啄羽和打架行为进行标注。其
中包含采食行为32 017个,站立行为42 336个,
趴卧行为19 171个,梳羽行为7 414个,啄羽行为
566个,打架行为363个。由于啄羽和打架行为偏少,
对含有该行为的图片进行图像亮度调整、剪裁、模
糊化处理和添加噪声等数据扩充。最终,图片总数
10 239张,采食行为34 619个,站立行为47 221个,
趴卧行为21 885个,梳羽行为8 782个,啄羽行为
1 978个,打架行为1 202个,以提高行为检测准确度。
使用YOLO v4进行模型训练,图片resize为
第2期
李 娜,等:基于深度学习的群养鸡只行为监测方法研究
119
608×608,每次迭代训练样本数64,批次32,迭
代次数20 000,初始学习率0.001,在迭代次数达
到15 000和18 000时,学习率均下降1/10。通过
K-mean算法对anchors参数进行聚类,9个锚框分
别为:(29,76),(36,100),(38,60),(40,58),(48,100),
(56,146),(64,96),(77,105),(94,150)。
1.4 模型评价
本文使用精确率
P
(Precision)、召回率
R
(recall)
和
F
1值(
F
1-Score)来衡量模型性能,如公式
(1)~(3)所示。
P=
TP
TP+FP
(1)
R
=
TP
TP+FN
(2)
F
1=
2PR
P+R
(3)
其中,
TP
(True Positive):是正样本并且
被预测为正样本的个数;
FP
(False Positive):
是负样本但是被预测为正样本的个数;
FN
(False
Negtive):是正样本被预测为负样本的个数。
使用测试集共718幅图像对模型进行评估。各
行为的PR曲线如图2所示。
PR curve
PR 曲线
率
n
o
i
确
s
i
精
c
e
r
P
召回率 Recall
图2 6种行为的PR曲线
Fig.2 PR curves of six behaviors
平均精确率(
AP
)由高到低分别为采食96.67%,
站立90.34%,梳羽82.01%,趴卧78.46%,打架
67.14%,啄羽63.38%,总体mAP (Mean average
precision)为79.67%。模型检测置信度阈值为0.25时,
典型测试结果如图3所示。
(a)不拥挤
(b)较拥挤
图3 阈值为0.25时模型测试结果
Fig.3 Model test results by 0.25 threshold
图3(a)中鸡群密集度低时,检测效果较好;
图3(b)鸡群较拥挤时,出现1只鸡同时检测出2
种行为的情况和漏检情况。设置合适的置信度阈值,
可以提高模型检测精度。考察不同阈值下各行为总
精确度
P
、召回率
R
和
F
1分数,测试结果见表1。
可见,随着阈值的升高,精确率变大,召回率下降。
综合考虑,选择阈值为0.5。
在0.5置信度阈值下,测试得到各行为的精确
率
P
和召回率
R
如表2所示。可知,模型对采食行
为的判别最好,但是,啄羽行为的召回率偏低,易
漏检。此外,模型的检测速度在本实验计算机中达
到45.3 fps,摄像头视频帧率15 fps,完全满足实时
处理的要求。
表1 置信度阈值与模型精度
Table 1 Confidence threshold and model precision
阈值精确率
P
召回率
R
F
1值
Treshold
Precision
Recall
F
1-Score
0.20.780.920.84
0.30.810.900.85
0.40.830.880.86
0.50.850.870.86
0.60.870.840.85
0.70.890.810.85
120河北农业大学学报第44卷
表2 各行为预测评价指标
Table 2 Evaluation indexes of behaviors
行为精确率(
P
)/%召回率(
R
)/%
BehaviorPrecisionRecall
采食93.5795.54
站立82.7988.59
趴卧72.6180.17
梳羽78.5177.02
啄羽65.4757.97
打架69.5866.27
2 基于时间序列的啄羽实时监测
选取5段、每段2 min的含有啄羽行为的视频
进行测试,由于啄羽行为的识别率较低,不一定每
帧图像都能正确识别,同时,鸡群密集度较高时也
容易错误识别,测试结果如图4所示。
stand (87%)
picking (87%)
stand (100
picking (
feather
%)
98%)
-pecked (65%)
lie (94
lie (96%)
lie (
%)
95%)
(a)正确检测
stand (95%)
stand (89%)
stand (95%)
stand
picking (
feather
98%)
-pecked (78%)
lie (96%)
(b)错误识别
图4 啄羽行为检测结果图
Fig.4 Feather pecking behavior detection results
由于啄羽行为具有一定的时间连续性,即会在
连续的多帧图像中出现,通过单帧图像检测漏检率
较高。提取每帧图像的啄羽行为个数按时间顺序统
计,时间序列如图5所示。
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
a
0
e
F
0 200 400 600 800 1 000 1 200 1 400 1 600 1 800
Frame
帧
(a)视频1啄羽检测时间序列图
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
0
a
e
630 635 640 645 650 655 660
F
Frame
帧
(b)第630帧到660帧检测结果
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
0
a
e
0 200 400 600 800 1 000 1 200 1 400 1 600 1 800
F
Frame
帧
(c)时间序列检测结果
图5 啄羽检测时间序列图
Fig.5 Feather pecking detection time series
结合视频和图5(a)可以看出视频有非啄羽行
为而误识别为啄羽行为的情况,但是时间连续性差。
放大有连续性的啄羽行为片段如图5(b)可见,不
是每帧图像都能正确识别啄羽行为,但是一般5帧
内可以识别出至少1次。为了剔除漏检的情况,统
计行为持续时长,求取每秒的啄羽行为平均值,形
成1个新的时间序列,并认为5 s内发生2次啄羽行
为以上是1个行为片段,最终得到持续时间在30 s
以上的啄羽行为片段具体时间及时长。程序流程为:
(1)每连续15帧(1 s)图片计算1次啄羽行
为的平均值
AVG
;
(2)若
AVG
大于0.1,则该秒钟有啄羽行为出
现,记为1,否则记为0;
(3)通过1个长度为4的滑动平均滤波器,使
2次啄羽行为时间间隔小于等于3 s间隔的行为认为
是1个行为序列;
(4)若该啄羽行为序列持续时长大于等于30 s,
记录啄羽时刻及持续时长。
第2期
李 娜,等:基于深度学习的群养鸡只行为监测方法研究
121
时间序列检测结果如图5(c)所示,第74、
100、181和199帧是错误检测帧,333到380帧虽
然具有连续性,但持续时长不到30 s,所以不予计算;
526到1 800帧为检测到的啄羽时段。在5段视频中
的检测结果如表3所示,该方法解决了啄羽行为漏
检率高的问题,提升了检测精确度。
表3 5段视频的时间序列检测结果
Tab.3 Time series detection results of five videos
视频检测到啄羽总帧数
检测到啄羽总时长/s
实际啄羽时长/s
VideoTotal number of
Total time of feather
Actual feather
frames detected
pecking detected
pecking time
11 0988584
28556667
32443832
44684042
51 472118120
3 行为识别误差分析
本试验应用YOLO v4实现群养鸡中单只鸡只的
行为识别,其中,摄像头完全覆盖食槽区,采食时
鸡只位置固定,行为识别精确率最高;在摄像头下
方的鸡只站立和趴卧行为易混淆;打架和啄羽行为
误差较大;各行为识别误差产生的主要原因有:
(1)鸡只个体相对较小,数量较多,且鸡群喜
聚集,极易出现重叠、遮挡情况,容易漏检,后续
可提高数据集标注准确度、增大数据集或改进算法
来提高小目标识别精度;
(2)打架和啄羽行为是2只甚至多只鸡只的共
同行为,且具有时间持续性,单张图片检测易误检、
漏检;啄羽行为的持续时间一般较长,本试验采用
了时间序列分析的方法,提取了大于30 s的啄羽行
为,精确度较高,但是小于30 s的啄羽行为没有考虑;
打架行为持续时间较短,不易采用时间序列分析的
方法,后续可采用追踪的方法和运动速度判别以提
高行为识别准确度。
4 结论
本试验将YOLO v4算法应用于实时监测散养
鸡群在鸡舍中的采食、站立、趴卧、梳羽、啄羽和
打架行为,平均精确率分别为96.67%、90.34%、
78.46%、82.01%、63.38%和67.14%;对啄羽行为
召回率低的情况,提出了基于时间序列处理算法,
大大提高了召回率,可以实现实时处理,为散养鸡
的精准养殖提供了可能。
参考文献:
[1] Berckmans D. Precision livestock farming technologies
for welfare management in intensive livestock systems
[J].Revue Scientifique et Technique, 2014, 33(1):
189-196.
[2] 汪开英,赵晓洋,何勇.畜禽行为及生理信息的无损监
测技术研究进展[J].农业工程学报, 2017, 33(20):
197-209.
[3] 劳凤丹,杜晓冬,滕光辉.基于深度图像的蛋鸡行为
识别方法[J].农业机械学报,2017,48(1):155-162.
[4] 顾静秋,王志海,高荣华,等.基于融合图像与运动量
的奶牛行为识别方法[J].农业机械学报, 2017, 48
(6):145-151.
[5] 康熙,张旭东,刘刚,等.基于机器视觉的跛行奶牛牛
蹄定位方法[J].农业机械学报, 2019, 50(S1): 276-
282.
[6] 杨秋妹,肖德琴,张根兴.猪只饮水行为机器视觉自
动识别[J].农业机械学报, 2018, 49(6): 232-238.
[7] 李泊,沈明霞,刘龙申,等.基于YOLO v3与图结构
模型的群养猪只头尾辨别方法[J].农业机械学报,
2020, 51(7):44-51.
[8] 薛月菊,朱勋沐,郑婵,等.基于改进Faster R-CNN
识别深度视频图像哺乳母猪姿态[J].农业工程学报,
2018,34(9):189-196.
[9] 何东健,刘建敏,熊虹婷,等.基于改进YOLO v3模
型的挤奶奶牛个体识别方法[J].农业机械学报,
2020, 51(4):250-260.
[10] Juan Wang, Nan Wang, Lihua Li, et al. Real-time
behavior detection and judgment of egg breeders based
on YOLOv3[J]. Neural Computing and Applications,
2020, 32(10): 5471-5481.
[11] Redmon J,Divvala S,Girshick R,et only
look once:unified,real-time object detection
[C]//
IEEE Conference on Computer Vision and Pattern
Recognition, USA: IEEE, 2016: 779-788.
[12] Redmon J, Farhadia A. YOLO v3: an incremental
improvement[C] //IEEE Conference on Computer
Vision and Pattern Recognition, USA: IEEE, 2018,
arXiv: 1804. 02767.
[13] Bochkovskiy A, Wang C Y, Liao H Y M. YOLOv4:
Optimal speed and accuracy of object detection[J/DB].
2020. /abs/2004.10934.
(责任编辑:张月清)
2024年4月7日发(作者:仲孙金)
第44卷第2期
2021年3月
河北农业大学学报
JOURNAL OF HEBEI AGRICULTURAL UNIVERSITY
Vol.44 No.2
Mar.2021
文章编号:1000-1573(2021)02-0117-05
DOI
:10.13320/.2021.0035
基于深度学习的群养鸡只行为监测方法研究
李 娜
1
,任昊宇
2
,任振辉
1
(1.河北农业大学 机电工程学院, 河北 保定 071001;2.河北农业大学 现代科技学院,河北 保定 071001)
摘要:畜禽的行为能够反映其健康状况、环境舒适度等福利信息,是评价畜禽福利状况的重要指标。为了实时
自动监测鸡舍中鸡群的行为状况,提出了1种基于深度学习的鸡群行为监测方法。用摄像头连续4个月每天
7:00—17:30记录散养鸡群在鸡舍内的活动,筛选7 988幅图片对鸡只的采食、站立、趴卧、梳羽、啄羽和打架
行为进行标注,利用YOLO v4目标检测模型识别,各行为平均精确率分别为采食96.67%、站立90.34%、趴卧
78.46%、梳羽82.01%、啄羽63.38%、打架67.14%,模型总体平均精确率为79.69%。为进一步提高啄羽行为
检测结果,采用了时间序列分析方法提取持续时间大于30 s的啄羽行为。实验结果表明,该方法可以实现群养
鸡只行为的实时自动监测,解决人工不能全天实时监测的问题,为精准化养殖提供了可能。
关 键 词: YOLO v4;鸡只行为识别;时间序列;精准畜牧业
中图分类号:TP202;S66
文献标志码:A
开放科学(资源服务)标识码(OSID):
Research of behavior monitoring method of flock hens based on deep learning
LI Na
1
, REN Haoyu
2
, REN Zhenhui
1
(1. College of Mechanical and Electrical Engineering, Hebei Agricultural University, Baoding 071001, China; 2.
College of Modern Science
&
Technology, Hebei Agricultural University, Baoding 071001, China)
Abstract: The behavior of livestock and poultry can reflect their health condition, environmental comfort level
and other welfare information, which is an important index to evaluate the welfare status. In order to monitor the
behavior of the chickens in the chicken house automatically and in real time, a deep learning method was proposed
to monitor the behavior of chickens. The camera recorded chicken activities everyday from 7:00 to 17:30 for four
months in the chicken house. Eating, standing, lying, preening, feather pecking and fighting behaviors of chickens
were labeled in 7988 images, the average precision (AP) rates were 96.67%, 90.34%, 78.46%, 82.01%, 67.14% and
63.38% respectively, and the mean average precision (mAP) was 79.69%. To improve the feather pecking behavior
detection, a method of time series analysis was used, which could extract the feather pecking behavior lasting more
than 30s. The experimental results show that this method can realize real
-
time automatic monitoring of the behavior
of chickens, and solve the problem that human beings cannot monitor the behavior of chickens all day long, which
provides the possibility for precision livestock farming.
Keywords: YOLO v4; hen behavior recognition; time series; precision livestock farming
收稿日期:2020-11-15
基金项目: 河北省科技计划项目 (16236605D-2).
第一作者:李 娜(1979-),女,河北保定人,博士研究生,讲师,主要从事智能化检测与自动控制技术研究.
E-mail:****************.cn
通信作者: 任振辉(1968-),男,河北保定人,博士,教授,主要从事智能化检测与自动控制技术研究.
E-mail:***************.cn
本刊网址:
http: // hauxb. hebau. edu. cn
118河北农业大学学报第44卷
随着信息技术的飞速发展,畜牧业也由传统的
养殖管理向着信息化、自动化的方向发展。精准畜
牧业(Precision livestock farming, PLF)定义为使用
过程工程的原理和技术应用于畜牧业,自动监测、
建模和管理动物生产
[1]
。其核心是实时、自动和持
续的监测畜禽的行为,以改善其健康状况和福利状
况,也为长期的监控产品质量提供最好的保证。目前,
视频监控越来越多地应用在畜禽养殖中,由于其可
以非入侵无接触的长期监测动物,与可穿戴设备如
耳标、RFID等相比,不会影响动物的活动,廉价经
济,并且随着计算机视觉技术的快速发展,使得用
摄像头监测动物行为、自动分析动物的福利和健康
成为可能
[2-5]
。
随着深度学习理论的快速发展,众多研究者将
其应用在畜禽养殖中,尤其在复杂场景下识别猪、
牛的行为,具有良好的性能
[6-9]
。鸡只识别方面,
王娟等
[10]
基于YOLO v3识别了本交笼养鸡的喝水
(86.88%)、站立(94.57%)、吃食(93.10%)、
交配(94.72%)、打架(88.67%)和展翅(92.02%)
行为。基于深度学习理论的畜禽行为识别应用在猪、
牛等大型动物上较多,由于鸡只的个体小、数量大,
应用深度学习实现鸡只个体行为识别的研究较少。
在众多深度学习算法中,YOLO系列算法
[11-12]
是目前运行速度快、多目标检测准确率较高的算法,
符合实时处理的要求。本试验以YOLO v4目标检测
算法为基础,旨在研究散养鸡群在鸡舍中的行为,
实现对鸡只采食、站立、趴卧、梳羽、啄羽和打架
行为的实时、自动监测。
1 材料与方法
1.1 数据采集
本试验于2019年8月27日到12月22日在河
北省无极县石家庄鑫农机械有限公司河北农业大学
研究生实践教育基地进行;模拟林下养殖模式,使
用1种长宽高为3 m×1.95 m×1.95 m的可移动鸡
舍,舍外圈定20 m
2
的户外活动范围。研究对象为
同批次3月龄蛋鸡20只,饲养于可自由进出户外活
动区的鸡舍内,每日于7:00
—
8:00、15:00
—
16:00间
进行喂食,鸡只可自由采食、饮水、活动。海康威
视C5C摄像头安装在鸡舍内屋角顶端,如图1所示。
试验期间摄像头每天7:00
—
17:30采集鸡群的活动,
视频分辨率1 920×1 080,帧率15 fps。
注:1食槽;2摄像头盲区。
图1 移动鸡舍内摄像头安装示意图
Fig.1 Camera installation in hen house
1.2 YOLO v4目标检测算法
YOLO(You only look once)算法是1种 “one-
stage”的端到端目标检测算法,与R-CNN系列的
“two-stage”相比,YOLO最大的特点是将物体类
别和物体位置用回归的方法1次预测,大大提高运
行速度,可以满足实时处理的要求。
YOLO v4算法训练时采用Mosaic数据增强的
方法,主干网络采用全卷积神经网络CSPDarkNet53
提取图像特征,改进的激活函数为Mish;为了增加
网络感受视野,Neck网络使用SPP-block和PAN
收集低级和高级特征图进行信息融合;Head仍然采
用YOLO算法进行物体类别和位置的预测。此算法
对目前CNN领域的最新算法和优化策略做了大量实
验,使得使用单个1080 Ti或2 080 Ti的GPU就可
以训练出快速、准确的目标检测器,对于小目标检
测也有不错的效果
[13]
。
1.3 模型训练
本试验计算机配置:CPU Intel Core i7-9700,
主频 3 GHz,内存32 GB,显卡NVIDIA GeForce
GTX 2080Ti, CUDA 版本10.1.120,CUDNN版本
7.4.1,所有程序在 Windows 10 操作系统下进行。
随机选取不同日期不同时间段的7 988幅图片
作为数据集。使用LabelImg软件,对鸡只的采食、
站立、趴卧、梳羽、啄羽和打架行为进行标注。其
中包含采食行为32 017个,站立行为42 336个,
趴卧行为19 171个,梳羽行为7 414个,啄羽行为
566个,打架行为363个。由于啄羽和打架行为偏少,
对含有该行为的图片进行图像亮度调整、剪裁、模
糊化处理和添加噪声等数据扩充。最终,图片总数
10 239张,采食行为34 619个,站立行为47 221个,
趴卧行为21 885个,梳羽行为8 782个,啄羽行为
1 978个,打架行为1 202个,以提高行为检测准确度。
使用YOLO v4进行模型训练,图片resize为
第2期
李 娜,等:基于深度学习的群养鸡只行为监测方法研究
119
608×608,每次迭代训练样本数64,批次32,迭
代次数20 000,初始学习率0.001,在迭代次数达
到15 000和18 000时,学习率均下降1/10。通过
K-mean算法对anchors参数进行聚类,9个锚框分
别为:(29,76),(36,100),(38,60),(40,58),(48,100),
(56,146),(64,96),(77,105),(94,150)。
1.4 模型评价
本文使用精确率
P
(Precision)、召回率
R
(recall)
和
F
1值(
F
1-Score)来衡量模型性能,如公式
(1)~(3)所示。
P=
TP
TP+FP
(1)
R
=
TP
TP+FN
(2)
F
1=
2PR
P+R
(3)
其中,
TP
(True Positive):是正样本并且
被预测为正样本的个数;
FP
(False Positive):
是负样本但是被预测为正样本的个数;
FN
(False
Negtive):是正样本被预测为负样本的个数。
使用测试集共718幅图像对模型进行评估。各
行为的PR曲线如图2所示。
PR curve
PR 曲线
率
n
o
i
确
s
i
精
c
e
r
P
召回率 Recall
图2 6种行为的PR曲线
Fig.2 PR curves of six behaviors
平均精确率(
AP
)由高到低分别为采食96.67%,
站立90.34%,梳羽82.01%,趴卧78.46%,打架
67.14%,啄羽63.38%,总体mAP (Mean average
precision)为79.67%。模型检测置信度阈值为0.25时,
典型测试结果如图3所示。
(a)不拥挤
(b)较拥挤
图3 阈值为0.25时模型测试结果
Fig.3 Model test results by 0.25 threshold
图3(a)中鸡群密集度低时,检测效果较好;
图3(b)鸡群较拥挤时,出现1只鸡同时检测出2
种行为的情况和漏检情况。设置合适的置信度阈值,
可以提高模型检测精度。考察不同阈值下各行为总
精确度
P
、召回率
R
和
F
1分数,测试结果见表1。
可见,随着阈值的升高,精确率变大,召回率下降。
综合考虑,选择阈值为0.5。
在0.5置信度阈值下,测试得到各行为的精确
率
P
和召回率
R
如表2所示。可知,模型对采食行
为的判别最好,但是,啄羽行为的召回率偏低,易
漏检。此外,模型的检测速度在本实验计算机中达
到45.3 fps,摄像头视频帧率15 fps,完全满足实时
处理的要求。
表1 置信度阈值与模型精度
Table 1 Confidence threshold and model precision
阈值精确率
P
召回率
R
F
1值
Treshold
Precision
Recall
F
1-Score
0.20.780.920.84
0.30.810.900.85
0.40.830.880.86
0.50.850.870.86
0.60.870.840.85
0.70.890.810.85
120河北农业大学学报第44卷
表2 各行为预测评价指标
Table 2 Evaluation indexes of behaviors
行为精确率(
P
)/%召回率(
R
)/%
BehaviorPrecisionRecall
采食93.5795.54
站立82.7988.59
趴卧72.6180.17
梳羽78.5177.02
啄羽65.4757.97
打架69.5866.27
2 基于时间序列的啄羽实时监测
选取5段、每段2 min的含有啄羽行为的视频
进行测试,由于啄羽行为的识别率较低,不一定每
帧图像都能正确识别,同时,鸡群密集度较高时也
容易错误识别,测试结果如图4所示。
stand (87%)
picking (87%)
stand (100
picking (
feather
%)
98%)
-pecked (65%)
lie (94
lie (96%)
lie (
%)
95%)
(a)正确检测
stand (95%)
stand (89%)
stand (95%)
stand
picking (
feather
98%)
-pecked (78%)
lie (96%)
(b)错误识别
图4 啄羽行为检测结果图
Fig.4 Feather pecking behavior detection results
由于啄羽行为具有一定的时间连续性,即会在
连续的多帧图像中出现,通过单帧图像检测漏检率
较高。提取每帧图像的啄羽行为个数按时间顺序统
计,时间序列如图5所示。
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
a
0
e
F
0 200 400 600 800 1 000 1 200 1 400 1 600 1 800
Frame
帧
(a)视频1啄羽检测时间序列图
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
0
a
e
630 635 640 645 650 655 660
F
Frame
帧
(b)第630帧到660帧检测结果
r
e
b
1
m
u
数
n
g
个
n
i
羽
k
c
啄
e
p
r
e
h
t
0
a
e
0 200 400 600 800 1 000 1 200 1 400 1 600 1 800
F
Frame
帧
(c)时间序列检测结果
图5 啄羽检测时间序列图
Fig.5 Feather pecking detection time series
结合视频和图5(a)可以看出视频有非啄羽行
为而误识别为啄羽行为的情况,但是时间连续性差。
放大有连续性的啄羽行为片段如图5(b)可见,不
是每帧图像都能正确识别啄羽行为,但是一般5帧
内可以识别出至少1次。为了剔除漏检的情况,统
计行为持续时长,求取每秒的啄羽行为平均值,形
成1个新的时间序列,并认为5 s内发生2次啄羽行
为以上是1个行为片段,最终得到持续时间在30 s
以上的啄羽行为片段具体时间及时长。程序流程为:
(1)每连续15帧(1 s)图片计算1次啄羽行
为的平均值
AVG
;
(2)若
AVG
大于0.1,则该秒钟有啄羽行为出
现,记为1,否则记为0;
(3)通过1个长度为4的滑动平均滤波器,使
2次啄羽行为时间间隔小于等于3 s间隔的行为认为
是1个行为序列;
(4)若该啄羽行为序列持续时长大于等于30 s,
记录啄羽时刻及持续时长。
第2期
李 娜,等:基于深度学习的群养鸡只行为监测方法研究
121
时间序列检测结果如图5(c)所示,第74、
100、181和199帧是错误检测帧,333到380帧虽
然具有连续性,但持续时长不到30 s,所以不予计算;
526到1 800帧为检测到的啄羽时段。在5段视频中
的检测结果如表3所示,该方法解决了啄羽行为漏
检率高的问题,提升了检测精确度。
表3 5段视频的时间序列检测结果
Tab.3 Time series detection results of five videos
视频检测到啄羽总帧数
检测到啄羽总时长/s
实际啄羽时长/s
VideoTotal number of
Total time of feather
Actual feather
frames detected
pecking detected
pecking time
11 0988584
28556667
32443832
44684042
51 472118120
3 行为识别误差分析
本试验应用YOLO v4实现群养鸡中单只鸡只的
行为识别,其中,摄像头完全覆盖食槽区,采食时
鸡只位置固定,行为识别精确率最高;在摄像头下
方的鸡只站立和趴卧行为易混淆;打架和啄羽行为
误差较大;各行为识别误差产生的主要原因有:
(1)鸡只个体相对较小,数量较多,且鸡群喜
聚集,极易出现重叠、遮挡情况,容易漏检,后续
可提高数据集标注准确度、增大数据集或改进算法
来提高小目标识别精度;
(2)打架和啄羽行为是2只甚至多只鸡只的共
同行为,且具有时间持续性,单张图片检测易误检、
漏检;啄羽行为的持续时间一般较长,本试验采用
了时间序列分析的方法,提取了大于30 s的啄羽行
为,精确度较高,但是小于30 s的啄羽行为没有考虑;
打架行为持续时间较短,不易采用时间序列分析的
方法,后续可采用追踪的方法和运动速度判别以提
高行为识别准确度。
4 结论
本试验将YOLO v4算法应用于实时监测散养
鸡群在鸡舍中的采食、站立、趴卧、梳羽、啄羽和
打架行为,平均精确率分别为96.67%、90.34%、
78.46%、82.01%、63.38%和67.14%;对啄羽行为
召回率低的情况,提出了基于时间序列处理算法,
大大提高了召回率,可以实现实时处理,为散养鸡
的精准养殖提供了可能。
参考文献:
[1] Berckmans D. Precision livestock farming technologies
for welfare management in intensive livestock systems
[J].Revue Scientifique et Technique, 2014, 33(1):
189-196.
[2] 汪开英,赵晓洋,何勇.畜禽行为及生理信息的无损监
测技术研究进展[J].农业工程学报, 2017, 33(20):
197-209.
[3] 劳凤丹,杜晓冬,滕光辉.基于深度图像的蛋鸡行为
识别方法[J].农业机械学报,2017,48(1):155-162.
[4] 顾静秋,王志海,高荣华,等.基于融合图像与运动量
的奶牛行为识别方法[J].农业机械学报, 2017, 48
(6):145-151.
[5] 康熙,张旭东,刘刚,等.基于机器视觉的跛行奶牛牛
蹄定位方法[J].农业机械学报, 2019, 50(S1): 276-
282.
[6] 杨秋妹,肖德琴,张根兴.猪只饮水行为机器视觉自
动识别[J].农业机械学报, 2018, 49(6): 232-238.
[7] 李泊,沈明霞,刘龙申,等.基于YOLO v3与图结构
模型的群养猪只头尾辨别方法[J].农业机械学报,
2020, 51(7):44-51.
[8] 薛月菊,朱勋沐,郑婵,等.基于改进Faster R-CNN
识别深度视频图像哺乳母猪姿态[J].农业工程学报,
2018,34(9):189-196.
[9] 何东健,刘建敏,熊虹婷,等.基于改进YOLO v3模
型的挤奶奶牛个体识别方法[J].农业机械学报,
2020, 51(4):250-260.
[10] Juan Wang, Nan Wang, Lihua Li, et al. Real-time
behavior detection and judgment of egg breeders based
on YOLOv3[J]. Neural Computing and Applications,
2020, 32(10): 5471-5481.
[11] Redmon J,Divvala S,Girshick R,et only
look once:unified,real-time object detection
[C]//
IEEE Conference on Computer Vision and Pattern
Recognition, USA: IEEE, 2016: 779-788.
[12] Redmon J, Farhadia A. YOLO v3: an incremental
improvement[C] //IEEE Conference on Computer
Vision and Pattern Recognition, USA: IEEE, 2018,
arXiv: 1804. 02767.
[13] Bochkovskiy A, Wang C Y, Liao H Y M. YOLOv4:
Optimal speed and accuracy of object detection[J/DB].
2020. /abs/2004.10934.
(责任编辑:张月清)