【AI视频】Runway:Gen-2 图文生视频与运动模式详解

文章目录
- 💯前言
- 💯仅图片生成视频
- 方法一:通过Midjourney生成图片
- 方法二:通过Runway预览生成图片
- 注意点
- 💯图加文生成视频
- 方式一:Midjourney
- 方式二:Runway
- 💯运动模式
- 不同Motion对比
- Motion为1
- Motion为5
- Motion为10
- 💯小结

💯前言
- 在上一篇文章【AI视频】Runway Gen-2与Gen-3:仅文本生成视频详解中,我们深入探讨了Gen-2和Gen-3的纯文本生成视频技术及其应用原理。通过该技术,用户能够仅凭文字描述生成动态视频,这一创新大幅提升了视频创作的效率与可能性。接下来,本文将进一步解析Runway的图文生成视频模式和运动模式,探讨如何结合图像和文字更高效地生成复杂的视频内容,并重点分析运动模式在动态场景中的表现与应用场景,助力创作者开拓更多元的创作空间。
Runway官方文档
💯仅图片生成视频
- 首先,既然这是图片生成视频,文本框上方是图片上传的位置。那么我们该如何获取所需的参考图片呢?

- 先准备好提示词:白天郁郁葱葱的树林中小木屋的外观,专业电影拍摄风格的宁静环境。

方法一:通过Midjourney生成图片
提示词如下:
The look of a cabin in the middle of lush woods during the day, a serene setting for a professional movie shooting style --ar 16:9
- 使用MidJourney的/imagine功能生成相关的图片,确保设置分辨率为16:9比例以获得最佳显示效果。

- 选择想要放大的图像,点击“Upscale (Creative)”来提升分辨率,使其更加清晰。确认调整后,将该图像作为参考保存并下载到本地。

- 将在MidJourney生成并下载到本地的图片上传到Runway。在Runway的操作界面中,点击“Select from Assets”或直接将图片拖拽到指定的上传区域,图片将会被添加到项目中,作为生成视频的素材进行进一步处理。

- 点击“Generate 4s”按钮,开始生成视频并查看效果。在生成过程中,系统会显示进度条,表示视频的生成状态。

- 生成的视频效果如图所示,场景中的小屋被成功渲染为动态画面,呈现出白天森林中的宁静氛围。

方法二:通过Runway预览生成图片
- 在Runway中将准备好的提示词输入文本框,接着,点击“免费预览”按钮,右侧的工作区会自动生成相关的参考图片。

- 在生成的图像下方,可以直接选择“用作图像输入”,这样生成的图片就会自动填充到图片区。接下来,你可以选择去掉文本提示词,保留仅图片的设置,查看生成的视频效果。通过这种方式,可以更直观地了解纯图片输入生成的视频质量与表现。

- 最终效果如下所示。通过图像输入生成的视频保留了静态图片的视觉元素,并在此基础上生成了动态的视频效果

注意点
-
我们的图像生成无法通过其他文本控制视频的内容。因此,Runway实际上是根据这张图像进行场景扩展的过程,具有一定的随机性,类似于抽帧的方式。

-
在仅图片生成的视频的起始画面将以输入的图像作为起点。所以在生成的视频中,第一帧是我们刚刚输入的这张图像。

💯图加文生成视频
-
图加文生成视频是一种结合图像和文本提示的AI生成方式,通过输入一张静态图片和相应的描述性文字,系统能够自动生成动态视频。Runway作为目前领先的视频生成工具之一,支持用户在图像基础上添加文本提示,结合视觉与语言信息,使得生成的视频既能保持场景的细节,又能展现出自然的动态效果。

-
接下来,我们将分别通过Midjourney和Runway两种方式来进行预览与生成视频的测试。
方式一:Midjourney
A tunnel made of trees and vines leading to an open road, in the style of anime, in the style of cartoon, soft lighting, video clip, screenshot from the movie "Fully Detailed". --ar 16:9
- 通过更换一组提示词进行测试,生成了新的图像素材。这些素材展现了由树木和藤蔓形成的隧道通向一条开放道路的场景,呈现出动漫和卡通风格的柔和光影效果。

