OmniGen – 统一图像生成的扩散模型,支持多模态输入

一、OmniGen的定义

OmniGen是一种全能的图像生成模型,它被设计用来在一个统一的框架下处理各种各样基于图像生成的任务。由北京智源人工智能研究院(BAAI)推出,它标志着图像生成技术向更加通用和灵活的方向发展。例如,像图像编辑、图像修复以及将文本转化为图像等不同类型的任务都可以在这个模型中通过简单的指令来完成,这为图像生成领域开辟了新的可能性 。

二、OmniGen的特点和功能

  1. 多功能性集成
    • OmniGen集多项能力于一体,涵盖文本到图像生成、指代表达生成、通用图像条件生成、图像编辑、经典计算机视觉任务(如图像去噪、边缘检测、姿态估计等),还具备一定的上下文学习能力。例如,它可从多人图像中按照指令定位目标对象并生成新图像,无需额外模块操作。能够识别包含多对象图像中指令指代的对象生成新图像 。
    • 在文本到图像生成方面表现出色。用户只需输入描述性文字,它就能快速生成高质量图像,这为没有绘画技能的人提供了创意展示平台。而且在图像编辑上也很强大,可进行诸如调整色调、增减元素、精细修饰等操作,还能轻松移除背景多余物体或更换人物服装样式等 。
    • 对人体姿态的生成与重绘能力也是其亮点。它可以根据输入的姿态描述生成符合的人物图像,对动画制作和游戏角色设计意义重大,也能根据现有图像生成新姿态,让静态图变生动,提高工作效率并为创作者提供更多可能 。
  2. 架构的高效性
    • 简单性:OmniGen的架构高度简化,由变分自编码器(VAE)和预训练的Transformer模型组成。VAE负责将输入图像编码成潜在空间的连续视觉特征,Transformer则根据输入条件(含文本和图像的多模态输入)生成图像。这种架构相比现有图像生成模型不需要冗长的处理步骤和额外的模块(如ControlNet或IP – Adapter),从而大大简化了工作流程,只需简单指令就能完成复杂任务,极为用户友好 。
    • 知识迁移能力:由于是在统一格式的数据集(X2I)上学习各种任务,OmniGen有效地跨不同任务迁移知识,能够应对未见过的任务和领域,并展示出新颖的功能。这意味着它在处理图像生成相关的未知情况时更有优势,可以在不同任务间共享知识,例如如果它学习了图像编辑中的某些模式,在处理文本生成图像等其他任务时也能借鉴相关知识。同时还探讨了其推理能力和思维链机制在图像生成领域的潜在应用 。
    • 输入的灵活性:输入可以是自由形式的多模态交错文本和图像。对于文本采用Phi – 3的tokenizer处理,图像通过带有简单线性层的VAE提取潜在表示,还针对视觉token应用标准频率位置嵌入处理不同纵横比的图像,并且无需任何任务特定的特殊token来指示任务类型。在对图像部分序列的注意力机制方面,它对每一元素应用因果注意力,在同图像内的patch间应用双向注意力保证了对图像整体和内部关系的合理建模,从而进一步体现了架构的高效和智能性。这使得它可以很好地处理同时包含文本和图像的混合输入情况,更符合实际应用中的多源输入需求 。
  3. 性能表现优势
    • 较少的资源需求高效率:与其他模型相比,OmniGen的效率更高、效果更好,它只需较少的参数和训练数据就能获得同样或更好的效果。例如在文本到图像生成方面与市面上最先进的模型能力相当,但仅用了0.1亿张图像进行训练,而其他模型使用超过10亿张图像。这显示出它在资源利用上更加高效,是一种相对更轻量化但高效的图像生成模型 。
    • 编辑上的准确性:在图像编辑实验中,OmniGen能够执行多种操作,证明了其良好的可用性和准确性。像更改背景、添加和删除对象等操作,在使用EMUEdit数据集进行测试时,它在编辑准确性和与原始图像的匹配方面表现出色,能够较好地保持编辑后的图像整体协调性和与原始图像在语义上的连贯性 。
    • 出色的视觉条件生成:在基于视觉条件生成图像的能力方面,如边缘检测和姿势估计任务上的实验表明它也有卓越的表现。能够依据特定的视觉条件很好地生成新的图像,并且展示出对图像中特定对象和结构保留的良好能力,这对于有特定内容要求的图像生成场景非常有价值 。

