CVPR 2025 最佳论文!Meta&牛津VGGT:高效3D视觉新范式~

作者 | CVer

点击下方卡片,关注“3D视觉之心”公众号

第一时间获取3D视觉干货

>>点击进入→具身智能之心技术交流群

更多干货,欢迎加入国内首个具身智能全栈学习社区具身智能之心知识星球(戳我)这里包含所有你想要的。

来源:机器之心

「仅需一次前向推理,即可预测相机参数、深度图、点云与 3D 轨迹 ——VGGT 如何重新定义 3D 视觉?」

3D 视觉领域正迎来新的巨变。牛津大学 VGG (Visual Geometry Group) 与 Meta AI 团队联合发布的最新研究 VGGT(Visual Geometry Grounded Transformer),提出了一种基于纯前馈 Transformer 架构的通用 3D 视觉模型,能够从单张、多张甚至上百张图像中直接推理出相机内参、外参、深度图、点云及 3D 点轨迹等核心几何信息。无需任何后处理优化,该模型已经在多个 3D 任务中性能显著超越传统优化方法与现有 SOTA 模型,推理速度可达秒级。这一研究打破了过去 3D 任务依赖繁琐几何迭代优化的传统范式,展示了 “越简单,越有效” 的强大潜力。

  • 论文标题:VGGT: Visual Geometry Grounded Transformer

  • 论文链接:https://arxiv.org/abs/2503.11651

  • 代码链接:https://github.com/facebookresearch/vggt

  • 演示平台:https://huggingface.co/spaces/facebook/vggt

打破传统范式:从迭代优化到端到端推理

传统 3D 重建技术高度依赖束调整(Bundle Adjustment, BA)等几何优化方法,需反复迭代且计算成本高昂。尽管近年来机器学习被引入辅助优化,但仍难以摆脱复杂后处理的桎梏。VGGT 开创性地采用纯前馈设计:通过大规模 3D 标注数据与 Transformer 架构的结合,模型在一次前向传播中即可完成全部几何推理任务。实验表明,即便输入数百张图像,VGGT 仍能在数秒内输出高质量结果,在精度与速度上均超越传统优化方法。

研究团队指出,VGGT 的成功并非源于复杂的结构设计或领域先验,而是得益于 Transformer 架构的通用性与大规模 3D 数据训练的协同效应。模型将输入图像转化为 Tokens 后,与随机初始化的相机 Tokens 共同输入交替注意力模块(Alternating-Attention),通过全局与帧级自注意力层的交替堆叠,逐步融合多视图几何信息。最终,相机参数经专用头部解码,图像 Tokens 则通过 DPT 头部生成密集预测(如深度图与点图)。值得一提的是,VGGT 仅使用自注意力机制(self attention),未使用跨注意力(cross attention)。

同时,为保持输入图像的置换不变性(改变输入图像顺序不改变预测结果),VGGT 摒弃了帧索引 (frame index) 位置编码。相反,VGGT 仅通过帧级自注意力机制动态关联同一图像的 Tokens。这种设计不仅使得模型无需依赖预设位置信息即可区分多视图数据,更赋予模型强大的泛化能力 —— 即便训练时仅使用 2-24 帧数据,测试时亦可轻松处理超过 200 帧的输入。VGGT 收集了 17 个大型 3D 数据集一起进行训练,在 64 块 A100GPU 上共耗时 9 天。

性能与泛化性双突破

定性演示视频显示,VGGT 能轻松应对不同数量图像及复杂场景的重建。同时,研究人员提供了与过去 SOTA 的定性比较。VGGT 可精准重建梵高油画等非真实场景的几何结构,甚至能处理无重叠视图或重复纹理的极端案例。用户可通过 Hugging Face Demo 上传图像,实时体验 3D 重建效果。

在定量实验中,VGGT 无需任何后处理即在相机姿势估计,多视图深度估计、点云重建等任务中全面领先,其推理速度较传统方法提升近 50 倍。即便与同期 CVPR 2025 的 Transformer-based 重建模型相比,VGGT 性能优势明显,并与速度最快的 Fast3R 相当。有趣的是,研究团队还意外发现,利用模型预测的深度图与相机参数反投影生成的点云,其质量甚至超过直接回归的点图,这一现象揭示了模型对几何一致性内在规律的自发学习能力。

跨任务泛化的潜力 - 单目重建

尽管 VGGT 从未接受单图训练,但仍展现出强大的跨任务泛化能力。研究团队公布的单图重建定性结果显示,VGGT 在未专门训练的单目任务中表现出色。

VGGT 的代码和模型公开后,迅速有 github 社区成员跟进,在标准的单目设置下进行测试。GitHub 社区测试显示,VGGT 在 NYU V2 等数据集上的表现已逼近单目 SOTA 水平,这一「意外之喜」进一步印证了 VGGT 作为通用 3D 基础模型的潜力。

结语

视觉重建作为所有 3D 任务的核心,VGGT 的成功标志着 3D 视觉领域或许即将迎来一个全新的,基础模型的时代。正如论文作者所述,我们正在见证视觉几何从 「手工设计」到「数据驱动」的范式迁移,而这可能仅仅是个开端。「简单架构 + 数据驱动」的模式是否能如 2D 视觉和 NLP 领域般彻底重塑 3D 任务?让我们拭目以待。

