I2VGen-XL模型构建指南

news/2024/9/17 3:08:56/ 标签: 视频生成, 算力, 人工智能, 图生视频, I2VGen-XL, VGen, AIGC

一、介绍

VGen可以根据输入的文本、图像、指定的运动、指定的主体,甚至人类提供的反馈信号生成高质量的视频。它还提供了各类常用的视频生成模型工具,例如可视化、采样、训练、推理、使用图像和视频的联合训练,加速等各类工具和技术。

"VGen" 模型,特别是阿里云推出的 VGen-XL>I2VGen-XL,是一个基于扩散模型的视频生成系统。该系统提供了强大的代码库和视频生成模型,旨在通过输入文本、图像、所需运动、主题甚至反馈信号来生成高质量的视频。

VGen-XL>I2VGen-XL采用级联扩散模型进行高质量图像到视频的合成。该方法通过解耦语义准确性和清晰度等因素,确保生成视频的卓越性能。

二、部署流程

基础环境:

系统:Ubuntu系统,

显卡:3090,

显存:24G,cuda11.3

磁盘大于100G(本人搭建环境所用系统盘为50G,数据盘50G)

1. 查看系统是否有Miniconda3的虚拟环境

conda -V

如果输入命令没有显示Conda版本号,则需要安装。

屏幕截图

2. 更新系统命令

输入下列命令将系统更新及系统下载

apt-get update && apt-get install ffmpeg libsm6 libxext6  -y

微信截图_20240820152809.png

3. 下载模型

输入下列命令对VGen模型进行下载同时进入项目中

git clone https://github.com/ali-vilab/VGen.git
cd VGen

微信截图_20240820153939.png

4. 创建虚拟Python环境

  • 创建一个名为"vgen"的虚拟镜像,python版本为3.10
    conda create -n vgen python=3.10
    

微信截图_20240820154030.png

  • 激活“vgen"虚拟环境

conda activate vgen

微信截图_20240820154048.png

5. 安装pytorch

  • 输入下列命令对pytorch进行安装
pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 torchaudio==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu113

微信截图_20240820154856.png

(时间会很长需要耐心等待)

6. 下载模型依赖包

进入模型文件并下载模型依赖包

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

系统下载过程中,切勿有任何操作,直到出现“Successfully installed......”开头则安装结束并且成功。

7. 添加模型

使用并运行VGen-XL>I2VGen-XL模型

  • 首先进入下载此模型(本人下载到数据盘新建model文件夹放入)
git lfs install
git clone https://huggingface.co/damo-vilab/i2vgen-xl

如果上述命令不可用,则使用:(推荐)

!pip install modelscope
from modelscope.hub.snapshot_download import snapshot_download
model_dir = snapshot_download('damo/VGen-XL>I2VGen-XL', cache_dir='models/', revision='v1.0.0')
  • 再运行下列命令:
python inference.py --cfg configs/i2vgen_xl_infer.yaml  test_list_path data/test_list_for_i2vgen.txt test_model models/i2vgen_xl_00854500.pth

表示输入图像路径及其相应的标题。具体格式请参考演示文件中的建议。 是用于加载模型的路径。几分钟后,您可以从目录中检索要创建的高清视频。

三、界面演示

在本地运行 gradio 应用程序,使用下列命令运行项目呈现模型的成功界面

python3 gradio_app.py

微信截图_20240822095532.png


http://www.ppmy.cn/news/1521958.html

相关文章

微信小程序显示后台文章副文本,图片和视频正常显示

解决方案: 使用 wxParse 或 rich-text 组件: 这两种方式可以解析 HTML 字符串并渲染富文本内容,包括图片和视频。 数据处理: 将后台返回的富文本数据进行处理,提取出图片和视频的链接,并将其转换成小程序支持的格式。 方案一:使…

数据库学习01——mysql怎么创建数据库和表

第一步:创建数据库 使用 create database 语句,后跟要创建的数据库名称: CREATE DATABASE dbname;例如,要创建名为 my_db 的数据库,请输入: CREATE DATABASE my_db ;使用 show databases; 语句检查数据库是…

第十六篇:走入计算机网络的传输层--传输层概述

1. 传输层的功能 ① 分割与重组数据 一次数据传输有大小限制,传输层需要做数据分割,所以在数据送达后必然也需要做数据重组。 ② 按端口号寻址 IP只能定位数据哪台主机,无法判断数据报文应该交给哪个应用,传输层给每个应用都设…

Java基础 ——线程

多线程 并行和并发 需求:边打英雄联盟和边听音乐 问题:只能先后关系,并不能同时发生 多进程或者多线程来解决 并行和并发: 并行:多件事情在同一时刻发生 并发:多件事情在同一时间段发生,同一…

无线信道中ph和ph^2的场景

