Stable Diffusion——Animate Diff一键AI图像转视频

前言

AnimateDiff 是一个实用框架,可以对文本生成图像模型进行动画处理,无需进行特定模型调整,即可为大多数现有的个性化文本转图像模型提供动画化能力。而Animatediff 已更新至 2.0 版本和3.0两个版本,相较于 1.0 版本,2.0和3.0版本主要新增了三个插件功能:Lora、ControlNet 和 Prompt travel。Lora,官方新增了 8 个运动模型,使我们能够自由控制动画画面的走向。Prompt travel,可以在提示词中指定第几帧以及指定何种动作或画面,可以通过提示词实现动态控制动画。
在这里插入图片描述
感兴趣可加入:566929147 企鹅群一起学习讨论

算法简介

AnimateDiff 提出了一种创新的方法来解决个性化 Text to Video 的挑战。其核心原理是将一个新初始化的运动建模模块附加到冻结的基于文本到图像的模型上,并在接下来的视频剪辑中对其进行训练,以提炼出合理的运动先验知识。一旦训练完成,通过简单地注入这个运动建模模块,所有从相同基础模型派生的个性化版本都可以立即成为以文本驱动的模型,从而能够生成多样化和个性化的动画图像。

这一方法的创新之处在于它摆脱了传统方法中对于敏感超参数调整、大量个性化视频数据集收集以及密集的计算资源的依赖,使得普通用户也能够参与到个性化 Text to Video 的工作中。通过将运动建模模块与基础模型结合,AnimateDiff 实现了一种更加简洁高效的个性化动画生成方式,为用户提供了更多选择和可能性。
在这里插入图片描述
通过实验证明,运动先验可以推广到 3D 动画片和 2D 动漫等领域,这意味着 AnimateDiff 能够为个性化动画提供一个简单而有效的基线。用户只需承担个性化图像模型的成本,就能够快速获得自然的个性化动画。以下是官方提供的一些优秀作品效果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这些作品展示了 AnimateDiff 的强大功能和广泛适用性,为用户提供了一个简便而有效的个性化动画生成方案。

Stable Diffusion Webui安装

插件从网址安装:https://github.com/continue-revolution/sd-webui-animatediff ,击安装即可,等待安装完毕,重启一下SD UI界面。
在这里插入图片描述
然后从:https://huggingface.co/guoyww/animatediff/tree/main 里下载专用的运动模型和Lora模型。下载之后需要放置在对应的位置。
运动模型放在stable-diffusion-webui\extensions\sd-webui-animatediff\model里面,运动lora放在stable-diffusion-webui\models\Lora里面。
在这里插入图片描述
根据 Lora 的命名可以大概看出它们的功能:

  1. 向上运动(Up)
  2. 向下运动(Down)
  3. 向左运动(Left)
  4. 向右运动(Right)
  5. 拉远运动(Zoom Out)
  6. 拉近运动(Zoom In)
  7. 顺时针旋转(Clockwise)
  8. 逆时针旋转(Counter Clockwise)

这些 Lora 可以通过添加对应的 Lora 来控制生成的动画在空间中的运动方向和旋转方向。
在这里插入图片描述
在 animatediff 插件页面的配置参数中:

  • 动画模型:选择最新的 V2 版本。
  • 总帧数:指定动画总共包含的画面数量。
  • 帧率:指定每秒的帧数。例如,如果总帧数设置为 16,帧率设置为 8,则单个动画的播放时长为 2 秒。
  • 显示循环数量:指定动画循环播放的次数,0 代表一直重复播放。
  • 闭环:勾选此选项,使得动画的第一帧和最后一帧形成循环。
  • 上下文单批数:与总帧数保持一致即可。
  • 保存:选择输出动画的格式,可以多选。

插件使用

实现一个最基础的动画

1girl,night city,rain,coat,hands in pockets,best quality,masterpiece,HDR,UHD,8K,Highly detailed,simple background,
Negative prompt: (worst quality:1.6),(low quality:1.6),EasyNegative,
Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 601405023, Size: 512x512, Model hash: 876b4c7ba5, Model: cetusMix_Whalefall2, VAE hash: 63aeecb90f, VAE: vae-ft-mse-840000-ema-pruned.safetensors, Clip skip: 2, Version: v1.6.0

