在矩池云上使用StoryDiffusion的详细方法

news2024/11/17 5:41:53

StoryDiffusion 是由南开大学和字节跳动团队联合研发的,基于一致性自注意力机制生成长跨度图像和视频的新型扩散模型(Consistent Self-Attention for Long-Range Image and Video Generation),使用者不需要进行额外训练,就可以生成风格一致的图像序列。
·利用Consistent Self-Attention机制来生成主题一致的连续内容,生成类似于漫画书、连环画等场景的画面
·StoryDiffusion能搭配PhotoMaker使用,生成与参考图一致的内容

项目地址:https://github.com/HVision-NKU/StoryDiffusion

机器选择

根据 StoryDiffusion 的项目描述,其提供的低显存需求的版本是在 Tesla A10 上测试的,即显存要求在 24G,根据项目方预测显存尽量选择在大于 20G,所以在矩池云上使用 StoryDiffusion 时我们可以选择 3090、4090、A6000、A30 和 A100,在这里我们所使用的为 4090。

模型下载

开始前,我们需要提前下载上传以下模型(或者按后文步骤,租用机器后,使用国内源下载使用)

需要提前下载上传以下模型(或者按后文步骤,租用机器后,使用国内源下载使用)
在这里插入图片描述
可以使用网盘客户端的导入 HuggingFace 项目功能,这样不需要花钱租用机器下载模型数据。
在这里插入图片描述

镜像选择

根据项目需求,即,
Python >= 3.8 (Recommend to use Anaconda or Miniconda)
PyTorch >= 2.0.0

我们选择系统镜像 Pytorch 2.0.1 ,
在这里插入图片描述

选择镜像后,在下面的高级选项自定义一个7860端口(后面运行 StoryDiffusion web demo 会使用),然后点击下单即可。
在这里插入图片描述

机器启动成功后,点击租用页面的 Jupyterlab --点击打开,
在这里插入图片描述

环境安装

在 Jupyterlab 页面新建一个 Terminal,输入如下指令 clone 项目并安装环境。

cd /mnt
git clone https://mirror.ghproxy.com/https://github.com/HVision-NKU/StoryDiffusion
cd StoryDiffusion
pip install -r requirements.txt

在这里插入图片描述

环境安装成功后,可以开始运行项目,输入以下指令即可:

HF_ENDPOINT=https://hf-mirror.com python gradio_app_sdxl_specific_id_low_vram.py

在这里插入图片描述

如果你已经下载好模型,并上传到了网盘,可以 Jupyterlab 打开 StoryDiffusion 项目文件夹下的config/models.yaml文件,将里面的模型路径改成你服务器里对应路径。

网盘对应机器中的/mnt目录,比如网盘下 abc 目录下的 123.csv 文件路径就是:/mnt/abc/123.csv
在这里插入图片描述

程序运行成功后会显示端口号,这时我们访问租用页面自定义的 7860 端口对应链接即可访问服务。
在这里插入图片描述

点击即可打开服务页面。
在这里插入图片描述

使用StoryDiffusion

在页面中根据提示即可开始使用 StoryDiffusion。
在这里插入图片描述

根据官方给的 DEMO 进行分析,我们发现
(1)prompt中,以#开头的内容,会出现在图中成为文字注解的部分
(2)以[NC]开头的内容,指的是没有定义的角色会出现在该图片中

[Bob] at home, read new paper #at home, The newspaper says there is a treasure house in the forest.
[Bob] on the road, near the forest
[Alice] is make a call at home # [Bob] invited [Alice] to join him on an adventure.
[NC]A tiger appeared in the forest, at night
[NC] The car on the road, near the forest #They drives to the forest in search of treasure
[Bob] very frightened, open mouth, in the forest, at night
[Alice] very frightened, open mouth, in the forest, at night
[Bob] and [Alice] running very fast, in the forest, at night
[NC] A house in the forest, at night #Suddenly, They discovers the treasure house!
[Bob] and [Alice] in the house filled with treasure, laughing, at night #He is overjoyed inside the house.

我们也可以输入自己的prompt,进而生成图片。
在这里插入图片描述

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

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

相关文章

利用EasyCVR视频智能监控技术,构建智慧化考场监管体系

随着科技的进步,视频监控在各个领域的应用越来越广泛,其中在考场中的应用尤为显著。视频监控不仅能够提高考场的监管水平,确保考试的公平、公正和公开,还能有效预防和打击作弊行为,为考生营造一个良好的考试环境。 传…

SARscape雷达图像处理软件简介

合成孔径雷达(SAR)拥有独特的技术魅力和优势,渐成为国际上的研究热点之一,其应用领域越来越广泛。SAR数据可以全天候对研究区域进行量测、分析以及获取目标信息。高级雷达图像处理工具SARscape,能让您轻松将原始SAR数据…

JavaScrip原型对象

参考 JavaScrip原型对象 | LogDicthttps://www.logdict.com/archives/javascripyuan-xing-mo-shi

C++---迭代器介绍

迭代器的介绍 使用迭代器需要引用头文件,但一般的容器都引用了这个头文件。 这五种迭代器的声明如下: struct output_iterator_tag { };//输出迭代器 struct input_iterator_tag{ };//输入迭代器 struct forward_iterator_tag : public input_iterator_tag {};//向前迭代器 …

【MySQL】SQL 基础

