摘要:今天给大家分享的是阿里达摩院开源的LiteAvatar数字人生成工具,仅仅依赖CPU就可以通过音频实时驱动2D虚拟形象生成面部动画。
今天给大家分享的是阿里达摩院开源的LiteAvatar数字人生成工具,仅仅依赖CPU就可以通过音频实时驱动2D虚拟形象生成面部动画。
LiteAvatar结合了语音识别(ASR)和口型预测技术,能够根据输入的音频特征生成同步的面部表情和口型动作,动画效果流畅自然。
部署 LiteAvatar 实时互动版:https://github.com/HumanAIGC-Engineering/OpenAvatarChat
OpenAvatar依赖于GPU显卡,显卡最低配置需求是RTX 3090版本,应该需要20G显存。
本文介绍的是无需显卡依赖,纯CPU就能跑的数字人工具,因此使用LiteAvatar根据音频文件生成数字人视频。
先看看LiteAvatar数字人的效果:
LiteAvatar功能如下:
● 音频驱动动画生成:通过输入音频,实时生成虚拟形象的面部表情和口型动画。
● 轻量化运行:仅依赖CPU即可实现30fps的流畅动画,无需GPU支持。
● 口型同步预测:利用ASR模型提取音频特征,生成与语音内容匹配的口型动作。
● 支持移动设备:优化后的模型适配低功耗设备,适合手机或平板使用。
● 开源代码支持:提供完整源代码,允许用户自定义功能或集成到其他项目中。
● 实时处理能力:低延迟处理音频输入,确保动画与声音高度同步。
LiteAvatar的开源仓库GitHub地址:https://github.com/HumanAIGC/lite-avatar/tree/main
大家克隆lite-avatar过程中:
git clone https://github.com/HumanAIGC/lite-avatar.git
有些模型文件过大下载不全,比如:
目录下的
加起来1G那么大,笔者已经准备好了,可以直接通过百度网盘链接下载:
通过网盘分享的文件:LiteAvatar模型文件
提取码: sjua
可以将网盘weights整个文件夹覆盖到本地目录下:
另外生成数字人视频还需要ffmpeg工具,也在网盘中有:
下载7z.exe文件安装7z.zip:
安装好7z后打开7z工具:
用7z打开ffmpeg.7z工具,解压:
解压后记住解压路径,我的是:E:\ffmpeg-2025-05-15-git-12b853530a-full_build\ffmpeg-2025-05-15-git-12b853530a-full_build\bin
下载PyCharm社区版,下载链接:
安装Anaconda Windows版本:
下载好后Windows系统直接安装,安装完成后开始菜单出现:
打开Anaconda Prompt:
创建环境,使用Python 3.10环境:
conda create -n liteavatar2 python=3.10
安装过程:
进入liteavatar2环境:
conda activate liteavatar2
用PyCharm打开lite-avatar,Python环境选择liteavatar2环境:
首先确保网盘里的模型目录weights已覆盖文件夹
修改lite_avatar.py文件第333行:
将/usr/bin/ffmpeg替换为本地刚才安装的ffmpeg文件路径:
我的路径是:E:\\ffmpeg-2025-05-15-git-12b853530a-full_build\\ffmpeg-2025-05-15-git-12b853530a-full_build\\bin\\ffmpeg.exe
打开requirements.txt文件,找到torch,采用无显卡模式:
替换为:
torch==2.1.1
torch-complex==0.4.4
torchaudio==2.1.1
torchvision==0.16.1
打开Anaconda Prompt窗口:
执行安装依赖命令:pip install -r requirements.txt
第一轮安装完出现:
在requirements.txt注释掉triton==2.1.0
单独安装triton:
pip install triton
这个包应该不用了,再次安装环境:pip install -r requirements.txt
我们执行README中的生成数字人工具:
python lite_avatar.py --data_dir 数字人背景样例目录 --audio_file 音频wav文件 --result_dir 生成结果目录
数字人默认背景可以从lita-avatar/data目录下的sample.zip文件取得:
解压sample_data.zip文件夹:
下面有默认背景数字人:
查看:
所以数字人背景样例目录:
E:\tmp\lite-avatar\data\sample_data\preload
音频wav文件路径可以是lite-avatar目录下的weights\speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch\example音频wav文件
生成结果目录设置为电脑上的文件夹即可:E:\tmp\lite-avatar\result
执行python lite_avatar.py --data_dir 数字人背景样例目录 --audio_file 音频wav文件 --result_dir 生成结果目录
替换为实际目录:
python lite_avatar.py --data_dir E:\tmp\lite-avatar\data\sample_data\preload --audio_file E:\tmp\lite-avatar\weights\speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch\example\asr_example.wav --result_dir E:\tmp\lite-avatar\result
安装Numpy:
pip install numpy==1.23.0
再次运行:
安装cv2:
pip install opencv-python==4.11.0.86
安装librosa:
pip install librosa==0.9.2
安装loguru:
pip install loguru==0.7.3
安装pydub:
pip install pydub==0.25.1
安装torchvision:
pip install torchvision==0.16.1
安装tqdm:
pip install tqdm==4.67.1
安装onnxruntime:
pip install onnxruntime==1.20.1
安装typeguard:
pip install typeguard==2.13.3
安装six:
pip install six==1.17.0
安装yaml:
pip install PyYAML==6.0.2
安装jamo:
pip install jamo==0.4.1
安装sentencepiece:
pip install sentencepiece==0.2.0
安装jaconv:
pip install jaconv==0.4.0
安装torch_complex:
pip install torch-complex==0.4.4
安装torchaudio:
pip install torchaudio==2.1.1
安装h5py:
pip install h5py==3.12.1
pip install oss2==2.19.1
安装modelscope:
pip install modelscope==1.8.1
pip install numba==0.60.0
环境终于弄好了,正常运行
python lite_avatar.py --data_dir E:\tmp\lite-avatar\data\sample_data\preload --audio_file E:\tmp\lite-avatar\weights\speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch\example\asr_example.wav --result_dir E:\tmp\lite-avatar\result
生成数字人过程:
生成完毕:
打开E:\tmp\lite-avatar\result:
有单个图片文件:
查看视频文件test_demo.mp4:
播放数字人视频:
有更多数字人使用需求,可以进一步基于lite-avatar二次开发。
来源:科技透视镜