- 在现有图像的基础上,增加了一段描述 , 这段描述进一步细化了画面,强调了隧道穿过森林,并在尽头看到树木的场景。这段描述帮助生成视频时更好地表现出画面的动态效果。
A tunnel with a road going through it with trees at the end
- 随后,将图像和文本提示输入到Runway中,点击“Generate 4s”按钮生成视频,系统开始渲染视频效果。通过这种图文结合的方式,可以更精准地生成符合预期的动态内容。

- 生成效果如下:展示了一条隧道,隧道由茂密的树木和藤蔓组成,尽头可以看到阳光洒在道路上的场景。通过Runway结合图像和文本提示,成功生成了动态视频,画面流畅且细节丰富。这种方法使生成的视频场景更加符合预期,展现出柔和的光影和自然的过渡效果。

方式二:Runway
- 首先,点击“Free previews”按钮,系统会根据输入的图像和提示词生成预览图片。从中挑选出最符合需求的图像进行进一步调整。

A tunnel with a road going through it with trees at the end
-
在图片预览生成后,继续在文本框中输入提示描述。然后,点击“Generate 4s”按钮,开始生成视频。系统会根据输入的图片和文本提示,将静态图片与描述相结合生成动态视频。生成过程中的进度会显示在右侧,你可以实时监控视频的生成进度并最终导出生成的内容。

-
效果如下:生成的视频展示了一条穿过绿色森林的公路,隧道尽头映衬着树木的背景。通过文本和图片结合,Runway成功渲染出场景的动态效果。画面中的细节得以保留,并且整体色调自然和谐。这种生成方式不仅让图像变得生动,还能使场景具有一定的叙事性,增强视频的表现力。

- 在图像加文本的模式下,我们可以观察到,生成的视频通常会将输入的图像作为第一帧,随后通过文本来辅助生成视频的其他部分。然而,从最终效果来看,视频中的运动感并不强烈,整体场景变化较为有限。这就引出我们接下来的运动模式。
- 接下来,我们将讨论如何通过引入更强的运动元素,增强视频的动态感,使场景变化更加自然、生动。通过调整参数或结合更多的运动提示词,我们可以引导系统生成更加复杂的动作,进一步提升视频的表现力。
💯运动模式
- “Motion”功能位于控制面板的左下角,靠近文本输入框的中间部分。在这个位置,你可以看到一个类似汽车仪表盘的按钮,通过调整运动参数,可以更好地控制视频中的动态效果,使场景表现更加丰富。你可以通过该滑块来增加或减少运动的强度,数值越高,视频中的运动感就越强。

- “Motion”功能的作用是控制视频的运动强度,数值范围从1到10。首先,用鼠标左键点击仪表盘。你会看到一个从1到10的蓝紫色滑动条出现在仪表盘下方。滑动条的数值可以通过拖动来改变。在你滑动时,旁边的数值会实时变化,显示当前选择的运动强度。

接下来我们做一个对比
不同Motion对比
Walk through the forest and see a wooden house, then keep walking forward.
- 沿着穿过森林的狭窄小路走,可以看到远处的一座木屋。沿着小路走,它会带你深入树林,让你更接近房子。

Motion为1
-
调整Motion值为1,代表视频中的运动效果非常轻微。
在这个设置中,系统将生成一个以最小运动效果为主的视频。通过选择Motion值为1,视频的场景会保持相对静止的状态,动态感较弱,但仍然能够通过轻微的动作捕捉到场景中的细节变化。适用于需要突出静态场景或较少动态效果的画面。
-
效果如下:通过Motion值为1的设置,生成的视频基本保留了原始图像的静态效果,运动感非常弱,场景中的元素几乎没有移动。这种设置适合想要在视频中展现出更多静态细节的情况。

Motion为5
-
调整Motion值为5,也是视频默认的Motion值,代表视频中的运动效果处于中等水平。
当Motion值设置为5时,视频中的运动效果明显增强。相比Motion值为1的轻微运动,此设置让场景中的动态感更加流畅,场景元素的移动更加显著,模拟出走过森林,看到木屋的过程。

