【DreamTalk】源码部署

安装

# 下载源码
git clone https://github.com/ali-vilab/dreamtalk
cd dreamtalk

conda create -n dreamtalk python=3.10
conda activate dreamtalk

conda install -c conda-forge yacs==0.1.8
conda install -c conda-forge numpy==1.21.5
conda install -c conda-forge av==10.0.0
conda install ffmpeg

# 修改requirements.txt中opencv-python的版本: opencv-python==4.9.0.80
pip install -r requirements.txt

# CPU版
# conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 cpuonly -c pytorch
# GPU版(https://pytorch.org/get-started/locally/)
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=11.8 -c pytorch -c nvidia

pip install urllib3==1.26.6
pip install transformers==4.28.1
conda install -c conda-forge dlib
pip install chardet
conda install -c conda-forge blas

模型下载

下载到dreamtalk/checkpoints目录

  • https://modelscope.cn/api/v1/models/iic/dreamtalk/repo?Revision=master&FilePath=checkpoints/denoising_network.pth
  • https://modelscope.cn/api/v1/models/iic/dreamtalk/repo?Revision=master&FilePath=checkpoints/renderer.pt

下载到dreamtalk/AI-ModelScope

cd dreamtalk/AI-ModelScope
git clone https://www.modelscope.cn/AI-ModelScope/wav2vec2-large-xlsr-53-english.git

修改inference_for_demo_video.py

WAV2VEC_MODEL_PATH = "/xxxx/dreamtalk/AI-ModelScope/wav2vec2-large-xlsr-53-english"

...

# get wav2vec feat from audio
wav2vec_processor = Wav2Vec2Processor.from_pretrained(WAV2VEC_MODEL_PATH)

wav2vec_model = (
    Wav2Vec2Model.from_pretrained(WAV2VEC_MODEL_PATH)
    .eval()
    .to(device)
)

测试验证

GPU运行

python inference_for_demo_video.py \
--wav_path /vxiao/funasr-runtime-resources/models/output.wav \
--style_clip_path data/style_clip/3DMM/M030_front_neutral_level1_001.mat \
--pose_path data/pose/RichardShelby_front_neutral_level1_001.mat \
--image_path /vxiao/SadTalker/examples/source_image/art_5.png \
--cfg_scale 1.0 \
--max_gen_len 30 \
--output_name test01

运行结果

在这里插入图片描述

  • 耗时29秒

CPU运行

python inference_for_demo_video.py \
--wav_path /vxiao/funasr-runtime-resources/models/output.wav \
--style_clip_path data/style_clip/3DMM/M030_front_neutral_level1_001.mat \
--pose_path data/pose/RichardShelby_front_neutral_level1_001.mat \
--image_path /vxiao/SadTalker/examples/source_image/art_5.png \
--cfg_scale 1.0 \
--max_gen_len 30 \
--device cpu \
--output_name test01

运行结果

在这里插入图片描述

  • 耗时176s

部署过程遇到的问题&处理

No CMAKE_CXX_COMPILER could be found

yum install gcc gcc-c++

ImportError: liblapack.so.3: cannot open shared object file: No such file or directory

yum install lapack-devel

参考资料

  • 源码
  • RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the
  • 问题解决:Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/431510.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何使用宝塔面板部署MySQL数据库,并结合内网穿透实现固定公网地址远程连接

文章目录 前言1.Mysql服务安装2.创建数据库3.安装cpolar3.1 开放局域网端口3.2 创建HTTP隧道 4.远程连接5.固定TCP地址5.1 保留一个固定的公网TCP端口地址5.2 配置固定公网TCP端口地址 前言 宝塔面板的简易操作性,使得运维难度降低,简化了Linux命令行进行繁琐的配置,下面简单几…

为什么Spring Cloud 应用程序中,应用程序的加载配置必须写在bootstrap.yaml这个配置文件中,是在哪里规定的?

在 Spring Cloud 应用程序中,bootstrap.yaml(或bootstrap.properties)的使用并非强制性的,但它扮演着一个特定的角色,主要是因为 Spring Cloud 的设计和工作流程。 背景和设计 Spring Cloud 构建在 Spring Boot 之上…

STM32FreeRTOS-事件组1(STM32Cube高效开发教程)

文章目录 一、事件组的原理和功能1、事件组与队列信号量特点2、事件组存储结构3、事件组运行原理 二、事件组部分函数1、xEventGroupCreate()创建事件组函数2、xEventGroupSetBits()事件组置位函数3、xEventGroupSetBitsFromISR()…

Geeker Admin添加若以分离版本的后台作为后台

添加验证码 下载若依赖前后端分离版本,配置好自己数据库,redis连接地址 登录添加验证码 配置自己的若依后端连接地址 添加验证码请求方法 登录页面登录输入框添加验证码,uuid,调用的验证码刷新方法 注意:这里要用响应式定义验证…

外汇天眼:蓝莓市场终止所有MT4/MT5专业公司业务

总部位于澳大利亚的零售外汇和差价合约经纪商蓝莓市场宣布,已终止其数据和平台服务产品,该产品旨在通过利用其基础设施为专业公司行业提供服务。 蓝莓市场表示,已经对其数据和平台服务产品“落下帷幕”,与所有专业交易公司包括MyF…

分类问题经典算法 | 二分类问题 | Logistic回归:梯度下降

