FaceDiffuser 部署笔记

目录

依赖项安装:

[win11 ffmpeg合并报错](#win11 ffmpeg合并报错)

修改后代码:

facebook/hubert-base-ls960报错

我的解决方法:

DiffSpeaker网络音频编码器:

头模加载


transformers

依赖项安装:

复制代码
"tokenizers": "tokenizers>=0.10.1,<0.11",

改为:

复制代码
"tokenizers": "tokenizers",

安装:

pip install tokenizers

win11 ffmpeg合并报错

python 复制代码
    ffmpeg.concat(input_video, input_audio, v=1, a=1).output(video_wA_path).run()
    del video, seq, ref_mesh

修改后代码:

python 复制代码
import os

if __name__ == '__main__':
    video_woA_path = os.path.abspath('demo/renders/tmp/0428.mp4')

    out_path=r'output.mp4'
    wav_path = os.path.abspath(r'test.wav')
    cmd = " ".join(['ffmpeg', '-i', video_woA_path,  # 输入视频文件
        '-i', wav_path,  # 输入音频文件
        '-c:v', 'copy',  # 视频编解码器为复制,不进行转码
        '-c:a', 'aac',  # 音频编解码器为AAC
        '-strict', '-2',  # 允许使用实验性AAC编解码器
        '-pix_fmt', 'yuv420p',  # 设置像素格式
        '-q:v', '0',  # 对视频使用最佳质量(无损压缩)
        out_path  # 输出文件名
    ])

    os.system(cmd)

facebook/hubert-base-ls960报错

报错代码:

python 复制代码
from hubert.modeling_hubert import HubertModel


  File "E:\project\audio\audio2face\FaceDiffuser-main\models.py", line 252, in __init__
    self.audio_encoder = HubertModel.from_pretrained("facebook/hubert-base-ls960")
  File "E:\project\audio\audio2face\FaceDiffuser-main\hubert\modeling_utils.py", line 1147, in from_pretrained
    raise EnvironmentError(msg)
OSError: Can't load weights for 'facebook/hubert-base-ls960'. Make sure that:

- 'facebook/hubert-base-ls960' is a correct model identifier listed on 'https://huggingface.co/models'

- or 'facebook/hubert-base-ls960' is the correct path to a directory containing a file named one of pytorch_model.bin, tf_model.h5, model.ckpt.

我的解决方法:

自己下载.bin模型文件

https://huggingface.co/facebook/hubert-base-ls960/tree/main

下载完直接用torch加载.bin模型

修改代码:modeling_utils.py中

python 复制代码
  if state_dict is None:
                try:
                    # state_dict = torch.load(resolved_archive_file, map_location="cpu")
                    state_dict = torch.load(r'pytorch_model.bin', map_location="cpu")
                except Exception:
                    raise OSError(
                        f"Unable to load weights from pytorch checkpoint file for '{pretrained_model_name_or_path}' "
                        f"at '{resolved_archive_file}'"
                        "If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True. "
                    )

DiffSpeaker网络音频编码器:

python 复制代码
audio_encoder:
  train_audio_encoder: True
  model_name_or_path: 'facebook/wav2vec2-base-960h'


from transformers import Wav2Vec2Model
self.audio_encoder = Wav2Vec2Model.from_pretrained(cfg.audio_encoder.model_name_or_path)

头模加载

python 复制代码
import trimesh

if __name__ == '__main__':
    template_file=f"data/BIWI/templates/face_template.obj"
    ref_mesh = trimesh.load_mesh(template_file, process=False)
    ref_mesh.show()
    #下面也ok
    # scene = trimesh.scene.scene.Scene([ref_mesh])

    # 显示场景
    # scene.show()

安装依赖项:

pip install "pyglet<2"

相关推荐
龙鸣丿1 小时前
Linux基础学习笔记
linux·笔记·学习
qzhqbb2 小时前
基于统计方法的语言模型
人工智能·语言模型·easyui
冷眼看人间恩怨3 小时前
【话题讨论】AI大模型重塑软件开发:定义、应用、优势与挑战
人工智能·ai编程·软件开发
2401_883041083 小时前
新锐品牌电商代运营公司都有哪些?
大数据·人工智能
Nu11PointerException3 小时前
JAVA笔记 | ResponseBodyEmitter等异步流式接口快速学习
笔记·学习
AI极客菌4 小时前
Controlnet作者新作IC-light V2:基于FLUX训练,支持处理风格化图像,细节远高于SD1.5。
人工智能·计算机视觉·ai作画·stable diffusion·aigc·flux·人工智能作画
阿_旭4 小时前
一文读懂| 自注意力与交叉注意力机制在计算机视觉中作用与基本原理
人工智能·深度学习·计算机视觉·cross-attention·self-attention
王哈哈^_^4 小时前
【数据集】【YOLO】【目标检测】交通事故识别数据集 8939 张,YOLO道路事故目标检测实战训练教程!
前端·人工智能·深度学习·yolo·目标检测·计算机视觉·pyqt
亦枫Leonlew4 小时前
三维测量与建模笔记 - 3.3 张正友标定法
笔记·相机标定·三维重建·张正友标定法
考试宝4 小时前
国家宠物美容师职业技能等级评价(高级)理论考试题
经验分享·笔记·职场和发展·学习方法·业界资讯·宠物