论文研读:Text2Video-Zero 无需微调,仅改动<文生图模型>推理函数实现文生视频(Arxiv 2023-03-23)
论文名:Text2Video-Zero: Text-to-Image Diffusion Models are Zero-Shot Video Generators
1. 摘要
1.1 方法总结
-
通过潜空间插值, 实现动作连续帧。
-
以第一帧为锚定,替换原模型的self-attention,改为cross-attention
实现 保证图片整体场景不变的同时,生成具备运动信息的连续帧
1.2 光流(optical flow) 对齐
这里是论文提到的warping operation (源代码为warp_latents_independently函数), 是其方法核心部分
文中代码基于光流的空间变换,常用于背景对齐、运动补偿。
光流坐标变换的作用是将 latent features 映射到新的空间位置,使得目标特征在连续帧中保持一致
- 背景特征:光流仅针对背景计算,背景(或不重要区域)的特征被对齐,减少运动带来的不连续性。
- 转变前: 背景和前景特征未对齐,可能导致运动模糊或抖动。
- 变化后: 背景平滑且稳定,对应特征对齐到相应的几何位置,输出更加自然。
代码解析:
-
输入视频帧向量shape为 (batch_size, frames, channels, H, W) ,
-
计算得到光流矫正向量(reference_flow),形状为 (batch_size, 2,H, W)
其中的2分别代表x方向和y方向(正值向右, 和向下),即每一个像素点有1个偏移量(dx, dy)
- 即warped后的特征是经过光流变换后的潜向量
对于每个像素(x,y), 矫正后的值为new_coords=(x+dx,y+dy)
- 归一化, 并插值grid_sample (mode='nearest‘),得到与latent shape相同的潜空间坐标
2.方法
2.1 将运动信息注入潜空间向量
(Motion Dynamics in Latent Codes)
- 随机采样第一帧的潜向量, x T 1 ∼ N ( 0 , I ) x^1_T \sim N(0,I) xT1∼N(0,I)
- 用一个预训练的SD对 x T 1 x^1_T xT1 进行DDIM去噪, ( δ t \delta t δt steps)
- 定义一个方向向量delta, 这个向量根据图像全局即相机运动原理(从左上到右下),这里默认为一个单位 (1,1)
- 针对m个帧,在方向向量delta上,增加不同的强度, 比如第k个帧:$\delta^k = \lambda (k-1)\delta $
- 通过网格函数(warping operation)将方向向量从 δ \delta δ 转换到潜空间, 得到一个具备<delta方向> 插值效果的帧序列
- 对帧序列进行DDPM加噪( δ t \delta t δt steps)
上述过程,得到一个具备连续方向插值的<帧序列>潜向量
2.2 改变self-attention计算以稳定帧变化
(Reprogramming Cross-Frame Attention)
潜向量注入搞定动作序列后,这一步改动了SD-Unet中attention的计算方式,
具体是将其中的self-attention计算改为cross-attention计算, 原self-attn为:
$ Self-Attn(Q,K,V) = Softmax (QK^T / c) V $
这里假设有m个特征,那么QKV计算就有m次,现在把m次当作m帧,
Q用第i帧, 即 Q^i; K和V都搞定为第一帧(锚定),那么m帧的attention计算为:
C r o s s − F r a m e − A t t n ( Q i , K 1 : m , V 1 : m ) = S o f t m a x ( Q i ) ( K 1 ) T / c ) V 1 Cross-Frame-Attn(Q^i, K^{1:m}, V^{1:m}) = Softmax(Q^i)(K^1)^T / c) V^1 Cross−Frame−Attn(Qi,K1:m,V1:m)=Softmax(Qi)(K1)T/c)V1
这里原文解释为可以保持图像从第一帧开始的《物体》和《背景》结构的一致性
2.3 背景稳定(非必要)
(Background smoothing —Optional)
这一步通过目标检测模型,将物体和背景分离(二值分类标注),将标注的mask图像用网格函数转换到潜空间,得到M
将M和运动潜向量进行一个同或计算(值相同时结果为真),得到一个背景特征更一致的潜向量序列: x ˉ \bar{x} xˉ,
以第k帧为例:
x ˉ t k \bar{x}^k_t xˉtk = M k ⨀ x k t M^k \bigodot x_{k_t} Mk⨀xkt + ( 1 − M k ) ⨀ ( α x ^ t k ) (1-M^k) \bigodot (\alpha \hat{x}^k_t) (1−Mk)⨀(αx^tk) + ( 1 − α ) x t k (1-\alpha)x^k_t (1−α)xtk
-
x ^ \hat{x} x^是背景图像进行空间转换后的向量(warped latent code).
-
α = 0.6 \alpha = 0.6 α=0.6 是调参的经验性设置
整体方法如图:
3. 附带方法
3.1 与带条件的微调方法结合 (Conditional and Specialized Text-to-Video)
这里介绍可以control-net 及 dreambooth 结合,实现带条件控制的编辑。
- control-net效果(pose control):
- dreambooth效果(edge control):
3.2 与图像编辑模型结合 (Video Instruct-Pix2Pix)
存在Prompt2Prompt 和 Intstruct-Pix2Pix这类在SD基础上进行图像编辑的模型,
上述模型强化了《改变文本编辑图像》的功能,但这类方法是预训练的,数据和模型消耗大。
这里同样对上述预训练模型进行self-attn 到 cross-attn的转换操作,可以实现视频的风格编辑,效果如图:
4.实验
4.1 参数设置
- 模型版本: SD1.5
- 视频格式:8 frames (这个可以增加,但每一帧都是靠第一帧计算), 512x512
4.2 消融实验
测试提出的两个改进方法效果:
- 潜空间加光流动作
- self-attn改为cross-frame-atten
4.3 整体效果
这个方法有3个作用
- 通过一段文字,生成对应动画:
- 通过描边或pose支架,再结合文本生成相关动画
- 改变动画的风格
5. 论文摘录
(1) we first enrich the latent codes of gen
erated frames with motion information to keep the global
scene and the background time consistent; (2) we then use cross-frame attention of each frame on the first frame to
preserve the context, appearance, and identity of the fore
ground object throughout the entire sequence.Two novel post-hoc techniques to enforce temporally
consistent generation, via encoding motion dynamics
in the latent codes, and reprogramming each frames
self-attention using a new cross-frame attention.By using cross frame attention, the ap
pearance and structure of the objects and background as
well as identities are carried over from the first frame to
subsequent frames, which significantly increases the tem
poral consistency of the generated frames (see Fig. 10 and
the appendix, Figures 16, 20, 21).
6. Ref:
- https://github.com/Picsart-AI-Research/Text2Video-Zero
相关文章:

