CentOS云服务器GeneFace++安装教程

AI技术
小华
2025-11-26

CentOS云服务器部署 GeneFace++ 教程
一 环境准备

  • 实例与驱动
  • 建议使用带 NVIDIA GPU 的实例(如 A10/V100 等),安装与驱动匹配的 CUDA 11.7cuDNN,并确认 nvidia-smi 正常显示 GPU 与驱动版本。
  • 系统建议 CentOS 7/8(x86_64),已安装 EPEL 与基础编译工具(如 gcc、make、cmake)。
  • 基础工具
  • 安装 Miniconda/Anaconda(Python 3.9 环境),后续所有依赖均在该环境中安装,避免与系统 Python 冲突。
  • 安装 FFmpeg(含 libx264 编码器),用于音视频编解码与图像转视频。
  • 安装音频依赖(后续 pip 安装会用到):PortAudio 开发库与 ALSA 库,用于音频采集/播放与依赖编译。

二 安装步骤

  1. 创建并激活 Conda 环境
  • conda create -n geneface python=3.9
  • conda activate geneface
  1. 安装 FFmpeg(含 libx264)
  • conda install -c conda-forge ffmpeg
  1. 安装 PyTorch 2.0.1 + CUDA 11.7(避免 2.1+ 以免与部分扩展不兼容)
  • conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia
  1. 安装 PyTorch3D(从源码)
  1. 安装 MMCV 2.1(通过 OpenMIM)
  • pip install cython
  • pip install openmim==0.3.9
  • mim install mmcv==2.1.0
  1. 安装系统音频依赖(CentOS)
  • sudo yum install -y portaudio19-devel alsa-lib-devel
  1. 安装项目 Python 依赖
  • pip install -r docs/prepare_env/requirements.txt -v
  1. 构建扩展(包含 torch-ngp 等)
  • bash docs/prepare_env/install_ext.sh
  1. 验证关键包版本
  • python -c "import torch; print('torch:', torch.__version__, 'cuda:', torch.version.cuda)"
  • python -c "import pytorch3d; print('pytorch3d imported')"
  • python -c "import mmcv; print('mmcv:', mmcv.__version__)"

三 数据与模型准备

  • 3DMM 模型 BFM2009
  • 下载并解压后将 8 个文件放置到 /deep_3drecon/BFM/,目录结构示例:
  • deep_3drecon/BFM/
  • 01_MorphableModel.mat
  • BFM_exp_idx.mat
  • BFM_front_idx.mat
  • BFM_model_front.mat
  • Exp_Pca.bin
  • facemodel_info.mat
  • index_mp468_from_mesh35709.npy
  • mediapipe_in_bfm53201.npy
  • std_exp.txt
  • 示例数据与推理素材
  • 下载预处理数据 trainval_dataset.npy(示例人物 May),放置到 data/binary/videos/May/trainval_dataset.npy
  • 准备驱动音频(英文示例:data/raw/val_wavs/MacronSpeech.wav),或替换为你的 .wav 文件。

四 推理与 WebUI

  • 命令行推理(生成视频)
  • 在项目根目录执行(注意设置 PYTHONPATH):
  • export PYTHONPATH=./
  • python inference/genefacepp_infer.py \

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

  • Gradio WebUI(局域网访问)
  • 启动服务:
  • export PYTHONPATH=./
  • python inference/app_genefacepp.py \

--a2m_ckpt=checkpoints/audio2motion_vae \
--head_ckpt= \
--torso_ckpt=checkpoints/motion2video_nerf/may_torso

  • 服务器无公网 IP 时,可在代码中将 server_name="0.0.0.0",并在云厂商安全组放行 7860 端口,使用浏览器访问 http://服务器IP:7860
  • 国内网络优化
  • 在推理脚本开头加入(加速从 Hugging Face 下载预训练权重):
  • import os; os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"
  • os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"

五 常见问题与排障

  • 版本兼容
  • 已验证 PyTorch 2.0.1 + CUDA 11.7 稳定;PyTorch 2.1 + CUDA 12.1 在部分环境会导致 torch-ngp 相关错误,建议回退到 2.0.1。
  • 构建扩展失败
  • 多数为网络超时或依赖缺失:重试安装、配置镜像源;确保已安装 gcc/g++/cmake,并满足 PyTorch、CUDA驱动 版本匹配。
  • 音频依赖报错
  • 若出现与 portaudio 相关的编译错误,确认已安装 portaudio19-develalsa-lib-devel,再重新 pip 安装依赖。
  • FFmpeg 编解码问题
  • 推理/数据预处理需要 libx264 编码器,使用 conda-forge 的 FFmpeg 可避免缺失编解码器的问题。
  • 权限与路径
  • 若从云盘或外部存储下载模型数据,注意目录权限(建议 chmod -R 755 项目目录),并确保 PYTHONPATH=./ 指向项目根目录。
亿速云提供售前/售后服务

售前业务咨询

售后技术保障

400-100-2938

7*24小时售后电话

官方微信小程序