CentOS下GeneFace Plus Plus安装指南

AI技术
小华
2025-12-12

CentOS 下 GeneFace++ 安装指南
一 环境准备与版本选择

  • 建议使用 CentOS 7/8(x86_64),已验证环境为 CUDA 11.7 + PyTorch 2.0.1 + Python 3.9;不建议使用 CUDA 12.x,部分组件(如 torch-ngp)会出现兼容性问题。请确保 NVIDIA 驱动 ≥ 515(CUDA 11.7 要求)。如使用 CentOS Stream 9,为获得较新的驱动与编译链,可启用 ELRepo 的 kernel-ml 与 kmod-nvidia 仓库。另请注意 CentOS 已进入 EOL 阶段,生产环境请规划迁移或加固安全更新策略。

二 驱动与 CUDA 11.7 安装

  • 安装 NVIDIA 驱动(示例为 535 系列,满足 ≥515 要求):
  • ELRepo 方式(推荐):
  • 导入 GPG 并启用 ELRepo:
  • sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  • sudo yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm # CentOS 8
  • 安装最新 LTS 内核与头文件(便于新驱动编译):
  • sudo yum --enablerepo=elrepo-kernel install kernel-ml kernel-ml-devel -y
  • 重启并选择新内核(grub2-set-default 0)
  • 安装驱动与 DKMS 模块:
  • sudo yum --enablerepo=elrepo install kmod-nvidia nvidia-x11-drv nvidia-driver-latest-dkms -y
  • 通用方式(runfile,需关闭 Nouveau):
  • 从 NVIDIA 获取对应系统/架构的 CUDA 11.7 runfile,执行安装时仅勾选 CUDA Toolkit(驱动单独安装更稳妥)。
  • 安装 CUDA 11.7 Toolkit(runfile 或网络仓均可):
  • 建议路径:/usr/local/cuda-11.7
  • 配置环境变量(写入 ~/.bashrc 或 /etc/profile.d/cuda.sh):
  • export PATH=/usr/local/cuda-11.7/bin:$PATH
  • export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64:$LD_LIBRARY_PATH
  • export CUDA_HOME=/usr/local/cuda-11.7
  • 验证:
  • nvidia-smi(驱动与 GPU 状态)
  • nvcc --version(应显示 11.7
  • 备注:若已安装驱动,runfile 安装时可仅选择 Toolkit 以避免驱动覆盖。

三 Python 环境与核心依赖

  • 创建 Conda 环境并安装基础组件:
  • conda create -n geneface python=3.9 -y
  • conda activate geneface
  • conda install -c conda-forge ffmpeg
  • 安装 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 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  • 安装 PyTorch3D(源码方式,适配 CUDA 11.7):
  • pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable"
  • 安装 MMCV(openmim):
  • pip install cython openmim==0.3.9
  • mim install mmcv==2.1.0
  • 安装系统音频依赖(CentOS 7/8 常用 EPEL/PowerTools 提供):
  • sudo yum install -y epel-release
  • CentOS 8: sudo dnf config-manager --set-enabled powertools # 或 crb
  • sudo yum install -y portaudio-devel alsa-lib-devel
  • 安装项目 Python 依赖:
  • git clone https://github.com/yerfor/GeneFacePlusPlus.git
  • cd GeneFacePlusPlus
  • pip install -r docs/prepare_env/requirements.txt
  • 编译项目自定义 CUDA 扩展(若脚本名不同以仓库为准):
  • bash docs/prepare_env/install_ext.sh
  • 版本要点:
  • 优先使用 PyTorch 2.0.1 + cu117PyTorch 2.1 + cu121 在部分环境会引发 torch-ngp 错误。
  • 若从源码构建耗时较长或超时,可使用国内镜像源或设置代理。

四 数据准备与快速验证

  • 3DMM 模型与必要文件(BFM2009 等):
  • 01_MorphableModel.mat 放置到 deep_3drecon/BFM/
  • 下载 Exp_Pca.binBFM_model_front.mat 到同一目录。
  • 下载 facerecon 预训练权重 epoch_20.pthdeep_3drecon/checkpoints/facerecon/
  • 生成跟踪所需文件:
  • cd data_util/face_tracking
  • python convert_BFM.py
  • 环境自检(示例命令,按项目 README 为准):
  • 测试 3D 重建模块:
  • export PYTHONPATH=./
  • CUDA_VISIBLE_DEVICES=0 python deep_3drecon/test.py
  • 生成 GeneFace 所需重建器配置:
  • python deep_3drecon/generate_reconstructor_opt_for_geneface.py
  • 若后续进行训练/推理,请按仓库说明准备视频与音频数据并完成预处理。

五 常见问题与排错要点

  • 驱动与 CUDA 不匹配:
  • 确保 nvidia-smi 显示的驱动版本满足 CUDA 11.7(≥515);如不符,先升级驱动或重装对应版本。
  • PyTorch 与 CUDA 版本冲突:
  • 出现 torch-ngp 相关错误时,优先回退到 PyTorch 2.0.1 + cu117;避免 2.1 + cu121 组合。
  • 自定义 CUDA 扩展编译失败:
  • 确认 gcc/glibc 版本满足编译要求,已安装 kernel-devel 与对应头文件;必要时使用 mim 与国内镜像加速依赖安装。
  • 音频设备/依赖缺失:
  • 若运行音频相关模块报错,检查 portaudio/alsa 是否安装成功,并确认用户权限可访问音频设备。
  • 运行被系统 Kill(OOM):
  • 训练/渲染阶段显存或内存不足,可降低 batch size、分辨率或使用更小模型;确保 /dev/shm 空间充足(必要时挂载更大 tmpfs)。
亿速云提供售前/售后服务

售前业务咨询

售后技术保障

400-100-2938

7*24小时售后电话

官方微信小程序