ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Deep-Live-Cam 快速上手:一张照片搞定实时人脸替换

Deep-Live-Cam 快速上手:一张照片搞定实时人脸替换 Deep-Live-Cam 快速上手一张照片搞定实时人脸替换【免费下载链接】Deep-Live-Camreal time face swap and one-click video deepfake with only a single image项目地址: https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam一张正脸照片就能让摄像头画面里的你实时变成别人——这就是 Deep-Live-Cam 的核心能力单图驱动的实时人脸替换与一键视频换脸。下面这套流程全部在你的电脑上完成装完依赖几分钟内就能看见预览画面。文章按先跑起来、再看原理、最后调性能的顺序展开每步都给出可直接执行的命令。三分钟跑通装好依赖并看到第一个预览画面环境要求先对一遍项目最低要求推荐配置Python3.113.14官方推荐ffmpeg必须安装并在 PATH 中任意较新版本磁盘空间约 2GB4GB模型约占 300MB内存8GB16GB默认上限--max-memory即 16获取代码# 浅克隆仓库速度快、省空间 git clone --depth 1 https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam cd Deep-Live-Cam下载两个模型文件换脸质量取决于两个模型inswapper_128_fp16.onnx负责生成新脸和GFPGANv1.4负责画质修复下载地址写在 models/instructions.txt 里放到仓库的models/目录即可总体积约 300MB。⚠️ 注意事项模型文件较大建议用稳定的网络下载。首次运行时程序会自动尝试拉取如果中途断网导致文件损坏删掉后按 模型下载说明 手动重下一次。建虚拟环境并安装依赖# 用虚拟环境隔离依赖避免污染系统 Python python -m venv venv # Windows 执行 venv\Scripts\activateLinux/macOS 执行 source venv/bin/activate pip install -r requirements.txt依赖清单requirements.txt里已按平台自动区分onnxruntime版本macOS 用官方包其他系统默认装 GPU 版onnxruntime-gpu装完不用额外操心。第一次启动# 一条命令打开图形界面 python run.py界面里做三件事选一张源人脸照片 → 选摄像头 → 点 Live。预览大约需要 10–30 秒预热之后就是实时换脸画面。程序入口 run.py 只负责加载环境比如把 CUDA 动态库路径注册好真正的参数解析、流程调度都在 modules/core.py 中。一帧画面是怎么被换掉的四个阶段整个管线可以拆成四步每一步都有对应的源码文件方便你按图索骥人脸检测与分析face_analyser.py 封装了 insightface 的 buffalo_l 模型组负责框出人脸、给出关键点并算出一个人脸身份嵌入把整张脸压缩成一串 512 维数字长相就体现在这串数字里。嵌入驱动换脸face_swapper.py 加载 inswapper_128 这个 ONNX 模型输入目标人脸的裁剪图加源人脸的身份嵌入输出一张 128×128 的新脸图再按仿射矩阵贴回原图——表情和姿态自然跟随目标脸。边缘融合直接贴回去会有硬边代码用预生成的椭圆软蒙版做羽化开启泊松融合一种把光照和色调过渡算进融合的算法后脸和背景的明暗差异会被进一步抹平。输出直播模式把帧推给预览窗口采集逻辑在 capturer.py视频模式则让帧直接流过FFmpeg管道进编码器不落盘。选对加速后端CPU、CUDA 与 CoreML 的差异--execution-provider参数决定推理跑在哪里。不传时程序会自动挑选按 CUDA ROCm CoreML OpenVINO DirectML CPU 的顺序取第一个可用的逻辑在 modules/core.py 的suggest_default_execution_provider。后端适用硬件额外安装运行参数CPU任意机器无--execution-provider cpuCUDANVIDIA 显卡CUDA 12.8 cuDNN 8.9.7 onnxruntime-gpu1.21.0--execution-provider cudaCoreMLApple M1–M5无官方 onnxruntime 自带--execution-provider coremlDirectMLWindows 独显onnxruntime-directml1.21.0--execution-provider directmlOpenVINOIntel 核显/独显onnxruntime-openvino1.21.0--execution-provider openvinoNVIDIA 用户装完驱动组件后执行pip install onnxruntime-gpu1.21.0即可Apple Silicon 用户如果以前装过onnxruntime-silicon这个社区 fork先pip uninstall onnxruntime-silicon再重装依赖否则它会遮蔽官方包导致加载异常。⚠️ 注意事项CUDA 12 需要把 cuDNN 的 bin 目录加入系统 PATH否则启动时报 cuDNN 找不到。同一素材下GPU 后端比纯 CPU 快数倍属正常具体倍率取决于你的硬件别拿别人的数字当预期。三个立刻能用的玩法离线视频换脸最省心命令行模式一次跑完适合做素材。# 换脸 保留原视频帧率和音轨 python run.py -s face.jpg -t target.mp4 -o output.mp4 --keep-fps --keep-audio摄像头实时换脸直播向GUI 点 Live 出预览再用 OBS 等工具把预览窗口当输入源推流。加--live-mirror可让画面按前置摄像头习惯镜像显示。嘴部口型不同步是常见问题打开嘴部蒙版Mouth Mask能保留你原本的嘴部运动口型立刻自然多人脸场景--many-faces把画面里每个人脸都换成同一张源脸--map-faces则允许在 GUI 里给不同角色一一绑定不同脸直播分饰多角就是靠它帧率不够按顺序试这三招精简处理链默认只有face_swapper一个处理器这是最快的组合face_enhancer系列的 GFPGAN 修复虽然画质更好但耗时也最大帧率紧张时先别开。限制线程与内存线程数默认自动计算代码会预留 2 个核给系统上限 16机器负载高时可以手动压回去# 手动限制线程数与内存上限给系统和直播软件留余量 python run.py -s face.jpg -t target.mp4 -o out.mp4 --execution-threads 4 --max-memory 8让代码自带的优化生效换脸模型会缓存软蒙版避免每帧重算Apple Silicon 上直播模式还启用了约 33ms 的检测结果缓存和帧缓存池这些逻辑都写在 face_swapper.py 里。源码注释中有实测数据CoreML 优化后检测步骤在 M3 Max 上从 21ms 降到 4ms快速检测路径在 1080p 下约 10ms。以 8 核 CPU、1080p 素材为参照的调优前后对比数值随硬件波动仅作量级参考指标默认参数CPU精简链 限制线程处理速度8–10 fps15–18 fps1 分钟视频耗时约 6 分钟约 3.5 分钟内存占用约 4.5GB约 2.5GB报错与卡顿这样排查现象启动即提示 ffmpeg is not installed。原因modules/core.py 的pre_check要求系统能找到 ffmpeg缺了直接拒绝启动。解决安装 ffmpeg 后执行ffmpeg -version确认在 PATH 中再重跑。现象提示 Model not found in .../models 或模型加载报错。原因两个模型文件缺失或下载中断。解决对照 models/instructions.txt 重新下载inswapper_128_fp16.onnx与GFPGANv1.4确认它们真的落在models/目录下。现象直播预览严重掉帧。原因纯 CPU 跑 1080p 本就吃力再叠加机器其他负载就更明显。解决调低摄像头分辨率、用--execution-threads和--max-memory给系统留余量、确认没开画质增强器。下一步可以做的事到这里你已经能在自己电脑上完成从安装、换脸到调帧率的完整链路。项目还有明确的扩展空间欢迎挑一个方向深挖画质与速度的平衡给 GFPGAN 增强器做更轻量的替代方案或把它做进可选的离线模式直播链路打通把输出直接接到虚拟摄像头省掉 OBS 手动截屏这一步移动端部署借助 CoreML 与 Android NNAPI 把管线搬上手机全局配置 里的开关大多可以直接复用。改进建议、移动端适配想法都可以走项目的 issue动手改代码前先读一下 CONTRIBUTING.md。另外提醒一句换真人脸请先取得对方同意分享时标注AI 生成把工具用在创意上。【免费下载链接】Deep-Live-Camreal time face swap and one-click video deepfake with only a single image项目地址: https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表