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

news2024/11/13 10:24:36

在这里插入图片描述

博客主页: [小ᶻZ࿆]
本文专栏: AI视频 | Runway

文章目录

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


在这里插入图片描述


💯前言

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

💯仅图片生成视频

  • 首先,既然这是图片生成视频,文本框上方是图片上传的位置。那么我们该如何获取所需的参考图片呢?
    在这里插入图片描述
  • 先准备好提示词:白天郁郁葱葱的树林中小木屋的外观,专业电影拍摄风格的宁静环境。
    在这里插入图片描述
The look of a cabin in the middle of lush woods during the day, a serene setting for a professional movie shooting style

方法一:通过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
  1. 使用MidJourney的/imagine功能生成相关的图片,确保设置分辨率为16:9比例以获得最佳显示效果。在这里插入图片描述
  2. 选择想要放大的图像,点击“Upscale (Creative)”来提升分辨率,使其更加清晰。确认调整后,将该图像作为参考保存并下载到本地。
    在这里插入图片描述
  3. 将在MidJourney生成并下载到本地的图片上传到Runway。在Runway的操作界面中,点击“Select from Assets”或直接将图片拖拽到指定的上传区域,图片将会被添加到项目中,作为生成视频的素材进行进一步处理。
    在这里插入图片描述
  4. 点击“Generate 4s”按钮,开始生成视频并查看效果。在生成过程中,系统会显示进度条,表示视频的生成状态。在这里插入图片描述
  5. 生成的视频效果如图所示,场景中的小屋被成功渲染为动态画面,呈现出白天森林中的宁静氛围。
    在这里插入图片描述

方法二:通过Runway预览生成图片

  1. 在Runway中将准备好的提示词输入文本框,接着,点击“免费预览”按钮,右侧的工作区会自动生成相关的参考图片。
    在这里插入图片描述
  2. 在生成的图像下方,可以直接选择“用作图像输入”,这样生成的图片就会自动填充到图片区。接下来,你可以选择去掉文本提示词,保留仅图片的设置,查看生成的视频效果。通过这种方式,可以更直观地了解纯图片输入生成的视频质量与表现。
    在这里插入图片描述
  3. 最终效果如下所示。通过图像输入生成的视频保留了静态图片的视觉元素,并在此基础上生成了动态的视频效果
    在这里插入图片描述

注意点

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

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


💯图加文生成视频

  • 图加文生成视频是一种结合图像和文本提示的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
  1. 通过更换一组提示词进行测试,生成了新的图像素材。这些素材展现了由树木和藤蔓形成的隧道通向一条开放道路的场景,呈现出动漫和卡通风格的柔和光影效果。
    在这里插入图片描述
  2. 在现有图像的基础上,增加了一段描述 , 这段描述进一步细化了画面,强调了隧道穿过森林,并在尽头看到树木的场景。这段描述帮助生成视频时更好地表现出画面的动态效果。
A tunnel with a road going through it with trees at the end
  1. 随后,将图像和文本提示输入到Runway中,点击“Generate 4s”按钮生成视频,系统开始渲染视频效果。通过这种图文结合的方式,可以更精准地生成符合预期的动态内容。
    在这里插入图片描述
  2. 生成效果如下:展示了一条隧道,隧道由茂密的树木和藤蔓组成,尽头可以看到阳光洒在道路上的场景。通过Runway结合图像和文本提示,成功生成了动态视频,画面流畅且细节丰富。这种方法使生成的视频场景更加符合预期,展现出柔和的光影和自然的过渡效果。
    在这里插入图片描述

方式二:Runway

  1. 首先,点击“Free previews”按钮,系统会根据输入的图像和提示词生成预览图片。从中挑选出最符合需求的图像进行进一步调整。
    在这里插入图片描述
A tunnel with a road going through it with trees at the end
  1. 在图片预览生成后,继续在文本框中输入提示描述。然后,点击“Generate 4s”按钮,开始生成视频。系统会根据输入的图片和文本提示,将静态图片与描述相结合生成动态视频。生成过程中的进度会显示在右侧,你可以实时监控视频的生成进度并最终导出生成的内容。在这里插入图片描述

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

  • 在图像加文本的模式下,我们可以观察到,生成的视频通常会将输入的图像作为第一帧,随后通过文本来辅助生成视频的其他部分。然而,从最终效果来看,视频中的运动感并不强烈,整体场景变化较为有限。这就引出我们接下来的运动模式
  • 接下来,我们将讨论如何通过引入更强的运动元素,增强视频的动态感,使场景变化更加自然、生动。通过调整参数或结合更多的运动提示词,我们可以引导系统生成更加复杂的动作,进一步提升视频的表现力。

