跳转至

Silhouette-based Gait Foundation Model

会议: ECCV2026
论文: ECCV 原文
代码: https://github.com/ShiqiYu/OpenGait
领域: 人体理解
关键词: 步态识别、部位感知预训练、自监督学习、基础模型、步态健康分析

一句话总结

FoundationGait 将多源轮廓序列与编码前的部位独立处理结合,使步态模型扩大后仍保留局部互补信息,在 Gait3D 和 OU-MVLP 上分别达到 48.0% 和 64.5% 自监督 Rank-1,并支持健康相关任务的线性探测与微调。

研究背景与动机

步态识别要从走路时的身体形态与运动变化中提取身份线索,而不是依赖衣服纹理或背景。 轮廓序列因此是常见输入:把行人表示成低分辨率二值前景,降低外观干扰,但也让可用信息集中到边界和细微运动上。 许多方法会在网络末端按高度把特征图分成若干水平条带,再聚合不同身体区域的信息。 这种做法隐含一个前提:池化时各条带仍保留不同的局部证据。 然而论文发现,DeepGaitV2 和 GaitSSB 扩大后并不稳定受益,问题不能完全归结为模型太大、训练样本太少。

作者在超过 2M 条序列上扩大 GaitSSB,仍观察到部位特征趋同和整体识别收益饱和。 如果深层网络已经让不同高度位置混入相似的全身信息,最后再切条带就无法恢复丢失的局部多样性。 原文图 3 用单部位与融合后的识别表现支持这一判断,图 2 的 Grad-CAM 则显示大模型可能集中依赖头部或胸部等少数线索。 这不是证明所有扩展失败都来自同一种机制,而是给出一个可以直接干预的瓶颈:应当在特征形成之前限制跨部位混合。 与此同时,仅扩充同质数据也不够;只有单一来源的大量走路视频,未必能覆盖衣着、视角和异常步态的差异。

论文因此把身份识别和健康分析放进同一个预训练问题:先从多来源序列学习步态表示,再为具体任务配置输出头。 预训练不使用身份或疾病标签,避免把表示学习直接限定为某一种分类目标。 这里的“基础模型”指步态领域内的可扩展预训练骨干,而不是能够理解任意视频或直接输出临床诊断的通用模型。 对健康任务的支持也来自后续有标签的线性探测或微调,并非无监督发现疾病。 核心 idea:在学生编码器之前切分身体区域、独立编码后再恢复整体结构,同时用多源数据和完整视图教师约束表示,让更大的模型保留而不是抹平细粒度步态线索。

方法详解

整体框架

FoundationGait 使用加深的 DeepGaitV2 骨干,输入是归一化到 \(64\times44\) 的人体轮廓序列。 预训练时,从同一序列采样两个不重叠片段,独立增强后分别送入教师和学生。 教师看到完整片段;学生按指定粒度沿高度切分片段,各块共享编码器但独立计算,再按原空间顺序重组特征图。 重组结果经过时空聚合、投影器和预测器,与教师完整视图的投影特征进行对比学习。 因此模型学到的是能够由局部线索支撑、又与整段步态一致的表示,而不是补全被删除像素的重建器。

自监督测试使用教师预测特征;下游任务则使用教师的预训练参数并替换预测器为任务头。 下图中的 InfoNCE 和 EMA 属于预训练路径,部署时不需要同时运行学生、教师与负样本比较。 全量微调时继续启用部位感知训练,线性探测则冻结表示并仅学习分类头。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
        corpus["多源无标签语料"] --> clips["同序列双片段<br/>独立增强"]
        clips --> student["编码前部位切分<br/>独立编码与重组"]
        clips --> teacher["完整视图教师<br/>编码与投影"]
        student --> contrast["动量对比学习<br/>聚合、投影与预测"]
        teacher -->|教师投影目标| contrast
        contrast -.->|EMA 更新| teacher
        teacher --> output["教师表示<br/>自监督测试或任务适配"]

关键设计

1. 多源无标签语料:先扩大步态变化范围,而不只是重复同一种视频

