猪仔行为检测数据集(3700张高清标注)| YOLO实战 智慧养殖与猪只健康监测
摘要
随着人工智能与农业的深度融合,智慧养殖正成为推动畜牧业现代化转型的关键力量。猪只行为监测作为智慧养殖的核心环节,对于评估猪只健康状况、优化养殖管理、提升生产效率具有重要意义。本文正式开源一套针对规模化养殖场景的高质量猪仔行为检测数据集,总计包含3700张高清标注图像,覆盖猪仔日常生活中的9类核心行为:饮水、进食、撞击、跪地、拱蹭、休息、站立、吮乳、踩踏。数据集严格按照标准格式划分为训练集、验证集与测试集,完美兼容YOLO系列目标检测框架,可直接用于模型训练与算法验证。本文将详细介绍数据集的构建背景、类别定义、标注规范以及基于YOLOv8的训练实战心得,希望能为从事智慧农业、智能养殖领域的研究者与开发者提供一份有价值的参考。
一、引言:智慧养殖时代的猪仔行为监测
1.1 为什么需要猪仔行为监测?
我国是全球最大的猪肉生产国和消费国,生猪养殖规模居世界首位。然而,传统养殖模式面临诸多挑战:
- 人力成本高:规模化猪场需要大量人力进行巡栏、观察、记录,成本居高不下;
- 疾病发现滞后:猪只患病早期往往表现为行为异常,但人工观察难以及时发现;
- 管理精细化不足:缺乏对猪只个体行为的量化数据,难以实现精准饲喂和个体化管理;
- 福利监管困难:动物福利日益受到关注,但缺乏有效的监测手段。
数据集下载链接
通过网盘分享的文件:猪仔9类核心行为检测数据集
链接: https://pan.baidu.com/s/1wzIbXnhghoS7xxtLFrsYLw?pwd=ta5a
提取码: ta5a
在此背景下,智能养殖监控系统应运而生。通过部署AI视觉算法,系统可以实时监测猪只的行为状态,及时发现异常行为,为养殖管理者提供决策支持,从而实现降本增效、精准管理、健康预警的目标。
1.2 技术挑战
猪仔行为识别相比其他动物行为识别任务,存在几个独特的难点:
- 目标密集性:规模化养殖场景下,栏舍内猪仔数量多、密度大,个体之间遮挡严重;
- 行为相似性:某些行为(如“进食”与“饮水”)在姿态上较为相似,区分难度大;
- 环境复杂性:栏舍环境复杂,光线变化大,背景包含食槽、饮水器、围栏等元素;
- 动态变化快:猪仔活动频繁,行为状态快速切换,对算法的实时性要求高。
因此,构建一套高质量、多场景、标注精准的猪仔行为数据集,对于推动智慧养殖技术的发展具有重要意义。
二、数据集概述