💯运动模式

  • “Motion”功能位于控制面板的左下角,靠近文本输入框的中间部分。在这个位置,你可以看到一个类似汽车仪表盘的按钮,通过调整运动参数,可以更好地控制视频中的动态效果,使场景表现更加丰富。你可以通过该滑块来增加或减少运动的强度,数值越高,视频中的运动感就越强。
    在这里插入图片描述
  1. “Motion”功能的作用是控制视频的运动强度,数值范围从1到10。首先,用鼠标左键点击仪表盘。你会看到一个从1到10的蓝紫色滑动条出现在仪表盘下方。滑动条的数值可以通过拖动来改变。在你滑动时,旁边的数值会实时变化,显示当前选择的运动强度。
    在这里插入图片描述
    接下来我们做一个对比

不同Motion对比

Walk through the forest and see the wooden house
  • 使用最开始的图片,加上文本提示词:穿过森林看到木屋
    在这里插入图片描述

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.")

在这里插入图片描述


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

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

相关文章

Web端云剪辑解决方案,BS架构私有化部署,安全可控

传统视频制作流程繁琐、耗时,且对专业设备和软件的高度依赖,常常让企业望而却步,美摄科技凭借其强大的技术实力和创新能力,推出了面向企业用户的Web端云剪辑解决方案,为企业提供一站式、高效、便捷的视频生产平台。 B…

计算机考研408-计算机网络

【题33】下列选项中,不属于网络体系结构所描述的内容是() A.网络的层次 B.每一层使用的协议 C.协议的内部实现细节 D.每一层必须完成的功能 解析: 本题考查的是网络体系结构相关的概念。 图1描述了网络的7层架构以及每一层所要完成…

无人机 PX4 飞控 | EKF 使用传感器汇总与添加传感器方法

无人机 PX4 飞控 | EKF 使用传感器汇总与添加传感器方法 前言飞控自带基本传感器IMU磁力计气压计静态气压位置误差校正气压计偏压补偿 高度传感器测距仪使能测距仪融合有条件 可额外配置的传感器光流外部视觉系统 新传感器确定传感器类型和接口更新硬件定义添加驱动更新EKF 前言…

MySQL:事务的ACID特性隔离级别脏读、不可重复读、幻读、Next-Key锁——场景复现

目录 1、什么是事务 2、 事务的ACID特性 2.1 事务的隔离性 3、为什么要使用事务? 4、查看支持事务的存储引擎 5、使用事务 5.1 控制事务 5.1.1 开启事务 5.1.2 关闭事务 5.2 开始一个事务,执行修改后回滚 5.3 开始一个事务,执行修…

观后感:《中国数据库前世今生》——时代变迁中的数据库崛起

最近观看了《中国数据库前世今生》纪录片,这部影片详细梳理了从1980年代至今,中国数据库技术发展的跌宕历程。作为一名程序员,这部纪录片让我不禁感慨数据库技术的飞速进步,也让我更深入地理解了数据库技术在我们日常生活中的重要…

如何借助项目管理系统实现审批流程的自动化与标准化?

在快节奏的项目申报领域中,繁琐的审批流程往往成为制约项目推进速度的瓶颈。传统的人工审批方式不仅耗时耗力,还容易因人为因素导致审批效率低下、结果不一致等问题。为此,一款能够支持在线审批流程、实现审批自动化与标准化的项目管理系统显…

Canal+RabbitMQ数据同步环境配置

Canal 是阿里巴巴开发的开源工具,主要用于解析 MySQL 的 binlog 日志,从而实现数据同步。Canal 会模拟 MySQL 从库的协议,订阅主库的 binlog,从而获取数据库的变更信息。 将 Canal 解析到的 MySQL 数据库变更消息通过 RabbitMQ 分…

算法打卡 Day34(贪心算法)-分发饼干 + 摆动序列 + 最大子序和

文章目录 理论基础Leetcode 455-分发饼干题目描述解题思路类似题目2410-运动员和训练师的最大匹配数 Leetcode 376-摆动序列题目描述解题思路 Leetcode 53-最大子序和题目描述解题思路 理论基础 贪心算法的本质是选择每一阶段的局部最优,从而达到全局最优。 贪心算…

力扣718-最长重复子数组(Java详细题解)

