ICLR2024佳作:多视图Transformer再次升级,直接感知三维几何信息

本文主要是介绍ICLR2024佳作:多视图Transformer再次升级,直接感知三维几何信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文标题:

GTA: A Geometry-Aware Attention Mechanism for Multi-View Transformers

论文作者:

Takeru Miyato, Bernhard Jaeger, Max Welling, Andreas Geiger

导读:

本文提出一种几何感知注意力机制,替换Transformer中原有的位置编码方式,使得Transformer更好地学习3D几何结构,有效提取3D特征信息。©️【深蓝AI】编译

1. 摘要

由于Transformer作用等价于输入标记的置换,因此许多任务都需要对标记的位置信息进行编码。然而,目前的位置编码方案是为NLP任务设计的,因此它们是否适合视觉任务还存在疑问,主要原因是视觉任务的数据通常具有不同的结构属性。作者认为,现有的位置编码方案对于3D视觉任务来说并不合理,因为它们并不遵从其底层的3D几何结构。基于这一假设,本文提出了一种几何感知注意力机制,该机制将标记的几何结构编码为由查询和键值对之间的几何关系决定的相对变换。通过在稀疏和宽基线多视图设置的新视图合成(NVS)数据集上进行评估,实验表明,作者的注意力【几何变换注意力(GTA)】机制提高了基于Transformer的最先进NVS模型的学习效率和性能,而无需任何额外的学习参数,计算开销也很小。

在这里插入图片描述
图1|GTA机制示意图©️【深蓝AI】编译

在这里插入图片描述
图2|合成实验示意图©️【深蓝AI】编译

2. 引言

Transformer模型由一组排列对称的网络层组成,它将输入标记作为一个集合进行处理,缺乏对标记结构信息的直接感知。因此,Transformer模型并不能完全感知输入标记的结构,如NLP中的词序或图像处理中图像像素或斑块的2D位置。

让Transformer具有位置感知能力的一种常见方法是通过向量嵌入:在NLP中,一种典型的方法是将单词标记的位置值转化为嵌入向量,然后添加到输入标记或注意力权重中。虽然这些位置编码技术最初是为NLP设计的,但如今已广泛应用于2D和3D视觉任务。

于是,一个自然而然的问题出现了:

“现有的编码方案是否适用于几何结构不同的任务?例如,考虑使用多视角图像和相机变换的 3D 视觉任务。”

多视角图像背后的3D欧几里得对称结构比一维文字序列更为复杂,如果采用典型的向量嵌入方法,模型的任务是挖掘出嵌入在标记中的有用的相机姿势,因此很难理解非交换欧几里得变换的效果。

作者的目标是寻求一种原则性的方法,将标记的几何结构纳入Transformer中。为此,本文引入了一种方法,将标记关系编码为矩阵变换的方法。更具体地说,作者利用由查询和键值标记之间的几何关系,然后将这些矩阵变换应用于键值对,从而使模型能够在对齐的坐标空间中计算QKV注意力。

作者在几项具有稀疏和宽基线多视图设置的新视图合成(NVS)任务中评估了所提出的注意力机制,这些任务尤其艰巨,模型需要从多个训练场景中学习强大的三维几何先验。作者的研究表明,现有的位置编码方案是次优的,而本文提出的几何感知注意力【即几何变换注意力(GTA)】,只需用 GTA 替代现有的位置编码,就能显著提高基于Transformer的最先进 NVS 模型的学习效率和性能。

在这里插入图片描述
图3|合成实验结果对比©️【深蓝AI】编译

3. 相关工作

给定标记特征 X ∈ R n × d X\in \mathbb{R}^{n\times d} XRn×d,注意力层的输出 O ∈ R n × d O \in \mathbb{R}^{n\times d} ORn×d具体计算如下:

O : = A t t n ( Q , K , V ) = s o f t m a x ( Q K T ) V O := {\rm Attn}(Q, K, V) = {\rm softmax}(Q K^{\rm T})V O:=Attn(Q,K,V)=softmax(QKT)V

其中 Q , K , V = X W Q , X W K , X W V ∈ R n × d , W { Q , K , V } ∈ R d × d Q,K,V=XW^Q,XW^K,XW^V\in \mathbb{R}^{n\times d}, W^{\{Q, K, V\}}\in \mathbb{R}^{d\times d} Q,K,V=XWQ,XWK,XWVRn×d,W{Q,K,V}Rd×d,并且 ( n , d ) (n, d) (n,d)分别是标记的数量和通道维度。注意,上述公式中的输出与键值向量索引的排列无关。为了打破这种排列对称性,作者明确地将位置信息编码到Transformer中,这就是位置编码(PE)。原始Transformer通过为所有输入标记添加嵌入来纳入位置信息。这种绝对位置编码(APE)方案的形式如下:

