VGGT 論文報告
CVPR 2025 · Best Paper
VGGT
Visual Geometry Grounded Transformer
視覺幾何基礎 Transformer
REPORTER
蔡書毅 410415032
arXiv 2503.11651 · VGG, Oxford · Meta AI
01/15
目次

目 次

VGGT 簡介 03
Transformer 基礎 07
Transformer 元件拆解 09
ViT 介紹 26
VGGT 架構 27
實驗結果 33
Demo 37
02/15
SECTION I · 問題 (1/4)

VGGT 在做甚麼

scene view 1 scene view 2 scene view 3 scene view 4
同一場景的多張視角影像
VGGT single feed-forward · ~1 sec
Cameras
相機參數
Depth Maps
深度圖
Point Maps
點雲圖
Tracks
點追蹤
03/15
SECTION I · 問題 (2/4)

四個輸出的作用例子: Figure 1

VGGT Figure 1 — 4 outputs example 1 2 3 4
1Cameras
2Point Maps
3Depth Maps
4Tracks
03/15
SECTION I · 問題 (3/4)

為什麼要用 VGGT?

方法
年份
10 張影像所需時間
能擴展到 100+ 張?
需要調參?
COLMAP (classical)
2016
約 15 秒
200 張要 ~25 分鐘
Hybrid methods
2021
約 10 秒
200 張要 ~10 分鐘
部分要
DUSt3R / MASt3R
2024
約 7 秒
❌ 記憶體爆掉
少量
VGGT
2025
0.2 秒
✓ 200 張只要 9 秒
不用
03/15
SECTION I · 問題 (4/4)

VGGT 整體架構

VGGT Figure 2 — overall architecture
Transformer
decoder + CNN
03/15
SECTION II · TRANSFORMER (1/2)
GPT
G
Generative
逐字「產生」新內容
P
Pretrained
海量資料預先學好
VGGT
V
Visual
處理「影像」輸入
G
Geometry
預測「3D 幾何
G
Grounded
輸出「真實 3D」,非憑空想像
T
Transformer
GPT 與 VGGT 共用的核心架構
兩者共用
04/15
SECTION II · Transformer (2/2)

GPT 在做什麼? (文字接龍)

Once upon a
Input Embedding Positional Encoding Block 1 Masked Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
下一個 token 的機率分布——從中 sampling:機率越高越可能被選
04/15
SECTION III · INPUT EMBEDDING (1/3)

Input Embedding

Input Embedding Positional Encoding Block 1 Masked Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
05/15
SECTION III · INPUT EMBEDDING (2/3)

Tokenization + Input Embedding:從文字到向量

Once upon a time tokenization fun
Tokenizer
Input Embedding
05/15
SECTION III · INPUT EMBEDDING (3/3)

為什麼要用向量? (語意)

X Y Z O boy girl man woman
boy
+0.30 +0.40 +0.13 −0.07 +0.26
girl
−0.30 +0.40 +0.10 −0.06 +0.30
man
+0.30 −0.40 +0.12 −0.05 +0.28
woman
−0.30 −0.40 +0.11 −0.04 +0.31
05/15
SECTION IV · POSITIONAL ENCODING (1/3)

Positional Encoding

Input Embedding Positional Encoding Block 1 Masked Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
06/15
SECTION IV · POSITIONAL ENCODING (2/3)

為什麼需要 Positional Encoding?

句子 A: The cat ate the fish
句子 B: fish the ate cat The
06/15
SECTION IV · POSITIONAL ENCODING (3/3)

加上 Positional Encoding

The
0.20.90.4
cat
0.70.10.5
ate
0.30.60.2
the
0.20.90.4
fish
0.80.30.6
VGGT 不知道誰先誰後
PE
The
0.21.90.4
cat
1.50.61.3
ate
0.11.50.9
the
0.90.81.4
fish
1.60.00.7
VGGT 現在讀得出每個位置
06/15
SECTION V · ATTENTION (1/4)

Attention

Input Embedding Positional Encoding Block 1 Masked Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
07/15
SECTION V · ATTENTION (2/4)

為什麼需要 Attention?

The dog chased the cat until it got tired.

07/15
SECTION V · ATTENTION (3/4)

每個詞分到多少注意力

The dog chased the cat until it got tired. 0.1 0.4 0.1 0.1 0.2 0.1 VThe 0.20 0.40 0.10 0.30 Vdog 0.90 0.20 0.80 0.10 Vchased 0.30 0.70 0.20 0.50 Vthe 0.20 0.40 0.10 0.30 Vcat 0.70 0.50 0.90 0.20 Vuntil 0.40 0.60 0.30 0.70 Vit 0.00 0.00 0.00 0.00 這個向量 = it 看完整句上下文後的新意義
07/15
SECTION V · ATTENTION (4/4)

Attention:每個詞吸收上下文

The dog chased the cat until it got tired. 0.180.330.120.27 0.710.240.660.19 0.420.630.310.55 0.210.360.150.29 0.580.470.740.22 0.340.510.280.60 0.610.390.570.26 0.450.290.400.52 0.390.560.330.48 經過 Attention:整句話 → 一排融入上下文的新向量
07/15
SECTION VI · ADD & NORM (1/2)

Add & Norm

Input Embedding Positional Encoding Block 1 Masked Multi-HeadAttention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
08/15
SECTION VI · ADD & NORM (2/2)

Add: 殘差連線