在这里插入图片描述

使用Lora
对于添加一个镜头往左移动的 Lora “lora:v2_lora_PanLeft:0.8”,它的使用方式与普通的 Lora 是一样的。可以看到画面往左移动的幅度相当大。通过调整 Lora 的权重,可以实现不同幅度的移动。权重越高,移动的幅度越大。

在这个例子中,权重为 0.8,表示移动的幅度较大。如果希望移动的幅度更小,可以降低权重;如果希望移动的幅度更大,可以增加权重。这样就可以根据具体需求调整镜头移动的幅度。

1girl,night city,rain,coat,hands in pockets,best quality,masterpiece,HDR,UHD,8K,Highly detailed,simple background,lora:v2_lora_PanLeft:0.8,
Negative prompt: (worst quality:1.6),(low quality:1.6),EasyNegative,
Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 601405027, Size: 512x512, Model hash: 876b4c7ba5, Model: cetusMix_Whalefall2, VAE hash: 63aeecb90f, VAE: vae-ft-mse-840000-ema-pruned.safetensors, Clip skip: 2, Lora hashes: “v2_lora_PanLeft: ed79025f8bea”, TI hashes: “EasyNegative: c74b4e810b03”, Version: v1.6.0

在这里插入图片描述

Prompt travel

“Prompt travel” 是一个需要安装 ControlNet 的功能。它允许用户在描述人物或场景的提示词中指定不同帧数对应的动作或画面。举例来说,如果总帧数只有 8 帧,那么在提示词中最大只能写到 7,因为索引从 0 开始,0 对应第一帧,7 对应第八帧,依此类推。如果不遵循这个规则,可能会导致错误。

提示词的格式应该为:在指定帧数后面加上冒号和空格,然后描述对应的动作或画面。例如:“0: 人物行走”,表示在第一帧人物行走。

如果发现功能没有生效,可能是由于插件之间发生了冲突。可以尝试禁用除 animatediff 和 ControlNet 之外的其他插件,然后逐个重新启用,查看是否恢复了功能。

1girl,best quality,masterpiece,realistic,close-up,simple background,
0: smile
2: open eyes
3: (closed eyes:1.2)
5: open eyes

在这里插入图片描述

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

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

相关文章

【学位论文】上海交通大学 研究生学位论文 本地保存

上海交大研究生学位论文网:http://thesis.lib.sjtu.edu.cn/ (只能校内访问或SJTU VPN访问) 如果希望下载论文,需要参考:https://github.com/olixu/SJTU_Thesis_Crawler 安装过程 安装过程的几个坑: &a…

RabbitMQ-TTL/死信队列/延迟队列高级特性

文章目录 TTL死信队列消息成为死信的三种情况队列如何绑定死信交换机 延迟队列RabbitMQ如何实现延迟队列 总结来源B站黑马程序员 TTL TTLTTL(Time To Live):存活时间/过期时间当信息到达存活时间后,还没有被消费,会被自动清除。RabbitMQ可以对消息设置过…

vue修改打包后静态资源路径的修改

不得不说,ai是真的强大,直接自己生成。

【AI Agent系列】【MetaGPT多智能体学习】3. 开发一个简单的多智能体系统,兼看MetaGPT多智能体运行机制

