SadTalker项目上手教程

这篇具有很好参考价值的文章主要介绍了SadTalker项目上手教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

最近发现一个很有趣的GitHub项目SadTalker,它能够将一张图片跟一段音频合成一段视频,看起来毫无违和感,如果不仔细看,甚至很难辨别真假,预计未来某一天,一大波网红即将失业。

虽然这个项目目前的主要研究方向还是基于cuda的脸部训练,生成动态的视频,但如果能够接入语音服务,利用ChatGPT实时生成对话prompt,配合这个项目实时渲染动态视频,那么一个灵动的对话机器人就产生了。想想这两个月ai正在以可怕的速度进化,未来生命以数字形式留存,机械飞升不再是科幻小说才有的场景。

使用教程

SadTalker上手门槛低,对新手相当友好,按照我的步骤一步步进行将确保你能够正常玩转这个项目。

一、环境准备

1、安装 Anaconda

Anaconda 本身是一个python发行版本,它可以便捷获取包且对包能够进行管理,同时对环境可以统一管理。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。


Anaconda 与 Python 的区别在于,Anaconda 是一个发行版,提供了一组科学计算和数据分析的常用工具,而 Python是一种编程语言。Anaconda 是基于 Python 的,但它包含了许多 Python 库和工具,可以帮助开发者快速开始科学计算、数据分析和机器学习项目。


与 Python 的另一个区别是,Anaconda 还包含了一个叫做 conda 的包管理器,可以帮助开发者管理和部署 Python 库和工具。conda 可以帮助开发者在不同的环境中安装和使用 Python 库,并且可以方便地创建、复制和删除 Python 环境。

进入官网 anaconda,点击下载,然后按照提示安装即可,安装完成后,点电脑的开始按钮可以看到 Anaconda Prompt 的命令提示符程序,代表安装成功。

2、安装NVIDIA cuda-toolkit

项目基于 PyTorch,如果你的电脑使用了英伟达的显卡,那么建议你安装cuda-toolkit,以便充分发挥显卡进行机器训练的优势。非常不建议直接用CPU,速度会非常慢。

进入官网 cuda-toolkit,根据显卡的cuda版本号,选择对应版本的toolkit下载,然后按照提示进行安装即可,安装目录可自定义。

显卡cuda版本号可通过 nvidia-smi 命令查看。

SadTalker项目上手教程

然后选择对应版本的cuda-toolkit。

SadTalker项目上手教程

3、安装 visual studio c++ 模块

如果你是首次使用 PyTorch 的新手用户,那么建议你提前安装好visual studio c++ 模块,因为PyTorch依赖于dlib库。


dlib是一个跨平台的用C++编写的代码库,这个库的机器提供了很多学习算法和工具。由于dlib库需要c++编译器,所以建议提前安装 visual studio c++ 模块,否则会报错的。

进入官网 visualstudio,选择社区版下载,仅勾选使用C++的桌面开发 ,然后安装即可。

SadTalker项目上手教程

二、下载项目及训练模型

1、下载源码

进入项目主页 SadTalker,通过Git将源码clone下来,或者直接点DownloadZip手动下载。

2 、下载gfpgan模型

gfpgan是腾讯开源的人脸复原模型,用于解决如何从低分辨率低质量的真实图像中获得较好的先验知识,复原人脸图像的问题。它利用封装在预训练脸部GAN中的丰富多样的先验信息进行人脸盲修复。这种生成性面部先验(GFP)通过空间特征变换层被纳入到人脸恢复过程中

点击 GFPGANv1.4 即可下载,将下载好的模型放到项目中E:\ProgramData\openAI\SadTalker\gfpgan\weights\下,源码是不包含\gfpgan\weights\这个目录的,可以手动创建下。

3 、下载其它必要模型

进入 Releases 页面,选择最新版本的Assets,所有除源码以外的文件都进行下载。
SadTalker项目上手教程下载完成后,放到 E:\ProgramData\openAI\SadTalker\checkpoints目录下,此外需要将hub.zipBFM_Fitting.zip分别解压下,其他不用解压。源码不包含\checkpoints这个目录,需要手动创建下。

三、用 Anaconda 将项目跑起来

1、打开 Anaconda Prompt,设置pip源,并切换到项目目录

SadTalker项目上手教程

2、创建虚拟环境并安装依赖

首次运行需要通过conda create 命令创建运行环境,然后激活环境,然后下载依赖包。


以下命令执行过程中,可能会提示报错,根据报错提示下载相关的依赖即可。


如果是提示缺少dlib,那就非常考虑耐心了。由于dlib的安装需要相当长的时间,建议通过 pip install dlib -vvv 查看详细的安装进度,并且你要确保电脑不会因休眠而断网。

conda create -n sadtalker python=3.8

conda activate sadtalker

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

conda install ffmpeg

pip install -r requirements.txt

3、执行 conda info,复制GFPGANv1.4.pth到虚拟环境

根据 active env location 提示,找到虚拟环境的位置。

把源代码压缩包里面的:gfpgan\weights\GFPGANv1.4.pth 剪切到虚拟环境的 Lib\site-packages\gfpgan\weights 目录下

4、运行命令,生成视频

python inference.py --driven_audio E:\temp\sadtalker\input\1.wav --source_image E:\temp\sadtalker\input\1.jpg --result_dir E:\temp\sadtalker\output --still --enhancer gfpgan --full_img_enhancer gfpgan

