
SadTalker 怎么用 input_yaw、input_pitch、input_roll 从单张图片生成 4D 自由视角说话人头视频【免费下载链接】SadTalker[CVPR 2023] SadTalkerLearning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalkerSadTalker 的基本输入是一张肖像图片加一段驱动音频输出说话人头视频。在默认流程之外它还提供了一组 free-view 参数--input_yaw、--input_pitch、--input_roll用于让生成的人物在视频过程中按你指定的角度序列改变头部朝向从而从单张图片生成 4D 自由视角novel view / free-view说话人头视频。本文说明如何从环境准备到执行命令完成这一生成任务并核对结果输出。需要先在源文档明确的两点限制该模型只适用于真人或接近真人风格的肖像图片动漫风格不在支持范围内docs/best_practice.md 开头的提示。驱动音频只支持 wav 或 mp3 格式docs/FAQ.md。准备环境并下载模型以下以 Linux 环境为例README 的 Linux/Unix 安装流程。在 SadTalker 仓库根目录依次执行git clone https://github.com/OpenTalker/SadTalker.git cd SadTalker conda create -n sadtalker python3.8 conda activate sadtalker pip install torch1.12.1cu113 torchvision0.13.1cu113 torchaudio0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113 conda install ffmpeg pip install -r requirements.txt要点Python 3.8 的 conda 环境PyTorch 1.12.1 CUDA 11.3以及ffmpeg生成最终 mp4 依赖它。模型不会自动下载需要用仓库自带的脚本拉取bash scripts/download_models.sh该脚本会创建./checkpoints与./gfpgan/weights两个目录并下载 MappingNet 权重、SadTalker_V0.0.2_256.safetensors、SadTalker_V0.0.2_512.safetensors以及 gfpgan/facexlib 的检测与增强权重见 scripts/download_models.sh。inference.py的--checkpoint_dir默认值就是./checkpoints与脚本的下载位置一致因此默认不需要额外指定。input_yaw、input_pitch、input_roll 三个参数的含义这三个参数在 docs/best_practice.md 的参数表中被归为同一项 free-view Mode默认值均为None作用是从单张图片生成 novel view 或 free-view 4D talking head参数默认值控制对象--input_yawNone头部 yaw偏航角度序列--input_pitchNone头部 pitch俯仰角度序列--input_rollNone头部 roll翻滚角度序列三个参数在 inference.py 中的定义都接受可变长度的整数列表nargs单位是度互相独立可以只传其中一个。文档给出的角度序列示例是--input_yaw -20 30 10其含义是输入的头部 yaw 角度先从 -20 变到 30再从 30 变到 10。也就是说你写入的角度值按顺序构成一段头部姿态变化轨迹而不是单帧角度。文档示例只演示了 yaw--input_pitch和--input_roll接受相同格式的角度值序列。生成 4D 自由视角说话人头视频best practice 文档给出的 free-view 命令形式如下audio.wav、video.mp4 or picture.png、a file to store results三处需要替换为你自己的音频、图片和结果目录python inference.py --driven_audio audio.wav \ --source_image video.mp4 or picture.png \ --result_dir a file to store results \ --input_yaw -20 30 10--driven_audio驱动音频路径wav 或 mp3。--source_image单张肖像图片文档写法也允许视频文件路径须是真人肖像。--result_dir结果保存目录。不传时默认为./results。--input_yaw -20 30 10按上文说明控制头部 yaw 的 4D 变化轨迹。如果不想准备自己的素材可以直接用仓库自带的示例文件和默认结果目录验证整条流程python inference.py --driven_audio examples/driven_audio/bus_chinese.wav \ --source_image examples/source_image/full_body_1.png \ --result_dir ./results \ --input_yaw -20 30 10这两个示例文件分别位于 examples/driven_audio 和 examples/source_image 目录full_body_1.png也是inference.py中--source_image的默认值。命令执行时会先对源图做 3DMM 提取终端打印3DMM Extraction for source image再完成音频系数推理与渲染。默认--preprocess为crop文档中的 free-view 示例没有改动该参数按默认即可。核对生成结果README 对 CLI 输出的说明是结果保存在results/$SOME_TIMESTAMP/*.mp4即结果目录下按时间戳命名的子目录中生成 mp4 文件。指定了--result_dir时最终视频会以时间戳目录名的形式落盘在对应目录下。free-view 的实际效果可对照 docs/best_practice.md 中的示例图free_view_result.gif文档示例展示同一输入下默认结果、自由视角结果和新视角结果的差异注意实际输出角度取决于你传入的角度序列和音频时长与示例图数值无必然关系。运行中可能遇到的问题以下条目来自 docs/FAQ.md都是与下载模型 跑 inference.py 出视频这条流程直接相关的ffmpegis not recognizedLinux 下用conda install ffmpegmacOS 用brew install ffmpegWindows 需要把ffmpeg加入%PATH%。没有 ffmpeg 无法合成最终视频。FileNotFoundError: ... checkpoints\BFM_Fitting\similarity_Lm3D_all.mat或RuntimeError: unexpected EOF ... The file might be corrupted模型文件没有下全或放置位置不对按下载模型一节重新执行bash scripts/download_models.sh并确认checkpoints/与gfpgan/目录完整。CUDA out of memory文档给出的缓解方式是在运行python inference.py ...前设置环境变量Windows 用set PYTORCH_CUDA_ALLOC_CONFmax_split_size_mb:128Linux 用export PYTORCH_CUDA_ALLOC_CONFmax_split_size_mb:128。Error while decoding stream #0:0: Invalid data found ...输入音频不是 wav/mp3换成受支持的格式。边界说明三个 free-view 参数只控制头部位姿轨迹表情强度、增强、参考视频眨眼等其他调整项在 docs/best_practice.md 的参数表中单独列出与 free-view 无必然绑定本文不展开。如果换用--preprocess full、--still等其他模式头部姿态行为会变化例如--still保持原图头部位姿文档未给出 free-view 与这些组合的示例建议先按本文主路径跑通再单独试验。【免费下载链接】SadTalker[CVPR 2023] SadTalkerLearning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalker创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考