当前位置: 首页 > news >正文

AI 绘画Stable Diffusion 研究(十四)SD 图生图+剪映制作人物说话视频


大家好,我是风雨无阻。


前一篇,我们详细介绍了使用 SadTlaker制作数字人视频案例,感兴趣的朋友请前往查看:AI 绘画Stable Diffusion 研究(十三)SD数字人制作工具SadTlaker使用教程。


对于没有安装 SadTlaker 插件的朋友,可以查看这篇文章:AI 绘画Stable Diffusion 研究(十二)SD数字人制作工具SadTlaker插件安装教程 。


想必用过 SadTlaker 的朋友都知道,目前使用 SadTlaker插件制作数字人说话的视频,有两个不太理想的地方:

(1)、 生成视频消耗的时间比较长。尤其是显卡和显存比较低的朋友,想要制作一个长时间的视频,效率更低。

笔者亲测:使用3060 12G显卡,制作一段15s 左右的视频,需要10分钟左右。

(2)、目前的SadTlaker 图片人物只能使用正面照,这样给人的感觉比较突兀。


那有没有其他方法制作数字人视频,既能达到让数字人张嘴说话的效果, 效率又更高,还可以使用非正面图的方式呢?

答案是有的,那就是今天的主题: SD 图生图制作人物张嘴说话图+剪映制作说话视频。


一、SD制作人物张嘴说话图


1、切换到SD 图生图->局部重绘界面 ,上传一张人物图片


在这里插入图片描述


2、反推正向提示词


在这里插入图片描述


3、改写正向提示词,让人物张嘴


没安装提示词插件的朋友,请查看这篇文章AI 绘画Stable Diffusion 研究(六)sd提示词插件,有详细安装步骤。


(1)、我们使用提示词插件, 在提示词处,先输入中文: 张嘴

提示词插件会自动将中文转换英文提示词。


如图:

在这里插入图片描述


(2)、为了让人物张嘴效果更明显,不被sd 忽略,我们需要增加张嘴提示词的权重


选择张嘴提示词, 会弹出权重操作按钮,然后我们点击三次,增加权重图标按钮,此时提示词输入框内会自动增加提示词的权重。


如图:

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


(3)、涂选重绘区域

在局部重绘界面,右侧选择画笔,ctrl+鼠标滚轮可调整画笔粗细。


在这里插入图片描述


(4)、调整重绘尺寸

在这里插入图片描述


(5)、启用controlnet ,保存人物姿势不变

  • 启用controlnet
  • 控制类型选择:openpose
  • 预处理器:openpose_full
  • 模型:control_v11p_sd15_openpose

在这里插入图片描述


(6)、点击生成,即可获得人物张嘴的图片

对比图如下:

在这里插入图片描述


上面我们已经获得了人物张嘴的图片,那么接下来,我们使用剪映,加上配音和字幕,即可制作人物开口说话视频了。


二、剪映制作人物开口说话视频

1、准备工作

  • 安装剪映,具体的安装步骤这里就不再细说,很简单,请自行安装。

  • 准备好人物张嘴和闭嘴的两张图

  • 准备好音频文件


2、打开剪映点击开始制作

在这里插入图片描述


3、导入音频和图片

如图:

qyDT-1692773049806)(assets/image-20230823003231110.png)]

在这里插入图片描述


4、将音频拖入下方音频轨道

在这里插入图片描述


5、生成字幕

依次点击菜单栏上“文本”按钮,再点击左侧“智能字幕”按钮,接着点击“开始识别”按钮,生成字幕


在这里插入图片描述


字幕生成如下:

在这里插入图片描述


6、将图片拖入轨道,然后切换嘴型

(1)、怎么切换嘴型,使其看上去像说话的效果呢?


用过剪映的朋友肯定知道,剪映 1s 是30帧 。

那么正常人说话,大约1s 5 -6 个字。

因此我们可以计算出来大概 5帧 一个嘴型。

因此我们先使用闭嘴的图,然后在5帧的地方,切换张嘴的图即可实现。


(2)、制作步骤


  • step 1: 将张嘴的图和闭嘴的图分别导入到图片两个轨道上

  • step 2:将右侧轨道缩放拖到最右侧,可以清晰看见轨道上的帧数 ,如1f \2f\4f\6f

    如图:

