MV-Adapter是一个具备多种用途且即插即用的adapter(适配器),它能将现有的预训练文生图(T2I)扩散模型转换为多视角图像生成器。
现有的多视图生成方法通常会损害到预训练的文生图模型,并且需要全参数微调,这导致计算成本巨高,尤其是大型底模和高分辨率图像。另外由于优化困难以及高质量3D数据的稀缺会导致生成图像质量下降。这篇文章的亮点是提出来首个基于adapter的多视角图像生成解决方案,并且避免了修改原始网络的结构和特征空间。仅仅通过更新少量参数,它就能进行高效训练并且保留嵌入到预训练模型中的先验知识,避免过拟合风险。
作者提出了一个创新性的设计,包含了一个复制的自注意力层和并行的注意力架构,确保adapter 能继承预训练模型的强大先验。另外作者提出了一个统一的条件encoder,能无缝整合camera参数和几何信息,有利于基于文本或图像的3D生成和纹理化。其他特点:
- 底模:SDXL;
- 分辨率:768x768。
下图中第1、2、3行分别展示了将MV-Adapter嵌入个性化的T2I模型、蒸馏后的few-step T2I模型、ControlNet模型的结果,彰显了它的适应性。下图的第5、6行则展示了不同控制信号的输出结果,包括了使用文本或图像输入来进行view-guided或geometry-guided的生成,突出了它的多用途能力。
下图展示了MV-Adapter的overview。它包含两个部分:(1)用于编码camera(相机)或几何条件的条件引导器【Condition Guider】;(2)解耦的注意力层,包含了用于学习多视角一致性的【Multi-view Attention】,和可以选择的【image Cross-Attention】图像交叉注意力模块(用于支持图像条件生成,使用时会采用预训练的U-Net编码参考图像细粒度的信息)。训练完毕后,MV-Adapter能嵌入任何个性化的或蒸馏的T2I(文生图模型),中利用底模的特定优势生成多视角的图像。
下图展示了MV-Adapter的推理pipeline:
MVAdapter 技术设计的核心:它并非通过单一的技巧,而是通过架构设计和信息流的巧妙结合来保证多视角一致性的。
我们先用一个类比来理解,然后再深入技术细节。
类比:一个团队的艺术家和一位总监
想象一下,你雇佣了一个由四位艺术家组成的团队,让他们从四个不同的角度(正面、背面、左侧、右侧)画同一个茶壶。
-
天真/失败的方法(不一致): 你给每位艺术家一间独立的画室、一块画布,以及一张从他们各自角度拍摄的茶壶照片。他们独立工作。结果呢?你得到的四幅画很可能是不一致的。颜色可能略有不同,纹理无法完全匹配,形状也可能有细微的差异。它们看起来不像是属于同一个茶壶。
-
MVAdapter 的方法(一致): 你把所有四位艺术家都安排在同一个房间里工作。
-
共享的蓝图: 房间中央有一份关于茶壶核心本质(如形状、材质、纹理)的“主设计蓝图”。这份蓝图在不断完善,并且对所有人可见。这就是共享信息。
-
专属的指令: 每位艺术家都收到一个特定的指令:“你,根据蓝图来画,但要从正面来渲染。”“你,从左侧来渲染。” 这就是视角特定信息(摄像机姿态)。
-
总监 (MVAdapter): 一位总监在艺术家之间巡视。他的工作是看着中央的蓝图,然后告诉每位艺术家如何从他们独特的角度,正确地将这份蓝图“投影”到自己的画布上。最关键的是,是同一位总监在指导所有人。 因为总监是同一个人,他对蓝图的理解和诠释就是一致的。他会确保“正面视图”的艺术家画的把手,和“左侧视图”的艺术家画的把手能够完美匹配。
-
这个“总监”模型,正是 MVAdapter 所做的事情。
实现一致性的技术机制
MVAdapter 主要通过以下两大机制来强制实现一致性:
1. 共享的特征空间(“共享的蓝图”)
系统的核心仍然是标准的文本到图像模型(如Stable Diffusion),它使用UNet架构。当你让 MVAdapter 生成4个视图时,它不是独立地运行模型4次,而是在单次前向传播中,将所有4个视图作为一个批次(batch)来处理。
-
这意味着什么: 在UNet内部,代表物体“是什么”(例如,茶壶的身份、陶瓷的纹理、蓝色的外观)的特征是一起被处理的。这创造了一个共享的、与视图无关的特征空间。所有四个视图的生成过程都从这个相同的核心信息池中汲取养分。它们从一开始就被迫对物体的基本外观达成共识。
2. 共享的Adapter模块与视角引导(“同一位总监”)
这是最关键的部分。MVAdapter 模块本身就是一致性的钥匙。
-
单一的权重集: MVAdapter 是一个小型神经网络。在生成多个视图时,是同一个、拥有完全相同权重的Adapter模块被应用到了每个视图的生成过程中。它不是四个不同的Adapter,而是一个Adapter在单次处理中被使用了四次。
-
融合共享与专属信息: Adapter被策略性地插入到UNet的注意力层中。在这些关键节点,它执行一项至关重要的融合任务:
-
它接收来自UNet的共享特征(“是什么”,即“茶壶的本质”)。
-
它接收该特定视图的视角特定信息(“从哪里看”,即摄像机的角度)。
-
然后它计算出如何**修改或“引导”**这些共享特征,以正确地呈现那个特定的视角。
-
因为是同一个Adapter为所有视图执行这个任务,所以它为“物体从任何给定角度应该是什么样子”学习到了一套单一且一致的“规则”。它不可能为正面视图学到一套规则,又为侧面视图学到一套相互矛盾的规则,因为它的权重是共享的。这迫使它隐式地学习了物体底层的3D几何结构。
可以把它想象成一个函数 f:
最终视图特征 = f(共享物体特征, 摄像机姿态信息)
由于函数 f(即Adapter的权重)对于所有视图都是相同的,因此共享物体和最终渲染视图之间的关系,是由一个统一、一致的逻辑来控制的。
总结:一致性是如何被强制实现的
机制 | 类比 | 技术细节 |
批次处理 (Batch Processing) | 所有艺术家同时围绕同一份“蓝图”工作。 | 所有视图在UNet中作为单个批次处理,创建了一个代表物体核心身份的共享特征空间。 |
共享的MVAdapter模块 | 同一位“总监”在指导所有艺术家。 | 一个拥有单一权重集的Adapter模块被用于所有视图。它学习了一套一致的规则,根据摄像机姿态将共享特征转化为特定视角的渲染。 |
通过将这两种策略结合起来,MVAdapter 确保了虽然每张输出图像展示了不同的视角,但它们都明确无误地描绘了完全相同的物体,从而产生了高度的多视角一致性,为后续的3D重建做好了准备。