宠物动作识别(四):数据集全景汇总与缺口分析
本文是宠物动作识别系列的数据策略专篇。在模型选型中我们确定了 X3D-M / TSM+MobileNetV2 作为端侧 baseline,但模型只是引擎——数据才是燃料。
面向室内猫居家摄像头的端侧行为识别项目,数据策略面临一个结构性矛盾:
本文完成三件事:
- 全景汇总:18 个公开/自采数据源,覆盖动物行为识别、姿态估计、图像检测/分割、音频和自采数据五大类
- 缺口分析:逐条核查项目 17 项行为类别的公开数据可用性,标注 6 个主要缺口
- 数据策略:给出"公开预训练 + 自采微调 + 异常检测"的分层数据方案
与 model-survey 的关系
模型选型篇中的数据集章节已迁移到本文并扩展。model-survey 保留模型维度的选型分析,本文专注数据维度的全景与缺口。两篇文章通过交叉引用保持连贯。
按数据模态和用途,18 个数据源分为五层:
flowchart TD
subgraph L1["Layer 1 · 动物行为识别"]
AK["Animal Kingdom, 30K视频, 850物种"]
MN["MammalNet, 18K视频, 173物种"]
PMT["PMTNet数据集, 1.3K视频, 猫专用"]
end
subgraph L2["Layer 2 · 姿态估计与跟踪"]
AP["AP-10K, 10K图像, 23科"]
APT["APT-36K, 36K帧, 30物种"]
APT2["APTv2, 41K帧, 84K实例"]
APose["Animal-Pose, 4.6K图像, 5物种"]
end
subgraph L3["Layer 3 · 图像检测与分割"]
OX["Oxford-IIIT Pet, 7.4K图像, 37品种"]
COCO["COCO, 通用检测分割"]
PF["PetFace, 257K个体, 13科"]
TICD["TICD, 2.4K图像, 猫健康"]
RF["Roboflow猫行为, 小规模社区数据"]
end
subgraph L4["Layer 4 · 音频"]
KM["Kaggle Cat Meow, 440条, 3类"]
ESC["ESC-50, 2K条, 50类"]
AS["AudioSet, 2M条, 632类"]
FSD["FSD50K, 51K条, 200类"]
end
subgraph L5["Layer 5 · 自采"]
SELF["自采室内猫数据, 产品闭集核心"]
end
L1 --> L5
L2 --> L5
L3 --> L5
L4 --> L5
Layer 1:动物行为识别数据集
这一层提供"动物在做什么"的基础识别能力,是模型预训练和迁移的第一站。
| 数据集 | 年份 | 规模 | 物种覆盖 | 行为类别 | 模态 | 许可证 | 项目用途 |
|---|---|---|---|---|---|---|---|
| Animal Kingdom | CVPR 2022 | 50h video grounding 30K AR 视频序列 33K 姿态帧 |
850+ 物种 6 大动物类别 |
140 种行为 Walking / Running / Jumping / Eating / Drinking / Grooming / Licking / Chasing / Fighting / Falling / Keeping still 等 |
视频 姿态 | 官方表单申请 商用需单独确认 |
动物行为识别主预训练/benchmark 数据 |
| MammalNet | CVPR 2023 | 18K+ 视频 539 小时 |
17 目 69 科 173 种哺乳动物 |
124 种行为 分类 + 检测 + 小样本 |
视频 | 需通过官方渠道申请 | 最大规模哺乳动物视频基准 Kinetics→MammalNet 迁移 +10.1% |
| PMTNet 数据集 | Animals 2026 | 1,283 视频 clip 4,000 train + 500 val 检测图 |
猫(专用) | 5 种猫行为 部件检测 + 行为分类 |
视频 检测 | MDPI CC BY | 目前唯一公开猫专用行为数据集 精读 |
| EgoPet | arXiv 2024 | 2,500+ 片段 | 狗/猫为主 | 多类交互 第一视角 egocentric |
视频 | 研究用途 | 预训练新选项 LeCun 参与 |
Layer 2:姿态估计与跟踪数据集
这一层提供动物骨架提取能力。如果选择骨架路线(SuperAnimal + STGCN++),这些数据是前置基础。
| 数据集 | 年份 | 规模 | 物种覆盖 | 标注类型 | 模态 | 许可证 | 项目用途 |
|---|---|---|---|---|---|---|---|
| AP-10K | NeurIPS 2021 | 10,015 图像 13,028 实例 17 关键点 |
23 科 / 54 物种 含猫科 |
2D 关键点 无行为标签 |
图像 姿态 | CC-BY-4.0 | 动物姿态估计基础 运动幅度/姿态特征 |
| APT-36K | NeurIPS 2022 | 2,400 clip 15 帧/clip 36,000 帧 |
30 物种 | 关键点 + 跟踪 无行为类别 |
视频帧 姿态/跟踪 | MIT License | 动物跟踪/姿态时序/运动轨迹 |
| APTv2 | arXiv 2023 | 2,749 clip 41,235 帧 84,611 实例 |
30 物种 | 关键点 + 跟踪 easy/hard 子集 |
视频帧 姿态/跟踪 | 需下载前复核 | 多动物姿态/跟踪增强 多猫 ID 场景间接资源 |
| Animal-Pose | MMPose 集成 | ~3,608 train/val + 1,000 test |
dog / cat / sheep / cow / horse | 2D 关键点 无行为标签 |
图像 姿态 | 随来源核验 (PASCAL VOC 等) |
猫/犬/四足动物姿态补充 |
Layer 3:图像检测/分割/识别数据集
这一层提供"猫在哪里""猫长什么样""猫脸 ROI"等基础视觉能力。
| 数据集 | 规模 | 物种覆盖 | 标注类型 | 模态 | 许可证 | 项目用途 |
|---|---|---|---|---|---|---|
| PetFace | 257,484 唯一个体 13 科 / 319 品种 |
猫 + 狗 + 实验动物 | 面部识别 + re-ID 性别/品种/颜色/花纹 |
图像 | 非商业研究 | 猫脸识别最大规模 多猫 ID 识别 / 个体特定行为 |
| Oxford-IIIT Pet | 37 品种 每类 ~200 张 |
猫(12 品种)+ 狗(25 品种) | 品种 + 头部 ROI + trimap 分割 | 图像 分割/ROI | CC BY-SA 4.0 商用/研究可用 |
猫检测 / 分割 / 身体面积 / 脸部 ROI |
| COCO | 大规模通用 | 含 cat / dog / bowl / chair / couch 等 | 目标检测 + 实例分割 | 图像 检测/分割 | COCO Terms of Use + 原图来源核验 |
通用检测/分割预训练 室内上下文物体识别 |
| TICD | 1,899 热成像 + 527 数字图像 94 只猫 |
猫(专用) 81 healthy + 13 symptomatic |
健康 vs 异常二分类 | 热成像 数字图像 | Frontiers OA | 异常健康监测间接资源 symptomatic 猫可补充异常样本 |
| Roboflow 猫行为 | 社区数据集 28 ~ 4,303 张不等 |
猫 | Vomit / Licking / Sleep / Play 等 图像级标签 |
图像 | 各项目不同 需逐个核验 |
低优先级补充 呕吐/舔毛 seed 数据 |
Layer 4:音频数据集
猫叫检测是项目的核心能力之一(常见场景 + 异常持续叫)。音频模型需要独立的数据策略。
| 数据集 | 规模 | 类别 | 猫相关覆盖 | 许可证 | 项目用途 |
|---|---|---|---|---|---|
| Kaggle Cat Meow | 440 条音频 | 3 类 Brushing / Waiting for food / Isolation |
猫叫专用 | Kaggle 许可 需下载前核验 |
猫叫检测 seed 数据 |
| ESC-50 | 2,000 条 50 类 × 40 条 每条 5 秒 |
环境声 50 类 含 Cat / Dog 等 |
Cat 类(40 条) | CC BY-NC 4.0 ESC-10 子集 CC BY |
猫叫/环境声小规模验证 不建议商用依赖 |
| AudioSet | 2,084,320 条 632 类 ontology 每条 10 秒 |
人/动物/音乐/环境声 | 含动物声/猫叫相关 弱标签 |
YouTube 片段/ID 受 YouTube 与版权限制 |
音频模型预训练 不建议直接作为可再分发资产 |
| FSD50K | 51,197 条 108.3 小时 200 类 |
声音事件 200 类 含动物声/环境声 |
间接覆盖 非猫专用 |
clip 各自 CC0/CC-BY/CC-BY-NC/CC Sampling+ 数据集整体 CC-BY |
音频负样本/环境声 猫叫分支补充 |
Layer 5:自采室内猫数据(P0)
自采数据是项目的 P0 优先级
公开数据只能提供"动物动作基础能力",不能直接覆盖项目闭集。最终训练、验证、验收测试必须依赖自采室内猫数据。建议采集量:高频类每类 300-800 clip,场景依赖类每类 200-500 clip,异常大类每类 50-150 起步。负样本(无猫/误触发)应占训练数据 20%-30%。
| 维度 | 建议 |
|---|---|
| 覆盖范围 | 室内家猫,多家庭、多猫 ID、多摄像头角度 |
| 模态 | 视频 + 音频 + 事件/ROI 标注 |
| 光照 | 正常 / 低光 / 夜视红外 |
| 标注粒度 | clip 级行为标签 + 时间窗标注(持续叫/如厕停留) |
| 合规 | 用户授权 + 隐私合规(室内摄像头数据) |
从 Kinetics-400(人类动作)预训练迁移到动物行为,MammalNet 报告了 +10.1% 的 per-class 准确率提升(27.7% → 37.8%,MViT v2)#Chen et al., 2023。证明特征级迁移有效。
但骨架级别无法直接迁移:
| 维度 | 人类 (COCO-17) | 猫科 (AP-10K) | 影响 |
|---|---|---|---|
| 关键点数 | 17 | 22 | 猫多出尾巴、耳朵 |
| 拓扑 | 双臂双腿 + 头 | 四足 + 尾 + 头 + 耳 | 骨架图完全不同 |
| 运动范围 | 直立约束 | 四足 + 脊柱灵活 | 同名关键点语义不同 |
表 1:人类与猫科骨架拓扑差异。人体骨架模型不能直接用于猫——四足动物的关节拓扑和运动模式完全不同。
Animal Kingdom / MammalNet 行为与目标猫咪行为的重叠
公开数据集中,哪些目标猫咪行为已有覆盖?哪些完全空白?
| 目标猫咪行为 | Animal Kingdom | MammalNet | 备注 |
|---|---|---|---|
| 走 / 跑 / 跳跃 | 有 | 有 | 高频类别,数据充足 |
| 进食 / 饮水 | 有 | 有 | 中高频,但非室内食盆视角 |
| 舔毛 | 有 | 有 | 跨物种常见 |
| 如厕 | 有(长尾) | 有 | Defecating / Urinating,但非室内猫砂盆场景 |
| 追逐 / 打闹 | 有 | 有 | Chasing / Fighting / Playing |
| 静止 / 休息 | 有 | 有 | Keeping still / Resting / Sleeping |
| 呕吐 | 无 | 无 | 所有公开数据集中完全空白 |
| 抽搐 | 无 | 无 | 所有公开数据集中完全空白 |
| 持续叫 | 无 | 无 | 时间序列标注,公开数据无覆盖 |
| 抓挠/啃咬家具 | 弱相关 | 弱相关 | Manipulating / Digging / Biting,但非室内家具语境 |
| 跌落 | 有(Falling) | 有 | Falling ≠ 室内猫从桌面/猫爬架坠落 |
表 2:公开数据集行为标签与项目目标猫咪行为的重叠分析。绿色=有覆盖,黄色=弱相关/语境不同,红色=完全空白。
异常行为数据完全空白
呕吐和抽搐是项目的高优先级异常场景(分类 1 紧急),但在所有公开动物行为数据集中都没有覆盖。这是整个项目最大的数据缺口,需要通过以下方式解决:(1) 自建小规模标注集;(2) 使用异常检测范式(如 VideoMAE 重建误差检测"不正常"的帧);(3) 合成数据探索。
SuperAnimal:零样本猫科姿态估计
SuperAnimal(Nature Communications 2024, EPFL)是动物姿态估计的基础模型:
- 覆盖 45+ 物种,27-39 关键点,零样本可用
- 已集成到 DeepLabCut Model Zoo,可直接调用
- 提供无监督视频适应,减少帧间抖动
以下按第一阶段任务规划中定义的 9 类常见场景 + 4 类异常场景 + 负样本,逐条核查公开数据可用性与缺口。
| 项目行为类别 | 公开数据可用性 | 当前缺口 | 建议处理 |
|---|---|---|---|
| 走、跑、一般活动 | 较充足 Animal Kingdom 有 Walking / Running / Moving;MammalNet 覆盖 locomotion;姿态数据可辅助 | 缺少室内猫摄像头视角、夜视、小目标、多猫遮挡 | 用公开动物数据预训练,自采室内猫数据微调 |
| 跳跃 | 中等 Animal Kingdom 有 Jumping;姿态/跟踪数据可辅助轨迹判断 | 缺少室内家具/桌面/猫爬架场景,难区分正常跳跃和风险跳落 | 先训练 jump,再结合高度区域和轨迹做 jump_fall_risk |
| 进食 | 中等 Animal Kingdom 有 Eating / Biting;COCO 可提供 bowl 等上下文 | 缺少家用食盆视角、低头但未进食的 hard negative | 自采食盆 ROI 数据,采用"猫检测 + 食盆区域 + 动作分类" |
| 饮水 | 中等 Animal Kingdom 有 Drinking | 缺少水碗/饮水机/低头姿态的室内数据,视觉上与进食接近 | 自采水碗 ROI 数据,和 eating 分开标注 hard negative |
| 如厕 | 严重不足 Animal Kingdom 有 Defecating / Urinating / Squatting,但非室内猫砂盆场景 | 缺少猫砂盆 ROI、刨砂、蹲姿、停留时长、夜视场景 | 必须自采;建议用"猫砂盆区域 + 停留时长 + 姿态/动作规则 + 分类模型" |
| 长时间静止 | 较充足 Animal Kingdom 有 Keeping still / Resting / Sleeping | 缺少端侧连续时间判定和误报负样本,如短暂停顿、遮挡、离开画面 | 自采长视频,用规则阈值和跟踪稳定性判断 |
| 多宠追逐 | 中等 Animal Kingdom 有 Chasing;APT/APTv2 可提供多动物 tracking | 缺少室内多猫 ID、遮挡、快速穿越、云台跟拍数据 | 自采多猫家庭数据,重点标注 track ID 和交互对象 |
| 多宠打闹 | 中等偏弱 Animal Kingdom 有 Fighting / Playing / Attacking | 缺少猫之间玩耍和真打架的边界样本,容易与追逐混淆 | 第一版合并为 play_fight;后续用用户反馈细分 |
| 舔毛 | 较充足 Animal Kingdom 有 Grooming / Licking / Washing | 缺少室内猫近距离/远距离、局部遮挡、低光数据 | 公开数据可预训练,自采补充猫专用样本 |
| 猫咪叫 | 视觉缺失 音频有 Kaggle Cat Meow / ESC-50 / AudioSet / FSD50K 可辅助 | 缺少设备麦克风实录、室内噪声、猫叫与人声/电视声混淆样本 | 必须自采音频;用音频模型 + 时间窗 + 视觉有猫约束 |
| 持续叫 | 基本没有 公开数据基本没有直接标签 | 缺少"持续"的时间序列标注,只靠单条 meow 音频无法判断 | 自采长音频/视频,按时间窗标注 persistent_meow |
| 呕吐 | 严重不足 公开动物行为集基本无可直接使用标签。Roboflow 有 28 张小样本 | 缺少真实猫呕吐事件、干呕、低头、普通舔食等 hard negative | 必须自采/人工筛选公开视频;第一版并入 emergency |
| 抽搐 | 严重不足 只有 Shaking / Struggling 等弱相关动作。TICD 有 13 只 symptomatic 猫 | 缺少真实医学异常样本,误标风险高 | 不建议细分训练;先做 emergency/abnormal motion,云端复核 |
| 用手拨东西/抓挠物品 | 不足 Animal Kingdom 有 Manipulating object / Digging / Pulling 等弱相关 | 缺少室内家具、猫爪接触物体、抓挠板 vs 抓家具的区分 | 必须自采;第一版合并 destructive |
| 啃咬东西 | 不足 Animal Kingdom 有 Biting,但多为进食/捕食语境 | 缺少啃咬电线、家具、玩具、食物之间的区分 | 必须自采;和 scratch/paw 合并 destructive 更稳 |
| 跌落/坠落 | 严重不足 Animal Kingdom 有 Falling,但不等同室内猫坠落 | 缺少从桌面/柜子/猫爬架跌落、落地后状态、遮挡和撞击声数据 | 第一版做 jump_fall_risk,不强分 jump/fall;必须自采验证 |
| 无猫/未知/误触发 | 通常不足 公开宠物行为集通常不足 | 缺少真实室内负样本:人、影子、玩具、窗帘、扫地机、电视画面 | 必须大量自采;建议占训练数据 20%-30% |
表 3:17 项行为类别的公开数据可用性逐条核查。绿色=较充足,黄色=中等/弱相关,红色=不足/严重不足。
基于以上全景汇总与缺口分析,提炼以下关键结论:
五个核心结论
- 公开数据最适合解决"动物动作基础能力",不能直接覆盖项目闭集。Animal Kingdom + MammalNet 提供走/跑/跳/进食/舔毛等高频行为的预训练数据,但室内场景、夜视、多猫遮挡等域差异必须通过自采数据微调解决。
- 猫相关公开数据主要集中在图像检测/分割、姿态、猫叫音频,小而分散。Oxford-IIIT Pet / COCO 解决"猫在哪里",AP-10K / APT-36K 解决"猫的姿态",Kaggle Cat Meow / ESC-50 解决"猫叫检测"——但没有一个数据集覆盖"室内猫在做什么"的完整 pipeline。
- 如厕、持续叫、呕吐、抽搐、抓挠/啃咬、跌落是 6 个主要数据缺口。这些行为要么完全空白(呕吐/抽搐),要么语境不匹配(如厕≠猫砂盆,Falling≠室内坠落),要么缺少时间序列标注(持续叫)。
- 第一版模型不应强行细分长尾异常。建议输出
emergency(呕吐+抽搐)、destructive(抓挠+啃咬)、jump_fall_risk(跳跃+跌落风险)等异常大类,后续通过用户反馈和数据积累逐步细分。 - 最终验收必须依赖自采室内猫数据。尤其是夜视、低光、多猫、猫砂盆、食盆/水碗、家具破坏和异常事件。建议采集量:高频类每类 300-800 clip,场景依赖类每类 200-500 clip,异常大类每类 50-150 起步,负样本占 20%-30%。
分层数据策略
flowchart TD
subgraph L1["Layer 1 · 公开预训练"]
AK["Animal Kingdom + MammalNet"]
AP["AP-10K, APT-36K, 姿态基础"]
OX["Oxford-IIIT Pet + COCO 检测"]
AU["AudioSet, FSD50K, 音频预训练"]
end
subgraph L2["Layer 2 · 自采微调"]
COMMON["常见行为微调: 走跑跳进食舔毛"]
ROI["ROI场景数据: 食盆水碗猫砂盆"]
MULTI["多猫家庭数据: 追逐打闹ID跟踪"]
end
subgraph L3["Layer 3 · 异常策略"]
EMER["emergency大类: 呕吐+抽搐合并"]
DEST["destructive大类: 抓挠+啃咬合并"]
FALL["jump_fall_risk: 跳跃+跌落合并"]
end
AK --> COMMON
AP --> COMMON
OX --> ROI
AU --> MULTI
COMMON --> EMER
ROI --> DEST
MULTI --> FALL
分层策略的理由
- Layer 1 公开预训练:用 Animal Kingdom + MammalNet 建立"动物动作基础能力",覆盖走/跑/跳/进食/舔毛等高频行为的通用特征。姿态数据(AP-10K / APT-36K)和检测数据(Oxford-IIIT Pet / COCO)提供辅助能力。
- Layer 2 自采微调:解决域差异——室内视角、夜视、食盆/水碗/猫砂盆等 ROI 场景、多猫家庭交互。这些是公开数据完全无法覆盖的。
- Layer 3 异常策略:呕吐/抽搐/抓挠/跌落等长尾异常行为在公开数据中完全空白或严重不足。第一版合并为大类(emergency / destructive / jump_fall_risk),用异常检测范式(VideoMAE 重建误差)+ 少量自采样本覆盖。
新增数据集补充说明
相比原始调研,本次核实新增了 5 个重要数据源:
| 数据集 | 新增理由 | 对项目价值 |
|---|---|---|
| MammalNet | 最大规模哺乳动物视频基准(539h / 173 物种),原始调研遗漏 | 预训练核心数据源;Kinetics→MammalNet 迁移 +10.1% 已验证 |
| PMTNet 数据集 | 唯一公开猫专用行为数据集(1,283 clip / 5 类),已有精读 | 猫行为识别可行性验证(93.1% 准确率);部件级建模思路 |
| PetFace | 257K 唯一个体面部识别(ECCV 2024 Oral),原始调研未覆盖 | 多猫 ID 识别 / 个体特定行为理解的最大规模资源 |
| TICD | 1,899 热成像 + 527 数字图像的猫健康数据集(2025),含 13 只 symptomatic 猫 | 异常健康监测间接资源;symptomatic 猫可补充异常样本 |
| EgoPet | 宠物第一视角 egomotion + 多智能体交互(arXiv 2024),LeCun 参与 | 预训练新选项;egocentric 视角补充 |
表 4:本次核实新增的 5 个重要数据源及其对项目价值。
动物行为识别数据集
- Ng, X. L. et al. (2022). Animal Kingdom: A Large and Diverse Dataset for Animal Behavior Understanding. CVPR 2022. GitHub · 精读 →
- Chen, J. et al. (2023). MammalNet: A Large-Scale Video Benchmark for Mammal Recognition and Behavior Understanding. CVPR 2023. GitHub · 精读 →
- PMTNet: A Part-Centric Missing-Aware Temporal Network for Cat Behavior Recognition in Unconstrained Videos. Animals (MDPI), 2026. MDPI
- EgoPet: Egomotion and Interaction Data from an Animal's Perspective. arXiv:2404.09991, 2024. arXiv
姿态估计与跟踪数据集
- Yu, H. et al. (2021). AP-10K: A Benchmark for Animal Pose Estimation in the Wild. NeurIPS 2021. GitHub
- Yang, Y. et al. (2022). APT-36K: A Large-scale Benchmark for Animal Pose Estimation and Tracking. NeurIPS 2022. GitHub
- Yang, Y. et al. (2023). APTv2: Benchmarking Animal Pose Estimation and Tracking. arXiv:2312.15612. GitHub · 精读 →
- SuperAnimal: Pretrained deep learning models for animal pose tracking. Nature Communications, 2024. DeepLabCut
图像检测/分割/识别数据集
- Shinoda, R. & Shiohara, K. (2024). PetFace: A Large-Scale Dataset and Benchmark for Animal Identification. ECCV 2024 Oral. GitHub
- Parkhi, O. M. et al. (2012). Cats and Dogs. CVPR 2012. Oxford-IIIT Pet
- TICD: a novel thermal imaging cats' dataset for non-invasive health monitoring. Frontiers in Digital Health, 2025. Frontiers
音频数据集
- Cat Meow Classification. Kaggle Dataset. Kaggle
- Piczak, K. J. (2015). ESC: Dataset for Environmental Sound Classification. ACM MM 2015. GitHub
- Gemmeke, J. et al. (2017). Audio Set: An ontology and human-labeled dataset for audio events. ICASSP 2017. Google Research
- Fonseca, E. et al. (2022). FSD50K: an open dataset of human-labeled sound events. IEEE/ACM TASLP. Zenodo