在这里插入图片描述


step 3: 将定位线移到 5帧处,然后点击分割按钮,将张嘴和闭嘴图都分割开

如下:


在这里插入图片描述


step 4:处理闭嘴的图, 分割后,我们删除,前5帧,不用的闭嘴图

如下:


在这里插入图片描述


step 5: 继续往后数5帧,再分割

在这里插入图片描述


step 6: 删除张嘴、闭嘴图 多余的部分


在这里插入图片描述


step 7: 将张嘴、闭嘴拖入同一轨道,并且打组

在这里插入图片描述


选中两个片段,然后鼠标右键,新建复合片段,打组


在这里插入图片描述


现在的效果,就是闭嘴、张嘴的一个片段 。

打组后如图:

在这里插入图片描述


step 8: 复制粘贴多个片段,直到一句说完话为止

然后将图片末尾和字幕对齐。

如图:

在这里插入图片描述


step 9: 没说话的时候,使用闭嘴的图

注意:将图片末尾和空白处末尾对齐

如下:

在这里插入图片描述


step 10: 继续处理后面说话的部分, 重复步骤step 8,直到每句话处理完毕

在这里插入图片描述


step 11: 调整视频比例,9:16 再导出视频

右上角导出按钮,导出即可。

在这里插入图片描述


在这里插入图片描述


好了,这个视频制作就到此结束,看看效果吧:

SD 图生图+剪映制作人物说话视频

说实话,这个视频只是张嘴闭嘴的效果,没有脸部表情变化,确实显得比较生硬。

不过这里重点在于介绍制作思路和剪辑方法, 对于感兴趣的朋友可以尝试玩一下。

相关文章:

AI 绘画Stable Diffusion 研究(十四)SD 图生图+剪映制作人物说话视频

大家好,我是风雨无阻。 前一篇,我们详细介绍了使用 SadTlaker制作数字人视频案例,感兴趣的朋友请前往查看:AI 绘画Stable Diffusion 研究(十三)SD数字人制作工具SadTlaker使用教程。 对于没有安装 SadTlaker 插件的朋友…...

ProPlot 基本语法及特点

文章目录 简介多子图绘制处理共享轴标签“跨度”轴标签多子图序号的绘制 更简单的颜色条和图例更加美观的颜色和字体 简介 科研论文配图多图层元素(字体、坐标轴、图例等)的绘制条件提出了更高要求,我们需要更改 Matplotlib 和 Seaborn 中的…...

element-template-admin get请求正常 post请求超市问题

最近搞全栈,想写个增删改查连接element-template-admin框架,postman测get和post请求都正常,到框架里直接超时,看网络请求一直是padding状态,后来经查阅资料,发现是这个template框架的问题 解决方案&#x…...

Promise.all和promise.race的应用场景举例

Promise.all( ).then( )适用于处理多个异步任务&#xff0c;且所有的异步任务都得到结果时的情况。 <template><div class"box"><el-button type"primary" plain click"clickFn">点开弹出框</el-button></div> &…...

go学习-指针 标识符

指针&#xff0c;以及标识符 1.指针 &#xff08;1&#xff09;.基本介绍 1&#xff09;基本数据类型&#xff0c;变量存的值&#xff0c;也叫值类型 2&#xff09;获取变量的地址用&&#xff0c;比如 var num int ,获取num的地址&#xff1a;&num 3)指针类型&…...

LeetCode--HOT100题(42)

目录 题目描述&#xff1a;108. 将有序数组转换为二叉搜索树&#xff08;简单&#xff09;题目接口解题思路代码 PS: 题目描述&#xff1a;108. 将有序数组转换为二叉搜索树&#xff08;简单&#xff09; 给你一个整数数组 nums &#xff0c;其中元素已经按 升序 排列&#xf…...

leetcode-49.字母异位词分组-day20

...

YOLOv8教程系列:三、K折交叉验证——让你的每一份标注数据都物尽其用(yolov8目标检测+k折交叉验证法)

YOLOv8教程系列&#xff1a;三、K折交叉验证——让你的每一份标注数据都物尽其用&#xff08;yolov8目标检测k折交叉验证法&#xff09; 0.引言 k折交叉验证&#xff08;K-Fold Cross-Validation&#xff09;是一种在机器学习中常用的模型评估技术&#xff0c;用于估计模型的性…...

