AI界的“视频滤镜”(Stable Diffusion进阶篇-TemporalKit视频风格转化),手把手教你制作原创AI视频

news2024/10/23 2:43:44

大家好,我是向阳

在之前的文章中我也分享过如何进行AI视频的制作,说是AI视频其实也就是通过Stable Diffusion进行视频重绘,也就是将一个视频一帧一帧重绘为自己想要的画面,然后再连贯起来成为视频。

这个东西其实比较耗费时间和设备配置,后续我教大家学习一下如何通过线上部署的方式来让低配置的电脑也能成功运行一些Stable Diffusion的操作,当然这个不是今天的主要内容。

今天主要想学习的是如何通过AI来实现视频风格的转换

让我们直接开始今天的学习吧!


TemporalKit

这个TemporalKit像是一个用于提取视频中关键帧图片的物品,然后结合Stable Diffusion重绘关键帧图片,再用TemporalKit进行处理转换,这个TemporalKit会自动补充关键帧之间的图片。

不过TemporalKit也是有一个弊端,这个适用于那些背景简单、主体居中且在画面占比比较大、动作幅度较慢的情况。这样让AI重绘时画面的元素比较稳定不会容易被AI自由添加,并且这样的动作衔接效果会更好些。

安装TemporalKit

安装地址:https://github.com/CiaraStrawberry/TemporalKit
如无法下载,请扫描获取哦

安装之后点击已下载中的应用重启客户端,之后等待WebUI页面重启就好啦!

当然在成功安装之后重启的过程中可能会遇到像我一样的问题:

不过不用担心,我翻了很多论坛还是找到了这个问题的解决方法。由于我是Win版本,所以我就按照Win版本的解决方案进行演示。

1.首先是打开启动器的命令行,这个可以在启动器的高级选项中找到

2.在打开命令符之后首先输入一段代码:

python -m pip uninstall tqdm

这段代码是用于卸载tqdm,然后在Proceed (Y/n)? 后面输入y也就是Yes同意卸载。

3. 然后就是重新安装最新版本的tqdm,在卸载后下方输入代码:

python -m pip install tqdm

直到最下方出现了Successfully installed tqdm-4.66.1就算是安装成功了。

这个时候就可以关闭这个命令符页面,重新启动启动器,接下来就能顺利启动啦!如果发现启动器的命令符中出现了这个:

可以暂时忽略掉,因为我目前没遇到问题并且疑难解答没有检测出问题。

如果说是出现了另外的情况例如:

ModuleNotFoundError:No module named ‘moviepy’

ModuleNotFoundError:No module named ‘scenedetect’

那是因为TemporalKit依赖的这些Python包不存在,用pip重新安装就好,将以下代码像上面一样输入到命令符中:

pip install moviepy

pip install scenedetect

如果自己的Stable Diffusion运行在Python虚拟环境中,那么还需要先激活虚拟环境。这一点要先注意自己的文件路径,然后再把包安装到虚拟环境中(如果是虚拟环境的话,以下这段代码要先输入后再输入上面两个代码):

source /root/stable-diffusion-webui/venv/bin.activate

现在就可以在WebUI中成功看到我们想要的TemporalKit扩展啦!


TemporalKit的使用

由于这个是一个用于视频转换的扩展插件,那么首先就得准备好一个用于转换的视频,我就从我的珍藏夹里面随便找一个用于这篇文章的演示好了。

为了最终成品效果不会太离谱,所以我选了一个单人舞蹈的视频,点开TemporalKit后将视频导入进去。

不过这会先不急生成,可以看到下方有一些参数设置选项:

  1. 每边张数(Sides):生成的一张图片的边包含几张视频帧,如果是2就代表4个视频帧也就是2*2;3就是9个视频帧(3*3)。这个参数的最小设置为1,也就是一张图包含一个视频帧,这个参数要与后面的高分辨率一起设置。

  2. 高度分辨率(Height Resoulution):生成图片的高度像素值,简单来讲就是我这个视频是1080*720,这个720就是单个视频帧的高度。但是我如果在上面的每张边数设置为2的话,那这个视频就是720*2=1440。这个参数设置取决于显卡性能,可以写个720或者2048,显卡显存不够的低一点也可以。

  3. 每几帧提取一个关键帧(Frames per keyframe): 这个是指多少视频帧抽取一个关键帧。

  4. 帧率(FPS): 一个视频每秒有多少帧画面,30就是一个视频一秒有30帧画面。

  5. 目标文件夹(Target Folder): 关键帧图片的输出目录,其运行结果会输入到这个目录下创建的一个input文件夹,之后过程中出现的任何结果都会在这个文件夹下,想要弄多个视频的话就需要针对每个视频创建一个项目目录。如果是用线上搭建的云端的话,那就需要填写服务器上的目录。

  6. 批量处理设置(Batch Setting): 因为这里要处理的是整个视频,所以需要把Batch Run批量处理勾选上。

