AIGC——ConsiStory无需训练LoRA快速实现主题一致地文本到图像生成技术

news2024/12/23 7:42:21

简介

当前的图像生成技术大多数采用随机采样,这导致每次生成的图像都有所不同,特别是在生成连续图像时难以保持一致性。

举例来说,尝试用AI生成一组图像连环画时,即使使用相似的提示词,也难以达到理想效果。

尽管DALL·E 3和Midjourney在提高图像生成连贯性方面取得了一些进展,但这些产品都是闭源的,限制了它们的广泛应用。

因此,英伟达和特拉维夫大学的研究团队合作开发了一种创新的图像生成模型——ConsiStory。这个模型无需训练即可实现图像内容的一致性和连贯性,并将很快向公众开放源代码。

在这里插入图片描述
传统的图像生成模型在保持内容一致性方面存在两个主要不足:

首先,它们缺乏对图像中共同主体的识别和定位能力,没有集成对象检测或分割功能,因此难以自动识别不同图像中的相同元素。

其次,即使能够识别出主体,也存在在保持不同图像中主体的视觉一致性上的困难。这意味着即使识别出主体,也很难确保各个独立生成步骤中的主体细节高度一致。

目前,解决这些问题的主流方法主要基于个性化训练和编码器优化。但这些方法都需要额外的训练过程,例如对特定主体微调模型参数,或使用目标图像训练编码器作为条件输入。

consistory-video

然而,这些优化方法存在训练周期长、难以适应多主体场景,以及容易导致与原始模型分布的偏离等问题。

ConsiStory采用了全新的策略,通过在模型内部表示间共享和调整,实现了无需训练或额外调优即可达到主体一致性的目的。

值得一提的是,ConsiStory还能作为插件辅助其他生成模型,提升生成图像的一致性和连贯性。

算法特点

主体驱动自注意力(SDSA)
主体驱动自注意力(SDSA)是ConsiStory的核心模块之一。它通过扩展生成模型中的自注意力机制,使得在生成的图像批次中能够共享与主体相关的视觉信息,从而确保不同图像中主体的外观保持一致。

SDSA的关键在于扩大了自注意力层,使得一个图像中的“提示词”不仅可以关注自身图像的输出结果,还可以关注批次中其他图像的主体区域的输出结果。

这样一来,主体的视觉特征就可以在整个批次中共享,不同图像中的主体能够相互“对齐”,从而实现主体的一致性。
在这里插入图片描述
为了避免背景信息的相互干扰,SDSA采用了主体分割蒙版技术,这限制了每个图像只关注其他图像的主体区域。

主体蒙版是通过模型自身的交叉注意力特征自动提取的,这意味着SDSA能够自动识别和提取图像中的主体部分,从而确保在生成图像时只关注主体区域,而背景信息则被有效地剔除或降低了其影响。
在这里插入图片描述
特征注入
为了进一步增强主体在不同图像之间的细节一致性,ConsiStory采用了“特征注入”机制。这一机制通过在图像生成过程中共享自注意力输出特征,加强了图像间相似区域(如纹理、颜色等)的一致性。

特征共享同样采用主体蒙版进行限定,同时设置了相似度阈值,以确保只在足够相似的区域之间执行特征共享。这样一来,只有在主体之间具有足够相似性的区域才会执行特征共享,从而确保了主体细节在不同图像之间的一致性,并避免了背景等不相关部分的影响。
在这里插入图片描述
锚图像和可重用主体

ConsiStory还引入了“锚图像”概念,作为生成过程中主题信息的参考,以确保生成图像在主题上的一致性。

锚图像既可以是用户提供的,也可以是从其他来源选取的相关图像。模型会尽可能地参考锚图像的特征和结构,生成风格一致的图像序列。通过共享预训练模型的内部激活,我们可以实现特征表示的高度一致性,这是一种高效的可重用主体使用方法。在图像生成的过程中,该模型依赖于预训练模型的内部特征表示来确保生成图像的质量,从而避免了对外部图像数据进行额外的调整。

