猪行为目标检测数据集:9类别、3,700张图像 | 目标检测

简介: 本数据集含3700张真实养殖场景高清图像,精准标注猪仔9类核心行为(饮水、进食、撞击、跪地、拱蹭、休息、站立、吮乳、踩踏),YOLO格式,经三轮专家核验,支持YOLOv8等主流模型直接训练,助力智能养殖与健康监测。(239字)

猪行为目标检测数据集:9类别、3,700张图像 | 目标检测

源码数据分享

通过网盘分享的文件:猪仔9类核心行为检测数据集
链接: https://pan.baidu.com/s/1wzIbXnhghoS7xxtLFrsYLw?pwd=ta5a
提取码: ta5a

一、引言:从"人盯猪"到"AI行为监护"的养殖变革

我国是全球最大的猪肉生产国和消费国,生猪养殖规模居世界首位。然而,传统养殖模式面临人力成本高、疾病发现滞后、管理精细化不足、福利监管困难等诸多挑战。猪只患病早期往往表现为行为异常,但人工观察难以及时发现,等到症状明显时往往已造成不可逆的损失。

在这里插入图片描述

智能养殖监控系统应运而生。通过部署AI视觉算法,系统可以实时监测猪只的行为状态,及时发现异常行为,为养殖管理者提供决策支持。而这一切的基础,正是一套高质量、多场景、标注精准的猪仔行为数据集。

本文将围绕一套包含3700张高清标注的猪仔行为检测数据集,从数据构建理念、9类行为定义、标注规范到YOLOv8训练实战,进行全链路的深度解析。

二、数据集深度解析

2.1 数据集核心参数

项目 说明
数据集名称 猪仔行为检测数据集
样本总量 约3700张高质量高清图像
标注格式 YOLO格式,兼容YOLOv5/v8/v11等主流框架
类别数量 9类猪仔核心行为(nc: 9)
数据划分 训练集/验证集/测试集
图像来源 实际规模化养殖场景

2.2 数据目录结构

猪仔行为检测数据集/
├── train/
│   ├── images/          # 训练集图片(约2600张)
│   └── labels/          # 训练集标注文件
├── valid/
│   ├── images/          # 验证集图片(约550张)
│   └── labels/          # 验证集标注文件
└── test/
    ├── images/          # 测试集图片(约550张)
    └── labels/          # 测试集标注文件

训练集、验证集、测试集的比例约为7:1.5:1.5,符合深度学习模型训练的最佳实践。

在这里插入图片描述

2.3 九类核心行为详解

数据集聚焦猪仔日常生活中的9类核心行为,每类行为都有明确的定义和视觉特征:

序号 英文名称 中文名称 行为定义 视觉特征 养殖意义
0 Drinking 饮水 猪仔主动接触饮水设备、摄取水分 头部靠近饮水器,嘴部有饮水动作 饮水异常可能提示疾病或饮水器故障
1 Feeding 进食 猪仔在食槽处啃食、摄取饲料 头部低垂于食槽,嘴部有咀嚼动作 进食减少是疾病早期重要信号
2 Hitting 撞击 用身体或头部撞击其他猪仔的攻击性行为 身体前冲,头部与目标猪接触 过度攻击提示群体应激或空间不足
3 Kneeling 跪地 前肢跪地、后肢站立的姿态行为 前腿弯曲着地,臀部抬高 可能与关节问题或舒适度有关
4 Nosing 拱蹭 用鼻子拱蹭地面、栏舍或其他猪仔 鼻子贴地或贴物,左右摆动 探索行为,异常频次提示应激
5 Resting 休息 躺卧、趴伏且无明显活动的静息状态 身体放松,四肢蜷缩或伸展 正常静息时间需维持合理比例
6 Standing 站立 四肢支撑身体直立且无其他特定行为 四肢直立,身体平衡 基础状态,站立异常提示不适
7 Suckling 吮乳 仔猪吸食母猪乳汁的行为 口部含住母猪乳头,身体紧贴母猪 吮乳不足直接影响仔猪存活率
8 Trampling 踩踏 猪仔踩踏其他猪仔的行为 一只猪仔的蹄部踩在另一只身上 可能导致弱小仔猪受伤甚至死亡

这9类行为从基础生理行为(饮水、进食、吮乳)到社会行为(撞击、拱蹭、踩踏),再到静息行为(休息、站立、跪地),形成了一个完整的行为图谱,每类行为都与养殖管理、健康监测密切相关。

三、标注规范与质量控制

3.1 标注规范

  1. 目标完整性:标注框必须完整包含猪仔的身体轮廓,确保模型能够学习到行为的整体姿态特征。对于群体场景,每只猪仔单独标注,即使存在遮挡也尽量标注可见部分。

  2. 边界贴合:标注框与猪仔身体的边界保持紧密贴合,尽量减少背景干扰,提升模型训练的精度上限。

  3. 行为状态判定:对于处于行为过渡期的图片,遵循"主体行为优先"原则进行标注。

  4. 多场景覆盖:同一类别在不同光照条件、不同栏舍类型、不同日龄段均有充足样本。