论文研读:Text2Video-Zero 无需微调,仅改动<文生图模型>推理函数实现文生视频(Arxiv 2023-03-23)
论文名:Text2Video-Zero: Text-to-Image Diffusion Models are Zero-Shot Video Generators 1. 摘要 1.1 方法总结 通过潜空间插值, 实现动作连续帧。 以第一帧为锚定,替换原模型的self-attention,改为cross-attention 实现 保证图片整体场…...
服务端错误的处理和web安全检测
文章目录 I 服务端错误的处理业务返回码处理前端处理业务返回码nginx处理http状态码II web安全检测区分服务器类型主机扫漏III 使用 micro_httpd 搭建一个PHP站点步骤下载micro_httpd 并安装它配置micro_httpd 来服务PHP文件I 服务端错误的处理 服务端发生错误时,返回给前端的…...

鸿蒙TCPSocket通信模拟智能家居模拟案例
效果图 一、智能家居热潮下的鸿蒙契机 在当下科技飞速发展的时代,智能家居已如浪潮般席卷而来,深刻地改变着我们的生活方式。从能依据环境光线自动调节亮度的智能灯具,到可远程操控、精准控温的智能空调,再到实时监测健康数据的智…...

SQL-leetcode-197. 上升的温度
197. 上升的温度 表: Weather ---------------------- | Column Name | Type | ---------------------- | id | int | | recordDate | date | | temperature | int | ---------------------- id 是该表具有唯一值的列。 没有具有相同 recordDate 的不同行。 该表包…...
C++系列关键字static
文章目录 1.静态变量2.静态成员变量 1.静态变量 在C的,静态变量是一个非常有用的特性,它在程序执行期间只初始化一次,并在程序的整个执行期间都保持其值。 1.局部静态变量。定义在函数中,只初始化一次,不像普通的局部…...