三、OmniGen的应用领域

  1. 艺术创作领域
    • 对于艺术家而言,OmniGen可以极大地拓展创作的可能性。在创意构思阶段,他们可以通过输入一段描述性的文字,快速得到一个初始的图像灵感,这有助于激发更多的创意联想。比如,画家可以输入“宁静的海边日落,海滩上有几棵椰子树”,OmniGen就能生成相应的图像,画家可以在此基础上进一步发挥自己的绘画技巧进行二次创作。
    • 在图像编辑方面,艺术家可以利用OmniGen轻松地对现有的作品进行修改和完善。比如调整画面的色彩饱和度、修复画面中的瑕疵,或者改变画面中的部分元素(如将画面中的红色花朵换成蓝色花朵)等操作都可以快速、简便地实现。
  2. 广告设计领域
    • 广告创意人员可以利用OmniGen高效地制作出各种创意广告素材。例如,当需要为一款旅游产品设计广告时,输入“美丽的热带岛屿,游客在蓝天白云下的沙滩上享受阳光”,OmniGen就能生成符合要求的图像,广告商可以在此基础上添加品牌标志和产品信息等内容。
    • 针对不同的受众群体和广告投放平台,广告人员可以利用OmniGen的知识迁移能力和良好的编辑能力,调整广告图像的风格和内容。比如在面向年轻人的广告中,可以通过OmniGen将广告图像中的人物姿态或时尚元素进行优化和改变,以更好地吸引目标受众。
  3. 游戏设计领域
    • 游戏设计师可以使用OmniGen来生成游戏中的角色形象、场景画面等素材。例如,在设计一款奇幻游戏时,可以输入各种描述游戏角色外形和场景特点的文字,如“高大的精灵族战士,手持银色长剑站在古老的城堡前”,OmniGen就能帮助快速生成对应的角色和场景图像,减少了设计师从无到有绘制图形的时间成本。
    • 在游戏开发过程中,如果需要对部分场景或角色进行修改,OmniGen也能方便地进行编辑。如更改游戏中某个场景的色调、添加或移除场景中的某些道具等,提高游戏开发的整体效率。
  4. 图像修复领域
    • OmniGen能够在图像修复方面发挥重要作用。对于那些因为损坏或者老化而出现缺陷的历史照片或者珍贵文物图像,它可以通过分析图像中未损坏的部分以及相关的上下文信息生成修复后的图像。例如,一张带有划痕和部分褪色的老照片,OmniGen可以利用从其他图像中学到的关于人物面部特征、背景元素等知识,在保留原有照片整体风格和特征的基础上进行修复和还原。

四、OmniGen的发展历程

  1. 概念与初始研发阶段
    • 随着人工智能技术不断进步,特别是在图像生成领域,人们一直探索能够像大型语言模型统一语言生成任务那样统一图像生成任务的模型。受到这种理念的启发,研究人员开始构思OmniGen这样一个能够在单一框架下处理大量图像生成任务的模型概念。研发团队由来自多个领域的顶尖专家组成,他们在计算机视觉、深度学习及自然语言处理等领域拥有丰富经验,团队中的核心成员Shitao Xiao、Yueze Wang等人在AI领域发表过多篇重量级论文,这为OmniGen的研发奠定了坚实的知识基础 。
  2. 模型构建与训练
    • 模型架构采用了变分自编码器(VAE)和预训练的Transformer模型组合而成的简洁结构。在训练方面,它在统一的数据集X2I上进行学习,这个数据集涵盖了各种图像生成任务,并将不同任务统一为一种格式。它采用了从低分辨率到高分辨率逐步掌握生成技巧的渐进式训练策略。通过这种方式,OmniGen在训练过程中逐渐学习到不同任务之间的共性和差异性知识,从而实现知识在不同任务间的迁移能力。而且在训练中仅冻结VAE,利用Phi – 3初始化Transformer模型继承其出色的文本处理能力,在构建过程中注重模型结构的优化和效率提升 。
  3. 初步成果与发布
    • 在实验阶段,OmniGen在多个方面表现出了卓越的性能。例如在文本到图像生成方面与市面上先进模型表现相当,却只需很少的训练数据就能实现。在图像编辑、边缘检测、姿态估计等经典计算机视觉任务转化为图像生成任务的实验中,也得到了较好的结果。这些成果使得OmniGen具有很大的开发潜力和应用价值。之后,北京智源人工智能研究院(BAAI)正式推出了OmniGen,将其推向市场,同时也将模型权重和代码开源,吸引更多的开发者参与进一步的开发和研究,促进学术界和工业界的合作,并且研究团队计划将其部署到HuggingFace的空间中以进一步简化模型的使用门槛,让更多开发者能够轻松体验其强大功能 。

