文献集总览 / 猕猴上肢运动、学习与虚拟反馈 / E · 理论综述、行为平台与公开数据 / E05 · 自由运动猕猴三维姿态追踪

E05 · Automated markerless pose estimation in freely moving macaques with OpenMonkeyStudio

Bala, P.C., Eisenreich, B.R., Yoo, S.B.M., Hayden, B.Y., Park, H.S., & Zimmermann, J. (2020). Nature Communications, 11, 4560. doi:10.1038/s41467-020-18441-5

OpenMonkeyStudio利用62台同步相机、多视角标注增广和几何重建,估计自由活动猕猴的三维身体姿态。论文验证了整体动作和双猴互动追踪的可行性,同时显示末端肢体对视角数量更敏感。

核对版本:Zotero VR 集合中的本地 PDF(2026-09-18);Zotero 条目 · 打开原文。图下页码均为该 PDF 的文件页序,从 1 开始,可能不同于期刊印刷页码。

本文目录
  1. 背景
  2. 研究思路
  3. 方法
  4. 主要结果
  5. 逐图解读
  6. 讨论与解读边界
  7. 思考问题

背景

自由活动猕猴的遮挡、体表外观与大范围三维运动,增加了姿态测量难度。本文用多视角几何同时缓解标注需求和重建的不确定性。

研究思路

少数视角的人工标注经三维重建投到其余视角,形成训练样本。推理结合多相机检测、三角化和运动约束,再通过头部参照、相机数量消融、动作分类及双猴示例评估系统。不同验证对应不同误差定义。

方法

硬件:62 台 FLIR BlackFly S 工业相机(1280×1024,最高 80 fps,实际用 30 fps,全局快门,3–4 mm 鱼眼镜头),沿笼舍两层周边均匀架设在刚性外骨架上,相邻相机基线约 35 cm、视角差不到 6.7°,保证每帧至少有 10 台相机以 550×550 像素以上的分辨率看到猴子;外置 TTL 脉冲(Agilent 33120A,70 ns 边沿)触发全部快门,4 小时采集内同步精度保持亚毫秒;标定用印满漫画拼贴的 1×3 m 大标定物跑 structure-from-motion,平均重投影误差约 0.65 像素。数据流 3.7 GB/s,由 6 台本地服务器(PoE 交换机加 10 Gb 光纤加 NVMe RAID)和一台全局服务器吞吐。训练数据:keyframe 按猴子 3D 质心的平移量筛选(背景减除加三角化估计质心),把标注需求压缩 100–400 倍(从需要的 20 万帧降到 500–2000 帧);每个 keyframe 由算法提名、人工从候选里挑 3–4 个可见性好且基线宽的视角,交给商业标注服务(截至 2020 年 1 月共标注 33,192 张图),重投影误差超过 10 像素的标注在自研 GUI 里跨视角联合修正;多视角增广把每份标注放大 15–20 倍,再加九种仿射变换(±30° 旋转、20% 平移、±10% 缩放、水平翻转)。检测网络是六阶段 Convolutional Pose Machine(输入 368×368×3,输出 46×46×14:13 个 landmark 加背景通道),L2 loss、ADAM 优化,单张 RTX 2080 Ti 训 7 天 110 万步;文中说明框架不挑骨干,Stacked Hourglass 或 DeeperCut 同样可以。推理时 RANSAC 三角化,再沿以颈部为根的运动链,用 quasi-Newton 法最小化"投影误差+肢体长度+时间平滑"的目标函数。动物:4 只雄性恒河猴(5.5–12 kg),笼内放加沙配重的桶作栖架,四角可布置带 LED 屏和杠杆的果汁喂食器,约五周笼舍习服。

主要结果