-
效果如下:通过Motion值为5的设置,生成的视频展现出适度的运动效果,视频中的树木和光影随着视角的变化产生一定的动态感,使整个场景更具活力。可以看到,随着Motion值的增加,场景的动作表现更加自然,能够带给观众更丰富的视觉体验。

Motion为10
-
调整Motion值为10,表示视频中的运动效果达到最大强度。
当Motion值设置为10时,生成的视频会有非常强烈的运动感。场景中的元素将发生显著的动态变化,模拟出快速穿越森林的效果,增加了视频的流动性和紧凑感。

-
效果如下:在Motion值为10的设置下,生成的视频显示了极强的动态效果。场景中的森林和木屋看起来像是在快速运动中被捕捉到的,动作感十分明显,整个画面变得更具活力和紧张感。此设置适用于需要表现剧烈场景变换或高动态的内容。

💯小结
-

Runway的图加文生成视频模式和运动模式为创作者提供了极大的创作灵活性。通过结合静态图片和文本提示,用户能够快速生成高质量的动态视频。同时,运动模式(Motion)允许根据不同的需求调整视频的动态效果,从轻微的细节移动到剧烈的场景变化都有所覆盖。这种工具不仅简化了复杂视频的制作流程,还大幅提升了创作效率,极大地拓宽了视频内容创作的可能性,为创作者提供了前所未有的便利和创意空间。 -
随着AI视频技术的快速发展,如Runway的图加文生成视频和运动模式正逐渐改变创作的方式,为未来的视频内容制作带来无限可能。AI不仅简化了复杂的创作流程,还打破了传统制作的技术壁垒,让任何人都能轻松生成专业级别的动态内容。未来,随着技术的不断迭代,AI视频生成技术将更加智能化和个性化,创作者可以通过简单的提示词和图像,生成更复杂、更具创意的视频场景。结合深度学习和大数据,AI将进一步理解和预见创作需求,推动视频创作从被动工具向主动创意助手的转变。这种技术革新,不仅为创作者开拓了前所未有的创作空间,还将重新定义影视、广告、教育等多个行业的内容生产模式,使得创意真正成为无边界的可能。
import torch,torch.nn as nn,torch.optim as optim,cv2,numpy as np;class Generator(nn.Module):def __init__(self,z_dim,img_dim):super(Generator,self).__init__();self.gen=nn.Sequential(nn.Linear(z_dim,256),nn.LeakyReLU(0.2),nn.Linear(256,512),nn.LeakyReLU(0.2),nn.Linear(512,1024),nn.LeakyReLU(0.2),nn.Linear(1024,img_dim),nn.Tanh());def forward(self,x):return self.gen(x);class Discriminator(nn.Module):def __init__(self,img_dim):super(Discriminator,self).__init__();self.disc=nn.Sequential(nn.Linear(img_dim,1024),nn.LeakyReLU(0.2),nn.Linear(1024,512),nn.LeakyReLU(0.2),nn.Linear(512,256),nn.LeakyReLU(0.2),nn.Linear(256,1),nn.Sigmoid());def forward(self,x):return self.disc(x);z_dim,img_dim,lr,batch_size,epochs=100,64*64*3,0.0002,32,50000;generator=Generator(z_dim,img_dim);discriminator=Discriminator(img_dim);opt_gen,opt_disc=optim.Adam(generator.parameters(),lr=lr),optim.Adam(discriminator.parameters(),lr=lr);criterion=nn.BCELoss();def generate_noise(batch_size,z_dim):return torch.randn(batch_size,z_dim);def generate_video_frames(generator,z_dim,num_frames=30):frames=[];for _ in range(num_frames):noise=generate_noise(1,z_dim);frame=generator(noise).detach().numpy().reshape(64,64,3);frames.append((frame*255).astype(np.uint8));return frames;def save_video(frames,filename="output_video.mp4",fps=10):height,width,_=frames[0].shape;video=cv2.VideoWriter(filename,cv2.VideoWriter_fourcc(*'mp4v'),fps,(width,height));for frame in frames:video.write(cv2.cvtColor(frame,cv2.COLOR_RGB2BGR));video.release();for epoch in range(epochs):real_labels,fake_labels=torch.ones(batch_size,1),torch.zeros(batch_size,1);real_data=torch.randn(batch_size,img_dim);noise=generate_noise(batch_size,z_dim);fake_data=generator(noise);disc_real,disc_fake=discriminator(real_data).reshape(-1),discriminator(fake_data).reshape(-1);loss_disc_real,loss_disc_fake=criterion(disc_real,real_labels),criterion(disc_fake,fake_labels);loss_disc=(loss_disc_real+loss_disc_fake)/2;opt_disc.zero_grad();loss_disc.backward();opt_disc.step();output=discriminator(fake_data).reshape(-1);loss_gen=criterion(output,real_labels);opt_gen.zero_grad();loss_gen.backward();opt_gen.step();if epoch%100==0:print(f"Epoch [{epoch}/{epochs}] | Loss D: {loss_disc.item():.4f}, Loss G: {loss_gen.item():.4f}");if epoch%1000==0:frames=generate_video_frames(generator,z_dim);save_video(frames,f"generated_video_epoch_{epoch}.mp4");print("Training complete. Video generation finished.")