题目链接:718. 最长重复子数组 - 力扣(LeetCode) 前情提要: 因为本人最近都来刷dp类的题目所以该题就默认用dp方法来做。 dp五部曲。 1.确定dp数组和i下标的含义。 2.确定递推公式。 3.dp初始化。 4.确定dp的遍历顺序。 5…

【CMake】使用CMake在Visual Studio内构建多文件夹工程

一、配置准备 打开VIsual Studio,载入写好的 C M a k e l i s t s . t x t CMakelists.txt CMakelists.txt,在项目中添加以下文件: 创建一个文件夹 f u n c s funcs funcs,里面放入 f u n c . h func.h func.h、 f u n c . c p …

fmql之驱动程序编写(首次)

看了正点原子的zynq系列的Linux开发指南(pdf和视频均有),因此从最简单的程序开始。 驱动程序开发:(第四期视频) 第3.1讲 我的第一个Linux驱动-字符设备驱动框架_哔哩哔哩_bilibili 学习驱动程序编写之前&am…

【论文串烧】多媒体推荐中的模态平衡学习 | 音视频语音识别中丢失导致的模态偏差对丢失视频帧鲁棒性的影响

文章目录 一、多媒体推荐中的模态平衡学习1.1 研究背景1.2 解决问题1.3 实施方案1.4 文章摘要1.5 文章重点1.6 文章图示图 1:不同模型变体在 AmazonClothing 数据集上的初步研究图 2:CKD模型架构的说明图 3:在 Amazon-Clothing 数据集上训练过…

【Linux:共享内存】

共享内存的概念: 操作系统通过页表将共享内存的起始虚拟地址映射到当前进程的地址空间中共享内存是由需要通信的双方进程之一来创建但该资源并不属于创建它的进程,而属于操作系统 共享内存可以在系统中存在多份,供不同个数,不同进…

Qt窗口——QStatusBar

文章目录 状态栏状态栏创建状态栏显示临时消息状态栏添加子控件 状态栏 QStatusBar状态栏是应用程序中输出简要信息的区域,例如画图板下面的区域 我们也可以给程序设置状态栏,表示一些状态。 状态栏创建 使用Qt Creator创建项目的时候,如果…

实现一种可插拔的参数校验

1、概述 仿照mybatis的二级缓存的实现方式,使用“策略模式配置” 的方式实现一个可动态插拔的 参数校验,便于后期扩展。 实现方式也很简单,首先定义一个校验接口,并提供一个校验方法;每种参数校验都是实现 了该校验接口…

前端vue-实现富文本组件

1.使用wangeditor富文本编辑器 工具网站&#xff1a;https://www.wangeditor.com/v4/ 下载安装命令&#xff1a;npm i wangeditor --save 成品如下图&#xff1a; 组件实现代码 <template><div><!-- 富文本编辑器 --><div id"wangeditor">…

Recbole安装指南:步骤详解与常见问题解决方案

1.两种方式&#xff1a; 从Conda安装 如果你还没有安装Conda&#xff0c;可以安装Miniconda或完整的Anaconda。 如果你在中国大陆&#xff0c;我们推荐你使用清华镜像安装Conda。 当你完成Conda的安装后&#xff0c;你可以将RecBole安装在python 3.7的Conda环境中&#xff0…

数据结构之树(下),你真的懂吗?

数据结构入门学习&#xff08;全是干货&#xff09;——树&#xff08;下&#xff09; 1 堆 (Heap) 1.1 什么是堆 堆 (Heap) 是一种特殊的完全二叉树&#xff0c;分为最大堆和最小堆。 最大堆&#xff1a;每个节点的值都大于或等于其子节点的值&#xff0c;根节点是整个堆的…

YOLOv9改进策略【注意力机制篇】| MCAttention 多尺度交叉轴注意力

一、本文介绍 本文记录的是基于MCA注意力模块的YOLOv9目标检测改进方法研究。普通的轴向注意力难以实现长距离交互&#xff0c;不利于捕获分割任务中所需的空间结构或形状&#xff0c;而MCA注意力模块通过构建了两个并行轴向注意力之间的交互&#xff0c;更有效地利用多尺度特…

2.4 卷积2

2.4.2 复正弦波与整体方案 在2.3节中&#xff0c;我们提出了关于复正弦输入的频域输出及其意义的两个问题。为了研究这些问题&#xff0c;我们让一个具有真实脉冲响应 h [ n ] h[n] h[n]&#xff08;即 h Q [ n ] 0 h_Q[n] 0 hQ​[n]0&#xff09;的LTI系统通过输入复正弦…