与 OptiTrack 的正面对比给系统一个诚实的定位:头部 3D 位置在 13 分钟、30 Hz 的序列上(含跳跃和攀爬),中位误差 6.76 cm、平均 7.14 cm、标准差 2.34 cm——而且这个数还被标记物高于头顶约 5 cm 的系统偏差抬高了,训练集里也没有戴植入物的个体;反倒是 OptiTrack 自己因标记混淆和红外干扰产生大量需要人工清理的坏点。多视角增广的消融是方法论上最关键的一张图:只用单视角训练时,相对全系统伪真值的重建一致率(10 cm 容差)只有 34%,手部更是低到 12%;用 48 个视角增广训练,整体升到 76%。推理端,训好的模型用 8 台相机就能拿到 62 台相机 80% 的整体性能——但要抓全手、膝、脚这类高自由度末端,得到 32 台相机。视角依赖性分析显示,头部这种多数视角都可见的 landmark 精度几乎不随视角变(2 像素以内,n=344 张图),右手在猴子左侧的相机视角下常被躯干挡住,误差呈明显的方向性——这解释了相机为什么必须均匀布满一圈。

表达力检验(作者称为 expressibility)把追踪和动作识别接上了:把每帧 3D 姿态变换到以颈为原点、y 轴沿重力、z 轴沿脊柱、脊柱长度归一的规范坐标系后,30 分钟(54,000 帧)序列的 UMAP 聚类与 standing、walking、climbing、倒挂攀爬、sitting、jumping 这些语义动作高度对应;k 近邻在新序列上识别动作,动作间的转移也物理上合理(从走路到倒挂攀爬要经过站立和攀爬)。反例是 2D 表示:同样的聚类被视角搅散,walking 被拆成不同位置上的重复姿态岛。社会互动的演示同样顺利:两只彼此熟悉的猕猴在笼中自由穿行、路径完全交叉,系统同时追踪两个个体并在长时间里保持身份一致,动作共现矩阵和以一只猴为中心的 proxemics 极坐标图(Hall 的社会空间度量)都直接从 3D 姿态里算了出来。系统能以高时空分辨率连续追踪数小时——本文展示了这一场景下的可行性,不能据此排除所有有标记系统。

逐图解读

图1

来源:原文 Fig. 1,PDF 第 3 页

图 1 · 检测架构。 六阶段 Convolutional Pose Machine:输入 368×368 彩色图,输出 46×46×14 的响应图(13 个 landmark 加背景),响应最大处即 landmark 位置;多视角图像的检测结果经相机标定三角化成 3D 姿态。图上标注的 nose、head、ear、shoulder、hand、knee、foot、tail 等 13 个点就是系统追踪的全部骨架。要害在标题最后一句:训练时靠多视角几何做数据增广,才换得 view-invariant 的检测器。

图2

来源:原文 Fig. 2,PDF 第 4 页

图 2 · 系统总览。 62 台相机环绕大空间同步拍摄,彩色轨迹是重建出的各关节运动轨迹,配四个裁剪小图把 3D 重建投影回原图以核对视觉合理性。这张图论证的是"从所有可能的视角看猴子"这个硬件设计本身:连续的视角覆盖既是训练增广的原料,也是推理时冗余投票的来源。

图3

来源:原文 Fig. 3,PDF 第 5 页

图 3 · 与 OptiTrack 的对比验证。 头部位置随时间的 x/y/z 三轴对比:marker 系统的曲线毛刺不断(标记混淆所致,需人工再处理),OpenMonkeyStudio 的重建平滑,序列含跳跃和攀爬,中位误差 6.76 cm。读这张图要留意对比的公平性是双向的——光学标记系统在大笼里同样狼狈,无标记方案靠视觉语义关联路标反而更抗遮挡混淆。

图4

来源:原文 Fig. 4,PDF 第 5 页

图 4 · 训练增广与推理相机数的消融。 (a) 训练时用于视角增广的相机数 m 从 1 到 48,逐landmark画相对全系统伪真值的一致率(10 cm容差):nose、head、neck、hip 这类刚性部位单视角就有约 65%,手、膝、脚这类高自由度末端从 12% 附近被增广一步步拉起来,整体从 34% 升到 76%。(b) 推理端:训好的模型用 8 台相机即达 80% 整体性能,末端肢体要到 32 台才追平。两张图合起来回答"62 台相机到底买了什么"——多视角同时服务于训练增广和推理阶段的遮挡补偿。

图5

来源:原文 Fig. 5,PDF 第 6 页