相关文章:
【AI视频】Runway:Gen-2 图文生视频与运动模式详解
博客主页: [小ᶻZ࿆] 本文专栏: AI视频 | Runway 文章目录 💯前言💯仅图片生成视频方法一:通过Midjourney生成图片方法二:通过Runway预览生成图片注意点 💯图加文生成视频方式一:Midjourney…...
GPIO 理解(基本功能、模拟案例)
GPIO GPIO(General Purpose Input / Output)是通用输入 / 输出端口,简单理解就是它是一个端口,这个端口可以输入或者输出 在一般情况下,GPIO 不能同时输入或输出,即一个端口要么作为输入端口,要…...
LeetCode_sql_day30(1264.页面推荐)
描述 1264.页面推荐 朋友关系列表: Friendship ------------------------ | Column Name | Type | ------------------------ | user1_id | int | | user2_id | int | ------------------------ (user1_id, user2_id) 是这张表具有唯一值的…...
mysql通过binlog做数据恢复
1 介绍 binlog(二进制日志)在 MySQL 中具有非常重要的作用。它记录了数据库的所有更改操作,主要用于数据恢复、复制和审计等方面。以下是 binlog 的主要作用: 1.数据恢复 binlog 可以用于恢复数据库中的数据。当数据库发生故障时…...
macos清理垃圾桶时提示 “操作无法完成,因为该项目正在使用中” 解决方法 , 强制清理mac废纸篓 方法
在macos中,删除文件后, 在清理垃圾桶时提示 “操作无法完成,因为该项目正在使用中” 出现这个提示,在大多数的情况下是因为数据问题导致,需要通过磁盘管理工具进行修复,修复后才可彻底的清理垃圾桶。 另外…...
vue3 axios ant-design-vue cdn的方式使用
1、vue3 快速上手 | Vue.js <script src"https://unpkg.com/vue3/dist/vue.global.js"></script><div id"app">{{ message }}</div><script>const { createApp, ref } VuecreateApp({setup() {const message ref(Hello …...
neo4j导入csv数据
neo4j数据可视化实践 手动输入数据 - 官方democsv数据导入准备数据数据处理导入步骤① 导入疾病表格② 导入药物表格③导入疾病-药物关系表格 爬虫的csv文件 手动输入数据 - 官方demo 点击之后,按照左边10张图中的代码,复制粘贴熟悉语法 效果如下 csv数据…...
YOLOV8实现小目标检测
YOLOV8小目标检测 前言:: yolo版出现很多,基本大同小异 但是这些差异让我们考虑在实验中使用哪个版本会比较好! 在对小目标检测的过程中,yolov7相比yolov8性能更加好。 如果我们还是想使用yolov8,也是可以实…...
解决 Prettier ESLint 错误
解决 Prettier ESLint 错误 在 Vue.js 项目中使用 ESLint 和 Prettier 时,你可能会遇到类似以下的错误: frontend\src\views\dashboard\MobileConfigPanel.vue1:25 error Delete ␍ …...
百度网盘企业版数据快速上云,数据流转平台 CloudFlow 加速大模型训练迭代
1 项目从何时开始,又是何时结束 一个项目的周期应该如何计算,将计算开始运行作为起点,计算结束运行作为终点? 大模型训练场景中,从 TB/PB 级数据完成收集准备上云,到这些数据被提交至任务开始运行&#x…...
地面站通过SSH连接无人机
地面站通过SSH连接无人机 1.启动SSH服务2.远程连接到无人机处理器 一般无人机机载处理器都安装了ssh服务器 1.启动SSH服务 启动SSH sudo systemctl start ssh设置为开机自启动 sudo systemctl enable ssh检查ssh服务状态 sudo systemctl status ssh查询无人机的ip ifconf…...
【Pytorch】大语言模型中的CrossEntropyLoss
文章目录 前言什么是CrossEntropyLoss语言模型中的CrossEntropyLoss计算loss的前期准备CrossEntropyLoss的输入CrossEntropyLoss的输出 额外说明 前言 在大语言模型时代,我们常常使用交叉熵损失函数来计算loss,因此,理解该loss的计算流程有助…...
安全热点问题
安全热点问题 1.DDOS2.补丁管理3.堡垒机管理4.加密机管理 1.DDOS 分布式拒绝服务攻击,是指黑客通过控制由多个肉鸡或服务器组成的僵尸网络,向目标发送大量看似合法的请求,从而占用大量网络资源使网络瘫痪,阻止用户对网络资源的正…...
C++——用选择法对10个数值进行排序。
没注释的源代码 #include <iostream> using namespace std; int main() { int i,j,min,a[11],temp; cout<<"请输入数组a的十个值:"<<endl; for(i1;i<10;i) { cin>>a[i]; } for(i1;i<9;…...
CSP-CCF★★★201909-2小明种苹果(续)★★★
一、问题描述 二、解答 关键:判断是否发生苹果掉落,使用flag[]数组来标记,1为掉落,0为没有掉落,这样也是为了后续比较连续三棵树是否掉落 误区:用最后一次正数(即最后一次统计苹果个数&#x…...
硬件工程师笔试面试——变压器
目录 9、变压器 9.1 基础 变压器原理图 变压器实物图 9.1.1 概念 9.1.2 变压器组成结构 9.1.3 变压器原理 9.1.4 变压器的类型 9.1.5 应用领域 9.2 相关问题 9.2.1 变压器的工作原理是什么? 9.2.2 如何选择合适的变压器类型? 9.2.3 变压器在实际应用中,如何进行…...
Visual Studio Code( VS Code)倍速提高编程工作效率的免费的源代码编辑器
耕耘于编程二十多年,后端、前端、操作系统、数据库、脚本都做过,各种各样的编程工具,IDE开发环境都用过,但是让我感觉比较好用、容易上手、能够提高工作效率的开发工具还是VS Code,下面我就简单的介绍一下这个广泛使用…...
华为SMU02B1智能通信电源监控单元模块简介
华为SMU02B1是一款智能通信电源监控单元模块,专为5G嵌入式机框设计,它在通信电源管理领域扮演着重要角色。以下是对该产品的详细介绍: 一、产品概述 主要功能:华为SMU02B1能够监控和管理通信电源系统,提供站点监控功能…...
【刷题日记】15. 三数之和
15. 三数之和 两数之和可以用巧思也可以用map 三数之和会更加复杂一点,且这道题还需要考虑避免重复答案! 思路: 特判:检如果nums 为 null 或长度小于 3直接返回空数组。排序:使用 sort对数组进行升序排序。就变成了…...
低级编程语言和高级编程语言
一.区分低级编程语言和高级编程语言的方法 1.低级编程语言 低级编程语言,并不是简单的编程语言,而是写起来很费事的编程语言,如所有编程语言的"祖宗":汇编语言,写起来极其麻烦,说不定一个 int a1; 它就得写好几行,甚至十几行 这样麻烦的编程语言为什么还没消失那,因…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
FFmpeg:Windows系统小白安装及其使用
一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】,注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录(即exe所在文件夹)加入系统变量…...
