本文第一作者包括北京大学博士生胡珈魁与清华大学硕士生杨羽霄;通讯作者为北京大学助理教授卢闫晔与(前)百度视觉技术部刘家伦。
MVAR 拉近了纯自回归方法与最先进的基于扩散的多视图图像生成方法的生成图像质量,并成为能够处理同时多模态条件的多视图图像生成模型。
论文地址:https://arxiv.org/pdf/2506.18527代码地址:https://github.com/MILab-PKU/MVAR/
推理代码、权重、渲染的 GSO 及其配套的 Prompt 已全部开源。
背景与动机
根据人工指令生成多视图图像对于 3D 内容创作至关重要。主要挑战在于如何在多视图之间保持一致性,以及如何在不同条件下有效地合成形状和纹理。此前的工作主要使用 Diffusion 模型中自带的多视角一致性先验,促进多视角一致图像生成。但是 Diffusion 模型存在一些先天劣势:
绝大多数 Diffusion 模型同时多个视角;单一 Diffusion 模型难以接受多模态控制条件;
如上图左所示,当使用 Diffusion 模型从相隔较远的视角合成图像时,参考图像和目标图像之间的重叠度会显著降低,从而削弱了参考引导的有效性。
在极端情况下,例如从前视角生成后视角图像,由于重叠纹理极少,视觉参考信息几乎可以忽略不计。这种有限的参考信息可能会导致模型生成的多视角图像不够一致。
为了解决这一局限性,我们提出采用自回归 (AutoRegressive, AR) 生成方法进行多视图图像生成。
如上图右所示,在基于 AR 的生成中,模型利用前 n-1 个视图的信息作为生成第 n 个视图的条件,从而允许模型利用先前生成的视图的信息。在从前视图参考生成后视图的场景中,AR 生成模型会从先前的视图中提取足够且相关的参考。
值得注意的是,AR 生成过程与人类观察 3D 物体的方式高度一致。人类也是按照一个特定且连续的路径观察物体的多个视角,而非如 Diffusion 一样同时观察多个视角。
受此概念的启发,我们提出了多视图自回归 (MVAR) 模型。
MVAR
MVAR 的主要目的是探究 AR 形式(此处的 AR 是狭义上的 AR 模型,仅仅指代 next token prediction 这一范式)的生成方法在多视角生成问题中的优势、劣势(及其对应的解决方案)。
我们将首先简单介绍什么是基于自回归的图像生成。
前置知识:什么是 AR 生成?
给定一个长度为 T 的序列 x,AR 模型试图根据以下公式推导其分布:
其中, x_i 表示序列 x 中的第 i 个数据点,表示索引小于 t 的向量。训练 AR 模型 p_θ 意味着该模型将在大规模图像序列上学习如何优化。
在一般的图像生成任务中,x 来源于视角编码器 ε(⋅) ,如:VQGAN、量化器 Q 、及其码本 Z 。从图像 I 到序列 x 的公式如下:
其中, lookup (Z,v) 表示从码本 Z 中检索第 v 个向量。 x 的上标 (i-1)*w+j 表示 x 被展平,即原本位于二维坐标 (i,j) 的数据被变换到其一维对应位置 (i-1)*w+j 。
多视角图像生成中的AR
多视角情况下,由于存在多张图象,其相对于一般的 2D 图像多出了一个维度,这一维度可以被简单的理解成「时间」维度。
与视频不同,视频的不同帧之间有固定的时序关系,多视角图像之间并没有固定的时序关系,我们可以从很多条不同的时序轨迹去合成多视角图像。这一问题我们将在后续讨论。
于是,我们可将上式进行简单的扩展,使得 AR 能够适配多视角图像生成:
其中, n 代表第 n 个视角。
AR模型生成多视角图像有何问题
多视图生成的多条件控制、有限的训练数据,为 AR 在多视角图像任务的应用带来了许多阻碍。本博文简要介绍了其中两点:
多模态条件控制。生成多视图图像的任务需要模型能够熟练地从各种条件中提取特征,并生成与给定条件保持一致的多视图图像。AR 模型中条件注入的方法尚未得到广泛研究,如:相机姿态、参考图像和几何形状。有限的高质量数据。经验表明,AR 模型需要大量高质量数据(例如数十亿条文本)才能实现饱和的模型训练。然而,3D 物体与高质量多视图图像的样本匮乏,严重阻碍了 MVAR 模型训练的充分性。
MVAR给出的解决方案
我们分别针对这些问题给出了特定的解决方案。
多模态条件嵌入网络架构:文本、相机位姿、图像、几何。
我们通过一些架构设计解决多模态条件嵌入,并试图避免简单的 in-context 条件注入形式可能带来的多模态塌缩问题。MVAR 的具体的网络架构如上图所示,其基础模型架构参考了 LLaMa;对于不同的模态,我们使用的条件注入方法整理如下:
文本:分离式自注意力机制 (SSA);相机位姿:位置编码(将相机位姿进行普朗克编码后);参考图像:图像变换与逐 token 加法;几何:in-context.
以上条件注入结构设计遵从以下核心原则:
与输出能大致逐像素匹配的(如:普朗克编码后的相机位姿、参考图像、深度图),使用逐像素加法进行条件注入;完全不能逐像素匹配的(如:文本、几何),使用 in-context 条件注入。
具体来说,对于文本和几何,我们主要基于 in-context 条件注入形式,并引入了条件与内容分离的自注意力形式,公式如下:
其中是文本特征, 是图像特征。 Concat(⋅) 在 token 维度上连接特征,而 Chunk(⋅) 是 Concat(⋅) 的逆运算。SSA 的宗旨是在引入条件的同时,不改变条件在 token 维度的分布。
对于相机位姿和参考图像,我们主要基于逐像素加法这一条件注入形式。
对于参考图像,其特征在传入 MVAR 前,需要与相机位姿 进行交叉注意力,从而将第 n 个视角的参考图像特征图初步变换到第 m 个视角。
值得注意的是,相机位姿与参考图像的条件在 token 维度存在错位:
相机位姿用于提示 MVAR ,下一 token 应当生成何种视角下哪一 patch 的图像内容,所以其相对于生成的 token 需要进行错位。(类似 RAR 一文中的 target-aware position embedding)参考图像用于告知 MVAR ,当前 token 的生成应当与给定的条件特征逐像素的对应,所以其与生成 token 并无错位。
数据增强
我们主要提出了适配自回归式生成的 Shuffle View (ShufV) 数据增强策略,他的动机在于通过使用不同 order 的相机路径作为训练从而增广有限的高质量数据。其公式如下:
其中 S 表示随机序列。表示第 n 个视图的图像现在被用作训练序列 x 中的第 个视图。
由于 self attention 和 FFN 都具有置换等变性。因此,输入序列顺序的变化将导致模型中间特征序列顺序的相应变化。为了确保辅助条件(例如相机姿态和参考图像)能够有效地引导模型按照预定顺序生成图像,必须重新排列这些条件。这种重新排序将确保条件序列与输入序列的序列对齐。
我们认为 ShufV 在增广有限的高质量数据问题的同时,有助于缓解多模态条件控制中的部分问题:
AR 模型难以利用连续视图和当前视图之间的重叠条件。
使用 ShufV 进行数据增强时,视图的顺序不是固定的。假设输入序列 x 中存在两个视图 A 和 B。ShufV 使 MVAR 能够在训练阶段获得从视图 A 到视图 B 以及 视图 B 到视图 A 的转换。这允许模型利用当前视图和其他视图之间的重叠条件并有效地使用它们。
渐进式学习
最后,我们使用渐进式学习,将模型从仅接受文本条件的 text to multi-view image (t2mv) 模型泛化到 any to multi-view image (x2mv) 模型。
在 x2mv 模型的训练过程中,文本条件会被随机丢弃,而其他条件则会随机组合。当文本提示被丢弃时,它会被替换为与目标图像无关的语句。例如,可以使用诸如 「Generate multi-view images of the following
实验结果
MVAR 拉近了基于 AR 的多视角生成模型与现有的 Diffusion 模型的差距,并展示出更强的指令遵从与多视角一致性。
图生多视角图像
其中,红色表示最优、蓝色表示次优。
MVAR 的表现上有着最高的PSNR、次优的SSIM,但在LPIPS这一感知指标上仍有些逊色。更高的PSNR意味着生成的视角与对应的GT能更好的进行颜色、形状、物体位置上的对齐;略低的 LPIPS 意味着 MVAR 在实际图像质量上可能相对于Diffusion略逊一筹。
我认为 MVAR 生成的图像感知质量较差的原因是因为 MVAR 使用的基础模型 LLamaGen 相比 Diffusion-based 方法使用的基础模型 SD 系列要差一些。不过随着现有基于 AR 的图像生成基础模型的发展,我相信基于 AR 的多视角生成的感知质量将会很快追上并超过已有 Diffusion-based 方法。
更多结果欢迎大家在 arxiv 查看,或在 github 上下载代码与权重自行生成。
未来工作
- 更优的标记器。本文未使用 3D VAE 的原因是:其编码过程中视图之间会进行信息交换,这与我们研究的核心动机相悖。我们将在未来专注于通过使用连续的因果 3D VAE 对多视图图像进行分词来提升性能。统一生成和理解。本研究使用增强现实 (AR) 模型来完成多视图图像生成任务。在未来的工作中,我们希望利用自回归模型的通用学习能力来统一多视图生成和理解任务,尤其是在难以获得高精度 3D 数据的场景理解生成任务上。
© THE END
转载请联系本公众号获得授权
投稿或寻求报道:liyazhou@jiqizhixin.com
文章原文