InstantX团队新作!基于端到端训练的风格转换模型CSGO

2024-09-05 02:12

本文主要是介绍InstantX团队新作!基于端到端训练的风格转换模型CSGO,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

由InstantX团队、南京理工大学、北京航空航天大学以及北京大学联合提出了一种基于端到端训练的风格转换模型 CSGO,它采用独立的特征注入明确地解耦内容和风格特征。统一的 CSGO 实现了图像驱动的风格转换、文本驱动的风格化合成和文本编辑驱动的风格化合成。大量实验证明了该方法在增强图像生成中的风格控制能力方面的有效性。

CSGO 实现了高质量的(1)图像(草图和自然)驱动的风格转换、(2)文本驱动的风格化合成和(3)文本编辑驱动的风格化合成。

相关链接

项目主页-https://csgo-gen.github.io/

代码链接-https://github.com/instantX-research/CSGO

论文链接-https://arxiv.org/pdf/2408.16766

论文阅读

CSGO:文本到图像生成中的内容样式组合

摘要

扩散模型在受控图像生成中表现出卓越的能力,这进一步激发了人们对图像风格转换的兴趣。由于特定数据的稀缺,现有的工作主要集中于训练基于自由的方法(例如,图像反转)。

在本研究中,我们提出了一种用于内容-风格-风格化图像三元组的数据构建管道,可生成并自动清理风格化的数据三元组。基于此管道,我们构建了一个数据集 IMAGStyle,这是第一个包含 210k 个图像三元组的大规模风格转换数据集,可供社区探索和研究。

借助 IMAGStyle,我们提出了基于端到端训练的风格转换模型 CSGO,它采用独立的特征注入明确地解耦内容和风格特征。统一的 CSGO 实现了图像驱动的风格转换、文本驱动的风格化合成和文本编辑驱动的风格化合成。大量实验证明了我们的方法在增强图像生成中的风格控制能力方面的有效性。

方法

给定任何内容图像 C 和风格图像 S,CSGO 旨在通过将一个图像的内容与另一个图像的风格相结合来生成可信的目标图像,确保目标图像在采用所需风格的同时保持原始内容的语义。下图概述了我们的方法。它由两个关键组件组成:

  • 用于提取内容信息的内容控制,通过 Controlnet 和解耦的交叉注意模块注入基础模型;

  • 用于提取风格信息的风格控制,分别使用解耦的交叉注意模块注入 Controlnet 和基础模型。

我们与之前的研究有以下不同之处:

  1. CSGO 是一个基于端到端训练的模型,推理时无需微调。

  2. 我们不训练 UNet,因此可以保留原始文本到图像模型的生成能力。

  3. 我们的方法统一了图像驱动的风格转换、文本驱动的风格合成和文本编辑驱动的风格合成。

实验

文本到图像生成中的内容样式组合

内容和风格图像之间的循环翻译

文本到图像生成中的风格转换

文本驱动的图像编辑

结论

我们首先提出了一个用于构建内容-风格-风格化图像三元组的流水线。基于此流水线,我们构建了第一个大规模风格转换数据集 IMAGStyle,其中包含 210K 个图像三元组,涵盖了广泛的风格场景。为了验证 IMAGStyle 对风格转换的影响,我们提出了 CSGO,这是一个简单但高效的端到端训练风格转换框架,并且我们验证了所提出的 CSGO 可以在统一的框架中同时执行图像风格转换、文本驱动的风格合成和文本编辑驱动的风格合成任务。大量实验验证了 IMAGStyle 和 CSGO 对风格转换的有益效果。我们希望我们的工作能够激励研究界进一步探索风格化研究。

未来的工作。 虽然提出的数据集和框架实现了非常先进的性能,但仍有改进的空间。由于时间和计算资源的限制,我们仅构建了 210K 数据三元组。我们相信,通过扩大数据集的大小,CSGO 的风格迁移质量将会更好。同时,提出的 CSGO 框架是一个基础版本,仅验证了生成风格化数据集对风格迁移的有益影响。我们相信,通过优化风格和内容特征提取和融合方法,可以进一步提高风格迁移的质量。

这篇关于InstantX团队新作!基于端到端训练的风格转换模型CSGO的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137675

相关文章

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

在Java中将XLS转换为XLSX的实现方案

《在Java中将XLS转换为XLSX的实现方案》在本文中,我们将探讨传统ExcelXLS格式与现代XLSX格式的结构差异,并为Java开发者提供转换方案,通过了解底层原理、性能优势及实用工具,您将掌握... 目录为什么升级XLS到XLSX值得投入?实际转换过程解析推荐技术方案对比Apache POI实现编程

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Python使用FFmpeg实现高效音频格式转换工具

《Python使用FFmpeg实现高效音频格式转换工具》在数字音频处理领域,音频格式转换是一项基础但至关重要的功能,本文主要为大家介绍了Python如何使用FFmpeg实现强大功能的图形化音频转换工具... 目录概述功能详解软件效果展示主界面布局转换过程截图完成提示开发步骤详解1. 环境准备2. 项目功能结

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

使用Python实现网页表格转换为markdown

《使用Python实现网页表格转换为markdown》在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,本文将使用Python编写一个网页表格转Markdown工具,需... 在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,以便在文档、邮件或

Python将字符串转换为小写字母的几种常用方法

《Python将字符串转换为小写字母的几种常用方法》:本文主要介绍Python中将字符串大写字母转小写的四种方法:lower()方法简洁高效,手动ASCII转换灵活可控,str.translate... 目录一、使用内置方法 lower()(最简单)二、手动遍历 + ASCII 码转换三、使用 str.tr

Java如何将文件内容转换为MD5哈希值

《Java如何将文件内容转换为MD5哈希值》:本文主要介绍Java如何将文件内容转换为MD5哈希值的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java文件内容转换为MD5哈希值一个完整的Java示例代码代码解释注意事项总结Java文件内容转换为MD5

使用Java将实体类转换为JSON并输出到控制台的完整过程

《使用Java将实体类转换为JSON并输出到控制台的完整过程》在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用JSON格式,用Java将实体类转换为J... 在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用j