在开始前确认一下自己视频的参数设置,就是鼠标右键点击视频文件查看属性就可以。

在设置什么的都保存完之后就可以点击右侧的运行了:

等一小会后就会出现四张图片

然后到刚刚创建用于放置操作结果的文件下方可以看到多出了一些文件夹,点开input可以发现一些关键帧图片:

之后回到WebUi点击运行下方的发送到图生图

在图生图中就与正常的图生图操作一样,选择自己需要的模型风格并且填写关键词和调整参数,这些都可以抄我下方贴出的内容再根据自己的实际情况进行适当地更改。

正面提示词:(masterpiece, realistic:1.4), (extremely intricate:1.2)>, 1boy, dancing, solo, school uniform, sad

负面提示词:easy_negative,(((text))),(((logo))),(beard)

而在参数方面需要注意两点,首先是图片的宽高。因为这是从提取关键帧的页面转来的,如果数字太大可以先调小,后续再用超分高清放大。其次是重绘幅度不要太大,以免AI过度发挥导致图片与图片之间差距过大衔接不上。

之后开启ControlNet辅助出图:

先不要批量生产,先抽卡直到刷出自己满意的图片。

一定要记得保存满意图片的种子

有了满意的图片之后就可以切换到批量处理啦!

批量处理中有两个目录,输入目录用于提取关键帧步骤中输出图片的目录;输出目录则是重绘图片的保存目录,固定值output填上就好

复制这俩的地址

记得在下方填写上满意图片的种子,然后其他的参数不需要变动就可以直接生成啦!

一般下面会有显示生成花费的时间和占用的显存,即便没有成品图出现也没关系。

合成视频

在一切都准备就绪之后就是合成视频的环节啦,这一步需要回到TemporalKit界面。

选择批量修复Batch-Warp

在这个输入文件夹中填写完整的项目目录,注意这里不是填写input的也不是output的,而是input和output的上级目录,换句话说就是包含了input和output这个路径。

然后点击载入上次设置read_last_settings,然后系统就会自动加载其他的参数。

注意下方的输出分辨率Output resolution是需要手动设置的,默认是1024但是需要调整为原视频的分辨率,然后点击运行即可。

这里的合成原理是根据关键帧生成的中间序列,然后又拼合起来生成视频,我这个视频是5秒左右大约需要6分钟进行生成。

之后在Result中可以看到生成的最终图片,最终视频会在右侧出现可以播放也可以下载

TemporalKit还有一个Temporal-Warp

这个功能可以实现单张图片的重绘转视频,不过一般我不怎么用到这个功能。

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

若有侵权,请联系删除

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

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

相关文章

智能猫砂盆是养猫必需品吗?三个好用品牌让你实现铲屎自动化!

随着现代社会的快节奏和压力增大,许多人开始因工作、旅行或其他紧急情况需要暂时离家,但这样的话,大家又要如何确保猫咪的猫砂盆在无人照料的情况下依旧保持清洁?尤其在炎热的季节,猫砂盆若长时间未得到清理&#xff0…

英伟达中国特供芯片降价背后:巨头与市场的较量

英伟达,这家曾经在人工智能芯片领域独领风骚的巨头,近期在中国市场遭遇了一些挑战。为了应对来自华为等中国本土企业的竞争,英伟达不得不采取降价策略,调整其专为中国市场打造的H20芯片价格,甚至低于华为的同类产品。这…

数据可视化实验五:seaborn绘制进阶图形

目录 一、绘制动态轨迹图 1.1 代码实现 1.2 绘制结果 二、使用seaborn绘制关系图 2.1 绘制散点图分析产品开发部已离职的员工的评分与平均工作时间 2.1.1 代码实现 2.1.2 绘制结果 ​编辑 2.2 基于波士顿房价数据,绘制房间数和房屋价格的折线图 2.2.1 代码…

人工智能产品经理,行业巨头争夺的稀缺人才

前言 在当今这个由数据驱动的时代,人工智能(AI)正迅速成为推动各行各业创新的核心力量。随着行业巨头纷纷布局人工智能领域,对于专业人才的需求也日益增长。特别是人工智能产品经理这一岗位,缺口高达6.8万&#xff0c…

mac安装高版本git(更新git)

问题 问题:新下载的idea,此idea的版本较高,但是在工作发现这个版本的git存在一定漏洞会导致一些信息泄露问题。 1.安装Homebrew 对于Mac更新git,最简单的就是使用brew命令。所以我们首先下载homebrew。已下载的同学忽略直接下一…

基于Java的留守儿童爱心网站

你好呀,我是计算机学姐码农小野!如果有相关需求,可以私信联系我。 开发语言:Java 数据库:MySQL 技术:B/S结构,SpringBoot框架 工具:MyEclipse,Navicat,To…