作者介绍:论文第一作者王建元为牛津大学视觉几何组(VGG)与Meta AI的联合培养博士生(博士三年级),长期致力于3D重建方法研究。其博士工作聚焦于端到端几何推理框架的创新,曾主导开发PoseDiffusion、VGGSfM,以及本次提出的通用3D基础模型VGGT,相关成果均发表于CVPR、ICCV等顶级会议,推动了数据驱动式3D重建技术的演进。

【3D视觉之心】技术交流群

3D视觉之心是面向3D视觉感知方向相关的交流社区,由业内顶尖的3D视觉团队创办!聚焦维重建、Nerf、点云处理、视觉SLAM、激光SLAM、多传感器标定、多传感器融合、深度估计、摄影几何、求职交流等方向。扫码添加小助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

扫码添加小助理进群

【具身智能之心】知识星球

具身智能之心知识星球是国内首个具身智能开发者社区,也是最专业最大的交流平台,近1500人。主要关注具身智能相关的数据集、开源项目、具身仿真平台、VLA、VLN、Diffusion Policy、强化学习、具身智能感知定位、机器臂抓取、姿态估计、策略学习、轮式+机械臂、双足机器人、四足机器人、大模型部署、端到端、规划控制等方向。星球内部为大家汇总了近40+开源项目近60+具身智能相关数据集行业主流具身仿真平台、各类学习路线,涉及当前具身所有主流方向。

扫码加入星球,享受以下专有服务:

1. 第一时间掌握具身智能相关的学术进展、工业落地应用;
2. 和行业大佬一起交流工作与求职相关的问题;
3. 优良的学习交流环境,能结识更多同行业的伙伴;
4. 具身智能相关工作岗位推荐,第一时间对接企业;
5. 行业机会挖掘,投资与项目对接;

### 部署 VGG 模型的方法 VGG 是一种经典的卷积神经网络架构,在图像分类领域表现优异。以下是关于如何部署 VGG 模型的具体方法: #### 1. 使用 TensorFlow/Keras 进行模型导出 在完成模型训练后,可以通过 `model.save()` 方法将整个 Keras 模型保存为 HDF5 文件或 SavedModel 格式[^1]。SavedModel 格式更适合生产环境下的部署。 ```python import tensorflow as tf # 假设 model 已经定义并完成了训练 model.save('vgg_model.h5') # 导出为 HDF5 格式 tf.saved_model.save(model, 'saved_vgg_model/') # 导出为 SavedModel 格式 ``` #### 2. 将模型转换为 ONNX 格式 ONNX(Open Neural Network Exchange)是一种开放的机器学习模型交换格式,支持多种框架之间的互操作性。可以使用 `tensorflow-onnx` 库将 Keras 模型转换为 ONNX 格式。 ```python import tf2onnx # 转换为 ONNX 格式的代码 onnx_model, _ = tf2onnx.convert.from_keras(model, opset=13) with open("vgg_model.onnx", "wb") as f: f.write(onnx_model.SerializeToString()) ``` #### 3. 利用 TensorFlow Serving 实现在线服务化 TensorFlow 提供了一个名为 TensorFlow Serving 的工具,用于高效地提供预训练模型的服务接口。通过 Docker 容器运行 TensorFlow Serving 并加载已保存的模型。 启动命令如下: ```bash docker run -p 8501:8501 --mount type=bind,source=$(pwd)/saved_vgg_model/,target=/models/vgg/ \ -e MODEL_NAME=vgg -t tensorflow/serving & ``` 客户端请求示例: ```python import requests data = {'instances': [[...]]} # 输入数据需按照模型输入形状准备 response = requests.post('http://localhost:8501/v1/models/vgg:predict', json=data) print(response.json()) # 输出预测结果 ``` --- ### VGGT 技术的部署方案 VGGT 是一种基于 Transformer 架构的技术,主要用于从二维感知三维的任务,例如姿态估计、密集重建和点跟踪等[^2]。其部署流程与传统 CNN 类似,但由于涉及更复杂的推理过程,需要注意以下几点: #### 1. 数据预处理优化 由于 VGGT 处理的是多帧序列数据,因此需要对输入数据进行高效的批量化处理。建议采用 GPU 加速的数据管道来提升性能。 #### 2. 模型压缩与加速 对于大规模 Transformer 模型,通常会面临较大的内存占用问题。可考虑以下策略减少资源消耗: - **剪枝 (Pruning)**:移除冗余权重以降低参数量。 - **量化 (Quantization)**:将浮点数精度从 FP32 减少到 INT8 或更低。 - **蒸馏 (Distillation)**:训练一个小规模的学生模型模仿教师模型的行为。 #### 3. 接口封装与 RESTful API 设计 类似于 VGG 模型的部署方式,可通过 Flask/Django 等 Python Web 框架创建 RESTful API 来暴露 VGGT 功能。 示例代码片段: ```python from flask import Flask, request, jsonify app = Flask(__name__) @app.route('/predict', methods=['POST']) def predict(): data = request.get_json() input_data = preprocess(data['frames']) # 自定义预处理函数 result = vgg_model(input_data).numpy() # 执行推断 return jsonify({'result': result.tolist()}) if __name__ == '__main__': app.run(host='0.0.0.0', port=5000) ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值