EasyVtuber简介
EasyVtuber是一个开源的虚拟主播解决方案,旨在为创作者提供高质量、低成本的面部捕捉和动画生成工具。该项目源自对GunwooHan的EasyVtuber的改进,并整合了来自pkhungurn的talking-head-anime-2-demo项目的部分功能。EasyVtuber的目标是通过优化面部捕捉质量和提高刷新率,为用户带来更流畅、更自然的虚拟主播体验。
主要特点
-
高质量面部捕捉: 通过整合ifacialmocap的iOS面部捕捉逻辑,EasyVtuber显著提升了面部表情的捕捉质量。
-
高刷新率: 采用UDP直连方式,使iOS面部捕捉的刷新率可达60fps,极大地提高了动画的流畅度。
-
透明背景支持: 为OBS虚拟摄像头方案增加了配套的Shader支持,实现了RGBA输出能力,无需绿幕即可直接使用。
-
硬件优化: 在支持PyTorch CUDA的NVIDIA显卡上运行良好,如RTX3080可实现40FPS的渲染速度。
-
多平台支持: 主要在Windows 10上测试,但理论上也支持其他操作系统。
-
开源免费: 作为开源项目,EasyVtuber允许用户自由使用和修改,为创作者提供了极大的灵活性。
安装指南
EasyVtuber提供了多种安装方式,以适应不同用户的需求和技术水平。以下是三种主要的安装方法:
1. 嵌入式Python版本安装(推荐)
这是最简单的安装方式,特别适合那些只想快速体验EasyVtuber功能的用户。
- 下载并解压EasyVtuber的ZIP文件或克隆GitHub仓库。
- 下载预训练模型,并将其解压到
data/models
文件夹中。 - 运行
01A.构建运行环境(默认源).bat
或01B.构建运行环境(国内源).bat
脚本来安装所需依赖。 - 使用
02B启动器(调试输出).bat
测试安装是否成功。
2. Venv虚拟环境安装
对于希望在独立环境中运行EasyVtuber的用户,可以选择使用Python的虚拟环境。
- 克隆或下载EasyVtuber仓库。
- 在项目目录下创建虚拟环境:
python -m venv venv
。 - 激活虚拟环境:
venv\Scripts\activate.bat
。 - 安装依赖:
pip install -r .\requirements.txt
和pip install torch --extra-index-url https://download.pytorch.org/whl/cu113
。 - 运行启动器:
python launcher.py
。
3. Conda环境安装
对于习惯使用Anaconda的用户,这种方法可能更为熟悉。
- 安装Anaconda并启动Anaconda Prompt。
- 运行
conda env create -f env_conda.yaml
创建环境。 - 在PyCharm中配置新创建的Conda环境。
- 下载预训练模型并放置在正确的目录中。
- 在Conda环境中运行
python launcher.py
启动程序。
输入输出设备配置
EasyVtuber支持多种输入和输出设备,以满足不同用户的需求。
输出设备
OBS Virtual Camera(推荐)
- 安装StreamFX插件。
- 下载并使用特定的Shader文件。
- 使用
--alpha_split
参数运行EasyVtuber。 - 在OBS中配置视频采集设备和Shader滤镜。
UnityCapture
- 安装UnityCapture。
- 在OBS中添加Unity Video Capture设备。
- 配置摄像头属性以支持ARGB格式。
输入设备
iFacialMocap
- 在iOS设备上安装iFacialMocap应用。
- 通过参数将连接信息传入EasyVtuber。
OpenSeeFace
- 下载并解压OpenSeeFace。
- 配置
run.bat
文件。 - 在EasyVtuber中选择OpenSeeFace输入。
运行EasyVtuber
完成安装和设备配置后,您可以通过以下命令运行EasyVtuber:
python main.py --output_webcam unitycapture --ifm 192.168.31.182:49983 --character test1L2 --extend_movement 1 --output_size 512x512
这个命令包含了几个重要参数:
--output_webcam
: 选择输出设备--ifm
: 指定iFacialMocap设备的IP和端口--character
: 选择角色图像文件--extend_movement
: 启用扩展动作--output_size
: 设置输出尺寸
您可以根据需要调整这些参数,以获得最佳的虚拟主播效果。
进阶使用技巧
-
角色自定义: 在
character
目录下添加自定义角色图像,以创建独特的虚拟形象。 -
性能优化: 调整
--output_size
参数可以在性能和画面质量之间找到平衡。 -
动作扩展: 使用
--extend_movement
参数可以增加角色的动作范围,使表现更加生动。 -
调试模式: 使用
--debug
参数可以打开预览窗口,方便调试和调整。 -
多设备协同: 结合使用iFacialMocap和OpenSeeFace,可以实现更精确的面部捕捉。
常见问题解答
-
Q: EasyVtuber支持哪些操作系统? A: 虽然主要在Windows 10上测试,但理论上也支持其他操作系统,只要能满足Python和CUDA的环境要求。
-
Q: 如何提高面部捕捉的准确性? A: 使用高质量的摄像头或iFacialMocap等专业面捕软件,并确保光线充足,可以显著提高捕捉精度。
-
Q: EasyVtuber是否支持实时直播? A: 是的,EasyVtuber设计用于实时应用,可以与OBS等直播软件无缝集成。
-
Q: 如何解决安装过程中的依赖问题? A: 如果遇到依赖问题,请尝试使用
01X.清理PIP下载缓存(重试也解决不了问题时使用).bat
脚本清理缓存,然后重新运行安装脚本。 -
Q: 可以使用自己的3D模型吗? A: 目前EasyVtuber主要支持2D图像,但您可以探索将输出结果应用到3D模型上的方法。
结语
EasyVtuber为虚拟主播创作者提供了一个强大而灵活的工具,使得高质量的虚拟主播内容创作变得更加容易和经济实惠。无论您是刚刚开始探索虚拟主播领域,还是已经是经验丰富的创作者,EasyVtuber都能为您的创作带来新的可能性。通过持续的社区贡献和开发,我们期待看到EasyVtuber在未来能够支持更多功能,为虚拟主播生态系统带来更多创新。
最后,我们鼓励用户积极参与到EasyVtuber的开源社区中来,分享您的使用经验,报告遇到的问题,或者贡献代码来帮助改进这个项目。让我们共同努力,推动虚拟主播技术的发展,创造更多精彩的内容。