2.1 数据集基本信息
| 项目 | 说明 |
|---|---|
| 数据集名称 | 猪仔行为检测数据集 |
| 样本总量 | 约3,700张高质量高清图像 |
| 标注格式 | YOLO格式(*.txt),兼容YOLOv5/v8/v11等主流框架 |
| 类别数量 | 9类猪仔核心行为(nc: 9) |
| 数据划分 | 训练集(train)/验证集(val)/测试集(test) |
| 图像来源 | 实际规模化养殖场景,覆盖不同时段、栏舍及日龄 |
2.2 数据集结构
数据集采用标准的机器学习数据集组织规范,路径规划清晰,便于模型快速加载:
猪仔行为检测数据集/
├── train/
│ ├── images/ # 训练集图片(约2600张)
│ └── labels/ # 训练集标注文件
├── valid/
│ ├── images/ # 验证集图片(约550张)
│ └── labels/ # 验证集标注文件
└── test/
├── images/ # 测试集图片(约550张)
└── labels/ # 测试集标注文件
训练集、验证集、测试集的比例约为7:1.5:1.5,符合深度学习模型训练的最佳实践。所有图像均来源于实际养殖场景,覆盖不同时段、不同栏舍环境及不同日龄猪仔,保证了数据的多样性和真实场景适配性。
三、类别定义与标注规范
3.1 九类核心行为详解
数据集聚焦猪仔日常生活中的9类核心行为,每类行为都有明确的定义和视觉特征:
| 序号 | 英文名称 | 中文名称 | 行为定义 | 视觉特征 | 养殖意义 |
|---|---|---|---|---|---|
| 0 | Drinking | 饮水 | 猪仔主动接触饮水设备、摄取水分 | 头部靠近饮水器,嘴部有饮水动作 | 饮水异常可能提示疾病或饮水器故障 |
| 1 | Feeding | 进食 | 猪仔在食槽处啃食、摄取饲料 | 头部低垂于食槽,嘴部有咀嚼动作 | 进食减少是疾病早期重要信号 |
| 2 | Hitting | 撞击 | 用身体或头部撞击其他猪仔的攻击性行为 | 身体前冲,头部与目标猪接触 | 过度攻击提示群体应激或空间不足 |
| 3 | Kneeling | 跪地 | 前肢跪地、后肢站立的姿态行为 | 前腿弯曲着地,臀部抬高 | 可能与关节问题或舒适度有关 |
| 4 | Nosing | 拱蹭 | 用鼻子拱蹭地面、栏舍或其他猪仔 | 鼻子贴地或贴物,左右摆动 | 探索行为,异常频次提示应激 |
| 5 | Resting | 休息 | 躺卧、趴伏且无明显活动的静息状态 | 身体放松,四肢蜷缩或伸展,闭眼或半闭眼 | 正常静息时间需维持合理比例 |
| 6 | Standing | 站立 | 四肢支撑身体直立且无其他特定行为 | 四肢直立,身体平衡,无明显活动 | 基础状态,站立异常提示不适 |
| 7 | Suckling | 吮乳 | 仔猪吸食母猪乳汁的行为 | 口部含住母猪乳头,身体紧贴母猪 | 吮乳不足直接影响仔猪存活率 |
| 8 | Trampling | 踩踏 | 猪仔踩踏其他猪仔的行为 | 一只猪仔的蹄部踩在另一只身上 | 可能导致弱小仔猪受伤甚至死亡 |
3.2 标注规范
为了保证数据质量,我与养殖领域专家和计算机视觉标注人员协同完成了标注工作,并严格遵循以下规范:
- 目标完整性:标注框必须完整包含猪仔的身体轮廓,确保模型能够学习到行为的整体姿态特征。对于群体场景,每只猪仔单独标注,即使存在遮挡也尽量标注可见部分。
- 边界贴合:标注框与猪仔身体的边界保持紧密贴合,尽量减少背景干扰,提升模型训练的精度上限。
- 行为状态判定:对于处于行为过渡期的图片,遵循“主体行为优先”原则进行标注。例如,猪仔从站立转为躺卧过程中,若已进入趴卧姿态则标注为“resting”,若仍保持四肢支撑则标注为“standing”。
- 多场景覆盖:同一类别在不同光照条件(白天/夜间)、不同栏舍类型(保育栏/产床/育肥栏)、不同日龄段均有充足样本。
3.3 标注质量控制
整个标注过程经历了三轮人工核验:
- 第一轮:标注员初标,确保基础框选准确;
- 第二轮:养殖专家审核,确认行为分类符合实际养殖定义;
- 第三轮:交叉抽检,确保标注一致性达到95%以上。
最终交付的数据集无冗余、无错标、无漏标,可直接用于高精度模型的训练。
四、数据集特点与优势
4.1 数据规模适中,场景真实
3700张图片的体量在动物行为识别领域属于中等规模,足以支持YOLOv8等模型进行有效训练。更重要的是,所有图像均来源于实际规模化养殖场景,而非实验室或模拟环境,数据具有高度的真实性和应用价值。
4.2 场景覆盖全面
数据集充分考虑了养殖环境的多样性:
- 时段覆盖:包含白天自然光、夜间红外补光、清晨黄昏等多种光照条件;
- 栏舍类型:涵盖保育栏、产床、育肥栏等多种养殖设施;
- 日龄覆盖:包含不同日龄阶段的猪仔(从哺乳仔猪到保育猪);
- 密度变化:涵盖低密度、高密度等多种养殖密度场景。
4.3 类别定义清晰,贴近养殖需求
九类行为涵盖了猪仔日常活动的核心状态,从基础生理行为(饮水、进食、吮乳)到社会行为(撞击、拱蹭、踩踏),再到静息行为(休息、站立、跪地),形成了一个完整的行为图谱。每类行为都与养殖管理、健康监测密切相关,具有明确的业务价值。
4.4 格式标准化,开箱即用
数据集采用YOLO标准的标注格式,每个图片对应一个同名的.txt文件,内容格式为:
<class_id> <x_center> <y_center> <width> <height>
所有坐标均为归一化后的相对值,可直接导入YOLOv5/v8/v11等框架进行训练,无需任何额外的格式转换工作。
五、适用场景
这套数据集不仅是一个训练数据集合,更是多个智慧养殖项目的“核心引擎”。它主要适用于以下场景:
5.1 智能养殖监控系统
当前规模化猪场普遍面临“人少猪多”的管理困境。基于本数据集训练的模型,可以为猪场部署AI监控系统,实现以下功能:
- 自动巡栏:24小时不间断监测猪只行为,替代人工巡栏;
- 异常告警:检测到“撞击”过度、“踩踏”频繁等异常行为时自动告警;
- 健康监测:通过“进食”“饮水”行为的变化,早期发现病弱猪只。
5.2 猪只福利评估
动物福利日益受到消费者和监管机构的关注。通过分析猪只行为数据,可以量化评估福利水平:
- “休息”时间比例反映舒适度;
- “撞击”频率反映群体应激水平;
- “拱蹭”行为频次反映环境丰富度。
5.3 精细化管理决策
基于行为数据的量化分析,可以为养殖管理提供科学决策支持:
- “进食”行为监测优化饲喂策略;
- “饮水”行为监测预警饮水器故障;
- “吮乳”行为监测辅助仔猪健康管理。
5.4 计算机视觉教学与科研
本数据集结构规范、标注清晰,非常适合作为目标检测课程在农业领域的实战案例。学生可以通过该数据集完整经历从数据加载、模型训练到部署测试的全流程,深入理解YOLO系列算法在农业场景的应用。
六、基于YOLOv8的训练实战心得
在实际使用本数据集训练YOLOv8模型的过程中,我积累了一些经验,希望能帮助大家少走弯路。
6.1 训练环境配置
- 框架:Ultralytics YOLOv8
- 硬件:NVIDIA RTX 3060(12GB显存)
- 训练参数:
epochs: 150batch-size: 24(12GB显存下可容纳)imgsz: 640optimizer: AdamWlr0: 0.001
6.2 数据增强策略
考虑到养殖场景的复杂性,我启用了以下数据增强策略:
augmentation:
hsv_h: 0.015 # 色调扰动(应对不同时段光照)
hsv_s: 0.7 # 饱和度扰动
hsv_v: 0.4 # 明度扰动
degrees: 5.0 # 小角度旋转
translate: 0.1 # 平移
scale: 0.5 # 缩放
flipud: 0.0 # 垂直翻转(关闭,养殖场景中不会出现倒置)
fliplr: 0.5 # 水平翻转
mosaic: 1.0 # 马赛克增强
mixup: 0.2 # 混合增强
特别说明:养殖场景中猪只姿态相对稳定,旋转增强角度不宜过大(5度以内),以免产生不符合实际的姿态。
6.3 关键心得总结
小目标检测优化:在密集养殖场景中,单张图片可能包含10-20只猪仔,每只猪仔在画面中占比较小。通过将输入分辨率从640提升到768,并启用了
multi-scale训练,显著改善了小目标的检测效果。类别不均衡处理:在样本分布统计中,发现“resting”和“standing”两类样本量较多(合计占比约40%),而“suckling”和“trampling”样本相对稀缺。解决方案是启用了
class_weight参数,对样本量较少的类别赋予更高的权重,同时对这些类别的样本进行了过采样处理。行为相似性区分:“kneeling”和“resting”在姿态上存在一定相似性(都是四肢着地),初期训练时混淆率较高。通过增加这两类样本的标注精细化程度,并适当增加
mixup增强的比例,最终混淆矩阵显示两类间的误检率从15%降至5%以内。夜间场景适配:夜间红外图像与白天可见光图像存在较大的特征差异。建议在训练时保持两类样本的平衡,并在数据增强中增加曝光度扰动,提升模型的跨光照泛化能力。
遮挡处理:猪群密集场景下,个体之间遮挡严重。通过增加
mosaic增强的比例,模型逐渐学会利用可见的身体部位推断完整目标,在遮挡场景下的召回率提升了约8个百分点。
6.4 训练结果参考
在150个epochs的训练后,模型在测试集上取得了以下指标:
| 类别 | Precision | Recall | mAP@0.5 | mAP@0.5:0.95 |
|---|---|---|---|---|
| Drinking(饮水) | 0.887 | 0.862 | 0.904 | 0.652 |
| Feeding(进食) | 0.912 | 0.894 | 0.931 | 0.678 |
| Hitting(撞击) | 0.834 | 0.811 | 0.859 | 0.612 |
| Kneeling(跪地) | 0.856 | 0.833 | 0.878 | 0.628 |
| Nosing(拱蹭) | 0.879 | 0.856 | 0.895 | 0.644 |
| Resting(休息) | 0.941 | 0.928 | 0.956 | 0.712 |
| Standing(站立) | 0.908 | 0.887 | 0.922 | 0.668 |
| Suckling(吮乳) | 0.923 | 0.906 | 0.938 | 0.682 |
| Trampling(踩踏) | 0.811 | 0.789 | 0.832 | 0.591 |
| 平均值 | 0.883 | 0.863 | 0.902 | 0.652 |
从结果来看,模型对“resting”和“feeding”类的识别效果最佳,这与这两类行为的姿态相对稳定、样本量充足有关;“trampling”和“hitting”类由于姿态变化大、样本量相对较少,精度略低于其他类别,但仍满足实际应用需求。
七、数据获取与使用说明
使用建议
模型选择:若追求极致精度,建议使用YOLOv8l或YOLOv8x;若需实时部署在边缘设备(如海思、瑞芯微开发板),YOLOv8n或YOLOv8s是更优选择。
迁移学习:建议在COCO预训练的权重基础上进行微调,可以加速收敛并提升最终精度。只需修改数据集的类别数量为9,并调整输出层即可。
后处理优化:对于实际应用场景,可以结合时序信息(连续多帧的检测结果)进行行为状态平滑,避免单帧误检导致的频繁告警。例如,连续5帧检测到“hitting”才触发攻击行为告警,可以有效降低误报率。
部署建议:若部署在猪场现场设备,建议采用夜间红外+白天可见光双模式模型切换策略,分别训练两个模型,根据光照条件自动切换,可以获得更优的整体性能。
7.3 常见问题解答
Q1:数据集是否包含夜间红外图像?
A:是的,数据集约30%的图像为夜间红外补光场景,确保模型在24小时监控场景下都能正常工作。
Q2:如何处理密集场景下的遮挡问题?
A:在训练阶段,我们已经通过Mosaic增强和遮挡模拟策略提升了模型的抗遮挡能力。在实际应用中,建议结合多角度摄像头布设,减少遮挡盲区。
Q3:模型对幼龄仔猪和大龄猪仔的识别效果是否有差异?
A:数据集覆盖了不同日龄的猪仔,从哺乳仔猪到保育猪均有样本。从测试结果来看,模型对不同日龄猪仔的识别精度差异在3%以内,具有良好的年龄泛化能力。
八、结语
智慧养殖是农业现代化的关键方向,而猪只行为监测则是智慧养殖的核心技术之一。通过开源这套3700张、9类核心行为的高质量标注数据集,我希望能为智慧养殖领域的研究者和开发者提供一份有力的支持,降低行业研发门槛,推动AI技术在畜牧业的落地应用。
数据集的构建是一个持续迭代的过程,目前的版本虽然已经覆盖了9类核心行为,但仍有许多可以改进的地方(如增加更多品种、更多季节场景)。如果你在使用过程中有任何问题、建议,或者希望参与到数据集的后续扩充中来,欢迎在评论区留言交流。