kocasariumut/FaceAnything
Official Implementation for "Face Anything: 4D Face Reconstruction from Any Image Sequence" (ECCV 2026, Oral (Spotlight))
What it is
Face Anything 是一款研究级的前馈神经网络模型,能够将任何脸部图像集合(照片连拍、视频或甚至是单张图片)转换为时间一致的 4D 重建——一个随时间移动的 3D 几何结构,并带有密集的逐像素对应关系。核心概念是canonical facial point prediction:每个像素都被映射到共享的标准人脸空间中的归一化坐标,将追踪和重建转换为单一的密集映射问题。
What you get out of it
在输入序列上运行提供的 run_inference.py 会产生一系列视觉化产物:
- 彩色点云视频(环绕相机)显示重建的人脸。
- 追踪视频,其中每个点在帧间保持一致的颜色,视觉化密集对应关系。
- 标准颜色渲染图,根据其标准坐标为每个点着色。
- 深度、法线和原始图视频,用于分析或下游任务使用。
- 一个“大巡礼”视频,平滑地在所有模态之间转换。
- 逐帧 PLY files(几何、标准图、追踪)和相机内参/外参 (
cameras.npz/json)。 - 一个
raw_predictions.npz文件,包含模型的原始输出(深度、姿态、标准图、置信度、有效性遮罩)。
所有这些都会自动写入输出文件夹;你可以使用 --outputs 标志来选择子集。
How to get it running
- Clone the repo 并运行提供的
install.sh。该脚本会创建一个 Conda 环境,安装 PyTorch 2.9 (CUDA 12.8) 并安装其他 Python 依赖项,并下载约 15 GB 的模型权重。 - GPU requirement – 模型需要 CUDA 兼容的 GPU;它仅在 Python 3.11 上测试过。
- Checkpoint – 脚本会从 Google Drive 或 Hugging-Face repo 取得
checkpoint.pt。你也可以手动将文件放在checkpoints/下。 - Run inference 使用单个命令:
python run_inference.py --input <path> --output <out_dir><path>可以是单张图片、图片文件夹或视频文件。 n5. Optional flags 允许你控制分辨率、处理模式 (all-at-oncevsone-by-one)、背景移除(通过 Robust Video Matting),哪些输出物生成,环绕风格,等。
When you'd want to use it
- Research 關於 4D 人臉動態、表情轉移或動畫製作,其中需要密集且時間一致的幾何結構。
- Content creation 游戏或 AR/VR 领域,其中需要快速从普通素材转换到 3D 人脸模型,是一个很实用的用例。
- Dataset generation – 作者们发布了针对精选的 “FaceAnything NeRSemble” 数据集提供的标准图(可通过申请表单取得)。
Limitations & practical notes
- 模型是**前馈式(feed-forward)**的;它不进行迭代式精炼,因此与多视角 SfM 流程相比,可能缺失极高频的细节。
- Memory vs detail trade-off:
all-at-once提供更平滑的时间一致性,但表面较粗糙;one-by-one产生更精细的几何结构,但以牺牲一致性与更高的 GPU 显存使用量为代价。 - 许可证是 CC-BY-NC 4.0,因此未经许可禁止商业用途。
Citation
@article{kocasari2026face,
title={Face Anything: 4D Face Reconstruction from Any Image Sequence},
author={Kocasari, Umut and Giebenhain, Simon and Shaw, Richard and Nießner, Matthias},
journal={arXiv preprint arXiv:2604.19702},
year={2026}
}
相关
- 项目
- 项目
- 项目
- 项目