1.安装conda
下载各个版本地址:https://repo.anaconda.com/archive/
win10版本: Anaconda3-2023.03-1-Windows-x86_64
linux版本: Anaconda3-2023.03-1-Linux-x86_64
Windows安装
环境变量
conda -V
2.配置conda镜像源
安装pip
conda install pip
镜像设置
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main
其他镜像源
# 中科大镜像源
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/# 北京外国语大学源
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/msys2#清华源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2#阿里云
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/main
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/r
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/msys2
pip镜像设置
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
删除指定的镜像源
conda config --remove channels http://mirrors.aliyun.com/anaconda/pkgs/main/
3.常用命令
conda当前的镜像源
conda config --show-sources
创建conda环境 env_name自定义名称
conda create --name <evn_name> <pakages_name> <python = version number >
conda create -n env_name python==3.10
在指定的目录下创建虚拟环境
conda create --prefix=D:\environment\Python python=3.8
只需要修改D:\environment\Python对应的路径部分即可
激活conda环境,env_name为创建环境时的名称
activate env_name
退出虚拟环境
deactivate
删除指定conda环境,env_name为创建环境时的名称
conda remove -n env_name --allconda env remove -p F:\conda_work\sadtalker (指定虚拟环境所在为位置)
查看当前存在哪些虚拟环境
conda env list
或者
conda info -e
检查更新当前conda
conda update conda
查看安装了哪些包
conda list
安装包
conda install package_name(包名)
删除虚拟环境中的包
conda remove --name $env_name $package_name
4.遇到的问题
UnavailableInvalidChannel: HTTP 404 NOT FOUND for channel
解决方案:
conda config --remove-key channels
5.例:运行sadtalker
SadTalker可以实现图片+音频生成高质量视频
项目地址:https://github.com/OpenTalker/SadTalker
SadTalker安装及使用指南
点开项目地址然后将其下载下来然后解压
在 sadtalker项目根目录下新建两个目录checkpoints
和gfpgan
,下载好的模型分别放在这两个文件夹
通过网盘分享的GFP-GAN人脸复原模型
文件:gfpgan.zip
链接: https://pan.baidu.com/s/1bu8l-cZmmvIYrEJzWwNJ0Q?pwd=4rbc 提取码: 4rbc
通过网盘分享的预训练模型
文件:sadtalker_checkpoints_v0.0.2.zip
链接: https://pan.baidu.com/s/1zImWlqI7ll-bowdlNDkLdw?pwd=nsvh 提取码: nsvh
在其目录下打开cmd
创建虚拟环境
conda create -n sadtalker python=3.8
conda env list
activate sadtalker
安装依赖包
conda install ffmpeg
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
安装依赖包会报错一大推error的,切换镜像进行下载
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 -i https://pypi.tuna.tsinghua.edu.cn/simple
如果切换国内清华源都不好使,说明当前的网络不行,切换为自己的个人热点就可以了
开始使用
python inference.py --driven_audio F:\conda_work\SadTalker\examples\driven_audio\deyu.wav --source_image F:\conda_work\SadTalker\examples\source_image\art_0.png --result_dir F:\temp\sadtalker --still --preprocess full --enhancer gfpgan
F:\conda_work\SadTalker\examples\driven_audio\deyu.wav 替换为你的音频
F:\conda_work\SadTalker\examples\source_image\art_0.png 替换为你的图片
F:\temp\sadtalker 替换为你的输出路径
运行之后一直报错
(sadtalker) F:\conda_work\SadTalker>python inference.py --driven_audio F:\conda_work\SadTalker\examples\driven_audio\deyu.wav --source_image F:\conda_work\SadTalker\examples\source_image\art_0.png --result_dir F:\temp\sadtalker --still --preprocess full --enhancer gfpgan
Traceback (most recent call last):File "F:\conda_work\SadTalker\inference.py", line 10, in <module>from src.facerender.animate import AnimateFromCoeffFile "F:\conda_work\SadTalker\src\facerender\animate.py", line 23, in <module>from src.utils.face_enhancer import enhancer_generator_with_len, enhancer_listFile "F:\conda_work\SadTalker\src\utils\face_enhancer.py", line 4, in <module>from gfpgan import GFPGANerFile "F:\anaconda3\envs\sadtalker\lib\site-packages\gfpgan\__init__.py", line 2, in <module>from .archs import *File "F:\anaconda3\envs\sadtalker\lib\site-packages\gfpgan\archs\__init__.py", line 2, in <module>from basicsr.utils import scandirFile "F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\__init__.py", line 4, in <module>from .data import *File "F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\data\__init__.py", line 22, in <module>_dataset_modules = [importlib.import_module(f'basicsr.data.{file_name}') for file_name in dataset_filenames]File "F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\data\__init__.py", line 22, in <listcomp>_dataset_modules = [importlib.import_module(f'basicsr.data.{file_name}') for file_name in dataset_filenames]File "F:\anaconda3\envs\sadtalker\lib\importlib\__init__.py", line 127, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)File "F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\data\realesrgan_dataset.py", line 11, in <module>from basicsr.data.degradations import circular_lowpass_kernel, random_mixed_kernelsFile "F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\data\degradations.py", line 8, in <module>from torchvision.transforms.functional_tensor import rgb_to_grayscale
ModuleNotFoundError: No module named 'torchvision.transforms.functional_tensor'
这表明 basicsr 或 gfpgan 库中确实存在对这个模块的硬编码引用,并且它在当前版本的 torchvision 中并不存在。
解决方案修改 basicsr 源码:
找到 F:\anaconda3\envs\sadtalker\lib\site-packages\basicsr\data\degradations.py
文件,并将以下行:
from torchvision.transforms.functional_tensor import rgb_to_grayscale
在需要使用 rgb_to_grayscale
的地方,使用 F.rgb_to_grayscale
代替原来的导入方式。
然后再此运行生成视频
python inference.py --driven_audio F:\conda_work\SadTalker\examples\driven_audio\deyu.wav --source_image F:\conda_work\SadTalker\examples\source_image\art_0.png --result_dir F:\temp\sadtalker --still --preprocess full --enhancer gfpgan
生成成功
退出虚拟环境