文章目录 【 1. SQL 的书写规则 】1.1 大小写规则1.2 常量的表示1.3 注释1.4 HELP 系统帮助 【 2. 常用数据库函数 】2.1 SHOW DATABASES 显示数据库2.2 CREATE DATABASE 创建数据库2.3 ALTER DATABASE 修改数据库2.4 DROP DATABASE 删除数据库2.5 USE 选择数据库 【 3. RDBMS …

防火墙如何端口映射?

防火墙端口映射(Firewall Port Mapping)是一种网络技术,通过对防火墙配置进行调整,允许外部网络用户访问内部网络中的指定端口。该技术使得外部用户可以通过公共网络访问内部网络中的特定服务或应用程序,从而实现远程访…

Golang | Leetcode Golang题解之第117题填充每个节点的下一个右侧节点指针II

题目: 题解: func connect(root *Node) *Node {start : rootfor start ! nil {var nextStart, last *Nodehandle : func(cur *Node) {if cur nil {return}if nextStart nil {nextStart cur}if last ! nil {last.Next cur}last cur}for p : start; …

第13章 层次式架构设计理论与实践

层次式架构的核心思想是将系统组成为一种层次结构,每一层为上层服务,并作为下层客户。其实不管是分层还是其他的架构都是为了解耦,更好的复用,只要秉承着这种思想去理解一切都迎刃而解了。 13.1 层次上体系结构概述 回顾一下软件…

散户如何参与期权交易?

期权就是股票,唯一区别标的物上证指数,会看大盘吧,期权交易两个方向认购做多,认沽做空,双向t0交易没了,期权交易跟期货一样,对的,玩的也是合约,唯一区别没有保证金不会爆…

redis显示RDB error

报错问题:"RDB error" 是指在Redis的RDB持久化过程中出现了错误。Redis的RDB持久化是通过将内存中的数据集快照保存到磁盘中的一种方式。如果在这个过程中遇到问题,Redis会记录一条包含"RDB error"的日志信息。上图错误,…

k8s群集调度之 pod亲和 node亲和 标签指定

目录 一 调度约束 1.1K8S的 List-Watch 机制 ⭐⭐⭐⭐⭐ 1.1.1Pod 启动典型创建过程 二、调度过程 2.1Predicate(预选策略) 常见的算法 2.2priorities(优选策略)常见的算法 三、k8s将pod调度到指定node的方法 3.1指…

写论文时某一行的字间距突然增大,如何解决?

问题描述: 某一行的字间距突然变大,占满了一行,检查设置也没有异常。 如何解决 一、全选出现问题的段落 二、右键,然后点击段落 三、然后勾选允许西文在单词中间换行 四、正常了

电源模块测试系统怎么测试输入电压范围?

在现代电子设备中,电源模块的性能直接影响着整个系统的稳定性和效率。其中,电源输入电压范围是指电源能够接受的输入电压的最小值和最大值,它是确保电源正常工作的重要参数。为了提高测试效率和精度,自动化的测试方法逐渐取代了传…

解决IDEA菜单栏找不到VCS的问题,且使用IDEA推送新项目到托管仓库

问题描述: 在idea软件中使用git推送项目,idea页面顶部菜单栏无VCS 解决方案: 一:File->Settings->Version Control-> 点击 ->选择项目->VCS:->点击ok: 二:托管平台创建一个Git仓库来保…

MongoDB数据库(10亿条数据)清理策略: 自动化过期数据删除实战

1、引言 随着应用程序和业务数据的持续增长,有效地管理数据库存储空间成为维护系统性能的关键。在MongoDB这类NoSQL数据库中,定期清理过期数据变得尤为重要,这不仅能释放宝贵的存储资源,还能优化查询性能,确保数据库运…

python数据分析——分组操作1

参考资料:活用pandas库 1、简介 借助“分割-应用-组合”(split-apply-combine)模式,分组操作可以有效地聚合、转换和过滤数据。 分割:基于键,把要处理的数据分割为小片段。 应用:分别处理每个数…

Raven2掠夺者2渡鸦2游戏预约注册教程 账号注册教程

《渡鸦2》是一款源自韩国的创新力作,作为《Raven》系列的最新续篇,这款游戏在MMORPG手游领域内再度扩展了其标志性的暗黑奇幻宇宙,融入了大量革新的游戏设计与丰富内容。定档于2024年5月29日开启公测的《渡鸦2》,正处在紧张刺激的…

简单四步完成基于云服务器ARL资产侦察灯塔系统搭建

简单四步完成基于云服务器ARL资产侦察灯塔系统搭建及使用 前言 官网介绍:ARL全称-Asset Reconnaissance Lighthouse,中文含义:资产侦察灯塔系统。 旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。 协助甲方安全团队或…

数组-捡石子小游戏

一、题目描述 二、解题思路 刚开始拿到题目的时候在想是不是需要把所有情况枚举出来,其实思考一下能看出规律: 1.如果有1、2、3颗石子,小牛一定可以赢; 2.再来看4颗石子的时候,小牛A可以拿1~3颗,但是无论小…

M功能-分布式锁-支付平台(五)

target:离开柬埔寨倒计时-218day 珍藏的图片又拿出来了 前言 M系统中的撮合引擎是最最核心的功能,第一版的撮合引擎不是我写的,也没有做交易对的动态分配这样的功能,都是基于抢锁方式来决定谁拥有该交易对的撮合权限,所…