AI换脸与虚拟摄像机

AI换脸与虚拟摄像机
William C.AI换脸与虚拟摄像机
分享一款开源的AI换脸项目,结合OBS的“虚拟摄像机”功能,可以实现直播、视频聊天等实时换脸能力。
免责声明
本教程仅用于教育和研究目的,旨在介绍AI换脸技术的操作方法。我们强烈反对任何滥用AI换脸技术的行为,尤其是将其用于侵犯他人隐私、名誉、肖像权或任何其他形式的非法或不道德用途。
使用AI换脸技术可能涉及到侵犯个人隐私和其他法律问题。我们提醒用户在使用本教程中的技术时,务必遵守所在国家和地区的相关法律法规,确保获得相关人员的明确同意和授权。对于因滥用AI换脸技术而导致的任何法律责任或争议,本教程的编写者及发布者概不承担任何责任。
请用户谨慎使用本教程中的信息,尊重他人的权利和隐私,共同维护一个健康和谐的网络环境。
效果展示
开始
0、基础依赖
- git
管理代码的,用于管理代码仓库以及克隆项目。 官方下载地址
- PyCharm
看代码的以及能帮助你运行代码的。(Python) 官方下载地址
1、下载项目
项目地址: Deep-Live-Cam
1 | git clone https://github.com/hacksider/Deep-Live-Cam.git |
2、配置环境
项目中已经明确说明了运行环境所需依赖,我在这里在补充一下。
- python3.10
项目中推荐用3.10,虽然最新版本以经到了3.13,但是建议还是听从建议,就用3.10。
官方下载地址
- pip
pip是一个以Python计算机程序语言写成的软件包管理系统,他可以安装和管理软件包,
如果是从官方下载安装的python,默认安装会自动安装pip,无需额外下载。
- ffmpeg
简单来说就是用于处理音视频的。
官方下载地址
- visual studio 2022 runtimes (windows)
Microsoft C++ 生成工具 官方下载地址
这本身是一个安装工具,我们需要安装的是
3、Download Models
下载下面两个模块,下载完成后拷贝到项目的”models“ 文件夹中。
- GFPGANv1.4
- inswapper_128_fp16.onnx (Note: Use this replacement version if an issue occurs on your computer)
4、打开项目&配置依赖
完成上面操作之后,用pycharm打开下载好的项目,第一次使用需要设置Python环境。
完成之后安装依赖包。
1 | pip install -r requirements.txt |
5、运行
1 | python run.py |
到这里,几乎成功了一大半了,现在项目可以跑起来了,但是没有使用GPU,会很卡。
6、GPU加速
以N卡为例:
- 安装
CUDA Toolkit 11.8
CUDA(Compute Unified Devices Architectured,统一计算架构)是由英伟达NVIDIA所推出的一种软硬件集成技术,是该公司对于GPGPU的正式名称。透过这个技术,用户可利用NVIDIA的GPU进行图像处理之外的运算,亦是首次可以利用GPU作为C-编译器的开发环境。
官方下载地址
- 安装
NVIDIA cuDNN
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。
注意对应上面的CUDA版本,cuDNN下载完成是一个压缩包,没有安装工具,解压后覆盖到上面的CUDA安装地址即可。
官方下载地址
都安装完成后,重新安装下面依赖
1 | pip uninstall onnxruntime onnxruntime-gpu |
使用下面命令运行项目
1 | python run.py --execution-provider cuda |
其他系统或显卡的使用方法就不详细说明了,项目作者的文档中都有,可以自行查阅。
运行项目
图片换脸
1、点击Select a face选择一张要换的脸
2、点击Select a target选择目标
3、点击Start进行换脸
输入
效果图
实时换脸
1、点击Select a face选择一张脸
2、点击live会使用摄像头实时换脸
虚拟摄像机
- OBS
Open Broadcaster Software(OBS)是由OBS Project开发的自由开源跨平台流媒体和录影程序。
我们使用OBS来做虚拟摄像机。 官方下载地址
添加场景&来源
OBS默认会有一个场景,如果没有则点击 + 添加一个场景,然后再来源处点击 +选择窗口采集-> 新建 -> 确定,选择窗口,然后再 确定。
注意:在采集之前要打开上面的项目,以便能够采集到窗口。
然后你可以自由的在OBS面板上进行拉伸控制窗口大小以及位置了,以上都完成后点击启用虚拟摄像机。
应用
- 直接修改视频源
以腾讯会议为例,可以在设置中修改摄像头,选择 OBS Virtual Camera,这样视频时对方看到的就是你虚拟摄像头的内容了,大多数程序都可以这么修改。
- 微信
微信比较特殊,不支持修改摄像头,通常有两种做法,一就是通过修改注册表,把我们的虚拟摄像头改成系统默认的摄像头,骗过微信。另一种方法就是使用低版本的微信(方法来源)。
点击OBS右下角的设置,选择视频,修改视频(缩放)分辨率为640x480,完成后点击右下角的确定或应用。
安装低版本的微信,我这里选择的是3.9.0.28版本,下载地址
以上完成后选择点击启用虚拟摄像机,微信视频时如果看不到画面点击一下切换摄像头。
本地效果
对方效果
END
- 如果觉得这个项目环境搭建起来困难,可以选择使用另一个开源的项目DeepFaceLive,DeepFaceLive提供了exe安装包,并将环境做了完整的打包,无需安装Python及GPU运行环境,DeepFaceLive具体使用教程可以自行去网络搜索,教程非常多。



