leetcode算法题--表示数值的字符串

原题链接&#xff1a;https://leetcode.cn/problems/biao-shi-shu-zhi-de-zi-fu-chuan-lcof/description/?envTypestudy-plan-v2&envIdcoding-interviews 题目类型有点新颖&#xff0c;有限状态机 // CharType表示当前字符的类型 // State表示当前所处的状态 type State…...

Docker安装及Docker构建简易版Hadoop生态

一、首先在VM创建一个新的虚拟机将Docker安装好 更新系统&#xff1a;首先打开终端&#xff0c;更新系统包列表。 sudo apt-get update sudo apt-get upgrade下图是更新系统包截图 安装Docker&#xff1a;使用以下命令在Linux上安装Docker。 sudo apt-get install -y docker.i…...

使用Burp Suite进行Web应用渗透测试

使用Burp Suite进行Web应用渗透测试是一种常见的方法&#xff0c;可以帮助发现Web应用程序中的安全漏洞和弱点。 步骤&#xff1a; 准备工作&#xff1a; 首先&#xff0c;确保已经安装了Burp Suite&#xff0c;并配置浏览器以使用Burp Suite作为代理。 配置代理&#xff1a;…...

Github的使用指南

首次创建仓库 1.官网创建仓库 打开giuhub官网&#xff0c;右上角点击你的头像&#xff0c;随后点击your repositories 点击New开始创建仓库 如下图为创建仓库的选项解释 出现如下界面就可以进行后续的git指令操作了 2.git上传项目 进入需上传项目的所在目录&#xff0c;打开…...

mongodb 添加加点 stateStr 停在 STARTUP

解决办法 PRIMARY 节点是的host 是否是内网IP&#xff0c;如果是内网IP 需要切换成外网IP 即可&#xff1b;...

c语言中编译过程与预处理

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、c语言的编译与链接1、编译与链接概述2、编译与链接详解 二、c语言预处理1.c语言中内置的预定义符号2、#define定义标识符3、#define定义宏4、#define 替换规…...

TP-LINK 路由器设置内网穿透

TP-LINK 路由器设置内网穿透 开发中经常遇到调用第三方软件回调调试的情况&#xff0c;例如微信开发&#xff0c;支付回调等测试&#xff0c;用内网穿透是一种简单的方式也是偷懒的方式。 以TP-LINK路由器为例实现内网穿透 登录路由器 2.找到路由器虚拟服务器&#xff0c;添加…...

