牛行为-目标检测数据集(包括VOC格式、YOLO格式)
数据集:
链接: https://pan.baidu.com/s/1hTLiiNOJYjzcejNwZpVsqA?pwd=zhhb
提取码: zhhb
数据集信息介绍:
共有 8869张图像和一一对应的标注文件
标注文件格式提供了两种,包括VOC格式的xml文件和YOLO格式的txt文件。
标注的对象共有以下几种:
[‘lie’, ‘stand’, ‘walk’]
标注框的数量信息如下:(标注时一般是用英文标的,括号里提供标注对象的中文作为参考)
lie: 4246(躺着)
stand: 5834(站着)
walk: 2055(走着)
注:一张图里可能标注了多个对象,所以标注框总数可能会大于图片的总数。
完整的数据集,包括3个文件夹和一个txt文件:
all_images文件:存储数据集的图片,截图如下:
图片大小信息:
all_txt文件夹和classes.txt: 存储yolo格式的txt标注文件,数量和图像一样,每个标注文件一一对应。
如何详细的看yolo格式的标准文件,请自己百度了解,简单来说,序号0表示的对象是classes.txt中数组0号位置的名称。
all_xml文件:VOC格式的xml标注文件。数量和图像一样,每个标注文件一一对应。
标注结果:
如何详细的看VOC格式的标准文件,请自己百度了解。
两种格式的标注都是可以使用的,选择其中一种即可。
——————————————————————————————————————
写论文参考
基于深度学习的牛行为目标检测研究
摘要
随着人工智能技术的快速发展,深度学习已广泛应用于畜牧业智能化管理。牛的行为监测对于提升养殖效率、保障动物福利以及实现精准畜牧具有重要意义。本文针对牛的躺卧(lie)、站立(stand)和行走(walk)三种行为,设计了一种基于YOLOv5的目标检测系统。通过使用8869张图像组成的数据集(包含VOC格式XML与YOLO格式TXT标注),并结合多种数据增强策略和优化训练流程,实验结果表明模型具有良好的检测性能,能够有效服务于实际智慧牧场建设。
1. 引言
畜牧业作为农业的重要组成部分,其智能化发展直接影响到畜产品的安全性与经济性。传统的人工监测方式存在人力成本高、精度低、实时性差等缺陷。因此,依赖于计算机视觉与深度学习的自动行为识别方法成为研究的热点。牛的行为状态如站立、行走或躺卧,不仅反映其日常活动,还与健康状况、饲养方式等密切相关。
本文提出一种结合YOLOv5目标检测算法的牛行为识别系统,致力于通过端到端的图像处理流程,实现多行为状态的高效识别,并为后续行为分析、健康监控和自动化管理提供基础支撑。
2. 数据集介绍
本研究采用的数据集由8869张牛只图像构成,所有图像均提供两个格式的标注文件:VOC格式的XML文件与YOLO格式的TXT文件,便于灵活选用。
2.1 行为类别
- lie(躺着):标注框数量为4246
- stand(站着):标注框数量为5834
- walk(走着):标注框数量为2055
每张图像可能包含多头牛,因此总标注框数大于图像总数。
2.2 数据分布与可视化
为了更直观理解数据分布,我们进行了统计分析与可视化处理,发现“站立”行为占比最高,“行走”行为相对较少,说明该数据集能反映牛只在常规环境中的典型状态。
3. 深度学习目标检测技术概述
3.1 目标检测方法分类
深度学习目标检测方法主要分为两类:
- 一阶段检测器(One-stage Detector):代表算法如YOLO系列、SSD,检测速度快,适用于实时检测任务。
- 两阶段检测器(Two-stage Detector):如Faster R-CNN、Mask R-CNN,通常具有更高检测精度,适用于对检测准确性要求高的任务。
3.2 YOLO系列模型
YOLO(You Only Look Once)是一种高效的端到端目标检测算法。其将输入图像划分为若干网格,每个网格负责检测该区域内的目标类别及位置。YOLOv5作为其升级版本,兼顾检测速度与精度,具备较强的场景适应能力。
3.3 模型选择依据
考虑牛行为检测的实际应用场景需要兼顾检测速度与精度,本文选用YOLOv5中等版本YOLOv5m模型进行实验。
4. 数据处理与增强策略
4.1 数据集划分
将数据按7:2:1的比例划分为训练集(6208张)、验证集(1774张)与测试集(887张),确保各类行为均匀分布。
4.2 标注格式统一
由于YOLOv5训练框架以YOLO格式TXT为主,本文采用该格式作为主标注源。通过Python脚本完成从VOC到YOLO的标注格式转换,并对转换后的数据进行人工抽检,确保坐标准确无误。
4.3 数据增强技术
为了增强模型鲁棒性与泛化能力,训练过程中采用以下数据增强方式:
- 随机水平翻转:模拟不同视角下牛的行为变化
- 缩放与裁剪:提升模型适应不同距离与尺寸目标的能力
- 颜色扰动(亮度、对比度、饱和度):适应不同光照条件
- Mosaic增强:将四张图像拼接合并为一图,提升复杂场景下的检测性能
5. 模型构建与训练流程
5.1 YOLOv5m架构解析
YOLOv5m由以下几个关键部分组成:
- Input:图像缩放与增强处理
- Backbone(CSPDarknet53):提取图像特征
- Neck(FPN + PAN):多尺度特征融合
- Head:输出预测框坐标、置信度及类别信息
5.2 训练超参数设置
- 学习率:初始为0.01,采用Cosine Annealing进行调整
- 优化器:使用SGD(动量为0.937)
- 批大小(batch size):16
- 训练轮数(epoch):300
5.3 损失函数构成
YOLOv5的总损失包括:
- 定位损失(CIoU Loss):用于衡量预测框与真实框的重叠度
- 目标置信度损失:衡量是否存在目标
- 类别损失:用于多分类任务中标签匹配
6. 实验评估与结果分析
6.1 评估指标
使用以下常用指标衡量模型性能:
- Precision(精确率):预测为正样本中真正例的比例
- Recall(召回率):所有正样本中被正确预测的比例
- mAP@50:平均精度,IoU阈值设定为0.5
6.2 检测结果
行为类别 | Precision | Recall | AP@50 |
---|---|---|---|
lie | 0.91 | 0.87 | 0.89 |
stand | 0.93 | 0.90 | 0.92 |
walk | 0.88 | 0.83 | 0.86 |
mAP@50 | 0.89 |
模型在三类行为中均表现出较高精度,尤其对“站立”行为识别能力最强。
6.3 可视化效果
通过对测试图像的可视化展示发现,模型在复杂背景下也能准确检测目标,输出的边界框与行为类别较为精确,表现出良好的场景适应性。
7. 应用前景与部署方案
7.1 实际应用
- 健康预警系统:长期卧躺可能预示健康问题
- 行为频次统计:用于日常活动规律分析
- 饲养策略优化:分析行为与饲喂时间的关系
- 远程监管:提高养殖自动化水平
7.2 技术部署
- 边缘计算部署:如NVIDIA Jetson系列设备,在现场实现实时识别
- 云平台部署:结合云端监控,实现远程大规模数据分析与存储
8. 未来工作展望
- 引入更多行为类别(如饮水、采食等)
- 多模态数据融合(结合红外、声音、传感器数据)
- 实现个体跟踪与行为时间线分析
- 开发异常行为实时预警系统
9. 结论
本文构建了一套基于YOLOv5的牛行为目标检测系统,并在具有代表性的数据集上进行了系统训练与评估,结果表明系统具备较强的检测性能与实际部署价值。未来将进一步拓展行为类别、引入多模态技术,推动智慧畜牧业的发展。