Windows 下 GeneFace++ 安装注意事项
一 环境与工具链
- 建议使用 Windows 10/11 64 位,并确保系统与驱动为较新版本,减少兼容性问题。
- 使用 Python 3.8/3.9(或项目要求的版本),优先通过 Anaconda/venv 创建隔离环境,避免依赖冲突。
- 安装 Visual Studio Build Tools(2019 及以上),勾选 C++ 生成工具 与 Windows 10/11 SDK,以便编译 C/C++/CUDA 扩展。
- 若需 GPU:安装与 PyTorch 版本匹配的 CUDA Toolkit 与 cuDNN,并确认 NVIDIA 显卡驱动为最新稳定版。
二 依赖与 PyTorch 版本匹配
- 优先使用项目提供的 requirements.txt 安装依赖;常见核心包包括:numpy、opencv-python、scikit-learn、torch、torchvision。
- GPU 用户安装与 CUDA 版本对应的 PyTorch 预编译包(如 torch==1.12.0+cu116 搭配 torchvision==0.13.0+cu116),避免 CPU/GPU 混用导致运行异常。
- 注意 Python、CUDA、cuDNN、PyTorch 四者的版本对应关系,尽量保持全部为 x64 架构。
三 源码获取与编译要点
- 通过 git clone 或下载源码压缩包获取项目,进入项目根目录后再执行后续步骤。
- 创建并进入 build 目录,使用 CMake 生成工程文件;GPU/CPU 混用或架构不匹配时,显式指定生成器与架构:
- 示例:
cmake .. -G "Visual Studio 16 2019" -A x64 -DPYTHON_EXECUTABLE=path\to\python.exe - 以 Release 模式编译:
cmake --build . --config Release,提升运行性能并减少调试符号带来的干扰。 - 若工程包含 Python 扩展或安装脚本,执行
pip install . 完成安装。
四 常见报错与快速排查
- 报错 “Inference ERROR: Expected all tensors to be on the same device”:多为 CPU/GPU 张量混用或环境混乱,重建 venv/conda 环境并统一
device(如 cuda:0 或 cpu)。 - 数据处理阶段 “提取图片时卡住”:在相应脚本中加入参数 --force_single_process 规避多进程死锁。
- 训练日志出现 “loss_output['ambient_loss'].item() AttributeError”:按兼容性做小修补,例如:
try: current_ambient_loss = loss_output['ambient_loss'].item() except AttributeError: current_ambient_loss = loss_output['ambient_loss']。- 若遇到通用安装问题:校验安装包完整性(如 SHA256)、尝试 以管理员身份运行、在安装阶段 临时关闭杀毒软件/防火墙、确认 系统版本兼容 与 磁盘空间充足。
五 运行与优化建议
- 将项目可执行文件或脚本目录加入 PATH,便于全局调用;必要时在命令行中
setx PATH "%PATH%;C:\your\path" 并重启终端。 - 运行前用项目 示例/测试脚本 验证环境可用性,确认 GPU 可见(
torch.cuda.is_available() 返回 True)。 - 保持 显卡驱动、CUDA/cuDNN、PyTorch 的匹配与更新;定期 清理缓存与临时文件、监控 资源占用,确保长时间运行的稳定性。