A 题国际旅游网络的大数据分析-详细解析与代码答案(2023 年全国高校数据统计与调查分析挑战赛

请你们进行数据统计与调查分析&#xff0c;使用附件中的数据&#xff0c;回答下列问题&#xff1a; ⚫ 问题 1: 请进行分类汇总统计&#xff0c;计算不同国家 1995 年至 2020 年累计旅游总人数&#xff0c;从哪个国家旅游出发的人数最多&#xff0c;哪个国家旅游到达的人数最多…...

《深入理解Java虚拟机》读书笔记: 类加载器

类加载器 虚拟机设计团队把类加载阶段中的“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去实现&#xff0c;以便让应用程序自己决定如何去获取所需要的类。实现这个动作的代码模块称为“类加载器”。 类加载器可以说是Java语言的一项创新&…...

宝塔计划任务读取文件失败

想挂计划任务 相关文章【已解决】计划任务读取文件失败 - Linux面板 - 宝塔面板论坛 对方反馈的是执行下面的命令 chattr -ai /var/spool/cron 后来发现直接没有这个文件夹&#xff0c;然后通过mkdir命令创建文件夹&#xff0c;成功在宝塔创建了计划任务 后面发现任务虽然添…...

Python操作sql,备份数据库

1、批量执行sql import pymysql# 执行批量的 SQL 语句 def executeBatchSql(cursor, sqlStatements):for sql in sqlStatements:try:cursor.execute(sql)print(Executed SQL statement:, sql)except Exception as e:print(Error executing SQL statement:, e)# 创建数据库连接…...

Linux线程 --- 生产者消费者模型(C语言)

在学习完线程相关的概念之后&#xff0c;本节来认识一下Linux多线程相关的一个重要模型----“ 生产者消费者模型” 本文参考&#xff1a; Linux多线程生产者与消费者_红娃子的博客-CSDN博客 Linux多线程——生产者消费者模型_linux多线程生产者与消费者_两片空白的博客-CSDN博客…...

DocX入门指南:如何在不安装Word的情况下快速创建第一个Word文档

DocX入门指南&#xff1a;如何在不安装Word的情况下快速创建第一个Word文档 【免费下载链接】DocX Fast and easy to use .NET library that creates or modifies Microsoft Word files without installing Word. 项目地址: https://gitcode.com/gh_mirrors/doc/DocX Do…...

【Oracle数据库指南】第17篇:Oracle逻辑与物理存储结构——表空间、段、区、数据块全解析

上一篇【第16篇】Oracle连接模式与内存管理——专用服务器、共享服务器与AMM 下一篇【第18篇】Oracle数据库规划与前期准备——创建数据库前的系统工作 摘要 本文系统讲解Oracle数据库的存储结构体系&#xff0c;包括逻辑存储&#xff08;数据库→表空间→段→区→数据块&…...

从用户体验出发:手把手教你用uniapp的showLoading/showToast/showModal设计友好交互

从用户体验出发&#xff1a;手把手教你用uniapp的showLoading/showToast/showModal设计友好交互 在移动应用开发中&#xff0c;交互设计的好坏直接影响用户留存率。数据显示&#xff0c;超过60%的用户会因为糟糕的交互体验而卸载应用。作为开发者&#xff0c;我们不仅要关注功能…...

权限割裂、数据延迟、协同断点——Gemini Workspace整合失败的90%源于这4个配置盲区

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;权限割裂、数据延迟、协同断点——Gemini Workspace整合失败的90%源于这4个配置盲区 在企业级部署 Gemini Workspace 时&#xff0c;大量团队遭遇“功能可登录但协作不可用”的隐性故障。根本原因并非 …...

Perplexity Pro年度订阅最后48小时决策清单:7个必测场景+1张动态成本计算器+2024新政策下仅剩的3种合规降本路径

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity Pro订阅值不值得 核心能力对比&#xff1a;免费版 vs Pro版 Perplexity Pro 提供实时联网搜索、多文件上传解析&#xff08;PDF/DOCX/CSV&#xff09;、无限次深度追问及自定义AI工作区等…...

企业内网应用如何安全合规地集成外部大模型API服务

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 企业内网应用如何安全合规地集成外部大模型API服务 在构建内部AI工具时&#xff0c;企业开发团队面临一个核心挑战&#xff1a;如何…...

对比直接使用官方 API,Taotoken 在批量处理任务中的用量可视化优势

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接使用官方 API&#xff0c;Taotoken 在批量处理任务中的用量可视化优势 当开发团队或个人开发者需要处理大量文本生成任务时…...

2026.5.12:三台服务器,一台fastapi的websocket服务接口,一台代理fastapi服务的nginx,一台代理上一个nginx,能穿透websocket吗?

三台服务器,一台fastapi的websocket服务接口,一台代理fastapi服务的nginx,一台代理上一个nginx,能穿透websocket吗? 环境: - 三台服务器 1. 一台fastapi中有websocket接口的服务器:43.226.44.50 2. 一台代理上面1里面的fastapi服务的nginx:43.226.44.184 3. 一台代…...

YOLO26改进 | MSHC多尺度异构卷积:用方形核与条带核捕获复杂空间纹理,以清晰动机打造超强创新!

# YOLO26改进最新创新改进系列 | MSHC多尺度异构卷积&#xff1a;用方形核与条带核捕获复杂空间纹理&#xff0c;以清晰动机打造超强创新&#xff01; 购买相关资料后畅享一对一答疑&#xff01; 畅享超多免费持续更新且可大幅度提升文章档次的纯干货工具&#xff01; 这篇采用…...

软件设计原则之DIP依赖倒置原则

(DIP) 依赖倒置原则 Dependency Inversion Principle核心原则抽象不应该依赖细节&#xff1b;细节应该依赖于抽象。场景描述在一个应用程序 Application 中需要使用到数据库&#xff0c;比如我们此时需要使用到 Mysql 数据库。Mysql 数据库分别具有连接&#xff0c;断开关闭&am…...