使用 p h ph ph的情况: Rayleigh 分布的随机变量可以通过两个独立且相同分布的零均值、高斯分布的随机变量表示。设两个高斯随机变量为 X ∼ N ( 0 , σ 2 ) X \sim \mathcal{N}(0, \sigma^2) X∼N(0,σ2)和 Y ∼ N ( 0 , σ 2 ) Y \sim \mathcal{N}(0, \sigma^2)…

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测+交叉验证

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测交叉验证 目录 回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测交叉验证效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现基于贝叶…

端口安全老化细节

我们都知道port-security aging-time命令用来配置端口安全动态MAC地址的老化时间,但是后面还可以加上类型: [SW1-GigabitEthernet0/0/1]port-security aging-time 5 type absolute Absolute time 绝对老化 inactivity Inactivity time相对老化 …

详解 HTTPS 与 TLS证书链校验

一文详解 HTTPS 与 TLS证书链校验_证书链怎么验证-CSDN博客 深入浅出 SSL/CA 证书及其相关证书文件(pem、crt、cer、key、csr) https://zhuanlan.zhihu.com/p/702745054

ASP.NET Core 入门教学十七 GraphQL入门指南

GraphQL 是一种用于 API 的查询语言,允许客户端请求所需的数据,并能够合并多个资源到一个请求中。在 ASP.NET Core 中使用 GraphQL 可以提供更灵活、高效和实用的数据查询方式。以下是 ASP.NET Core 中 GraphQL 的入门指南: 1. 安装必要的 N…

【Android】程序开发组件—探究Jetpack

引言 Jetpack是一个开发组件工具集,它的主要目的是帮助我们编写出更加简洁的代码,并简化我们的开发过程,在这么多的组件当中,最需要我们关注的其实还是架构组件,接下来就对Jetpack的主要架构组件进行学习!…

Jmeter终极线程组“Ultimate Thread Group“如何使用?

1、安装,点击"选项",再点击"Plugins Manager",下载"Custom Thread Groups" 2、添加"jpgc - Ultimate Thread Group" 3、"jpgc - Ultimate Thread Group"使用

从C到Py:面向对象程序设计

面向对象思想 我们先来介绍一下两大编程思想,其一是面向过程,它强调功能上的封装,运用的是简单的线性思维,二是面向对象,它主要是对属性和行为上的封装,处理复杂的事物。 面向过程的典型语言是C语言&…

西门子PLC MODBUS TCP通信

1. PLC要读设备的数据,PLC作为CLIENT(客户端),第三方设备作为SERVER(服务端)。https://zhuanlan.zhihu.com/p/705926399 2.PLC作为服务端 3.1 Modbus TCP 通信S7-1200Modbus TCP通信 Modbus TCP 服务器指令 MB_SERVER V5.0 新功…

android 15升级适配无法安装运行,并且提示应用未安装

最近升级项目到android15,一开始遇到这个报错,以为是广播的问题,因为当时在Log中发现这个的报错 One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be 这条报错的解决方案依据 google开发者android14 关于这条的 原文: …

Git撤销add

git要提交版本第一步是add,就算是文件本身已经存在只是修改,也需要添加,即添加到暂存区。其中最偷懒和也保险的命令是: git add . 即添加了本地(多称工作目录)所有文件。 撤销add有以下文章: …

了解一下HTTP 与 HTTPS 的区别

介绍: HTTP是超文本传输协议。规定了客户端(通常是浏览器)和服务器之间如何传输超文本,也就是包含链接的文本。通常使用TCP【1】/IP协议来传输数据,默认端口为80。 HTTPS是超文本传输安全协议,具有CA证书。…

【2024数模国赛赛题思路公开】国赛D题思路丨附可运行代码丨无偿自提

2024年国赛D题解题思路 问题一 【题目】 投射一枚深弹,潜艇中心位置的深度定位没有误差,两个水平坐标定位均服从正态分布。分析投弹最大命中概率与投弹落点平面坐标及定深引信引爆深度之间的关系,并给出使得投弹命中概率最大的投弹方案&…

【时时三省】(C语言基础)指针进阶 例题3

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 例题: 这个arr里面是放了[a b c d e f \0] 第一个arr 这个sizeof是计算这个数组的大小 这个里面加上\0一共是7个元素 所以打印7 第二个arr0 这个指数组…

SQL进阶技巧:每年在校人数统计 | 区间重叠问题

目录 0 问题分析 1 数据准备 2 问题分析 3 小结 区间重叠问题 0 问题分析 有一个录取学生人数表 in_school_stu,记录的是每年录取学生的人数及录取学生的学制,计算每年在校学生人数。 1 数据准备 create table in_school_stu as ( select stack(5,1,2001,2,1200,2,2000…

CSS-动态计算高度

要在 CSS 中动态计算元素的高度,你可以使用几种方法,主要取决于你需要的具体效果和布局。以下是一些常见的方法: 1. 使用 calc() 函数 calc() 允许你在 CSS 中进行动态计算。例如,设置一个元素的高度为视口高度减去一个固定的像…