1.简介
平面设计是一门艺术学科,致力于创造吸引注意力和有效传达信息的视觉内容。今天,创造视觉上吸引人的设计完全依赖于具有艺术创造力和技术专长的人类设计师,他们巧妙地整合多模态图形元素,这是一个复杂而耗时的过程,需要仔细考虑许多方面。例如,重要的是确保主对象不被其他元素遮挡、为了可读性,文本和正文之间应该有足够的对比。此外,设计师还需要调整元素的大小,使设计平衡。
这篇文章的核心内容是介绍了一种名为LaDeCo的新型自动图形设计构图方法。LaDeCo通过将大型多模态模型(LMMs)与分层设计原则相结合,能够将多模态图形元素自动组合成一个整体、平衡且美观的图形设计。
它首先对给定的元素集进行层规划,将输入元素根据内容划分为不同的语义层,然后基于规划结果,以层为单位预测控制设计构图的元素属性,并将之前生成层的渲染图像纳入上下文,从而将复杂的任务分解为更易管理的小步骤,使生成过程更顺畅清晰。此外,LaDeCo还可以在图形设计中实现一些有趣的应用,如分辨率调整、元素填充、设计变化等。
实验结果表明,LaDeCo在设计构图方面优于现有基线模型,并且在一些设计子任务上甚至超过了专门的模型,还支持分辨率调整、元素填充、设计变体等有趣的应用。
论文地址:[2412.19712] From Elements to Design: A Layered Approach for Automatic Graphic Design Composition
-
效果展示
-
-
2.任务定义
为了减轻人类设计师的负担,最近,人们越来越有兴趣开发生成模型来简化这一过程。大多数现有工作都集中在设计组合的某些典型子任务上。
以前的方法
例如,一些以前的方法研究内容感知布局生成,其目的是在给定画布上自动排列图形元素,同时确保主对象保持合理布局。虽然这些方法能够创建高质量的布局,但它们通常只考虑背景图像内容,而忽略其他元素的内容。此外,它们在布局生成过程中不会预测与文本相关的属性,这限制了它们生成完全集成设计的能力。
另一个流行的子任务称为排版生成。它的目标是为文本元素生成字体、颜色、大小和其他属性,从而增强美观性和可读性。然而,它忽略了平面设计中的视觉元素。总之,所有这些研究都缺乏整体设计创作。因此,用户必须手动集成不同功能的模型来实现设计组合,这带来了高昂的成本和不必要的障碍。
据我们所知,FlexDM是自动设计组合的唯一尝试。通过将图形设计表示为元素属性的平面组合,FlexDM将各种设计任务制定为掩蔽字段预测问题,包括设计组合任务。
虽然平面表示提供了实用性和多功能性,但它有一个明显的局限性:它忽略了图形设计中固有的层次结构。这种层次结构的出现是因为人类设计师通常遵循分层设计原则。具体来说,它从背景开始,然后逐渐添加底层,图像,文本和小装饰(见上图)。这种分层原则带来了两个主要好处。首先,前面的每一层都为设计后续层提供了坚实的基础,有助于内聚。第二,按层对相似元素进行分组,澄清了设计过程,提高了工作流效率。
作者的方法
基于这一见解,作者提出了LaDeCo,这是一种基于大型多模态模型(Large Multimodal Models,LVMs)的分层设计组合方法。考虑到输入元素本质上是多模态的,并且可以通过顺序预测每个元素的属性来制定设计组合,作者选择Lebron作为这项任务的骨干。
为了支持分层机制,作者开发了一个层规划模块。具体来说,作者仔细设计了任务提示,并利用GPT-4 o通过考虑其内容来预测每个输入元素的语义标签。共享同一标签的元素被放置在同一层上,从而达到层规划。随后,LaDeCo根据层规划结果将生成过程分为几个步骤。在每一步中,都要求LMM预测单个层中的元素属性。在每一步之后,先前生成的层将被渲染为中间设计图像并反馈到LMM中,为后续的层预测提供上下文信息。
由于新颖的设计,LaDeCo将具有挑战性的任务分解为更小的可管理步骤。在每一步,模型只关注当前层的设计组合,使过程更容易访问。此外,通过渲染中间设计并将其添加到上下文中,模型可以更好地基于先前的层生成后续层。分层生成还提供了灵活性,允许LaDeCo支持设计组合的某些子任务,而无需任何特定于任务的培训,如第4.5节所示。
-
-
3.LaDeCo
方法概述
设计合成任务的输入和输出分别是一组多模态元素和元素属性。在获得预测属性的基础上,采用现成的渲染器将输入的元素渲染成整体的图形设计,从而实现设计合成。
在本文中,将输入元素分为两种模态:图像模态和文本模态。
- 对于图像模态元素,输出属性是四个边界框参数,即,左坐标和上坐标、元素宽度和高度。
- 对于文本模态元素,我们考虑另外八个属性,即角度、字体、字体大小、颜色、文本对齐、大写、字母间距和行高。这些属性足以描述高质量的设计。
-
在这项工作中,作者从分层设计原则中获得灵感,将整体平面设计分解为不同的层,并逐步创建这些层以达到完整的设计,使设计构图过程更加流畅和清晰。在这里,层是具有相同语义标签的图形元素的集合。
更具体地说,作者的方法包括两个关键技术,即层规划(Layer Planning)模块和分层设计组合过程。层规划模块负责将输入元素分类到预定义的层中。然后,在分层的设计组合过程中,作者的方法预测元素的属性在一个分层的方式,并聚集在一起,以获得完整的属性。
-
层规划(Layer Planning)
第一步是确定合理的层结构。通过检查大量已完成的设计作品并咨询经验丰富的设计师,在这项工作中,作者考虑了5个设计层,即背景层、装饰层、徽标/图像层、文本层和装饰层。通过在空画布G0上顺序渲染这些层,得到G1到G5(参见下图),其中G1仅表示背景层,G2包括背景层和背景层,依此类推,G5表示完整的最终设计。值得注意的是,层结构不限于作者提出的层结构。只要合理,可以灵活地增加或删除一些。
虽然公开可用的数据集不包含元素的任何层信息,但作者发现从元素内容进行推断是可行的。例如,一个纯色的矩形框可能是一个装饰,而一个带有星星的元素是一个装饰。因此,作者将层规划作为元素内容理解问题,并利用预训练的LMM来解决它。在实现中,作者使用GPT-4 o自动生成输入元素标签,从而实现层规划。
为了有效地指导GPT-4o,作者精心制作了提示,明确定义了问题,描述了每个元素标签的特征,并要求模型输出最适合输入元素的标签。除了可获得的真实设计的训练样本,还包括设计图像和一些元数据(例如,画布大小、元素大小)输入到模型中以提高预测精度。
-
分层设计组合
这里的主要思想是根据图层规划结果,从背景层到装饰层以分层的方式生成元素属性。先前层的渲染图像被合并到一起,用于预测后续层的上下文。
值得注意的是,这个过程需要对元素内容有很强的理解能力。例如,如图所示,带有电子邮件地址的文本元素应放置在画布的底部,而理发店徽标应放置在顶部。
同时,对中间结果的理解也很关键。例如,在同一个图中,模型应该通过理解中间渲染图像来避免遮挡物体。为此,作者求助于具有卓越理解能力的LMM,来为多模态设计元素建模分层设计过程。如图所示,在第i个设计层中,LMM为当前层的元素Xi预测属性集Yi。前面的层被渲染为图像,并被重新引入到LMM中,作为上下文输入的一部分,指导Yi的生成。
接下来,我们将详细介绍Xi和Yi的表示,以及模型架构。
Xi和Yi。一般来说,作者分别通过连接当前层的元素内容和属性来表示Xi和Yi。
对于背景层、装饰层、徽标/图像层和修饰层,输入都是视觉元素。因此,Xi是元素图像的组合(即,像素值)。对于文本层,作者将其文本内容连接在一起以构建Xi。
在Yi方面,作者遵循现有方法中结构化表示的趋势,并将元素属性序列化为JSON字符串。
值得注意的是,在每一层内,元素被随机打乱以防止信息泄漏(例如,自上而下的放置顺序)。在没有任何元素的设计层中,作者将其输入表示为null,将输出表示为空JSON字符串{}。
模型体系结构:该模型由三个部分组成:视觉编码器、投影层和LMM主干。
视觉编码器负责对元素图像和中间设计进行编码,生成图像嵌入。然后,投影层投影这些嵌入,以匹配主干所需的隐藏状态维度。最后,主干用于建模跨层的联合分布,以确保分层设计过程中的内聚性。为了降低计算复杂度,对视觉编码器的输出进行二维平均池化运算,有效地压缩了图像标记数。
-
训练和推理
训练:作者根据层规划结果预渲染和缓存中间画布状态。在训练过程中,作者通过最小化所有层中Yi的负对数似然来微调模型:
推理:在推理时,LaDeCo迭代生成G1 ~ G5的设计层,从而达到设计合成的目的。与一次生成全部属性相比,LaDeCo仅增加了约20%的渲染时间来获得中间设计,使其成为一种有效且高效的方法。
值得注意的是,LaDeCo在推理方面提供了显着的灵活性。它可以处理其他设计子任务,而无需任何特定任务的训练。例如,当提供真实背景层(G1),并且模型的任务是生成G2到G5时,它可以有效地实现内容感知布局生成。类似地,当G1到G3被给定为基础事实,并且模型被要求生成G4时,它也可以执行排版生成。
-
4.细节
数据集
作者在公开可用的Crello-v4 数据集上进行了实验,该数据集包含来自VistaCreate的23421个图形设计。由于Crello已经为所有元素提供了单独的渲染像素图像,因此可以方便地构建训练输入。
此外,基于像素图像获得的层规划结果,作者可以通过在OpenCOLE中开发的渲染器轻松地渲染训练样本的中间设计效果。
作者采用了与Crello-v4相同的数据分割,将数据集分为19095个训练样本、1951个验证样本和2375个测试样本。
为了提高训练效率,作者筛选出了超过25个元素的训练样本(总共938个示例)。
此外,作者收集了一个类似Crello的大规模商业数据集,研究了数据集大小对性能的影响。作者称之为LargeCrello。LargeCrello数据集总共包含109235个样本。作者还过滤掉了超过25个元素的样本,并手动验证了LargeCrello与Crello的测试集没有重叠。
详细数据
作者选择了最先进的开源大型语言模型(LLM)之一Llama-3.1-8B作为模型的主干。视觉编码器从CLIP ViT-L/14模型初始化,投影层被构造为使用GELU激活函数的两层MLP。
为了实现有效的训练,作者在主干上利用LoRA技术,在保持视觉编码器参数固定的同时,联合优化LoRA参数和投影层。
作者在四个A100- 80 G GPU上进行了训练,全局批量为128,并使用AdamW优化了约7K次迭代,学习速率为2 e-4。对于超参数,LoRA的秩数被设置为32,秩α为64,并且输入图像的令牌数被设置为5(1个cls令牌,2 × 2个压缩令牌)。
在推断时,作者将采样温度设置为0.7,将Top-p(核采样)设置为0.95,以平衡生成的设计的多样性和质量。
评估
基准:为了证明LaDeCo的有效性,作者将其与现有的方法进行了比较:FlexDM和GPT-4 o。
FlexDM最初在Crello-v2上进行实验,该版本具有与Crello-v4不同的数据集拆分。作者在升级后的v4数据集上重新训练它。为了适应设计合成,作者屏蔽了位置和文本属性字段,并同时对其进行预测。在GPT 4o基线中,作者以类似的方法的方式顺序连接元素内容,并提示GPT-4 o逐个生成它们的属性。对于分类属性(例如,字体),作者在上下文中提供了所有选项。
评估指标:
(1)总体指标。在COLE的基础上,作者引入了一个稳健的代理模型来进行综合评价。具体来说,作者使用LLaVA-OV-7 B模型来评估五个方面的质量:设计和布局、内容相关性、排版和颜色、图形和图像、创新和原创性。
(2)与几何图形相关的度量。这些指标仅关注元素的几何属性,而不考虑其内容,包括元素有效性、重叠、对齐和底图有效性。对于每个度量,它越接近于根据真实的数据计算的度量(在表中表示为GT),则越好。请注意,较高或较低的值本身并不表示性能更好。例如,模型可以始终将所有元素沿着画布的左侧放置以实现低对齐分数,但是这样的布置不会产生有意义的高质量设计。
评估结果
表1显示了定量结果。LaDeCo在总体指标上显著优于基线模型(即,LLaVA-OV评分),表明LaDeCo在设计构图方面的优越性。特别是,LaDeCo在设计和布局以及排版和颜色方面取得了非常好的成绩。这表明LaDeCo擅长布局生成和细致入微的属性预测,这两者对于设计创作至关重要。在几何相关的指标方面,LaDeCo在大多数指标上的得分接近于在真实的数据(表示为GT)上计算的得分,展示了其对真实世界数据建模的强大能力。相比之下,基线模型通常会遇到一些指标。例如,FlexDM表现出严重的重叠问题,而GPT 4 o具有低重叠效率。
表2显示了消融研究的结果。
(1)LoRA中的等级编号:当秩数从16变化到32,然后变化到64时,定量度量显示出很小的变化,这表明LaDeCo相对于训练参数量具有鲁棒性。
(2)基础模型:作者采用另外两个预先训练好的LLM,llava-v1.5- 7 b和Llama-3. 18 B-Instruct,作为骨干。与之前的消融研究相似,作者的LaDeCo对基础模型的选择具有稳健性。
(3)LaDeCo中的关键技术:作者考虑两种设置。首先,作者移除分层设计组成(LDC),并使用模型来顺序地预测所有元素属性,而不将中间渲染层作为输入。这导致五个总体指标和两个底层有效性指标下降,表明LDC在设计组合中的重要性。其次,作者继续移除层规划(LP)模块,并使用随机排序的设计元素来构造输入-输出表示。上述度量显示了显著的下降,这表明按照层次结构排列元素在设计组成中确实起着关键作用。
(4)数据集大小:当在组合数据集上训练模型时,大多数定量度量都得到了显著改善,并且更接近于地面真实值。实验结果表明,LaDeCo算法在数据集大小方面具有可扩展性。
图8显示了定性结果。LaDeCo在生成布局方面表现出色,可以防止在给定画布内阻塞主要内容。排版生成。
作者利用发布的Typography LMM模型进行比较。图9显示了结果。LaDeCo在排版生成过程中考虑了文本布局、美学和可读性等各个方面。相比之下,基线模型则存在文本重叠和可读性差的问题。
-
-
5.总结
本文引入了LaDeCo进行设计合成。其主要思想是将分层原理在实际设计过程中产生的固有层次结构集成到LMM中。具体地,层规划模块基于输入元素的内容将输入元素分类到不同的层中,并且分层设计合成过程通过使用所呈现的先前层作为上下文来预测控制合成的属性。
喜欢就点个赞吧!
如果你觉得这篇文章对你有所帮助,或者让你眼前一亮,那就快来给我点个赞吧!👍
你的点赞是我持续创作的动力源泉,每一次点赞都像一束光,照亮我前行的道路,让我更有信心为大家带来更多精彩的内容。
同时,也别忘了关注我哦!👀 关注我,你就能第一时间获取到更多有趣、有用的知识和见解,我们可以在知识的海洋里一起遨游,共同成长。
如果这篇文章的内容你特别喜欢,还可以收藏起来呀!⭐️ 收藏它,以后想回顾的时候就能轻松找到,方便又实用。
感谢你的支持,让我们一起在知识的道路上越走越远!