WebGait-2M 汇集 12 个公开数据集的训练划分,表 1 报告总计 2,358,547 条序列和 231,675,844 帧。 其中既有 CASIA-B、OU-MVLP 等实验室数据,也有 Gait3D、GREW 和 GaitLU-1M 等自然场景数据。 健康侧加入 Scoliosis1K、D-Gait 和 RA-GAR,使模型能接触与脊柱侧弯、抑郁风险和步态属性有关的运动变化。 身份与疾病标注不参与预训练,训练时把每条序列当作一个独立实例,而不是把同一人物的所有序列归成一个身份类。 因此,同一序列内的双片段构成正对;不能把这里的实例对比误写成监督身份对比。 作者说明 WebGait-2M 是集合名称,不重新处理或分发这些数据,实际使用仍受各原始数据集许可约束。

把来源简单拼接会让大数据集主导批次,因此论文使用对数据集规模取对数、再以 3.0 为尺度进行 softmax 归一化的采样策略。 GaitLU-1M 因视角多样性有限还被额外降权 10 倍。 这让较小但具有不同衣着、场景和健康相关变化的数据集有机会影响表示。 论文表 7(a) 进一步固定约 1M 的数据规模,比较 GaitLU-1M 与 WebGait-1M,避免只用“大数据更好”解释全部收益。 FoundationGait-0.13B 的 Gait3D Rank-1 在该比较中从 26.6% 变为 42.5%,支持来源多样性的重要性。 但训练划分包含后续评测数据集的无标签样本,所以多数自监督结果不是对完全未见数据域的零样本评测。

2. 编码前部位切分:在特征趋同之前阻断跨区域干扰

学生输入沿高度切成 \(p\) 个水平区域,同一片段的全部帧使用一致的区域划分。 每个区域独立通过共享学生骨干,因此编码过程中不能直接借用另一块身体区域的特征。 得到的局部特征图再沿高度拼接回原顺序,随后才进行水平与时间聚合。 这与末端条带池化的关键差别是干预时机:后者在完整身体已被深层网络混合后才切分,前者限制了混合本身。 它也不同于随机裁剪或掩码,因为没有主动丢弃某个区域的轮廓信息。 重组后的表示仍覆盖全身,只是其组成部分来自相互隔离的编码过程。

训练采用 \(P=\{1,2,4,8\}\),把批次划分为对应不同 \(p\) 的子批次。 不是让每个样本都重复经历全部 4 种粒度,更不是部署时对 4 个独立模型投票。 \(p=1\) 保留完整上下文,更大的 \(p\) 则迫使模型利用更局部的运动和边界变化。 不同粒度共同训练共享骨干,使其既能处理全身,也不至于只依赖最显著的局部线索。 半数样本在切分时额外采用沿高度方向的移位窗口操作,改变局部划分位置。 原文只明确了方向与应用比例,本笔记不补造具体位移幅度或边界实现。 推理时使用教师完整视图路径,因此该方法的主要改变是训练中的信息约束,而不是额外增加一个身体解析网络。

3. 动量对比学习:让局部编码结果对齐稳定的完整步态目标

教师由编码器、投影器和预测器构成,学生也有对应组件。 教师先处理另一段完整轮廓视频,经时空聚合与投影形成对比目标;学生使用重组后的全身特征产生预测表示。 InfoNCE 拉近同序列的学生预测与教师投影,其他序列实例在批次中提供负对。 相似度采用余弦相似度,正文将温度写为 \(\tau=16\)。 缓存中的式 (3) 分子与分母排版损坏,无法可靠逐符号核对,因此不在这里重建为作者的精确公式。 可确认的学习关系以图 4、算法 1 和正文叙述为准:学生预测对齐教师投影,而不是学生投影直接对齐教师预测。

学生通过反向传播更新,教师分支不接收这条梯度,而以学生参数的指数移动平均更新。 EMA 动量从 0.99 按余弦调度增长到 1.0,使教师目标随训练逐渐稳定。 不对称预测器和跨组件对齐沿用自监督表示学习范式,部位切分则是本文施加步态先验的位置。 教师无需直接看切分块,却通过参数平均继承学生被迫学习的局部判别能力。 自监督评测使用教师预测器输出的特征;适配下游任务时替换预测器,保留预训练编码器与投影器。 这一输出选择很重要,因为直接取任意中间层并不等价于论文报告的评测设置。

一个完整示例