其中 driven_audio 参数值要替换为 你的语音文件, source_image 参数值要替换为 你的图片, result_dir 参数值要替换为 你的资源输出目录。

这里是最后一步,可能会报错,如果出现 attempting to deserialize object on a cuda device but torch.cuda.is_available() is false.这样的报错。说明你没有正确安装GPU的cuda工具包,请返回安装NVIDIA cuda-toolkit 这一步进行安装,如有必要请升级显卡驱动。如果你确实没有英伟达的显卡,那么可根据报错提示,找到对应位置的源码,修改默认的device为cpu即可。

运行完成后,我们将看见一个栩栩如生的短视频。

后记

SadTalker项目迭代更新很快,目前已经对视频增加了水印,当然如果你有点程序基础,应该能研究出来怎么把那个水印给去掉。

另外由于迭代快,文字最后的命令可能会报错,如果你发现问题,欢迎到我评论区留言,我会尽快更新。

如果你喜欢这个项目,不妨给项目一个star,你的支持是对作者最大的鼓励。文章来源地址https://www.toymoban.com/news/detail-450362.html

到了这里,关于SadTalker项目上手教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 最近复现deepsort,发现run demo 出现错误module ‘numpy‘ has no attribute ‘float‘.

    AttributeError: module \\\'numpy\\\' has no attribute \\\'float\\\'. `np.float` was a deprecated alias for the builtin `float`. To avoid this error in existing code, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use ` np.float64 ` here. The aliases was originally deprecated in NumPy 1.20; fo

    2024年02月13日
    浏览(27)
  • 32.5k star!发现一个新的 API 调试工具!postman 要被替换了【文末有项目源码】

    在软件开发过程中,API(应用程序接口)扮演着至关重要的角色。为了确保 API 的可靠性和性能,开发人员需要一种高效的方式来测试和调试它们。这方面的工具,大家经常用到的应该就是 postman 了。不过,今天想要给大家分享一个新的 API 调试工具——Insomnia。 Insomnia 是一个

    2024年04月28日
    浏览(30)
  • 抖音AI图文带货项目玩法教程,0门槛操作简单容易上手操作

    文章标题:轻松上手,抖音AI图文带货项目玩法教程 文章正文: 随着社交媒体的飞速发展,抖音已成为了许多人推广产品和销售商品的热门平台。而近期推出的抖音AI图文带货项目更是为商家提供了一个全新的推广方式。这个项目操作简单、容易上手,便于各类商家进行产品

    2024年02月04日
    浏览(52)
  • 小米妙享中心非小米电脑加载失败电脑能发现手机,手机能发现电脑,无法打开镜像画面,无法打开最近文件,能够看到但是无法打开,无法流转应用,无法共享屏幕

    我这里使用的是ThinkPad T480电脑,该电脑已经是5年左右的老机器了,但是依然能够成功使用小米妙享,只是可能比起原装的功能没有那么全,至于原装是什么样,我也没有体会过,不做过多说明。安装方法很简单,下载小米妙享pc版.exe和机型破解库wtsapi32.dll,将这两个东西放

    2024年02月16日
    浏览(147)
  • 打造AI虚拟数字人,Stable Diffusion+Sadtalker教程

    站长笔记 2 个月前 1 1k Stable Diffusion是一个能够根据 文本描述生成高质量图片的深度学习模型 ,它使用了一种叫做 潜在扩散模型的生成网络架构 ,可以在普通的GPU上运行。Sadtalker是一个能够根 据图片和音频生成 视频的开源项目 ,它使用了一种叫做 SadNet的神经网络 ,可以

    2024年02月11日
    浏览(64)
  • 【 Qt 快速上手】-①- Qt 背景介绍与发展前景

    Qt 是一个跨平台的 C++ 图形用户界面应用程序框架 。它为应用程序开发者提供了建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易扩展。Qt 为开发者提供了一种 基于组件的开发模式 ,开发者可以通过简单的拖拽和组合来实现复杂的应用程序,同时也可以使

    2024年01月20日
    浏览(45)
  • 设计一个LRU(最近最少使用)缓存

    约束和假设 我们正在缓存什么? 我们正在缓存Web Query的结果 我们可以假设输入是有效的,还是需要对其验证? 假设输入是有效的 我们可以假设它适应内存吗? 对 编码实现

    2024年01月24日
    浏览(43)
  • 2023-05-25 最近的一个客户POC的反思

    最近在遇到一个客户的POC的问题,其中经历诸多有意思的事情, 有必要记录一下,以作为后续创业所要避免的地方。 查询SQL中, 存在给查询到的列属性赋值的情况 给属性的赋值的数据类型,和列属性的数据类型,不匹配,比如给整形的属性赋值字符串 在所做的项目中,数据库

    2024年02月07日
    浏览(54)
  • AutoGPT最近火出圈,却透露一个给我们的重要机会

    在AutoGPT和其他类似的人工智能技术越来越普遍的时代,许多人可能会担心潜在的失业和各种任务的自动化趋势。然而,虽然人工智能确实可以替代许多繁琐和重复性的工作,但重要的是要记住,AI无法真正复制的一个关键方面是人类的创造力。 创造力是人类经验的重要组成部

    2023年04月17日
    浏览(35)
  • Xcode 清空最近打开的项目

    打开Xcode任意项目 File - Open Recent - Clear Menu

    2024年02月09日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包