3.2 三轮标注核验

  • 第一轮:标注员初标,确保基础框选准确
  • 第二轮:养殖专家审核,确认行为分类符合实际养殖定义
  • 第三轮:交叉抽检,确保标注一致性达到95%以上

最终交付的数据集无冗余、无错标、无漏标,可直接用于高精度模型的训练。

在这里插入图片描述

四、猪仔行为检测的独特挑战

4.1 目标密集性

规模化养殖场景下,栏舍内猪仔数量多、密度大,个体之间遮挡严重。一张图片中可能包含10~20只猪仔,每只猪仔在画面中占比较小。

4.2 行为相似性

某些行为在姿态上较为相似:

  • "进食"与"饮水":头部低垂的姿态相似
  • "跪地"与"休息":四肢着地的姿态相似
  • "站立"与"拱蹭":直立姿态的区别主要在鼻子动作

4.3 环境复杂性

栏舍环境复杂:光线变化大,背景包含食槽、饮水器、围栏等元素,粪便和污渍干扰视觉判断。

4.4 动态变化快

猪仔活动频繁,行为状态快速切换,对算法的实时性要求高。

五、模型训练全流程实战

5.1 数据配置文件

path: /dataset/path
train: train/images
val: valid/images
test: test/images

nc: 9
names:
  0: Drinking
  1: Feeding
  2: Hitting
  3: Kneeling
  4: Nosing
  5: Resting
  6: Standing
  7: Suckling
  8: Trampling

5.2 YOLOv8训练命令

yolo detect train \
  data=data.yaml \
  model=yolov8s.pt \
  epochs=150 \
  imgsz=640 \
  batch=24 \
  optimizer=AdamW \
  lr0=0.001

5.3 数据增强策略

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.1 小目标检测优化

在密集养殖场景中,单张图片可能包含10~20只猪仔,每只猪仔在画面中占比较小。通过将输入分辨率从640提升到768,并启用multi-scale训练,显著改善了小目标的检测效果。

6.2 类别不均衡处理

"resting"和"standing"两类样本量较多(合计占比约40%),而"suckling"和"trampling"样本相对稀缺。解决方案是启用class_weight参数,对样本量较少的类别赋予更高的权重,同时对少数类样本进行过采样处理。

6.3 行为相似性区分

"kneeling"和"resting"在姿态上存在一定相似性,初期训练时混淆率较高。通过增加这两类样本的标注精细化程度,并适当增加mixup增强的比例,最终混淆矩阵显示两类间的误检率从15%降至5%以内。

6.4 夜间场景适配

夜间红外图像与白天可见光图像存在较大的特征差异。建议在训练时保持两类样本的平衡,并在数据增强中增加曝光度扰动,提升模型的跨光照泛化能力。

6.5 遮挡处理

猪群密集场景下,个体之间遮挡严重。通过增加mosaic增强的比例,模型逐渐学会利用可见的身体部位推断完整目标,在遮挡场景下的召回率提升了约8个百分点。

6.6 训练结果参考

类别 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

在这里插入图片描述

七、工程部署与智慧养殖系统

7.1 智能养殖监控系统

基于本数据集训练的模型,可以为猪场部署AI监控系统:

  • 自动巡栏:24小时不间断监测猪只行为
  • 异常告警:检测到"撞击"过度、"踩踏"频繁等异常行为时自动告警
  • 健康监测:通过"进食""饮水"行为的变化,早期发现病弱猪只

7.2 猪只福利评估

通过分析猪只行为数据,可以量化评估福利水平:

  • "休息"时间比例反映舒适度
  • "撞击"频率反映群体应激水平
  • "拱蹭"行为频次反映环境丰富度

7.3 精细化管理决策

  • "进食"行为监测优化饲喂策略
  • "饮水"行为监测预警饮水器故障
  • "吮乳"行为监测辅助仔猪健康管理

7.4 部署建议

  • 若追求极致精度,建议使用YOLOv8l或YOLOv8x
  • 若需实时部署在边缘设备(如海思、瑞芯微开发板),YOLOv8n或YOLOv8s是更优选择
  • 建议在COCO预训练的权重基础上进行微调
  • 结合时序信息进行行为状态平滑,连续5帧检测到同一行为才触发告警
  • 采用夜间红外+白天可见光双模式模型切换策略

八、数据集扩展与未来方向

8.1 行为类别扩展

  • 增加呕吐、跛行等异常行为类别
  • 增加发情、分娩等繁殖行为
  • 构建更完整的猪只行为图谱

8.2 品种与日龄扩展

  • 增加更多品种的样本
  • 覆盖从出生到出栏的完整生长周期
  • 不同日龄猪仔的行为差异研究

8.3 视频时序分析

  • 从单帧检测升级到视频级行为识别
  • 行为持续时间统计
  • 行为序列分析

8.4 多模态融合

  • 可见光+红外双模态融合
  • 音频+视觉联合分析
  • 环境传感器数据融合

九、总结与展望

