Ubuntu部署GeneFace++配置

AI技术
小华
2025-11-13

Ubuntu部署GeneFace++配置指南
一 环境要求与版本选择

  • 操作系统与硬件
  • 推荐:Ubuntu 22.04/20.04
  • GPU:NVIDIA显卡(如 V100/A100/RTX 3090 等),显存建议≥8GB
  • 存储:至少20GB可用空间(数据与权重较大)
  • CUDA与驱动
  • 推荐:CUDA 11.7(项目已在 V100/A100 上验证;不建议 CUDA 12+
  • 驱动:确保 nvidia-smi 可见且版本匹配
  • Python与深度学习栈
  • Python:3.9
  • PyTorch:优先 2.0.1 + cu117(已验证稳定;torch 2.1 + cu121 在部分扩展如 torch-ngp 会报错)
  • 其他:ffmpeg(含 libx264)PyTorch3DMMCV 2.1.0、系统依赖 libasound2-dev、portaudio19-dev
  • 说明
  • 社区亦有 CUDA 11.3 + PyTorch 1.11 的配置记录,但更推荐 CUDA 11.7 + PyTorch 2.0.1 的组合以获得更好的兼容性与速度。

二 本机部署步骤

  • 1)安装 CUDA 11.7 并配置环境变量
  • 下载并安装 CUDA 11.7(示例为 Ubuntu 22.04):
  • wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
  • sudo dpkg -i cuda-keyring*.deb
  • sudo apt-get update
  • sudo apt-get -y install cuda=11.7.1-1
  • 配置环境变量(~/.bashrc 或当前 shell):
  • export CUDA_PATH_11=/usr/local/cuda-11.7
  • export PATH=${CUDA_PATH_11}/bin${PATH:+:${PATH}}
  • export LD_LIBRARY_PATH=${CUDA_PATH_11}/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  • 验证:nvcc --version 应显示 11.7
  • 2)创建 Conda 环境并安装依赖
  • conda create -n geneface python=3.9 -y
  • conda activate geneface
  • 安装 PyTorch 2.0.1 + cu117:
  • conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia -y
  • 安装 ffmpeg(含 x264):conda install conda-forge::ffmpeg -y
  • 安装 PyTorch3D(源码):pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable"
  • 安装 MMCV 2.1.0(mim):
  • pip install cython -i https://mirrors.aliyun.com/pypi/simple
  • pip install openmim==0.3.9 -i https://mirrors.aliyun.com/pypi/simple
  • mim install mmcv==2.1.0
  • 系统依赖:sudo apt-get install libasound2-dev portaudio19-dev -y
  • 项目依赖:pip install -r docs/prepare_env/requirements.txt -i https://mirrors.aliyun.com/pypi/simple
  • 3)构建自定义 CUDA 扩展
  • bash docs/prepare_env/install_ext.sh
  • 4)准备 3DMM 模型与权重(用于人脸重建)
  • BFM200901_MorphableModel.matExp_Pca.binBFM_model_front.mat 放到 deep_3drecon/BFM/
  • facerecon 预训练权重 epoch_20.pth 放到 deep_3drecon/checkpoints/facerecon/
  • 生成跟踪文件:
  • cd data_util/face_tracking
  • python convert_BFM.py
  • 5)环境验证
  • 测试 3D 重建:
  • export PYTHONPATH=./
  • CUDA_VISIBLE_DEVICES=0 python deep_3drecon/test.py
  • 生成 GeneFace 所需重建器配置:
  • python deep_3drecon/generate_reconstructor_opt_for_geneface.py

三 Docker部署简要

  • 运行容器并映射端口(示例):
  • sudo docker run -p 8000:8000 -it --name ubuntu_conda117 --privileged=true ubuntu:latest /bin/bash
  • 拷贝本机 CUDA 11.7 到容器并配置环境变量(同上)
  • 拷贝项目代码到容器(或直接在容器内 git clone)
  • 在容器内执行“二、2)安装依赖”与“二、3)构建扩展”的步骤
  • 注意:首次建议在本机跑通流程,再迁移到容器以减少依赖冲突与路径问题。

四 数据预处理与训练推理

  • 数据预处理
  • docs/process_data/guide-zh.md 准备个性化视频,生成二进制 .npy 数据文件(首次建议逐步执行,后续可用同目录 bash run.sh ${VIDEO_ID} 一键化)
  • 训练与推理
  • 训练:按 docs/train_and_infer/guide-zh.md 执行;训练时长取决于数据与步数(示例平台默认 50000 步,通常需≥2小时
  • 推理(命令行):
  • python inference/genefacepp.py \

--a2m_ckpt checkpoints/audio2motion_vae \
--head_ckpt checkpoints/motion2video_nerf/may_head \
--torso_ckpt checkpoints/motion2video_nerf/may_torso \
--drv_aud data/raw/val_wavs/MacronSpeech.wav \
--out_name may_demo.mp4

  • WebUI(Gradio):
  • export PYTHONPATH=./
  • python inference/app_genefacepp.py
  • 访问控制台输出的 https://0.0.0.0:8080 地址(部分平台需实名认证后使用 API 地址访问)。

五 常见问题与排查

  • 版本不兼容
  • 出现如 torch-ngp 报错时,优先回退到 PyTorch 2.0.1 + cu117;避免 torch 2.1 + cu121 组合
  • 依赖安装失败
  • 使用国内镜像源(如 -i https://mirrors.aliyun.com/pypi/simple),分步安装(先 cython、mim,再 mmcv)
  • 3DMM/重建报错
  • 核对 BFM 相关模型文件与路径是否正确;确认已执行 convert_BFM.py 生成 3DMM_info.npy
  • 推理找不到权重
  • 检查 --a2m_ckpt / --head_ckpt / --torso_ckpt 路径是否为目录或具体 .ckpt 文件,且相对/绝对路径无误
  • CUDA 不可用
  • 确认 nvcc --versionnvidia-smi 输出匹配 CUDA 11.7,并检查 LD_LIBRARY_PATH 包含 /usr/local/cuda-11.7/lib64
亿速云提供售前/售后服务

售前业务咨询

售后技术保障

400-100-2938

7*24小时售后电话

官方微信小程序