Wav2Lip实践

1. 安装

1.1  安装 conda以指定python版本运行环境

下载:Index of /https://repo.anaconda.com/archive/index.html

1.2 如按旧项目基于python3.6版本对话,会有很多包找不到的情况,经摸索后以python3.9构建成功,

conda install --channel defaults conda python=3.9 --yes
conda update --channel defaults --all --yesconda update -n base -c defaults conda
conda create -n py3.9 python=3.9conda activate py3.9
conda deactivateconda env list#添加阿里源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip config set install.trusted-host mirrors.aliyun.com

requirements.txt 内容 

#librosa==0.7.0
librosa
#numpy==1.17.1
numpy==1.24
opencv-contrib-python>=4.2.0.34
#opencv-python==4.1.0.25
opencv-python
#torch==1.1.0
torch
#torchvision==0.3.0
torchvision
tqdm==4.45.0
#numba==0.48
numba
(py3.9) D:\Projects\Wav2Lip>pip install -r requirements.txt 

2. CPU与GPU驱动模式 

装好后,程序没检查到可用的cuda的话,会使用CPU模式跑,直接拉满100%使用率,一条20秒的片子合成约需20mins 。

手上有块NVDIA GeForce RTX 3060,需分别安装 CUDA, cuDNN 及对应python库的支持,参考CUDA安装教程_SU_ZCS的博客-CSDN博客,一条20秒的片子合成约需6mins,提升一倍多。

命令example:

python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a1.mp4 --audio src/audio/a1.wav --outfile results/a1.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a2.mp4 --audio src/audio/a2.wav --outfile results/a2.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a3.mp4 --audio src/audio/a3.wav --outfile results/a3.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a4.mp4 --audio src/audio/a4.wav --outfile results/a4.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a5.mp4 --audio src/audio/a5.wav --outfile results/a5.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a6.mp4 --audio src/audio/a6.wav --outfile results/a6.mp4
python inference.py --checkpoint_path wav2lip_gan.pth --face src/video/a8.mp4 --audio src/audio/a8.wav --outfile results/a8.mp4

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

并发——何谓悲观锁与乐观锁

乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人。 悲观锁 总是假设最坏的情况,每次去拿数据的时候都认为别人会…

mysql日期函数(查询最近n(天/月/年)、计算日期之间的天数等)