輸入 x:Positional Encoding 後 xonce +0.10 +0.05 −0.15 xa +0.05 +0.12 +0.30 xwise +0.20 −0.05 +0.15 xking +0.15 +0.10 −0.05 xruled −0.10 +0.05 +0.20 Attention block Attn(x)once +0.62 −0.18 +0.34 Attn(x)a +0.52 +0.37 −0.17 Attn(x)wise +0.15 +0.60 −0.01 Attn(x)king +0.13 +0.25 +0.29 Attn(x)ruled +0.35 +0.27 +0.14 yonce +0.72 −0.13 +0.19 ya +0.57 +0.49 +0.13 ywise +0.35 +0.55 +0.14 yking +0.28 +0.35 +0.24 yruled +0.25 +0.32 +0.34
08/15
SECTION VII · FEED FORWARD (1/2)

Feed-Forward Network

Input Embedding Positional Encoding Block 1 Masked Multi-HeadAttention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
09/15
SECTION VII · FEED FORWARD (2/2)

Feed-Forward Network (MLP)

Input d = 3 Hidden 1 ReLU · 4d Hidden 2 ReLU · 4d Output d = 3 W1 W2 W3 yonce +0.72 −0.13 +0.19 ya +0.57 +0.49 +0.13 ywise +0.35 +0.55 +0.14 y′once +0.51 +0.34 −0.18 y′a +0.42 −0.21 +0.40 y′wise +0.27 +0.58 −0.05
把 attention 收集到的上下文「記住」並「重新理解」
09/15
SECTION VIII · LINEAR + SOFTMAX (1/3)

Linear + Softmax 輸出層 — 投影 + 機率

Input Embedding Positional Encoding Block 1 Masked Multi-HeadAttention Add & Norm Feed Forward Add & Norm Block 2 ... N Linear Softmax Output Probability (next token)
10/15
SECTION VIII · LINEAR + SOFTMAX (2/3)

Linear + Softmax 經典 MLP 多元分類

Linear + ReLU Linear + ReLU Linear + Softmax
10/15
SECTION VIII · LINEAR + SOFTMAX (3/3)

Linear + Softmax 預測下一個詞

 
10/15
SECTION IX · ViT

ViT (Vision Transformer)

cat
輸入影像
flatten +
linear projection
patch1
0.21-0.050.840.13
patch2
-0.180.420.07-0.31
patch3
0.55-0.27-0.110.46
patch256
0.080.33-0.490.22
Input Embedding Positional Encoding Block 1 Masked Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 Block 3 Block 4 Linear Softmax Output Probability (class label)
類別機率分布——選機率最高的當預測:
cat 0.82
tabby cat 0.09
dog 0.04
fox 0.03
rabbit 0.02
11/15
SECTION X · 架構 (1/6)

VGGT 架構 — DINO

VGGT architecture — DINO
DINO = ViT,只取 features
Patch Embedding Positional Encoding Block 1 Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 Block 3 Block N features → 餵給 VGGT 主體 Linear Softmax
12/15
SECTION X · 架構 (2/6)

VGGT 架構 — Add Camera Token

VGGT architecture — Add Camera Token
12/15
SECTION X · 架構 (3/6)

VGGT 架構 — Global + Frame Attention

VGGT architecture — Attention
Global Attention
view 1 view 2 view 3 view 4
Frame Attention
view 1 view 2 view 3 view 4
12/15
SECTION X · 架構 (4/6)

VGGT 架構 — Camera Head

VGGT architecture — Camera Head
Why attention blocks?
camera token Block 1 Multi-Head Attention Add & Norm Feed Forward Add & Norm Block 2 Block 3 Block 4 Linear cameras
Component Numbers Type
Rotation (quaternion q) 4 Extrinsic
Translation (t) 3 Extrinsic
Field of view (f) 2 Intrinsic
Total 9
12/15
SECTION X · 架構 (5/6)

VGGT 架構 — DPT Head (Decoder)

VGGT architecture — DPT
input image
input image
Encoder
壓縮成抽象 features
+0.42−0.18+0.71+0.05
features
Decoder
還原成具體輸出
reconstructed image
12/15
SECTION X · 架構 (6/6)

VGGT 架構 — DPT 在這裡做什麼?

VGGT architecture — DPT
Input
Patch tokens
來自 backbone(每張影像一組)
DPT Head
Decoder
Depth maps
Point maps
Tracking features
12/15
SECTION XI · 結果 (1/4)

準確度 SOTA

相機位姿Camera Pose
RealEstate10K · AUC@30 (↑)
78.9 85.3 +6.4
多視角深度Multi-view Depth
DTU · Overall accuracy (↑)
0.71 0.86 +0.15
點雲估計Point Map
ETH3D · Recall @ 5 cm (↑)
75.2 84.8 +9.6
影像配對Image Matching
ScanNet · AUC @ 5° (↑)
24.8 33.9 +9.1
13/15
SECTION XI · 結果 (2/4)

速度 SOTA

方法
10 張
50 張
100 張
200 張
COLMAP
~15 秒
~3 分鐘
~10 分鐘
~25 分鐘
Hybrid methods
~10 秒
~1 分鐘
~3 分鐘
~10 分鐘
DUSt3R / MASt3R
~7 秒
~30 秒
❌ OOM
❌ OOM
VGGT
0.2 秒
1.5 秒
3 秒
9 秒
13/15
SECTION XI · 結果 (3/4)

通用性 SOTA

任務
之前的最佳方法
現在最佳
相機位姿Camera Pose
VGGSfM
VGGT
多視角深度Multi-view Depth
GeoMVSNet
VGGT
點雲估計Point Map
DUSt3R
VGGT
影像配對Image Matching
RoMa
VGGT
13/15
SECTION XI · 結果 (4/4)

獎項 SOTA

CVPR 2025
Best Paper Award
電腦視覺領域的最高榮譽
13/15
SECTION XII · DEMO

VGGT demonstration

14/15
SECTION XIII · 結語

感謝聆聽

Q and A
歡迎提問與討論
15/15