本系列文章跟随《MetaGPT多智能体课程》(https://github.com/datawhalechina/hugging-multi-agent),深入理解并实践多智能体系统的开发。 本文为该课程的第四章(多智能体开发)的第一篇笔记。主要记录下多智能体的运行…

[Flutter get_cli] 配置 sub_folder:false报错

flutter get_cli 配置 get_cli:sub_folder:false报错如下 Because getx_cli_learn01 depends on get_cli from unknown source "sub_folder", version solving failed. 原因是在 pubspec.yaml文件中, get_cli:sub_folder:false要和 dependencies: xxx dev_depe…

HTML---表单验证

文章目录 目录 本章目标 一.表单验证概述 二.表单选择器 属性过滤选择器 三.表单验证 表单验证的方法 总结 本章目标 掌握String对象的用法会使用表单选择器的选择页面元素会使用JQuery事件进行表单验证Ajax的概念和作用 一.表单验证概述 前端中的表单验证是在用户提交表…

vs2022 qt 关于lnk2001和2019同时报错的问题

需要像qt中添加模块,这里,缺少qtopenglwidgets模块

Discuz IIS上传附件大于28M失败报错Upload Failed.修改maxAllowedContentLength(图文教程)

下图:Discuz X3.5的系统信息,上传许可为1024MB(1GB) 论坛为局域网论坛,仅供内部同事交流使用! 使用官方最新的Discuz! X3.5 Release 20231221 UTF-8 下图:选择上传附件(提示可以最大上传100M)…

01. Nginx入门-Nginx简介

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

掘根宝典之C语言字符串输入函数(gets(),fgets(),get_s())

字符串输入前的注意事项 如果想把一个字符串读入程序,首先必须预留该字符串的空间,然后用输入函数获取该字符串 这意味着必须要为字符串分配足够的空间。 不要指望计算机在读取字符串时顺便计算它的长度,然后再分配空间(计算机不会这样做&a…

#QT(网络编程-UDP)

1.IDE:QTCreator 2.实验:UDP 不分客户端和服务端 3.记录 (1)做一个UI界面 (2)编写open按钮代码进行测试(用网络调试助手测试) (3)完善其他功能测试 4.代码 …

Git 远程仓库之Github

目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作。 你就需要将数据放到一台其他开发人员能够连接的服务器上。 目前最出名的代码托管平台是Github,我们将使用了 Github 作为远程仓库。 添加远程库 要添…

【Python】进阶学习:__len__()方法的使用介绍

【Python】进阶学习:__len__()方法的使用介绍 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订…

209.长度最小的子数组

给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 第一次写,越界了 in…

链式插补 (MICE):弥合不完整数据分析的差距

导 读 数据缺失可能会扭曲结果,降低统计功效,并且在某些情况下,导致估计有偏差,从而破坏从数据中得出的结论的可靠性。 处理缺失数据的传统方法(例如剔除或均值插补)通常会引入自己的偏差或无法充分利用数…

MySQL王国:从基础到高级的完整指南【文末送书-28】

文章目录 MySQL从入门到精通第一部分:MySQL基础第二部分:MySQL进阶第三部分:MySQL高级应用 MySQL从入门到精通(第3版)(软件开发视频大讲堂)【文末送书-28】 MySQL从入门到精通 MySQL是一种开源…

Linux中汇编语言的学习(加法、乘法、除法、左移、右移、按位与等多种命令操作实例以及ARM的 N、Z、C、V 标志位的解释)

汇编概述 汇编需要学习的大致框架如下: 汇编中的符号 1.指令;能够北嘁肷梢惶?2bit机器码,并且能够被cpui识别和执行 2.伪指令:本身不是指令,编译器可以将其替换成若干条指令 3.伪操作:不会生成指令…

技术指标的买入形态之均线形成多头排列

一、技术特征 1、在股价横盘整理过程中,其短期均线、中期均线持续纠缠在一起。 2、整理一段时间后,短期均线向上突破了中期均线,中期均线也向上突破了长期均线。 均线多头排列是股价处于上涨行情中的信号。 二、买点描述 当均线的多头排列…

tomcat nginx 动静分离

实验目的:当访问静态资源的时候,nginx自己处理 当访问动态资源的时候,转给tomcat处理 第一步 关闭防火墙 关闭防护 代理服务器操作: 用yum安装nginx tomcat (centos 3)下载 跟tomcat(centos 4&#xff0…

3分钟开通GPT-4

AI从前年12月份到现在已经伴随我们一年多了,还有很多小伙伴不会开通,其实开通很简单,环境需要自己搞定,升级的话就需要一张visa卡,办理visa卡就可以直接升级chatgptPLSU 一、虚拟卡支付 这种方式的优点是操作简单&…