图 5 · 检测精度的视角依赖。 以猴头朝向为参照,把相机排到 -160° 到 160° 的相对角度上:(a) 头部几乎全程低于 2 像素误差(n=344 张图);(b) 右手在猴子左侧的相机视角下被躯干遮挡,误差系统性飙升;(c) 尾巴介于两者之间,正对头部的视角略差。这张图解释了为什么相机必须均匀布满一圈:每个 landmark 总有看不见它的视角,冗余视角互相补位。

图6

来源:原文 Fig. 6,PDF 第 6 页

图 6 · 3D 姿态聚类对应语义动作。 (a) 30 分钟序列的 3D 姿态经 UMAP 降维形成紧凑聚类,每个簇配上侧视和俯视的 3D 骨架,肉眼即可认出 standing、climbing、倒挂等动作。(b) 用聚类加 kNN 在新的 13 分钟序列上识别动作并画出动作间转移,转移路径物理合理。(c) 反例:2D 姿态的聚类被视角和位置撕碎,walking 不再是连续的一簇。这张图是 expressibility 的直接证据——在本文比较中,3D表示更便于分离这些动作。

图7

来源:原文 Fig. 7,PDF 第 7 页

图 7 · 双猴社会互动追踪。 (a) 两只猕猴在笼中自由移动、路径完全交叉,系统全程区分两个个体(颜色区分),上方四帧展示不同时刻的场景。(b) 两只猴动作的共现矩阵(对数色标)。(c) Proxemics:把第二只猴的坐标变换到第一只猴的身体坐标系,极坐标直方图给出同伴平均出现在哪个距离、哪个方位——社会空间结构就这样从 3D 姿态里可由重建姿态进一步计算。

图8

来源:原文 Fig. 8,PDF 第 7 页

图 8 · OpenMonkeyPose 数据集。 195,228 例标注姿态,覆盖 62 个视角下大范围变化的位置和姿态,场景里有桶、绳、喂食站等物件,含两种背景色(米色和 chroma-key 绿)以及 4 只体型年龄各异(5.5–12 kg)的个体。该图对应公开的数据、检测模型及训练资源,便于后续方法比较和复用;具体可用文件应以原文的数据与代码说明为准。

图9

来源:原文 Fig. 9,PDF 第 9 页

图 9 · 多视角增广的机制。 最左列三张图是人工标注,其余所有视角的 2D 标注都由 3D 重建加投影自动生成。这是全文方法核心的一图流:一次人工标注被多视角几何"复印"到几十个视角上,标注效率放大 15–20 倍——正是绕开"千万美元标注账单"的那个杠杆。

图10

来源:原文 Fig. 10,PDF 第 10 页

图 10 · 系统架构。 (a) 62 台相机嵌入 2.45×2.45×2.75 m 的大空间,全部朝向中心——既利增广也利重建。(b) 分布式采集:相机经 PoE 交换机和 10 Gb 光纤接到 6 台本地服务器,由一台全局服务器统辖,外置时钟脉冲保证同步。这张图提醒读者,这不是一个软件包而是一套工程设计:3.7 GB/s 的数据流和亚毫秒同步,都是复刻时绕不开的功课。

讨论与解读边界

多视角系统既提供训练样本,也在推理时缓解遮挡。图4的相机数量消融使用全系统重建作为伪真值,10 cm容差下的相对一致率不能当成独立真值测得的绝对准确率。图3与OptiTrack的头部比较则同时受到标记偏移和参照系统误差影响。

13个身体landmark足以支持大范围姿态和动作分析,但不是精细手指运动捕捉。双猴示例说明可行性,尚不能保证任意个体数量、长期遮挡或相似外观下的身份稳定。UMAP与语义动作对应提供可解释的行为表示,不意味着只有三维数据才包含动作信息。本文不能直接给出VR抓握系统所需的毫米级误差与实时延迟保证。

思考问题

  1. 用独立测量的三维真值和毫米级阈值评估手部时,系统的误差与失踪率是多少?
  2. 减少相机后,训练增广不足与推理遮挡各自损失多少性能,怎样设计对照把两者分开?
返回总纲