mysql日期函数 目录 mysql查询最近一个月数据返回当前日期和时间将字符串转变为日期日期 d 减去 n 天后的日期计时间差,返回 datetime_expr2 − datetime_expr1 的时间差算查询当天数据 ADDDATE(d,n)计算起始日期 d 加上 n 天的日期 SELECT ADDDATE("2017-06…

LT8711HE 是一款高性能的Type-C/DP1.2到HDMI2.0转换器

LT8711HE 1.描述 LT8711HE是一种高性能的Type-C/DP1.2到HDMI2.0转换器,设计用于连接USB Type-C源或DP1.2源到HDMI2.0接收器。LT8711HE集成了一个DP1.2兼容的接收器,和一个HDMI2.0兼容的发射机。此外,还包括两个CC控制器,用于CC通…

单例模式-java实现

介绍 单例模式的意图:保证某个类在系统中有且仅有一个实例。 我们可以看到下面的类图:一般的单例的实现,是属性中保持着一个自己的私有静态实例引用,还有一个私有的构造方法,然后再开放一个静态的获取实例的方法给外界…

二次封装ajax和axios

ajax app.config.globalProperties.$http function(url, method, data, async, fun) {$.ajax({url: baseUrl url, //请求地址type: method, //请求方式dataType: json, //数据类型contentType: "application/json",xhrFields: { //跨域设置withCredentials: t…

【手撕C语言】多线程

(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,Linux基础,ARM开发板,软件配置等领域博主🌍快上🚘,一起学习,让我们成为一个强大的攻城狮!送给自己和读者的一句鸡汤🤔&…

多位数码管动态扫描显示变化数据(数码管局部闪烁)

/*----------------------------------------------- 内容&#xff1a;多位数码管分别显示不同数字&#xff0c;这种扫描显示方式成为动态扫描&#xff0c;并不停变化赋值 ------------------------------------------------*/ #include<reg52.h> //包含头文件&#xff0…

python 基础

1.Python 1.1 环境搭建&#xff1a;官网下载python&#xff0c;编译器&#xff1a;pycharm或jupyter 1.2 变量 &#xff08;1&#xff09;语法&#xff1a;变量名变量 &#xff08;2&#xff09;标识符命名规则&#xff1a;由数字、字母、下划线组成&#xff1b;不能以数字…

tcp发送整型,结构体等数据的方法

测试环境 Receiver: x86 UbuntuSender: arm64 android 发送整型数 C语言和套接字库来发送一个整型变量&#xff08;int&#xff09;的客户端程序。 它首先创建一个TCP套接字&#xff0c;然后连接到指定的服务器地址和端口。接着&#xff0c;它将一个整型变量&#xff08;in…

【数据结构与算法——TypeScript】数组、栈、队列、链表

【数据结构与算法——TypeScript】 算法(Algorithm)的认识 解决问题的过程中&#xff0c;不仅仅 数据的存储方式会影响效率&#xff0c;算法的优劣也会影响效率 什么是算法&#xff1f; 定义&#xff1a; &#x1f7e2; 一个有限指令集&#xff0c;每条指令的描述不依赖于言语…

UE5、CesiumForUnreal接入WMTS格式地图瓦片,如ArcGIS、Mapbox、天地图

文章目录 1.实现目标2.实现过程2.1 WMTS与TMS2.2 cesium-native改造2.3 CesiumForUnreal插件改造2.4 WMTS瓦片加载测试2.5 EPSG:3857与43263.参考资料1.实现目标 通过改造cesium-native和CesiumForUnreal插件,参考tms的栅格瓦片地图加载逻辑,实现在UE5中通过CesiumForUnreal…

2023-08-10 monetdb-函数monetdbe_query_internal-分析

摘要: 严格上来说monetdbe_query_internal不仅仅是查询执行函数, query这个名字有点误导人.这个函数做的事情可以囊括了一个数据库的查询查询执行的核心环节. 本文对该函数进行分析, 以深化对数据库查询之心的理解. 函数定义: static char* monetdbe_query_internal(monetdbe…

后端进阶之路——万字总结Spring Security与数据库集成实践(五)

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★前端炫酷代码分享 ★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ 解决算法&#xff0c;一个专栏就够了★ ★ 架…

数据结构——空间复杂度

3.空间复杂度 空间复杂度也是一个数学表达式&#xff0c;是对一个算法在运行过程中临时占用存储空间大小的量度 。 空间复杂度不是程序占用了多少bytes的空间&#xff0c;因为这个也没太大意义&#xff0c;所以空间复杂度算的是变量的个数。 空间复杂度计算规则基本跟实践复杂…

springboot中@Async的简单用法

springboot中Async的简单用法 文章目录 springboot中Async的简单用法开启配置Async的使用无返回值调用带返回值的调用 开启配置 在配置文件或者入口文件上新增注解: EnableAsync即可 Async的使用 对应需要异步调用的方法上添加Async注解即可 无返回值调用 controller代码 …

ArcGIS API for JavaScript 4.x 教程(三)显示自定义底图样式

了解如何访问和显示地图中的样式化矢量底图图层。 样式化底图图层是一组样式&#xff0c;您可以定义这些样式以覆盖默认底图图层服务矢量切片图层样式之一。这些用于创建和显示具有您自己的自定义样式、标注和颜色的地图或场景。要创建样式化底图图层&#xff0c;可以使用 Arc…

四项代表厂商,Kyligence 入选 Gartner 数据及人工智能相关领域多项报告

近日&#xff0c;全球权威的技术研究与咨询公司 Gartner 发布了《2023 年中国数据、分析及人工智能技术成熟度曲线》、《2023 年分析与商业智能技术成熟度曲线报告》、《2023 年数据管理技术成熟度曲线报告》&#xff0c;Kyligence 分别入选这三项报告的指标平台 Metrics Store…

[保研/考研机试] KY187 二进制数 北京邮电大学复试上机题 C++实现

描述 大家都知道&#xff0c;数据在计算机里中存储是以二进制的形式存储的。 有一天&#xff0c;小明学了C语言之后&#xff0c;他想知道一个类型为unsigned int 类型的数字&#xff0c;存储在计算机中的二进制串是什么样子的。 你能帮帮小明吗&#xff1f;并且&#xff0c;小…

《兴森大求真》重磅来袭!先进电子电路可靠性大揭秘

兴森实验室&#xff0c;让可靠看得见 前言介绍 芯片性能不断增强、先进封装不断演进&#xff0c;导致封装基板信号互连的IO数量和密度不断增加、PCB的层数增加、孔间距减小、厚径比提升&#xff0c;可靠性的挑战正在加剧。 电路板作为各种电子元器件的载体和电路信号传输的枢…

ROS入门-常见的rostopic命令及其用法的示例

目录 常见的rostopic命令及其用法的示例 1. 列出所有可用的话题&#xff1a; 2. 获取话题详细信息&#xff1a; 3. 实时显示话题消息内容&#xff1a; 4. 发布消息到话题&#xff1a; 5. 发布随机消息到话题&#xff1a; 6. 查看话题消息类型&#xff1a; 7. 查看话题消…