在这里插入图片描述
通过ConsiStory,不仅能够在无需额外训练的前提下实现图像生成的高度连贯性,还能显著提升生成图像的质量和实用性。随着该模型的开源,预计将会有更多的研究和应用从中受益,为图像生成技术的发展开辟新的道路。这一创新性的方法不仅有助于解决现有技术中存在的连贯性问题,还为图像生成领域带来了更广泛的应用可能性,促进了该领域的进一步研究和探索。

实验

支持多个一致的主题
比如下图,不仅保留了男孩的特征,也保留了球的特征。
在这里插入图片描述
跟ControlNet集成
ConsiStory可以跟ControlNet集成,生成不同姿态的一致性的角色。
在这里插入图片描述
无需训练的个性化生成
简单理解就是图片转图片,将一张图片中的元素植入到另一张图片中,并保持该元素在新场景中自然融入,比如给左边的红色背包换背景。
在这里插入图片描述
变换种子值
每张AI生成的图片都有一个seed值,ConsiStory可以实现通过改变seed值(起始噪音)来变换场景,但主题不改变(如下图每行的猫头鹰)。
在这里插入图片描述
支持种族多样性
针对人像,ConsiStory可以保持该人物的种族特征不改变。
在这里插入图片描述
比较其他方法
如下图,最上面是ConsiStory方法,底下分别是IP-Adapter、TI、DB-LoRA方法,可以看下角色的一致性和对提示词的遵循程度,至少从官方提供的示例上看,ConsiStory都更胜一筹。
在这里插入图片描述

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

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

相关文章

7-18 两个数的简单计算器

本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。 输入格式: 输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操作数的数…

嵌入式学习第二十七天!(TCP并发模型)

TCP并发模型: 1. TCP多线程模型: 缺点:创建线程会带来资源开销,能够实现的并发量比较有限。 2. IO模型: 1. 阻塞IO: 没有数据到来时,可以让任务挂起,节省CPU资源开销,提…

C# MES通信从入门到精通(1)——串口传输文件

前言: 在上位机软件开发领域,有一些工厂的mes系统需要我们通过串口发送文件的方式把一些图片或者检测数据csv文件等发送给服务器,这种方式是一些比较旧的工厂采用的方式,但是这种方式也是存在的,本文就是讲解如何使用串口发送文件详情见下文。 1、串口发送文件思路 将需…

Python-Pong-Game

我还加了音效,类似于小时候游戏机上的弹球游戏 import os import turtle import pygame#初始化pygame pygame.init()#加载声音文件 bounce_sound pygame.mixer.Sound("bounce.mp3")wn turtle.Screen() wn.title("Pong by ") wn.bgcolor(&qu…

docker学习进阶篇