智慧养殖是农业现代化的关键方向,而猪只行为监测则是智慧养殖的核心技术之一。通过开源这套3700张、9类核心行为的高质量标注数据集,希望能为智慧养殖领域的研究者和开发者提供一份有力的支持,降低行业研发门槛,推动AI技术在畜牧业的落地应用。

从实战经验来看,这套数据集的几个核心价值在于:

  1. 场景真实性高:所有图像来源于实际规模化养殖场景,而非实验室或模拟环境,数据的真实性和应用价值有保障。

  2. 类别定义清晰:9类行为与养殖管理、健康监测密切相关,具有明确的业务价值。

  3. 标注质量优秀:养殖专家与视觉工程师联合标注,三轮核验确保标注一致性。

  4. 即用性强:标准化结构可直接启动训练,无需额外处理。

数据集的构建是一个持续迭代的过程,目前的版本虽然已经覆盖了9类核心行为,但仍有许多可以改进的地方。如果你在使用过程中有任何问题或建议,欢迎交流讨论。

相关文章
|
21天前
|
编解码 人工智能 监控
猫行为目标检测数据集:6类别、6,000张图像 | 目标检测
本数据集含6000张高清标注图像,涵盖进食、玩耍、休憩、端坐、伸展、打哈欠6类猫行为,YOLO格式,经三轮质检,适配YOLOv5/v8/v11。支持智能宠物硬件开发与健康监测,百度网盘免费获取。
79 3
|
23天前
|
机器学习/深度学习 人工智能 算法
狗行为目标检测数据集:6类别、近3,000张图像 | 目标检测
本数据集含近3000张高清图像,涵盖狗狗6种核心行为(吠叫、进食、趴卧、奔跑、端坐、站立),全部采用YOLO格式精细标注,适配YOLOv5/v8等主流模型,专为宠物智能硬件与行为分析场景优化。
76 2
|
23天前
|
JSON 人工智能 API
Function Calling 会被 MCP 取代吗?理清两者关系与使用细节
Function Calling 会被 MCP 取代吗?不会。本文讲透它的调用机制与使用细节,说清两者分层关系:一个是机制,一个是协议。
159 0
Function Calling 会被 MCP 取代吗?理清两者关系与使用细节
|
3月前
|
测试技术 C++ Python
如何从零开发一个工业级的 SKILL
手把手教你搓个 Skill,亲测新手也能跑起来,实操党可以直接冲~
658 1
如何从零开发一个工业级的 SKILL
|
22天前
|
人工智能 开发框架 Java
如何入门学习 Agent 开发?
本文分享Agent开发实战经验:强调甄别一手资讯、聚焦Context本质而非框架、坚持实操落地、重视效果评测与自我迭代,助新手避开玄学误区,从真实场景出发高效入门。(238字)
82 5
|
21天前
|
Java API Maven
Spring Boot 创建项目详细介绍
如何创建一个 Spring Boot 项目,以及自动生成的目录文件作用。
108 2
|
23天前
|
人工智能 测试技术 Shell
Opencode最被低估的6个测试指令:每天帮你省下3小时重复劳动
本文详解Opencode六大自定义指令(如/test、/coverage),助测试工程师30分钟配置、每日省3小时,告别重复Prompt输入,实现测试流程自动化提效。
|
21天前
|
数据采集 监控 供应链
1688 商品详情驱动的选品、竞品分析与采购实战指南
1688是“中国制造”的数字入口,汇聚60万源头工厂。本文详解如何通过API接口实现数据化选品:解析批发价阶梯、库存、供应商资质等核心字段;构建四层选品漏斗;以图搜款溯源跨境爆款;建立采购评分卡与动态监控模型,助力高效决策。(239字)
|
22天前
|
人工智能 算法 API
【第二部分:大模型应用开发基础】9. RAG 是什么,它与 Agent 有什么关系?——从知识库问答到 Agentic RAG
RAG 通过文档解析、切分、Embedding、混合检索、Rerank 与引用机制,让大模型在回答问题时能够按需获取企业知识,而不是依赖训练数据“记住一切”。文章进一步介绍 RAG 如何从固定的检索增强生成流程演进到 Agentic RAG:由 Agent 判断是否需要检索、如何规划 Query、证据是否充分,并在必要时继续改写和多轮检索。同时梳理 RAG、Memory、Tool 与 Agent 的边界,强调知识库问答系统并不等同于 Agent,RAG 只是 Agent 获取外部知识的一种能力。
201 2
|
3月前
|
人工智能 小程序 程序员
Skill详解(2万字详细教程),Skills是什么,如何安装并使用Skills
AI时代必备技能!Skills(智能体技能)是Anthropic提出的可复用能力包,以文件夹形式封装指令、脚本与资源,实现“按需加载”,大幅节省Token。它让大模型从聊天工具升级为专业助手——非技术岗也能零代码快速上手,真正实现人人可用、岗岗必备。
19050 20
Skill详解(2万字详细教程),Skills是什么,如何安装并使用Skills

热门文章

最新文章