五、OmniGen与其他类似产品的比较

  1. 架构复杂性方面
    • OmniGen:架构高度简化,仅由VAE和Transformer模型两个主要部分组成,并且不需要额外的编码器(比如不像一些流行模型需要额外的CLIP文本编码器和图像编码器对条件信息进行预处理)。它能够直接通过自身结构处理自由形式的多模态交错文本和图像输入,通过巧妙的内部机制将输入转换为适合生成图像的条件。例如,它可以直接处理同时包含文本描述和图像引用的输入需求,很好地融合不同模态的信息进行图像生成。
    • 其他类似产品:许多现有的图像生成模型架构相对复杂,往往需要加载多个额外的网络模块(如ControlNet、IP – Adapter、Reference – Net等)才能完成特定的任务或者处理输入条件。在处理多模态输入时,可能需要分别对文本和图像进行单独处理后再组合,处理流程相对复杂。例如在处理图像编辑任务时,可能需要先进行人脸检测、姿势估计、裁剪等预处理步骤才能执行编辑操作,这就增加了模型的复杂度和运行时的处理时间。
  2. 任务处理能力方面
    • OmniGen:是一个统一的多任务模型,能够以统一的方式处理各种任务,包括从文本生成图像、图像编辑、视觉条件生成以及经典计算机视觉任务(如边缘检测、姿态估计等)。而且它在不同任务之间可以共享和转移知识,这使得它在处理新的任务或者未见过的领域任务时更有优势。例如,它可以根据之前在图像编辑任务中学到的对物体形状和颜色处理的知识经验,用于处理文本生成图像中关于物体外形和色彩的构建。
    • 其他类似产品:通常特定于某些任务或任务集,例如有些模型专注于文本到图像的生成,对图像编辑任务则缺乏有效的集成思路或需要添加额外的功能模块才能应对。不同任务间往往缺乏有效的知识共享和迁移机制,当需要处理新的任务类型时可能需要重新调整模型结构或重新训练。例如,一个主要用于文本到图像生成的模型想要进行姿态估计任务时难以从已有的文本生成知识中直接受益,可能需要额外的与姿态相关的训练和调整。
  3. 资源利用效率方面
    • OmniGen:该模型在资源利用上较为高效,只需较少的参数和训练数据就能实现与其他模型同样或更好的效果。比如在文本到图像生成上仅使用0.1亿张图像训练就能与使用10亿张图像训练的其他先进模型能力相当。这不仅减少了训练时间和计算资源的消耗,也意味着在实际应用部署中可以在较弱的硬件条件下运行或者能以更高的速度提供结果。
    • 其他类似产品:一些现有模型为了达到较好的性能往往需要大量的参数和大规模的训练数据,这对硬件资源要求很高。并且在实际运行时可能因为模型过于庞大而导致推理速度较慢,不利于一些实时性要求较高的应用场景,如在一些交互式图像生成场景或者移动设备上进行快速图像生成时可能会出现卡顿或者过长的等待时间。