一、dockerfile解析 官方文档: Dockerfile reference | Docker Docs 1.1、dockfile是什么? dockerfile是用来构建docker镜像的文本文件,由一条条构建镜像所需的指令和参数构成的脚本。 之前我们介绍过通过具体容器反射构建镜像(docker comm…

幻兽帕鲁游戏服务器多少钱?2024最新报价单请查收

游戏服务器租用多少钱一年?1个月游戏服务器费用多少?阿里云游戏服务器26元1个月、腾讯云游戏服务器32元,华为云26元,游戏服务器配置从4核16G、4核32G、8核32G、16核64G等配置可选,游戏专业服务器公网带宽10M、12M、15M…

《深入Linux内核架构》第1章 简洁和概述

目录 1.1 内核的任务 1.2 实现策略 1.3 内核的组成部分 ​编辑1.3.1 进程、进程切换、调度 1.3.2 UNIX 进程 1.3.3 地址空间和特权级别 1.3.4 页表 1.3.5 物理内存的分配 1.3.6 计时 1.3.7 系统调用 1.3.8 设备驱动程序 1.3.9 网络 1.3.10 文件系统 1.3.11 模块和…

java guide 八股

Java语言特点 简单易学、面向对象(继承、封装、多态)、平台无关性(Java虚拟机jvm)、支持多线程、可靠、安全、高效、支持网络编程、编译与解释共存 JVM:Java虚拟机(跨平台的关键) JRE&#xff…

ROS——其他ROS版本安装

1.2.6 资料:其他ROS版本安装 我们的教程采用的是ROS的最新版本noetic,不过noetic较之于之前的ROS版本变动较大且部分功能包还未更新,因此如果有需要(比如到后期实践阶段,由于部分重要的功能包还未更新,需要ROS降级),也…

Spring Cloud集成nacos配置中心

1.添加Nacos Config依赖 打开nacos-config-demo的pom.xml文件并添加以下两个依赖项 项目的配置文件中通常包括数据库连接配置项、日志输出配置项、Redis连接配置项、服务注册配置项等内容,如spring-cloud-alibaba-nacos-config-base-demo项目中就包含数据库连接配置…

控件交互触屏操作

控件交互 print(driver.find_element(By.ID, com.xueqiu.android:id/tv_agree).is_enabled()) # 判断元素是否可点击 print(driver.find_element(By.ID, com.xueqiu.android:id/tv_agree).is_display()) # 判断元素是否可显示 print(driver.find_element(By.ID, com.xueqiu.…

【梳理】k8s使用Operator搭建Flink集群(高可用可选)

文章目录 1. 架构图2. helm 安装operator3. 集群知识k8s上的两种模式:Native和Standalone两种CR 4. 运行集群实例Demo1:Application 集群Demo2:Session集群优劣 5. 高可用部署问题1:High availability should be enabled when sta…

spring boot 使用 webservice

spring boot 使用 webservice 使用 java 自带的 jax-ws 依赖 如果是jdk1.8,不需要引入任何依赖&#xff0c;如果大于1.8 <dependency><groupId>javax.jws</groupId><artifactId>javax.jws-api</artifactId><version>1.1</version&g…

JVM-3

HotSpot虚拟机对象 我在网上看了很多相关的文章&#xff0c;发现在创建对象和对象的结构中内容都不太一样&#xff0c;一些关键字也很不同&#xff0c;于是我通过参考《深入理解Java虚拟机》这本书&#xff0c;自己总结了一篇。 1.对象的创建 当JVM收到一条创建对象的字节码…

uniapp:音乐播放器

功能要求&#xff1a;全局音乐播放&#xff0c;可以上一首&#xff0c;下一首&#xff0c;暂停&#xff0c;播放。 1、mixins export default {data() {return {audio: null, // 音频对象playlist: [{url: require(../static/1.mp3)}, {url: require(../static/2.mp3)}, {url: …

多接入边缘计算赋能的AI质检系统任务实时调度策略

源自&#xff1a;电子与信息学报 作者&#xff1a;周晓天, 孙上, 张海霞, 邓伊琴, 鲁彬彬 “人工智能技术与咨询” 发布 摘 要 AI质检是智能制造的重要环节&#xff0c;其设备在进行产品质量检测时会产生大量计算密集型和时延敏感型任务。由于设备计算能力不足&#xff0c…

少儿编程机器人技术架构解析与实现流程

随着科技的飞速发展&#xff0c;少儿编程机器人成为了越来越受欢迎的教育工具&#xff0c;为孩子们提供了学习编程的新途径。在这篇文章中&#xff0c;我们将深入探讨少儿编程机器人的技术架构和实现过程&#xff0c;揭示背后的技术原理和开发策略。同时&#xff0c;我们也将介…

java-ssm-基于jsp商场停车服务管理信息系统

java-ssm-基于jsp商场停车服务管理信息系统

http协议中的强缓存与协商缓存,带图详解

此篇抽自本人之前的文章&#xff1a;http面试题整理 。 别急着跳转&#xff0c;先把缓存知识学会了~ http中的缓存分为两种&#xff1a;强缓存、协商缓存。 强缓存 响应头中的 status 是 200&#xff0c;相关字段有expires&#xff08;http1.0&#xff09;,cache-control&…

案例分析篇03:一篇文章搞定软考设计模式考点(2024年软考高级系统架构设计师冲刺知识点总结系列文章)

专栏系列文章推荐: 2024高级系统架构设计师备考资料(高频考点&真题&经验)https://blog.csdn.net/seeker1994/category_12593400.html 【历年案例分析真题考点汇总】与【专栏文章案例分析高频考点目录】(2024年软考高级系统架构设计师冲刺知识点总结-案例分析篇-…