目录 一. 损失函数1. 交叉熵损失函数2. 梯度下降 一. 损失函数 Logistic回归算法公式推导篇中,我们通过对似然函数求对数,得到 l ( θ ) l(\theta ) l(θ): l ( θ ) l n [ L ( θ ) ] ∑ i 1 M { y ( i ) l n [ h θ ( x ( i ) ) ] ( …

Jekins 自启动Java应用的Shell笔记

背景 最近在研究jdk 的jvisualvm 对JVM服务远程监控时,意外的与jekins接轨了。公司使用jekins自动从Git上获得源码,打包后传到测试服务器并启动jar包,实现自动部署,而我需要做的是在测试服务器启动jar包时添加几个我设置的命令&am…

【YOLO v5 v7 v8 v9小目标改进】DWRSeg:优化的多尺度处理,传统的深度学习模型可能在不同尺度的特征提取上存在冗余

DWRSeg:优化的多尺度处理,传统的深度学习模型可能在不同尺度的特征提取上存在冗余 提出背景问题:实时语义分割需要快速且准确地处理图像数据,提取出有意义的特征来识别不同的对象。 小目标涨点YOLO v5 魔改YOLO v7 魔改YOLO v8 魔…

超级副业SOP,各行各业,太全了!

最近收集到一份资料,包含了几乎各行各业的SOP,实在是太全了,这里准备分享给大家 这里可能有一些朋友还不知道,SOP是个什么东西呢 百度说法:所谓SOP,是 Standard Operating Procedure三个单词中首字母的大写…

【亲测】注册Claude3教程:解决无法发送手机验证码的问题

Anthropic 今日宣布推出其最新大型语言模型(LLM)系列——Claude 3,这一系列模型在各种认知任务上树立了新的性能标准。Claude 3 系列包括三个子模型:Claude 3 Haiku、Claude 3 Sonnet 和 Claude 3 Opus,每个模型都提供…

MATLAB读取.nc(数据集)文件

MATLAB读取.nc(数据集)文件 以中国1km逐月潜在蒸散发数据集(1901-2022)为例 首先用FileZilla下载特定年份的数据集 用matlab进行处理,代码如下: clear;clc;ncdisp("pet_2022.nc") %读数据集的具体信息和变量eva ncr…

LABEL-EFFICIENT SEMANTIC SEGMENTATION WITHDIFFUSION MODELS

基于扩散模型的标签高效语义分割 摘要: 去噪扩散概率模型最近受到了很多研究的关注,因为它们优于gan等替代方法,并且目前提供了最先进的生成性能。扩散模型的优越性能使其成为一些应用程序的吸引人的工具,包括绘图,超…

算法学习02:高精度(c++)

算法学习02:高精度(c) 文章目录 算法学习02:高精度(c)前言一、高精度1.高 高2.高 - 高3.高 * 低4.高 / 低 总结 前言 提示:以下是本篇文章正文内容: 一、高精度 1.高 高 add函数…

走进亚信安慧AntDB:性能与服务的双优选择

AntDB不仅仅是一个简单的数据库系统,它是一项融合了久经验证、多方位支持和高速处理的综合解决方案。在当今数字化时代,数据驱动着各行各业的发展,而AntDB作为一个全面的数据库解决方案,为用户提供了强大的支持和功能。其独特的设…

Java毕业设计 基于SpringBoot 众筹网

Java毕业设计 基于SpringBoot 众筹网 SpringBoot 众筹网 功能介绍 注册 邮箱验证码 登录 忘记密码 首页 图片轮播 关于我们 项目列表 发布项目 我的添加项目 提交审核 已在募捐 项目详情 项目介绍 项目进展 捐赠列表 评论 新闻列表 发布新闻 新闻详情 评论新闻 联系我们 提交…

7.2.2 用坐标表示平移 教案设计及课堂检测设计

【学习目标】 1.掌握坐标变化和图形平移的关系,能用点的平移规律求点平移后的点的坐标. 2.会按要求画出平移后的图形,并写出顶点的坐标.

网上搞钱的方法你知道几个?盘点3个普通人都可操作的赚钱项目

项目一,微头条 我们可以借助精彩的文章,分享知识、心得和见解,吸引更多的读者关注并获得更多的点赞与评论。关键字的巧妙运用将使你的文章更具吸引力和影响力,同时也会为你带来更多的关注度和阅读量。我们写微头条文章的时候&…

01. Nginx入门-Nginx简介

Web基础知识 Web协议通信原理 Web协议通信过程 浏览器本身是一个客户端,当输入URL后,首先浏览器会请求DNS服务器,通过DNS获取相应的域名对应的IP。通过IP地址找到对应的服务器后,监理TCP连接。等浏览器发送完HTTP Request&…

redis10 应用问题(穿透、击穿、雪崩、分布式锁)

思维草图 缓存穿透 查询不存在的数据,穿透redis缓存,请求直接攻击后端db。 问题 当系统中引入redis缓存后,一个请求进来后,会先从redis缓存中查询,缓存有就直接返回(相当于一道隔离闸,保护db…

【打工日常】使用docker部署轻量的运维监控工具

一、Uptime-Kuma介绍 Uptime-Kuma是一个轻量级的自动化运维监控工具,最为引人注目的特点是其出色的监控Dashboard面板。部署简单,工具轻量又强大。而且,Uptime-Kuma是开源免费的,并支持基于Docker的部署方式。它支持网站、容器、数…