《深入理解Spark RDD缓存机制》(第4天)

文章目录 前言一、小试牛刀:解剖RDD缓存机制?1. 什么是Spark RDD缓存策略1.1 为什幺RDD要做缓存1.2 缓存相关API:1.3 缓存案例解析:1.4 图解缓存效果: 2. 什么是checkpoint缓存2.1 为什么要做checkpoint缓存2.2 checkpoint相关API:2.3 checkp…

车载测试面试项目看这一套就够了!车载测试___自我讲解项目

面试官您好,我叫xx来自安微,今年xx岁,毕业于安微新华学院,我是从2017年开始接触软件测试行业,目前从事软件测试工作有5年多时间,第一家公司做了电商和进销存项目app和web都有做过,上家公司做了车…

流程图工具评测:十大热门软件对比

流程图是一种用图形符号和箭头表示工作流程的图形表示方法。它展示了一系列相互关联的步骤,以显示过程中数据或物质的流动、决策点和操作步骤。流程图广泛用于各种领域,包括业务流程、软件开发、工程等,以帮助人们更好地理解和分析工作流程。…

大数据助力电商发展||电商API接口接入

伴随互联网尤其是移动互联网的高速发展,电子商务已经成为人们生活中不可或缺的一部分,人们的购物理念和消费模式正在发生颠覆性的转变。基于天然的数据优势,电子商务平台利用大数据计算技术不断实施数据的累积、分析和处理,消费者…

xshell使用vi命令:bash:vim:command not found

你们好,我是金金金。 场景 此时我通过xshell客户端连接到了远程的虚拟机。想用vi命令编辑一个文件时,显示:bash: vim: command not found 排查 看报错提示就可以知道,没找到vim命令 解决 使用包管理器 apt 来安装 vim 更新你的软…

Faiss:加速大规模数据相似性搜索的利器

在机器学习和数据挖掘领域,相似性搜索是一项基本且重要的任务,它涉及到在大型数据集中找到与特定对象最相似的对象。Faiss是一个由Facebook AI Research开发的库,专门用于高效地进行相似性搜索和聚类,它之所以重要,是因…

视频服务网关的特点

一、视频服务网关的介绍 视频服务网关采用Linux操作系统,可支持国内外不同品牌、不同协议、不同设备类型监控产品的统一接入管理,同时提供标准的H5播放接口供其他应用平台快速对接,让您快速拥有视频集成能力。不受开发环境、跨系统跨平台等条…

Linux系统:线程概念 线程控制

Linux系统:线程概念 & 线程控制 线程概念轻量级进程 LWP页表 线程控制POSIX 线程库 - ptherad线程创建pthread_createpthread_self 线程退出pthread_exitpthread_cancelpthread_joinpthread_detach 线程架构线程与地址空间线程与pthread动态库 线程的优缺点 线程…

【ajax核心01】ajax底层原理

一:XMLHttpRequest对象 节选自MDN网站 XMLHttpRequest(XHR)对象用于与服务器交互。通过 XMLHttpRequest 可以在不刷新页面的情况下请求特定 URL,获取数据。这允许网页在不影响用户操作的情况下,更新页面的局部内容。XMLHttpReque…

Excel入门必备:掌握单元格引用,轻松应对数据处理

文章目录 概述引用单个单元格:引用单元格范围:相对引用:绝对引用:混合引用: 概述 在 Excel 中,单元格引用是指引用工作表中的单个单元格或单元格范围。单元格引用通常用于在公式中使用单元格的值或进行数据…

腾讯云开端口

轻量服务器 由于开发者计划,这些腾讯云 阿里云什么的小vps,是非常之便宜,甚至到了白送的地步(小阿),但是作为一个web安全学习者必要的vps操作还是要会的 开启端口 腾讯云的轻量服务器是没有安全组的&…

SQLite 3 优化批量数据存储操作---事务transaction机制

0、事务操作 事务的目的是为了保证数据的一致性和完整性。 事务(Transaction)具有以下四个标准属性,通常根据首字母缩写为 ACID: 原子性(Atomicity):确保工作单位内的所有操作都成功完成&…

蓝牙模块在车载系统中的应用与集成:现状、挑战与未来展望

随着科技的快速发展,蓝牙技术已经深入到我们生活的方方面面,其中车载系统中的应用尤为显著。蓝牙模块作为一种无线通信技术,不仅为驾驶者提供了更加便捷的操作体验,同时也提升了驾驶的安全性。本文旨在分析蓝牙模块在车载系统中的…

计算机网络知识点汇总(二)

计算机网络知识点汇总 第1章计算机网络体系结构 1.1 计算机网络概述 1.1.1 计算机网络的概念 ​ 计算机网络是由若干个结点(node)和连接这些结点的链路(link)组成。网络中的结点可以是就三级、集线器、交换机、或者路由器等,网络之间通过路由器进行互联&#xf…