VGGT

目录

简介

模型介绍

VGGT是一个大型前馈Transformer,具有最小的3D感应偏差,在大量3D注释数据上进行训练。它接受多达数百张图像,并在不到一秒的时间内一次性预测所有图像的相机、点图、深度图和点轨迹,这通常优于基于优化的替代方案,无需进一步处理。

支持任务列表

本仓已经支持以下模型任务类型

模型 任务列表 是否支持
VGGT 训练

代码实现

  • 参考实现:

    url=https://github.com/facebookresearch/vggt
    commit_id=97bbde571faddde3ace3cfa7724a20448026c4c8
    
  • 适配昇腾 AI 处理器的实现:

    url=https://gitcode.com/Ascend/DrivingSDK.git
    code_path=model_examples/VGGT
    

准备训练环境

安装环境

表 1 三方库版本支持表

三方库 支持版本
PyTorch 2.1.0
PyTorch 2.7.1

安装昇腾环境

请参考昇腾社区中《Pytorch框架训练环境准备》文档搭建昇腾环境,本仓已支持表2中软件版本,python使用3.10版本。

表 2 昇腾软件版本支持表

软件类型 支持版本
FrameworkPTAdapter 26.0.0
CANN 9.0.0
  • 克隆代码仓到当前目录并使用patch文件

    git clone https://github.com/facebookresearch/vggt.git
    cd vggt
    git checkout 97bbde571faddde3ace3cfa7724a20448026c4c8
    cp -f ../VGGT_npu.patch .
    git apply --reject --whitespace=fix VGGT_npu.patch
    cp -r ../test training/
    
  • 安装环境依赖

    • 在应用过patch的模型根目录下,安装需要的依赖

      • 如果使用PyTorch 2.1.0,执行以下命令:

        pip install -r requirements.txt
        
      • 注意:如果使用PyTorch 2.7.1,需要将requirements.txt中的torchvision==0.18.0修改为torchvision==0.22.1,可使用以下命令:

        sed -i 's/torchvision==[0-9.]+/torchvision==0.22.1/' requirements.txt
        pip install -r requirements.txt
        
    • 在应用过patch的模型根目录下,安装vggt

      pip install -e .
      

准备数据集

  • 根据源仓readme中下载数据集co3D, 完整数据集5.5T,本仓中为实现快速验证,仅使用'tv'场景进行训练,如果使用其他场景,需要修改代码中对应部分,数据集分为co3D和co3D_annotations文件夹, 放在training文件夹下,数据集文件名称命名为co3D, 文件夹下为co3D和co3D_annotations,排列如下:
vggt
├── training/
│   ├── co3D/
│   │     ├── co3D
│   │     ├── co3D_annotations

准备预训练权重

  • 参照源仓下载模型权重,可以放到应用过patch的模型根目录下
vggt
├── model.pt

快速开始

训练任务

执行训练

  1. 在应用过patch的模型根目录下,执行以下指令进行训练。

    • 进入training文件夹
    cd training
    
    • 单机八卡性能
    bash test/train_8p_vggt_perf.sh --max-epochs 1
    
    • 单机八卡长跑
    bash test/train_8p_vggt_full.sh --max-epochs 7
    

单机八卡训练性能和loss,以tv场景,固定随机性,random_aspect_ratio为1,random_image_num为2,batch_size为15

芯片 卡数 global batchsize Loss iteration time FPS
竞品A 8p 120 0.0164 7.841 15.30
Atlas 800T A2 8p 120 0.0165 4.792 25.04

变更说明

2025.06.29:首次发布

2025.08.11: 支持训练,性能优化

FAQ