s o f t m a x ( ( Q + γ ( P ) W Q ) ( K + γ ( P ) W K ) T ) ( V + γ ( P ) W V {\rm softmax}\left((Q+\gamma({\bf P})W^Q)(K+\gamma({\bf P})W^K)^{\rm T}\right) (V+\gamma({\bf P})W^V softmax((Q+γ(P)WQ)(K+γ(P)WK)T)(V+γ(P)WV

其中 P \bf P P表示标记 X X X的位置属性,而 γ \gamma γ是PE的函数, γ \gamma γ通常是正弦函数,它将位置值转换为具有多个频率的傅里叶特征。也有人提出了另一种 PE 方法,将每对查询和关键值标记之间的相对距离编码为偏差,添加到注意力操作的每个分量中:

s o f t m a x ( Q K T + γ r e l ( P ) ) ( V + γ r e l ′ ( P ) ) {\rm softmax}\left(QK^{\rm T} + \gamma_{\rm rel}({\bf P})\right)(V+\gamma'_{\rm rel}({\bf P})) softmax(QKT+γrel(P))(V+γrel(P))

其中, γ r e l ( P ) ∈ R n × n a n d γ r e l ′ ( P ) ∈ R n × d \gamma_{\rm rel}({\bf P})\in \mathbb{R}^{n\times n}\ and \ \gamma'_{\rm rel}({\bf P})\in \mathbb{R}^{n\times d} γrel(P)Rn×n and γrel(P)Rn×d是取决于标记之间距离的偏差项。这种编码方案被称为相对位置编码(RPE),可确保嵌入不依赖于序列长度,从而提高长度泛化能力。

继在NLP领域取得成功之后,Transformer在各种基于图像的计算机视觉任务中也显示出了其功效。这些算法使用APE或RPE的变体应用于2D位置信息,使模型意识到2D图像结构。不同研究的实施细节各不相同,除了2D视觉,基于Transformer的模型在3D视觉中的应用也在激增。

在3D视觉中,已经涌现了各种PE方案,主要依赖于基于APE或RPE的编码。在NVS中,通过向标记添加线性变换的扁平相机外参矩阵来嵌入相机外参信息。此外还有将相机外参和内参信息通过添加或连接到标记的射线嵌入进行编码。也有人使用射线信息,并通过链接到每对查询和关键标记的射线信息计算出的射线距离来偏置注意力矩阵。3D检测和分割中的另一个挑战是输出通常在正交相机网格中,与透视相机输入不同。

此外,由于使用高分辨率特征网格,因此通常需要稀疏注意力机制。也有方案对查询使用可学习PE,而对键和值不使用PE。有学者发现在使用可变形注意力时,对每个摄像机使用标准可学习PE并不能提高性能。还有通过为每个像素生成多个深度的3D点并在用MLP编码后将这些点添加到图像特征中,将PE添加到键和值中。使用摄像机参数学习位置嵌入,并将它们应用于查询和键,以模仿摄像机和目标世界坐标之间的关系。还有人通过使用深度信息将图像标记与其3D位置联系起来,从而提高了性能。

在点云Transformer中,有人使用APE对点云的三维位置进行编码。也有使用基于RPE的注意力机制,将标记之间的距离或角度差作为几何信息。基于外极点的采样技术用于在注意力层中采样输入视图的几何相关标记,其中关键标记和值标记沿目标视图和输入视图之间由相机参数确定的外极线采样。

在这里插入图片描述
图4|几何属性©️【深蓝AI】编译

4. 通过相对变换进行几何编码

在这项工作中,作者的重点是新视图合成(NVS),这是3D视觉中的一项基本任务。NVS任务是在一组场景上下文视图及其视点信息(表示为4 × 4外在矩阵,每个矩阵将世界坐标中的三维点映射到摄像机坐标中的相应点)的条件下,从新颖视图预测图像。NVS任务要求模型直接从原始图像输入中理解场景几何。

现有摄像机变换编码方案的主要问题是没有遵循欧几里得变换的几何结构。在上述内容中,嵌入被添加到每个标记或注意力矩阵中。然而,多视角图像背后的几何结构受欧几里得对称性的制约。当视角发生变化时,物体在摄像机坐标中的姿态变化是根据相应的摄像机变换计算出来的。

本文提出的方法通过QKV特征的相对变换,将几何变换直接纳入变换器的注意机制。具体来说,每个键值标记都通过相对变换进行转换,而相对变换是由查询和键值标记之间的几何属性决定的。这可以看作是坐标系对齐,类似于计算机视觉中的几何处理:

当比较两组各自在不同相机坐标空间中表示的点时,作者使用相对变换 c c ′ − 1 c c'^{-1} cc1移动其中一组,以获得在同一坐标空间中表示的所有点。这里的 c c c c ′ c' c是各自点集的外特征,作者的注意力机制在注意力特征空间内执行这种坐标对齐。通过这种对齐,模型不仅能在同一参考坐标空间中比较查询向量和关键向量,还能在每个标记的对齐局部坐标中的残差路径上执行因值向量变换而导致的注意力输出加法。

这种将变换直接应用于注意力特征的方法,与经典的变换自动编码器、胶囊神经网络和等变表示学习模型有着相同的理念。在这些研究中,几何信息是作为神经网络潜变量的一种变换来提供的。假设 Φ ( x ) \Phi(x) Φ(x)是一个编码特征,其中 Φ \Phi Φ是一个神经网络, x x x是一个输入特征, M M M是一个相关变换(如旋转)。然后,(\Phi(x), M ) \mathcal{M}) M) M Φ ( x ) \mathcal{M} \Phi(x) MΦ(x)被识别。作者将这种特征变换整合到注意力中,以打破其排列对称性。

· 群和表示:

首先简要介绍一下群和表示的概念,因为作者通过群论的语言来描述他们提出的关注点,群论以统一的方式处理不同的几何结构,如相机变换和图像位置。简而言之,具有元素的群是一个关联集,在乘法下是封闭的,具有同一元素,每个元素都有一个逆元素。例如,摄像机变换集符合群公理,被称为特殊欧几里得群: S E ( 3 ) SE(3) SE(3)。具体可以表示为一个函数 ρ : G → G L d ( R ) \rho: G \rightarrow GL_d(\mathbb{R}) ρ:GGLd(R),满足 ρ ( g ) ρ ( g ′ ) = ρ ( g g ′ ) \rho(g)\rho(g') = \rho(g g') ρ(g)ρ(g)=ρ(gg),对于任何 g , g ′ ∈ G g, g' \in G g,gG。符合 ρ ( g ) ρ ( g ′ ) = ρ ( g g ′ ) \rho(g)\rho(g') = \rho(g g') ρ(g)ρ(g)=ρ(gg)关系的属性被称为同态。这里, G L d ( R ) GL_d(\mathbb{R}) GLd(R)表示 d × d d \times d d×d可逆实值矩阵的集合。对于元素 g g g可以表示为 ρ g : = ρ ( g ) ∈ R d × d \rho_g := \rho(g) \in \mathbb{R}^{d\times d} ρg:=ρ(g)Rd×d。针对 g ∈ S E ( 3 ) g\in SE(3) gSE(3)的一个简单表示 ρ g \rho_g ρg,是一个 4 × 4 4\times4 4×4刚性变换矩阵 [ R T 0 1 ] ∈ R 4 × 4 \left[\begin{smallmatrix} R & T \\ 0 & 1 \end{smallmatrix}\right] \in \mathbb{R}^{4\times 4} [R0T1]R4×4,其中 R ∈ R 3 × 3 R \in \mathbb{R}^{3\times 3} RR3×3是一个3D旋转量, T ∈ R 3 × 1 T\in \mathbb{R}^{3 \times 1} TR3×1是一个3D平移量。

在这里插入图片描述
表1|不同表示法的矩阵形式©️【深蓝AI】编译

4.1 几何转变注意力

假设具有标记特征 X ∈ R 3 × 1 X\in \mathbb{R}^{3 \times 1} XR3×1和一组几何属性 g = [ g 1 , … , g n ] {\bf g} = [g_1, \dots, g_n] g=[g1,,gn],其中 g i g_i gi是第 i i i个标记的几何属性,用群元素表示。例如,每个 X i ∈ R d X_i\in \mathbb{R}^d XiRd对应于一个批次的特征, g i g_i gi对应于相机转换和一个图像批次的位置。给定一个表示 ρ \rho ρ Q , K , V = X W Q , X W K , X W V ∈ R n × d Q, K, V = XW^Q, XW^K, XW^V\in\mathbb{R}^{n\times d} Q,K,V=XWQ,XWK,XWVRn×d,作者针对给定查询 Q i ∈ R d Q_i\in \mathbb{R}^d QiRd定义他们的几何感知注意力如下:

O i = ∑ j n exp ⁡ ( Q i T ( ρ g i g j − 1 K j ) ) ∑ j ′ = 1 n exp ⁡ ( Q i T ( ρ g i g j ′ − 1 K j ′ ) ) ( ρ g i g j − 1 V j ) O_i =\sum_j^{n} \frac{\exp ({Q_i^{\rm T} (\rho_{g_i g_j^{-1}} K_j))}}{\sum_{j'=1}^{n} \exp(Q_i^{\rm T} (\rho_{g_i g_{j'}^{-1}} K_{j'}))} (\rho_{g_i g_j^{-1}} V_{j}) Oi=jnj=1nexp(QiT(ρgigj1Kj))exp(QiT(ρgigj1Kj))(ρgigj1Vj)

利用同态性质 ρ g i g j − 1 = ρ g i ρ g j − 1 \rho_{g_i g_j^{-1}} = \rho_{g_i} \rho_{g_j^{-1}} ρgigj1=ρgiρgj1,上述等式可以改写为:

O i = ρ g i ∑ j n exp ⁡ ( ( ρ g i T Q i ) T ( ρ g j − 1 K j ) ) ∑ j ′ = 1 n exp ⁡ ( ( ρ g i T Q i ) T ( ρ g j ′ − 1 K j ′ ) ) ( ρ g j − 1 V j ) O_i =\rho_{g_i} \sum_j^{n} \frac{\exp ((\rho_{g_i}^{\rm T} Q_i)^{\rm T} (\rho_{g_j^{-1}} K_j))}{\sum_{j'=1}^{n} \exp((\rho_{g_i}^{\rm T} Q_i)^{\rm T} (\rho_{g_{j'}^{-1}} K_{j'}))} (\rho_{g_j^{-1}} V_{j}) Oi=ρgijnj=1nexp((ρgiTQi)T(ρgj1Kj))exp((ρgiTQi)T(ρgj1Kj))(ρgj1Vj)

值得注意的是,上述转换后的公式计算和内存使用更加有效,针对每个 ( ρ g i g j − 1 K j , ρ g i g j − 1 V j ) (\rho_{g_i g_j^{-1}} K_j, \rho_{g_i g_j^{-1}} V_j) (ρgigj1Kj,ρgigj1Vj),转换前公式需要 n 2 n^2 n2量级的计算和存储消耗,转换后公式针对 ( ρ g i T Q i , ρ g j − 1 K j , ρ g j − 1 V j ) (\rho_{g_i}^{\rm T} Q_i, \rho_{g_j}^{-1} K_j, \rho_{g_j}^{-1} V_j) (ρgiTQi,ρgj1Kj,ρgj1Vj) ρ g i O ^ i \rho_{g_i} \hat{O}_i ρgiO^i只需要 n n n量级的计算和存储消耗。

转换后的公式计算所有查询 Q Q Q,并且可以紧凑地重写为便于实施的形式:

O = P g ⊚ A t t n ( P g T ⊚ Q , P g − 1 ⊚ K , P g − 1 ⊚ V ) O = P_g \circledcirc {\rm Attn}\left( P_g^{\rm T} \circledcirc Q, P_g^{-1} \circledcirc K, P_g^{-1} \circledcirc V\right) O=PgAttn(PgTQ,Pg1K,Pg1V)

其中, P g P_g Pg表示不同标记的表示法列表: P g : = [ ρ g 1 , … , ρ g n ] P_g:=[\rho_{g_1}, \dots, \rho_{g_n}] Pg:=[ρg1,,ρgn]并且 “ ⊚ ” “\circledcirc” 表示标记级别的矩阵乘法: P g ⊚ K = [ ρ g 1 K 1 ⋯ ρ g n K n ] T ∈ R n × d P_g \circledcirc K = \begin{bmatrix} \rho_{g_1} K_1 \cdots \rho_{g_n} K_n \end{bmatrix}^{\rm T} \in \mathbb{R}^{n \times d} PgK=[ρg1K1ρgnKn]TRn×d,本文将上述的注意力机制叫做几何转换注意力(GTA)。注意的是,从一组小矩阵构建 ρ g \rho_g ρg时,GTA的额外计算量要小于QKV注意和变换器中的MLP。

· 一个简单的NVS实验:

作者首先证明,在简化的NVS实验中,与APE和RPE相比,GTA提高了学习效果。作者通过构建了一个仅与摄像机旋转相关的场景,以证明的复杂度可以根据问题的复杂度进行调整。作者考虑的是一个单一的空场景,周围是一个球体,其纹理如图2所示。所有摄像机都放置在场景中心,可以旋转,但不能平移。每个场景由8幅分辨率为32x32 像素的背景图像组成,采用针孔摄像机模型进行渲染。摄像机的姿态是通过随机抽样的方式选择的。作者将全局坐标系随机设置为第一张输入图像。这增加了任务的难度,与标准NVS任务类似,全局原点可以放在场景中的任何位置。实验的目标是在给定摄像机外特性和一组上下文图像的情况下渲染目标视图。

作者采用了基于Transformer的编码器-解码器架构,如图2所示。在本实验中,相机的外参构成3D旋转组: S O ( 3 ) SO(3) SO(3)。作者选择 ρ g \rho_g ρg作为摄像机旋转矩阵的分块连接:

ρ g i : = R i ⊕ ⋯ ⊕ R i ⏟ d / 3 times \rho_{g_i} := \underbrace{R_i \oplus \cdots \oplus R_i}_{d/3~\text{times}} ρgi:=d/3 times RiRi

其中是对应于第 i i i个标记外参 g i ∈ S O ( 3 ) g_i\in SO(3) giSO(3) 3 × 3 3\times 3 3×3矩阵表示。 A ⊕ B A\oplus B AB表示块拼接: A ⊕ B = [ A 0 0 B ] A\oplus B=[\begin{smallmatrix}A & 0 \\ 0 & B\end{smallmatrix}] AB=[A00B]。由于这里每个 ρ g i \rho_{g_i} ρgi是正交的,那么 ρ g i \rho_{g_i} ρgi的转置也就是可逆的,因此针对每个批次的查询、键和值向量都可以使用相同的转换操作。

作者将这一模型与基于APE和RPE的Transformer作为基准进行比较。对于基于APE的Transformer,作者将与每个标记相关的每个扁平化旋转矩阵添加到每个注意层的输入中。由于无法找到一种基于RPE的方法可直接适用于作者的旋转矩阵设置,因此作者使用了一种RPE版本的注意力,在这种注意力中,不是将矩阵与QKV特征相乘,而是将矩阵应用于偏置。

针对每一个头,作者将可学习的偏差向量 b Q , b K , b V ∈ R 9 b^{Q}, b^{K}, b^{V} \in \mathbb{R}^9 bQ,bK,bVR9和每个头中的每个QKV向量进行拼接,然后将定义为 ρ ( g ) : = R ⊕ R ⊕ R ∈ R 9 × 9 \rho(g): = R \oplus R \oplus R \in \mathbb{R}^{9\times9} ρ(g):=RRRR9×9的表示矩阵应用在偏差向量上。

图3显示,基于GTA的Transformer在训练和测试性能方面都优于基于APE和RPE的Transformer。在图3右中,基于GTA的Transformer比其他PE方案能更好地重建图像结构。

在这里插入图片描述
表2|测试指标©️【深蓝AI】编译

4.2 针对NVS的标记结构和表示设计

在之前的实验中,标记被简化为由整个图像特征和相关的摄像机外征组成。这与典型的NVS模型令牌结构不同,后者使用的是修补图像令牌,每个令牌不仅可以与摄像机变换相关联,还可以与图像中的二维位置相关联。为了使GTA适应此类NVS模型,作者现在介绍如何将每个特征与几何属性相关联,并概述 ρ \rho ρ的一个具体设计选择。

· 标记结构:

作者采用一种常见的方法为Transformer组成输入标记。假设每个视图都有大小为 H × W H \times W H×W的图像补丁或像素,每个补丁或像素标记由一对特征值 x ∈ R d x\in \mathbb{R}^d xRd和几何属性组成,其中几何属性是相机外征 c ∈ S E ( 3 ) c\in SE(3) cSE(3)和二维图像位置。对于图像PE,将每个位置编码为二维平移组 T ( 2 ) T(2) T(2)的一个元素是很自然的。然而,作者发现,与APE和RPE以及旋转PE中使用的傅立叶特征嵌入类似,将图像位置编码为二维旋转群 S O ( 2 ) SO(2) SO(2)的元素比使用 T ( 2 ) T(2) T(2)表现出更好的性能。因此,作者将每个图像位置表示为两个 S O ( 2 ) SO(2) SO(2)群的直接乘积的元素: ( θ h , θ w ) ∈ S O ( 2 ) × S O ( 2 ) (\theta_h, \theta_w) \in SO(2) \times SO(2) (θh,θw)SO(2)×SO(2),其中 。在这里,作者将 S O ( 2 ) SO(2) SO(2)元素与二维旋转角度相联系。将左上方的斑块(或像素)与值 ( 0 , 0 ) (0,0) (0,0)相关联,而右下方的斑块则对应于 ( 2 π ( H − 1 ) / H , 2 π ( W − 1 ) / W ) (2\pi(H-1)/H, 2\pi(W-1)/W) (2π(H1)/H,2π(W1)/W)。对于中间批次,作者使用左上角和右下角补丁之间角度值的线性插值来计算它们的值。总的来说,用以下方式表示第 i i i个视图中每个标记的几何属性:

g : = ( c i , θ h , θ w ) ∈ S E ( 3 ) × S O ( 2 ) × S O ( 2 ) = : G g:= (c_i, \theta_h, \theta_w) \in SE(3)\times SO(2) \times SO(2) =: G g:=(ci,θh,θw)SE(3)×SO(2)×SO(2)=:G

对于 ρ \rho ρ的设计:

使用什么表示法是一个设计选择,类似于APE和RPE中嵌入的设计选择。具体来说, ρ g \rho_g ρg由四种不同类型的表示法组成,并以对角分块形式表示如下:

ρ g : = σ c a m ⊕ s ( c ) ⊕ σ r o t ⊕ t ( r ) ⊕ σ h ⊕ u ( θ h ) ⊕ σ w ⊕ v ( θ w ) \rho_g := \sigma^{\oplus s}_{\rm cam}(c) \oplus \sigma^{\oplus t}_{\rm rot}(r) \oplus \sigma^{\oplus u}_{h}({\theta_h}) \oplus \sigma^{\oplus v}_{w}({\theta_w}) ρg:=σcams(c)σrott(r)σhu(θh)σwv(θw)

其中 “ ⊕ ” “\oplus” 表示块拼接, A ⊕ B = [ A 0 0 B ] A\oplus B=[\begin{smallmatrix}A & 0 \\ 0 & B\end{smallmatrix}] AB=[A00B]并且 A ⊕ a A^{\oplus a} Aa表示 a a a次相同的 A A A连接。作者引入一个额外的表示 σ r o t ( r ) \sigma_{\rm rot}(r) σrot(r),用来捕获 c c c的旋转信息。

表1总结了作者在每种表示法中使用的矩阵形式。具体来说, M θ ( f ) M_{\theta}^{(f)} Mθ(f)是频率为 f f f的二维旋转矩阵,类似于APE和RPE中傅立叶特征嵌入所使用的频率参数。 D r ( l ) D_r^{(l)} Dr(l)可以看作是 M θ ( f ) M_{\theta}^{(f)} Mθ(f)的3D版本。

在这里插入图片描述
图5|MSN-Hard数据集定性结果分析©️【深蓝AI】编译

在这里插入图片描述
图6|MSN-Hard数据集PSNR验证曲线©️【深蓝AI】编译

5. 实验验证

作者对几项稀疏NVS任务进行实验来评估GTA,并将其与不同的PE(位置编码)方案以及现有的NVS方法进行重建质量比较。

5.1 数据集

本文在两个具有稀疏和宽基线视图的合成 360° 数据集(CLEVR-TR 和 MSN-Hard)和两个具有远景的真实场景数据集(RealEstate10k和ACID)上评估了作者的方法。作者为每个数据集训练一个单独的模型,并在下文中描述每个数据集的属性。

在这里插入图片描述
表3|RealEstate10k和ACID数据集上的结果©️【深蓝AI】编译

具有平移和旋转的CLEVR(CLEVR-TR)是作者针对CLEVR数据集的多视图扩展版本,它具有随机排列的基本对象场景,这些对象场景由具有方位角、仰角和平移变换的摄像机捕捉,作者使用此数据集来衡量模型理解场景底层几何图形的能力,并且将此数据集上下文视图的数量设置为2。从2个上下文视图生成360°图像具有挑战性,因为场景的某些部分将无法观察到。但是这项任务是可以解决的,因为所有渲染对象都具有简单的形状和纹理,如果模型对场景几何图形有很好的理解,那么模型也就能推断未观察到的区域。

在这里插入图片描述
图7|RealEstate10k和ACID数据集上的定性结果©️【深蓝AI】编译

MultiShapeNet-Hard (MSN-Hard)是一个具有挑战性的数据集。此数据集每个场景中出现多达32个对象,这些对象是从51K ShapeNet对象中提取的,每个对象都可能具有复杂的纹理和形状,并且每个视图都是从360°视点随机采样的相机姿势捕获的,MSN-Hard数据集主要用来模型评估对复杂场景几何的理解和学习强3D对象先验的能力。具体地,MSN-Hard每个场景有10个视图,按照其他人的做法,作者使用5个视图作为上下文视图,其余视图作为目标视图。

RealEstate10k由真实的室内和室外场景以及估计的相机参数组成,ACID与RealEstate10k类似,但仅包括室外场景。在训练期间,作者为每个场景随机选择两个上下文视图和一个中间目标视图。在测试时,作者以128个时间步长间隔对远距离上下文视图进行采样,并评估中间视图的重建质量。

在这里插入图片描述
表4|不同模式的PE的影响分析©️【深蓝AI】编译

5.2 基线

场景表示Transformer(SRT)是一种基于Transformer的NVS方法,是作者在CLEVR-TR和MSN-Hard上的基线模型。SRT与作者在图2中描述的架构类似,但SRT通过将射线的傅里叶特征嵌入串联到编码器的输入像素,将射线信息编码到架构中,而非外在矩阵中,SRT是一种基于APE的模型。SRT渲染过程的详情见图15。作者还训练了另一种较新的基于Transformer的NVS模型,称为RePAST。该模型是SRT的一种变体,通过 RPE 方案对射线信息进行编码,在每个注意力层中,射线嵌入被添加到查询和关键向量中。与查询和键相关联的射线在输入傅立叶嵌入函数之前,会与键值标记对相关联的外矩阵进行转换,从而在同一坐标系中表示这两条射线,RePAST是目前MSN-Hard上最先进的方法。GTA和RePAST的主要区别在于,在GTA中,相对变换直接应用于QKV特征,而在RePAST中则应用于射线。

在这里插入图片描述
表5|转换函数的影响分析©️【深蓝AI】编译

对于RealEstate10k和ACID数据集,作者使用Du等人于2023年提出的模型作为基准——该模型是这些数据集上最先进的模型。他们的模型与SRT相似,但在架构上有所改进,并使用了基于外极的标记采样策略。该模型通过APE将外部矩阵和二维图像位置编码到编码器中,并通过APE将与每个查询和上下文图像补丁标记相关的射线编码到解码器中。

作者通过扩展这些基线来实现他们的模型。具体来说,作者用GTA替换了编码器和解码器中的所有注意力层,并从模型中删除了射线、外矩阵和图像位置的任何向量嵌入,作者在每个数据集中使用相同的设置来训练模型和基线。分别在CLEVR-TR和MSH-Hard上对每个模型进行了200万次和400万次迭代训练,并在RealEstate10k和ACID上进行了30万次迭代训练。

在这里插入图片描述
图8|注意力结果分析©️【深蓝AI】编译

5.3 结果

表2和表3显示,在所有数据集上,GTA在所有重建指标上都优于基线模型。图5显示,在MSN-Hard上,基于GTA的模型比基线模型能渲染出更清晰的图像,并能更准确地重建物体结构。图7显示,与Du等人相比,作者提出基于GTA的Transformer进一步提高了对场景的几何理解。作者还对模型进行了训练,通过APE和RPE对二维位置和摄像机外特性进行了编码,以便进行比较。图6显示,与SRT和RePAST相比,基于GTA的模型显著提高了学习效率,在MSN-Hard上只用了1/6的训练步骤就达到了与RePAST相同的性能。在训练时间方面,GTA也优于RePAST,因为每个梯度更新步骤都比RePAST稍快。

在这里插入图片描述
表6|表示设计的影响分析©️【深蓝AI】编译

5.4 与其他PE方法的比较

作者在CLEVR-TR上将GTA与其他PE方法进行了比较,所有模型都进行了100万次迭代训练。表4显示,GTA优于其他PE方案,具体的,GTA优于RoPE+FTL,后者使用RoPE作为编码器-解码器Transformer。这显示了GTA在分层几何感知交互中的功效。

5.5 矩阵转换计算的影响

旋转位置编码(RoPE)与 GTA 中的 表示法类似。与GTA的一个有趣区别是,RoPE只对查询和键向量进行转换,而不对值向量进行转换。在作者的设置中,这种排除会导致键向量和值向量的坐标系不一致,而键向量和值向量都会与作为查询向量来源的标记相互作用。表5左侧显示,在作者的NVS任务中,移除值向量上的转换计算会导致性能显著下降。此外,表5右侧显示了使用扩散模型的ImageNet生成建模任务的性能。

5.6 物体定位

如图8在MSN-Hard上所示,基于GTA的Transforme不仅能正确找到批次与批次之间的关联,还能在编码器的第二注意力层中恢复批次与对象之间的关联。为了进行定量评估,作者根据MSN-Hard提供的对象掩码计算精确度校正分数。简而言之,该分数代表了在给定属于某个对象实例的查询标记时,注意力矩阵在所有上下文视图中与对象掩码的匹配程度。使用GTA和RePAST时,第二注意力层的PR-AUC分别为0.492和0.204,这表明作者基于GTA的转换器能快速识别出对象层的注意力焦点。

5.7 表征设计

表6显示,如果编码器中没有摄像机编码()或图像 PE(),重建质量就会下降,这表明这两种表示法都有助于聚合多视角特征。使用 表示法对MSN-Hard有适度改善,而对CLEVR-TR没有改善,造成这种情况的原因可能是MSN-Hard包含各种各样的对象。 表示法不受摄像机平移的影响,通过使用 表示法,模型可以更有效地编码以物体为中心的特征。表6证实,与APE和RPE中使用的傅立叶特征嵌入类似, 表示的多频率也有利于提高重建质量。

6. 总结

作者为Transformer提出了一种新颖的几何感知注意力机制,并将其应用于稀疏宽基线新颖视图合成任务,证明了其有效性。GTA的局限性在于和一般PE方案类似,依赖于已知姿势或其他算法估计的姿势,如COLMAP。

但本方法具有一个有趣的未来方向:同时学习几何信息和Transformer中特征的前向传播,开发一种能够完全通过观察自主获取此类结构信息的算法,特别是寻求一种类似于人类能力的、适用于各种结构形式的通用学习器,这或将成为未来研究的一个重要方向。

编译|匡吉

审核|Los

移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态。

这篇关于ICLR2024佳作:多视图Transformer再次升级,直接感知三维几何信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

hdu1240、hdu1253(三维搜索题)

1、从后往前输入,(x,y,z); 2、从下往上输入,(y , z, x); 3、从左往右输入,(z,x,y); hdu1240代码如下: #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#inc

hdu4826(三维DP)

这是一个百度之星的资格赛第四题 题目链接:http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1004&cid=500 题意:从左上角的点到右上角的点,每个点只能走一遍,走的方向有三个:向上,向下,向右,求最大值。 咋一看像搜索题,先暴搜,TLE,然后剪枝,还是TLE.然后我就改方法,用DP来做,这题和普通dp相比,多个个向上

uva 10387 Billiard(简单几何)

题意是一个球从矩形的中点出发,告诉你小球与矩形两条边的碰撞次数与小球回到原点的时间,求小球出发时的角度和小球的速度。 简单的几何问题,小球每与竖边碰撞一次,向右扩展一个相同的矩形;每与横边碰撞一次,向上扩展一个相同的矩形。 可以发现,扩展矩形的路径和在当前矩形中的每一段路径相同,当小球回到出发点时,一条直线的路径刚好经过最后一个扩展矩形的中心点。 最后扩展的路径和横边竖边恰好组成一个直

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

poj 1113 凸包+简单几何计算

题意: 给N个平面上的点,现在要在离点外L米处建城墙,使得城墙把所有点都包含进去且城墙的长度最短。 解析: 韬哥出的某次训练赛上A出的第一道计算几何,算是大水题吧。 用convexhull算法把凸包求出来,然后加加减减就A了。 计算见下图: 好久没玩画图了啊好开心。 代码: #include <iostream>#include <cstdio>#inclu

uva 1342 欧拉定理(计算几何模板)

题意: 给几个点,把这几个点用直线连起来,求这些直线把平面分成了几个。 解析: 欧拉定理: 顶点数 + 面数 - 边数= 2。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#inc

【北交大信息所AI-Max2】使用方法

BJTU信息所集群AI_MAX2使用方法 使用的前提是预约到相应的算力卡,拥有登录权限的账号密码,一般为导师组共用一个。 有浏览器、ssh工具就可以。 1.新建集群Terminal 浏览器登陆10.126.62.75 (如果是1集群把75改成66) 交互式开发 执行器选Terminal 密码随便设一个(需记住) 工作空间:私有数据、全部文件 加速器选GeForce_RTX_2080_Ti

XTU 1237 计算几何

题面: Magic Triangle Problem Description: Huangriq is a respectful acmer in ACM team of XTU because he brought the best place in regional contest in history of XTU. Huangriq works in a big compa

poj 3304 几何

题目大意:给出n条线段两个端点的坐标,问所有线段投影到一条直线上,如果这些所有投影至少相交于一点就输出Yes!,否则输出No!。 解题思路:如果存在这样的直线,过投影相交点(或投影相交区域中的点)作直线的垂线,该垂线(也是直线)必定与每条线段相交,问题转化为问是否存在一条直线和所有线段相交。 若存在一条直线与所有线段相交,此时该直线必定经过这些线段的某两个端点,所以枚举任意两个端点即可。

POJ 2318 几何 POJ 2398

给出0 , 1 , 2 ... n 个盒子, 和m个点, 统计每个盒子里面的点的个数。 const double eps = 1e-10 ;double add(double x , double y){if(fabs(x+y) < eps*(fabs(x) + fabs(y))) return 0 ;return x + y ;}struct Point{double x , y