Head Avatars with Dynamic Explicit Hair¶
会议: ECCV 2026
论文: ECCV 2026 Poster
代码: https://dynhair.is.tue.mpg.de/
领域: 3D视觉
关键词: 动态头发建模, 头部数字人, 3D高斯泼溅, 发丝级动力学, 多视角视频
一句话总结¶
DynHair 提出了一种结合显式发丝几何与 3D 高斯泼溅的动态头部数字人模型,通过以头部角速度、角加速度和相对重力为条件的 LSTM-FiLM 时序网络预测发丝非刚性形变,并引入弹性保持等物理约束,实现了逼真且时序连贯的发丝级动力学渲染。
研究背景与动机¶
近年来,基于神经辐射场(NeRF)和 3D 高斯泼溅(3DGS)的头部数字人身表现出了出色的视觉保真度与实时渲染速度。然而,现有的头部头像生成工作绝大部分将关注点聚焦在面部区域,依赖参数化人脸网格模型(如 3DMM、FLAME)来驱动表情变化与刚体姿态,而将头发区域与头部笼统绑定为一个整体进行隐式建模。这种简化处理在静态或平缓动作下尚可维持外观,但一旦涉及大幅度头部晃动、侧转或点头,便会立刻暴露物理真实感缺失的严重缺陷:真实发丝在重力、惯性与离心力作用下应当展现出甩动、滞后、回弹与阻尼沉降等复杂动态,而现有模型生成的头发却僵硬地固定在头皮上,或者在帧间出现严重的高频闪烁与模糊。
构建高质量动态发丝的核心症结在于,传统物理仿真方案(如 Maya、Houdini 数值求解器)虽然具有严谨的动力学模型,但极度依赖精确的 3D 发丝几何重构以及针对特定发质的手动调参(如质量、刚度、阻尼与摩擦系数等),而从单目或多视角视频中自动估计这些微分物理参数在当前仍然是一个未解难题。与此同时,单纯依赖图像观测的端到端学习方法往往直接在无结构的高斯点云或隐式场上预测位移,缺乏底层显式发丝的几何连续性约束,极易产生非物理形变、自穿透以及由于高频纹理过拟合带来的时间抖动。
本文的切入视角是:不必依赖昂贵且难以微分的离线物理引擎,而是将可变形显式发丝骨架与可微 3D 高斯泼溅结合,直接从多视角视频中端到端学习由头部物理动力学驱动的发丝形变场。核心 idea:将头部解耦为无结构面部高斯与显式发丝高斯,提取头部在局部坐标系下的角速度、角加速度与相对重力,通过时序 LSTM 编码与 FiLM 特征调制预测发丝各点位移,并借助发丝弹性保持与防穿透等几何物理损失实现自然可信的动态头发追踪与动画驱动。
方法详解¶
整体框架¶
DynHair 采用多阶段解耦协同建模管线,输入为多视角多帧同步头部视频,输出为可受任意新头部运动和表情驱动的动态 3D 头像。在静态初始化阶段,模型利用发丝先验网络从多视角初始帧重建典范发型,并将面部与上半身表示为无结构 3D 高斯。在动态建模阶段,系统通过参数化人脸追踪提取头部在时间滑动窗口内的角速度、加速度与局部重力方向,输入时序 LSTM 编码器提取运动潜码;随后利用 FiLM 层调制发丝上采样点的空间特征,由形变 MLP 结合可学习的发根衰减因子预测非刚性发丝偏移。最后,变形后的发丝对齐高斯与面部高斯合并,通过可微高斯泼溅进行联合光栅化,并施加光度、几何轮廓、发丝朝向、防穿透、弹性保持与色彩一致性等多重损失监督。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["多视角视频输入<br/>多视角同步头部视频序列"] --> B["局部动力学提取与时序 LSTM 编码<br/>差分计算角速度/加速度/相对重力"]
A --> C["典范发型初始化与发丝几何先验<br/>基于 Im2Haircut 重建多段发丝折线"]
B --> D["FiLM 条件调制与根部可学习衰减<br/>调制发丝局部点特征并预测三维位移"]
C --> D
D --> E["发丝对齐 3D 高斯与解耦头像渲染<br/>发丝高斯与上半身高斯合并泼溅"]
E --> F["弹性保持与几何-色彩多重物理正则化<br/>端到端反向传播优化形变网络与高斯属性"]
关键设计¶
1. 局部动力学提取与时序 LSTM 编码:解耦刚体姿态并捕捉惯性延迟 发丝在头部的飞舞并非由头部的瞬时绝对朝向决定,而是受头部加速度产生的惯性力与重力共同驱使。若直接将绝对位姿输入形变网络,模型极易退化为机械记忆特定视角和静态旋转,失去对未见速度和轨迹的泛化能力。DynHair 从参数化人脸追踪中获得每帧全局旋转矩阵 \(R_t\) 与平移,通过中心差分计算世界坐标系下的角速度 \(\omega_t^\text{world}\) 和加速度 \(\alpha_t^\text{world}\),随后将其逆旋转至头部局部坐标系: $\(\omega_t = R_t^\top \omega_t^\text{world}, \quad \alpha_t = R_t^\top \alpha_t^\text{world}\)$ 同时将世界重力方向转为头部相对重力矢量 \(g_t = \mathrm{normalize}(R_t^\top [0, -1, 0]^\top)\)。在滑动时间窗口 \(\{t-T, \dots, t\}\)(实验取 \(T=5\))内,将这三项拼接为 9 维局部动力学特征向量,经位置编码后送入带可学习初始隐状态的 LSTM,输出富含多帧运动动量与延迟信息的时序嵌入向量 \(z_t\)。这种时序累积机制能够精准拟合头发在突停时甩出、在变向时滞后落后的物理惯性效应。
2. FiLM 条件调制与根部可学习衰减:实现发丝级物理非刚性形变 发丝空间分布广阔,单根发丝从头皮根部到发尾具有强烈的异构形变规律:发根牢固锚定在头皮上,形变量应接近于零,而远离头皮的发尾则具备极高的运动自由度。为将高层时序运动嵌入无缝注入几何发丝,DynHair 使用线性层将 \(z_t\) 映射为尺度因子 \(\gamma_\text{film}\) 与平移因子 \(\beta_\text{film}\),对典范发丝各采样点 \(p_{ij}\) 的位置编码进行特征级线性调制(FiLM): $\(\mathrm{FiLM}(p_{ij}) = \gamma(p_{ij}) \odot (1 + \boldsymbol{\gamma}_\text{film}) + \boldsymbol{\beta}_\text{film}\)$ 随后将调制特征与发丝沿程归一化弧长 \(j/L \in [0, 1]\) 拼接送入轻量 MLP,并显式引入可学习根部衰减因子 \(\rho_j\): $\(\Delta p_{ij} = \mathrm{MLP}\Big(\mathrm{FiLM}(p_{ij}),\, j/L\Big) \cdot \rho_j\)$ \(\rho_j\) 初始化为自发根到发尾的线性斜坡(从微小值到 1.0),且形变 MLP 末层权重初始化为接近 0,使得网络在训练初期保持平滑微小位移,既保证了根部牢固贴合头皮,又自然释放了发梢大幅摆动的物理自由度。
3. 发丝对齐 3D 高斯与解耦头像渲染:结构化发丝与无结构面部协同 将整个头部统一用离散无约束高斯表示会导致发丝内部丧失结构性,在动态甩动中产生碎片状撕裂与空洞。DynHair 采用解耦架构:上半身和面部继承 GHA 方案,由附着在面部网格上的无结构高斯通过表情和姿态变形网络驱动;而发型则表示为 \(N \approx 11,000\) 根折线,每根折线均匀离散为 \(L=40\) 个三维控制点。在发丝折线线段的中点构建结构化 3D 高斯,使其主轴方向与线段切线严格对齐,主尺度正比于线段长度,横向两轴尺度则固定为极细的发丝直径,并通过平行输运保证旋转四元数连续无扭转。渲染时,将形变后的发丝高斯与面部高斯合并,通过可微光栅化统一渲染为 RGB、分割掩码及 2D 发丝朝向图,实现发面交界处的逼真遮挡与光度融合。
4. 弹性保持与几何-色彩多重物理正则化:避免发丝拉伸与视觉闪烁 仅依靠光度损失(\(L_1\)、SSIM 与 LPIPS)无法约束三维空间中发丝的物理有效性,极易造成发丝在高速运动中产生橡皮筋式的反物理伸缩。为此,DynHair 设计了非伸缩性弹性正则化损失,严格惩罚每根发丝相邻点段在形变前后的长度差异: $\(\mathcal{L}_\text{elastic} = \frac{1}{NL} \sum_{i=1}^{N}\sum_{j=1}^{L-1} \Big| \|p_{t, ij+1} - p_{t, ij}\| - \|p_{0, ij+1} - p_{0, ij}\| \Big|\)$ 此外,针对发丝可能陷入头骨网格的现象,采样发丝点并通过符号距离查询计算头模穿透损失 \(\mathcal{L}_\text{penetr}\);在图像空间采用非对称召回分割损失 \(\mathcal{L}_\text{seg}\) 重点惩罚发丝漏覆盖,并用模 \(\pi\) 的折叠角度损失 \(\mathcal{L}_\text{orient}\) 对齐 2D 纹理方向。最后,引入发丝轴向颜色梯度平滑 \(\mathcal{L}_\text{cg}\)、空间邻域 KNN 颜色一致性 \(\mathcal{L}_\text{cs}\) 与整发丝颜色偏离惩罚 \(\mathcal{L}_\text{cc}\),彻底消除了动态过程中的色斑噪点与时间闪烁。
损失函数 / 训练策略¶
DynHair 训练分为两个主要阶段: 1. 静态初始化阶段:在第 0 帧多视角图像监督下,结合 Im2Haircut 先验、PCA 空间正则、发丝长度平滑度与正反面一致性约束优化得到典范发型 \(\mathcal{H}_0\)。 2. 动态联合训练阶段:固定发型拓扑,联合优化发丝形变网络 \(D_\text{hair}\)、小学习率微调的典范发丝坐标、头部形变网络与高斯外观属性。总目标函数为: $\(\mathcal{L}_\text{dynamic} = \mathcal{L}_\text{photo} + \mathcal{L}_\text{hair} + \mathcal{L}_\text{color\_reg}\)$ 其中光度损失由像素 \(L_1\)、结构 SSIM 及 VGG 感知损失组成;几何与物理损失包含发丝分割、朝向匹配、穿透惩罚与弹性保持;色彩正则包含发丝渐变、空间光滑与均值一致性。模型在单张 NVIDIA A100 上训练 320,000 步,后 80,000 步增加 VGG 权重以强化高频发丝纹理细节。
实验关键数据¶
主实验¶
论文在多视角动态头部数据集上与 GaussianAvatars(GA)、Gaussian Head Avatar(GHA)及经典物理仿真器驱动方案(Maya 动力学模拟)进行了量化对比。评估指标包括全图与头发区域的 PSNR、SSIM、LPIPS、FID,以及头发分割覆盖率 \(\text{IoU}_\text{hair}\)、跨帧时序交叠 \(\text{tIoU}_\text{hair}\)、衡量多余时序波动的 \(\text{tLPIPS}_\text{ex}\) 和发丝非刚性速度与加速度。
表 1:跨 3 位受试者测试集的自身重演(Self-reenactment)定量对比结果(引自原论文 Table 1)
| 方法 | 全图 PSNR↑ | 全图 SSIM↑ | 全图 LPIPS↓ | 全图 FID↓ | 头发 PSNR↑ | 头发 SSIM↑ | 头发 LPIPS↓ | 头发 IoU↑ | 头发 tIoU↑ | 头发 FID↓ | \(\text{tLPIPS}_\text{ex}\) | 速度(×\(10^{-3}\))↑ | 加速度(×\(10^{-3}\))↓ |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GA [45] | 20.17 | 0.7787 | 0.2536 | 45.73 | 19.94 | 0.7335 | 0.1362 | – | – | 126.93 | -0.0230 | 0.40 | 0.08 |
| GHA [62] | 22.33 | 0.7925 | 0.2056 | 36.25 | 22.15 | 0.7446 | 0.1086 | – | – | 81.07 | -0.0127 | 2.17 | 0.24 |
| Maya 仿真器* | 19.39 | 0.6610 | 0.2465 | 62.64 | 17.89 | 0.5182 | 0.1484 | 0.776 | 0.925 | 121.97 | 0.0183 | 2.38 | 0.11 |
| DynHair (本文) | 21.60 | 0.7638 | 0.2010 | 30.06 | 21.01 | 0.6885 | 0.1101 | 0.878 | 0.936 | 37.51 | 0.0045 | 2.41 | 0.19 |
*注:\(\text{tLPIPS}_\text{ex}\) 衡量帧间过量变化,数值越接近 0 越好,负值表示动作被过度平滑,正值表示存在高频抖动;真值图像的 \(\text{tIoU}_\text{hair}\) 约为 0.946。
消融实验¶
论文在 2 个场景、3 种运动类型(点头、左右摆动、旋转)下,在相同迭代步数(240k)对核心设计进行了物理真实感与轮廓质量消融分析。评估指标增加了衡量速度异常尖峰的速度爆炸比(VER)、衡量发丝曲率时序抖动的曲率时序平滑度(CTS)、位移突变尖峰(P95-Disp)以及角动量漂移量(AMD)。
表 2:发丝动力学物理真实感消融实验定量对比(引自原论文 Table 2)
| 配置 | \(\text{IoU}_\text{hair}\)↑ | \(\text{tIoU}_\text{hair}\)↑ | \(\text{LPIPS}_\text{hair}\)↓ | \(\text{tLPIPS}_\text{ex}\) | VER↓ | P95-Disp↓ | CTS (×\(10^{-4}\))↓ | AMD↓ | 说明 |
|---|---|---|---|---|---|---|---|---|---|
| Full Model (本文) | 0.883 | 0.945 | 0.101 | 0.0024 | 26.88 | 0.071 | 2.2 | 7787 | 完整模型:物理与图像指标最优均衡 |
| Maya 仿真参考 | 0.789 | 0.941 | 0.131 | 0.0080 | 33.73 | 0.057 | 1.0 | 7120 | 数值仿真参考,但图像覆盖率差 |
| w/ 绝对位姿输入 | 0.885 | 0.945 | 0.101 | 0.0028 | 36.27 | 0.071 | 1.9 | 7816 | 输入绝对姿态导致泛化下降、速度尖峰增加 |
| w/o 加速度 \(\alpha_t\) | 0.878 | 0.944 | 0.101 | 0.0026 | 29.05 | 0.077 | 2.1 | 8332 | 缺少惯性加速度,动作表现力与连贯性下降 |
| w/o 重力 \(g_t\) | 0.852 | 0.932 | 0.104 | 0.0058 | 23.13 | 0.070 | 2.2 | 8159 | 缺少局部重力,点头等动作时发丝无法正常下垂 |
| w/o 弹性损失 \(\mathcal{L}_\text{elastic}\) | 0.873 | 0.943 | 0.103 | 0.0047 | 283.75 | 1.159 | 15.6 | 196993 | 丧失弹性约束,发丝发生严重形变拉伸与断裂 |
| w/o FiLM 特征调制 | 0.877 | 0.945 | 0.102 | 0.0009 | 40.46 | 0.104 | 3.8 | 8277 | 缺少特征调制,发丝动态控制精度显著受损 |
| w/ MLP 替代 LSTM | 0.879 | 0.949 | 0.102 | -0.0010 | 32.18 | 0.065 | 2.0 | 7377 | 负 \(\text{tLPIPS}_\text{ex}\) 显示发丝动态被过度平滑僵化 |
关键发现¶
- 结构化表示与逐像素度量的权衡:无约束的 GHA 在像素级 PSNR/SSIM 上略微占优,但其 FID 高达 36.25(头发区域高达 81.07),且 \(\text{tLPIPS}_\text{ex}\) 为强负值(-0.0127),本质上是通过在局部过度模糊平滑高频结构来迎合刚性像素平均值。而 DynHair 的头发 FID 达到极佳的 37.51,\(\text{tLPIPS}_\text{ex}\) 极为接近 0(0.0045),在保持高保真发丝纤维几何的同时消除了时间僵死感。
- 弹性损失 \(\mathcal{L}_\text{elastic}\) 是物理稳定性的绝对中流砥柱:一旦去除弹性损失,VER 暴增超过 10 倍(由 26.88 跃升至 283.75),P95 位移尖峰从 0.071 恶化至 1.159,角动量漂移激增至 196,993。这证明仅靠图像监督会引导发丝通过膨胀和收缩来偷懒贴合轮廓,必须依靠显式几何弹性约束来维持发丝固有长度。
- 时序动力学输入与 LSTM 的必要性:消融加速度导致角动量漂移从 7787 上升至 8332;消融重力导致发丝覆盖率 IoU 从 0.883 骤降至 0.852;而用前馈 MLP 代替 LSTM 会产生负的 \(\text{tLPIPS}_\text{ex}\)(-0.0010),证明滑动窗口时序状态记忆对捕捉发丝甩动后的滞后与衰减至关重要。
亮点与洞察¶
- 动力学局部化与时序调制的结合:将加速度与角速度经由逆旋转解耦到头部局部坐标系,并用 FiLM 调制发丝局部几何特征,优雅地兼顾了刚体姿态不变性与发丝动力学响应,使得训练在特定动作上的模型可无缝迁移至跨身份(Cross-reenactment)的复杂未知头部轨迹。
- 显式发丝拓扑与高斯泼溅渲染的优势互补:回避了传统可微物理仿真的高昂求导负担,直接用数据驱动形变网络模拟物理动态,同时发丝对齐高斯提供了连续清晰的头发纤维外观,避免了隐式场发丝的模糊与离散点云发丝的空洞。
- 发型显式几何带来的下游可编辑性:由于头发是显式折线发丝,重构后的头像可以非常轻便地进行发梢修剪(Trim)、发色明暗调整等直观编辑操作,而不会破坏已学得的形变动力学。
局限与展望¶
- 碰撞建模仅限于头骨几何:当前防穿透损失仅针对头部刚体网格(通过带符号距离场处理),并未对发丝与颈部、肩膀及躯干的复杂接触碰撞进行显式约束,在深低头或大幅度耸肩时发丝可能微小穿透衣服。
- 对前置分割质量与面部追踪的依赖:发丝掩码与发丝方向图依赖现成的 2D 分割网络与朝向检测器,当头发大面积遮挡面部或光照严重复杂时,追踪漂移可能会污染发丝几何学习。
- 头皮交界处的离散过渡瑕疵:发丝对齐高斯与面部无结构高斯在头皮根部交界区域存在离散过渡,虽然引入了发根高斯尺寸渐变收缩(Tapering),在极近特写视角下仍可能观察到微小的融合边界伪影。
相关工作与启发¶
- vs GHA [62] & GaussianAvatars [45]: GHA 等将头发与面部混合为统一高斯,受限于多边形网格或隐式变形,头发无法产生独立的甩动与下垂,发丝纹理随头部运动过度平滑;DynHair 通过显式发丝解耦和局部动力学输入,获得了真实连贯的动态毛发响应。
- vs PhysHead [28] & 传统 Maya 仿真 [1]: PhysHead 仅在单静态帧重构发型,随后完全交由不可微的物理仿真器离线计算轨迹并粘附高斯,物理参数难以与视频真实发质对齐;DynHair 在多视角视频的动态序列中端到端联合训练外观与物理正则形变,渲染保真度(头发 FID 37.51 vs 121.97)大幅领先。
- vs HHAvatar [35] & HADES [34]: HHAvatar 采用无结构高斯预测形变,缺乏纤维几何拓扑连续性;HADES 仅建模稀疏导引发丝并通过 KNN 插值其余发丝;DynHair 则在完整稠密的 11,000 根显式发丝折线上直接建模并施加全局弹性保持约束。
评分¶
- 新颖性: ⭐⭐⭐⭐☆ [首次将显式发丝折线高斯泼溅与基于头部局部加速度/重力时序调制的动态学习框架结合,思路清晰且高度优雅]
- 实验充分度: ⭐⭐⭐⭐⭐ [对比基线全面,提出了针对物理真实感的专用指标(VER、CTS、AMD 等),并在多视角新采集高帧率数据集与开源数据集上进行了完备消融]
- 写作质量: ⭐⭐⭐⭐⭐ [数学表达与物理概念清晰严谨,从局部坐标解耦到 FiLM 调制与弹性损失的设计逻辑层层递进]
- 价值: ⭐⭐⭐⭐☆ [为 3D 数字人、沉浸式影视制作与实时虚拟交互提供了一种兼具高渲染质量、低推理延迟与物理动态表现力的发丝建模范式]