以预训练中的一条走路序列为例,先采样两个不重叠片段,每个片段含 16 帧,轮廓尺寸为 \(64\times44\)。 其中一个片段经增强后送入教师,得到完整步态的投影目标。 另一个片段若分到 \(p=4\) 子批次,就沿高度切成 4 个区域,每块输入高度为 16,宽度仍为 44。 学生分别编码这些区域,再把局部特征按从上到下的顺序恢复为空间完整的特征图。 此时“完整”指覆盖范围恢复,不意味着区域已经在骨干内部交换过信息。 聚合、投影和预测后,学生表示应当更接近同序列教师目标,而不是其他序列的目标。 该例仅用于解释输入如何流动,并不是原文单独报告的实验样本。 当训练完成并执行自监督识别时,测试片段只需经过教师路径提取特征,再按数据集协议进行身份检索。

损失函数 / 训练策略

预训练使用 SGD,初始学习率为 0.05、动量为 0.9、权重衰减为 \(5\times10^{-4}\)。 论文报告批大小为 512,每个片段采样 16 帧。 0.13B 模型训练 80K 次迭代,采用余弦学习率调度,最低学习率为 \(1\times10^{-5}\)。 其他规模训练 40K 次迭代,在 20K、30K 处以 0.1 倍系数降低学习率。 因此“大模型更好”的结果同时伴随更长训练,不能将跨规模差异全部归因于参数数量。 表 2(a) 的 0.13B 指 132.3M 参数的骨干;加上 32.6M 的映射组件后,总参数量为 164.9M。 论文报告最大模型在 16 张 32GB V100 上预训练约 178 小时,训练门槛并不低。

身份识别微调仅更新骨干最后两个块,学习率分别为 0.001、0.005;投影器与任务头分别使用 0.01、0.1。 Gait3D 微调使用 \(P=\{1,2\}\),CCPG 和 CCGR-MINI 使用 \(P=\{1,2,4,8\}\)。 健康任务先做只训练分类头的线性探测,再以该结果初始化进一步微调。 线性探测采用 \(P=\{1\}\),健康任务微调采用 \(P=\{1,2,4,8\}\),不能把两者理解为同一种训练预算。 正文将更多损失和适配细节交给补充材料;当前指定缓存未提供这些细节的可靠展开,因此不补写未核验的监督损失组合。

实验关键数据

主实验

下表选取原文表 3(第 10 页)的自监督结果,所有行均使用 WebGait-2M 预训练,不进行目标任务有标签微调。 数值单位为 %;Rank-1 表示检索首位身份正确的比例,CCPG 的 CL 表示整套衣着变化条件。

方法 OU-MVLP Rank-1 Gait3D Rank-1 Gait3D Rank-5 CCPG CL Rank-1
GaitSSB 44.4 27.4 43.3 16.3
GaitSSB-0.03B 39.2 33.2 51.2 16.0
GaitSSB-0.13B 38.9 34.6 53.2 16.3
FoundationGait-0.03B 57.0 41.1 59.0 26.8
FoundationGait-0.13B 64.5 48.0 66.5 27.6

相比同为 0.13B 的 GaitSSB,FoundationGait 的 Gait3D Rank-1 高 13.4 个百分点,OU-MVLP 高 25.6 个百分点。 相对小型 GaitSSB,Gait3D 的增益是 20.6 个百分点;这两个比较不能混为同一个基线。 有标签微调的结果另见表 4(c)(第 11 页):FoundationGait-0.13B 在 Gait3D 达到 79.3% Rank-1 和 74.0% mAP。 这些数值不能与上表的无微调结果当作同条件排名;mAP 衡量的是完整检索排序质量,不是 Rank-1 的另一种写法。

消融实验

下表来自原文表 6(a)(第 14 页),固定使用 0.13B 预训练模型,对比学生分支的处理方式;数值均为识别率 %。 只保留列义清楚的 CASIA-B 三种条件与 Gait3D Rank-1,NM、BG、CL 分别代表正常、携包和换衣。

学生处理方式 P CASIA-B NM CASIA-B BG CASIA-B CL Gait3D Rank-1
Crop 不适用 70.8 59.3 27.9 17.2
Mask 不适用 87.6 68.1 36.2 38.1
Part-aware [1] 86.6 67.0 28.7 39.6
Part-aware [1, 4] 92.2 73.8 37.7 45.3
Part-aware [1, 2, 4, 8] 94.0 75.4 40.2 48.0