使用Fn Connect之后,如何访问到其他程序页面?原来一直都可以!
前言 昨天小白讲过在飞牛上登录Fn Connect,就可以实现远程访问家里的NAS。 接着就有小伙伴咨询:如何远程访问到家里其他需要使用不同端口号才能访问到的软件,比如Jellyfin、Emby等。 这个小白在写文章的时候确实没有考虑到,因为…...
探索Composable Architecture:小众但高效的现代框架技术
近年来,随着应用规模和复杂性的不断提升,对开发效率和可维护性的要求也水涨船高。特别是在领域驱动设计 (DDD) 和反应式编程 (Reactive Programming) 的趋势影响下,一些小众但极具潜力的框架应运而生。本篇博客将深入探讨一种日益受到关注但尚…...
改投论文时如何重构
摘要: 不同期刊和会议对于论文的风格、页数限制等方面有一些差别, 论文在某个地方被拒, 改投别处时需要进行重构. 本贴描述重构的基本方案. 你的衣柜乱糟糟的, 如何清理呢? 方案 A. 把不喜欢的衣服一件件丢掉.方案 B. 把衣服全部丢出来, 然后再把喜欢的衣服一件件放进去. 对…...

P8打卡——YOLOv5-C3模块实现天气识别
🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 1.检查GPU import torch import torch.nn as nn import torchvision.transforms as transforms import torchvision from torchvision import transforms, dat…...

基于微信小程序的校园点餐平台的设计与实现(源码+SQL+LW+部署讲解)
文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…...
PyTorch快速入门教程【小土堆】之完整模型训练套路
视频地址完整的模型训练套路(一)_哔哩哔哩_bilibili import torch import torchvision from model import * from torch import nn from torch.utils.data import DataLoader# 准备数据集 train_data torchvision.datasets.CIFAR10(root"CIFAR10&…...

【AIGC】 ChatGPT实战教程:如何高效撰写学术论文引言
💥 欢迎来到我的博客!很高兴能在这里与您相遇! 首页:GPT-千鑫 – 热爱AI、热爱Python的天选打工人,活到老学到老!!!导航 - 人工智能系列:包含 OpenAI API Key教程, 50个…...

TTL 传输中过期问题定位
问题: 工作环境中有一个acap的环境,ac的wan口ip是192.168.186.195/24,ac上lan上有vlan205,其ip子接口地址192.168.205.1/24,ac采用非nat模式,而是路由模式,在上级路由器上有192.168.205.0/24指向…...
非docker方式部署openwebui过程记录
之前一直用docker方式部署openwebui,结果这东西三天两头升级,我这一升级拉取docker镜像硬盘空间嗖嗖的占用,受不了,今天改成了直接部署,以下是部署过程记录。 一、停止及删除没用的docker镜像占用的硬盘空间 docker s…...
大模型的prompt的应用二
下面总结一些在工作中比较实用的prompt应用。还可以到以下网站参考更多的prompt AI Prompts - WayToAGI 举个例子,让大模型写一份周报 # 角色:智能周报编写助手 ## 背景: 需要根据产品经理提供的简要周报框架,补充完整的周报内容。 ## 注意事项: 言简意赅,重点突…...
ubuntu 22.04安装ollama
1. 顺利的情况 按照官网的提示,执行下面的命令: curl -fsSL https://ollama.com/install.sh | sh如果网络畅通,github访问也没有问题,那就等待安装完成就行 2. 不顺利的情况 由于众所周知的情况,国内网络访问githu…...

从企业级 RAG 到 AI Assistant,阿里云 Elasticsearch AI 搜索技术实践
在过去一年中,基座大模型技术的快速迭代推动了 AI 搜索的演进,主要体现在以下几个方面: 1.搜索技术链路重构 基于大模型的全面重构正在重塑 AI 搜索的技术链路。从数据采集、文档解析、向量检索到查询分析、意图识别、排序模型和知识图谱等…...

Redis--高可用(主从复制、哨兵模式、分片集群)
高可用(主从复制、哨兵模式、分片集群) 高可用性Redis如何实现高可用架构?主从复制原理1. 全量同步2. 命令传播3. 增量同步 Redis Sentinel(哨兵模式)为什么要有哨兵模式?哨兵机制是如何工作的?…...

框架(Mybatis配置日志)
mybatis配置日志输出 先导入日志依赖 <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency> 编写log4j.properties配置文件 # Root logger option log4j.rootLogge…...
人工智能-Python上下文管理器-with
概念 Python提供了 with 语句的这种写法,既简单又安全,并且 with 语句执行完成以后自动调用关闭文件操作,即使出现异常也会自动调用关闭文件操作;其效果等价于try-except-finally with 拥有以下两个魔术方法 __enter__() 上文管理…...

MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...

莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...
关于uniapp展示PDF的解决方案
在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项: 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库: npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...