从不切分的 [1] 到 [1, 2, 4, 8],Gait3D Rank-1 提升 8.4 个百分点,CASIA-B CL 提升 11.5 个百分点。 Crop 和 Mask 均弱于完整部位方案,支持“保留全部区域但限制编码混合”比直接删除局部信息更适合这里的训练目标。 原文表 6(a) 最后一列标为 mAP,但 [1, 2, 4, 8] 行的 66.5 与表 3 的 Gait3D Rank-5 相同;45.3 后的 60.3 也需核验列义。 无法仅凭文本缓存判断是原表排版还是提取问题,因此该列不进入本笔记的定量结论。

为检查跨任务适配是否同样受益,下表选取原文表 5(a)(第 13 页)在 Scoliosis1K 上的结果,数值单位为 %。

模式 方法 准确率 精确率 召回率 F1
线性探测 FoundationGait-0.03B 71.1 59.7 75.3 56.7
线性探测 FoundationGait-0.13B 73.5 61.0 68.5 56.9
微调 FoundationGait-0.03B 97.3 95.4 88.9 91.7
微调 FoundationGait-0.13B 96.0 80.1 97.5 85.1

该任务中,大模型微调后的召回率更高,但精确率、准确率与 F1 均低于 0.03B,不能概括为所有下游任务都随规模单调改善。 引言声称脊柱侧弯筛查达到 97.0% 准确率,而表 5(a) 列出 97.3% 与 96.0%;这里按表中配置分别记录,不把冲突改写成一致。

关键发现

  • 多源数据与部位约束需要同时发挥作用:增加数据后,GaitSSB 的扩展仍会在 OU-MVLP 上退化。
  • 未见域实验更接近跨域检验:表 6(c) 第 14 页中,DroneGait 高俯视 NM 的 0.13B 结果为 50.4%,对应 GaitSSB 为 36.0%。
  • 跨模态结果需要适配:表 6(d) 的人体解析输入经过微调,不能将其称作未经训练的直接模态迁移。

亮点与洞察

  • 部位先验的作用位置比“有没有局部池化”更关键。本文把干预前移到输入编码阶段,解释了为何已有部位池化仍可能无法支持扩展。
  • 教师完整、学生分块形成了清楚的训练非对称性。它既要求局部片段提供证据,又不把推理系统固定成多路局部网络。
  • 同一无标签骨干支持身份检索与健康属性学习,展示了领域表示复用的价值。其成功边界应由各任务的适配与指标决定,而非“基础模型”名称决定。

局限与展望

  • 作者尚未验证 1B 规模,最大骨干为 0.13B;ViT 架构与 RGB 路线也被列为未来工作,不能写成已经实现的能力。
  • 大模型拥有更长预训练日程,且自监督基线主要是可复现的 GaitSSB。更严格的等计算量比较能进一步分离架构、规模和训练预算贡献。
  • 健康任务显示明显的规模与阈值权衡;高召回不等于更可靠的临床筛查。笔记解读是还需外部验证、校准和人群分层评估,论文并未证明可直接替代临床诊断。
  • 轮廓丢弃 RGB 纹理但仍可承载身份与健康信息,并不自动提供隐私保障。实际应用需要审查授权、数据治理及敏感属性推断风险。
  • 式 (3)、表 6(a) 列义和引言准确率存在上述核验限制;不据这些疑点重建未确认公式或推导新的实验结论。

相关工作与启发

  • vs GaitSSB:两者都从无标签步态学习表示,FoundationGait 的重点是通过部位感知训练与多源语料改变扩展行为,而非首次引入步态自监督。
  • vs GaitPart / DeepGaitV2:本文继承局部身体建模思路并采用 DeepGaitV2 骨干,新增的关键是训练期间编码前切分,不能理解为全新视觉骨干。
  • vs BigGait / BiggerGait:后者借助 RGB 与已有大视觉模型,本文直接在轮廓域预训练;表 4(a) 中 BiggerGait 的 CCPG 均值 93.0% 仍高于本文的 87.2%。
  • 可延伸方向(笔记解读):对不同身体部位测量特征相似度与融合增益,并在等计算预算下调整切分粒度,可进一步检验“多样性保留”是否是扩展收益的直接原因。

评分

  • 新颖性: 4/5。将部位隔离前移至编码阶段,针对步态模型扩展失败给出具体且可验证的改进。
  • 实验充分度: 4/5。覆盖识别、健康、未见域及模态适配,但等计算预算比较与部分报告一致性仍有不足。
  • 写作质量: 3/5。机制和算法清楚,部分数字、表头与公式提取问题影响复核。
  • 价值: 4/5。提供可复用的步态领域预训练方案,但医疗与大规模部署仍需额外验证。