/ Модель

Характеристики

Лицензия
Своя лицензия
Библиотека
stream3r
Опубликована
12 авг 2025

STream3R

Языковая модель3 профессии

STream3R восстанавливает 3D-структуру сцен по последовательностям изображений с помощью потокового причинного Transformer.

5 961скачиваний за 30 дней6лайковвеса обновлены17 авг 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

STream3R — модель для последовательной 3D-реконструкции по изображениям, описанная авторами работы «STream3R: Scalable Sequential 3D Reconstruction with Causal Transformer». Она преобразует задачу предсказания карт точек в задачу последовательной регистрации и использует Transformer с архитектурой decoder-only и причинным вниманием.

Модель предназначена для потоковой обработки последовательностей изображений и онлайн-восприятия 3D-сцен. В README заявлена работа как со статичными, так и с динамическими сценами, а также поддержка FlashAttention, KV cache, причинного, скользящего оконного и полного внимания. В приведённых результатах сравнивается реконструкция на NRGBD; замеры памяти и скорости проводились при разрешении 518 × 384 на GPU H200.

Веса опубликованы в формате safetensors. Лицензия указана как other, поэтому конкретные условия использования следует проверять в репозитории. README сообщает, что код обучения и оценки, а также версия с метрическим масштабом пока не выпущены.

Сценарии применения

  • потоковая 3D-реконструкция по последовательности кадров
  • онлайн-регистрация изображений в общей системе координат
  • восприятие динамических сцен в 3D
  • построение карт точек по изображениям
  • эксперименты с потоковым 3D-восприятием

Ограничения

В README указано, что код обучения и оценки и версия модели с метрическим масштабом пока не выпущены. Условия лицензии обозначены как other и требуют проверки в репозитории.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

STream3R: Scalable Sequential 3D Reconstruction with Causal Transformer

STream3R presents a novel approach to 3D reconstruction that reformulates pointmap prediction as a decoder-only Transformer problem. It introduces an streaming framework that processes image sequences efficiently using causal attention, inspired by advances in modern language modeling. By learning geometric priors from large-scale 3D datasets, STream3R generalizes well to diverse and challenging scenarios, including dynamic scenes where traditional methods often fail.

Paper: STream3R: Scalable Sequential 3D Reconstruction with Causal Transformer Project Page: https://nirvanalan.github.io/projects/stream3r Code: https://github.com/NIRVANALAN/STream3R

Abstract

We present STream3R, a novel approach to 3D reconstruction that reformulates pointmap prediction as a decoder-only Transformer problem. Existing state-of-the-art methods for multi-view reconstruction either depend on expensive global optimization or rely on simplistic memory mechanisms that scale poorly with sequence length. In contrast, STream3R introduces an streaming framework that processes image sequences efficiently using causal attention, inspired by advances in modern language modeling. By learning geometric priors from large-scale 3D datasets, STream3R generalizes well to diverse and challenging scenarios, including dynamic scenes where traditional methods often fail. Extensive experiments show that our method consistently outperforms prior work across both static and dynamic scene benchmarks. Moreover, STream3R is inherently compatible with LLM-style training infrastructure, enabling efficient large-scale pretraining and fine-tuning for various downstream 3D tasks. Our results underscore the potential of causal Transformer models for online 3D perception, paving the way for real-time 3D understanding in streaming environments.

Installation

  1. Clone Repo

    git clone https://github.com/NIRVANALAN/STream3R
    cd STream3R
    
  2. Create Conda Environment

    conda create -n stream3r python=3.11 cmake=3.14.0 -y
    conda activate stream3r
    
  3. Install Python Dependencies

    Important: Install Torch based on your CUDA version. For example, for Torch 2.8.0 + CUDA 12.6:

    # Install Torch
    pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu126
    
    # Install other dependencies
    pip install -r requirements.txt
    
    # Install STream3R as a package
    pip install -e .
    

Inference

You can now try STream3R with the following code. The checkpoint will be downloaded automatically from Hugging Face.

You can set the inference mode to causal for causal attention, window for sliding window attention (with a default window size of 5), or full for bidirectional attention.

import os
import torch
from stream3r.models.stream3r import STream3R
from stream3r.models.components.utils.load_fn import load_and_preprocess_images

device = "cuda" if torch.cuda.is_available() else "cpu"

model = STream3R.from_pretrained("yslan/STream3R").to(device)

example_dir = "examples/static_room"
image_names = [os.path.join(example_dir, file) for file in sorted(os.listdir(example_dir))]
images = load_and_preprocess_images(image_names).to(device)

with torch.no_grad():
    # Use one mode "causal", "window", or "full" in a single forward pass
    predictions = model(images, mode="causal")

We also support a KV cache version to enable streaming input using StreamSession. The StreamSession takes sequential input and processes them one by one, making it suitable for real-time or low-latency applications. This streaming 3D reconstruction pipeline can be applied in various scenarios such as real-time robotics, autonomous navigation, online 3D understanding and SLAM. An example usage is shown below:

import os
import torch
from stream3r.models.stream3r import STream3R
from stream3r.stream_session import StreamSession
from stream3r.models.components.utils.load_fn import load_and_preprocess_images

device = "cuda" if torch.cuda.is_available() else "cpu"

model = STream3R.from_pretrained("yslan/STream3R").to(device)

example_dir = "examples/static_room"
image_names = [os.path.join(example_dir, file) for file in sorted(os.listdir(example_dir))]
images = load_and_preprocess_images(image_names).to(device)
# StreamSession supports KV cache management for both "causal" and "window" modes.
session = StreamSession(model, mode="causal")

with torch.no_grad():
    # Process images one by one to simulate streaming inference
    for i in range(images.shape[0]):
        image = images[i : i + 1]
        predictions = session.forward_stream(image)
    session.clear()

Demo

You can run the demo built on VGG-T's code using the script app.py with the following command:

python app.py

Quantitative Results

3D Reconstruction Comparison on NRGBD.

MethodTypeAcc Mean ↓Acc Med. ↓Comp Mean ↓Comp Med. ↓NC Mean ↑NC Med. ↑
VGG-TFA0.0730.0180.0770.0210.9100.990
DUSt3ROptim0.1440.0190.1540.0180.8700.982
MASt3ROptim0.0850.0330.0630.0280.7940.928
MonST3ROptim0.2720.1140.2870.1100.7580.843
Spann3RStream0.4160.3230.4170.2850.6840.789
CUT3RStream0.0990.0310.0760.0260.8370.971
StreamVGGTStream0.0840.0440.0740.0410.8610.986
OursStream0.0570.0140.0280.0130.9100.993

Read our full paper for more insights.

GPU Memory Usage and Runtime

We report the peak GPU memory usage (VRAM) and runtime of our full model for processing each streaming input using the StreamSession implementation. All experiments were conducted at a common resolution of 518 × 384 on a single H200 GPU. The benchmark includes both Causal for causal attention and Window for sliding window attention with a window size of 5.

Run Time (s).

Num of Frames1204080100120140180200
Causal0.11640.20340.30600.49860.59450.69470.79160.99111.1703
Window0.11670.15280.15230.15170.15150.15120.14820.14430.1463

VRAM (GB).

Num of Frames1204080100120140180200
Causal5.499.0212.9221.0025.0329.1033.2141.3145.41
Window5.496.536.536.536.536.536.536.536.53

Datasets

We follow CUT3R to preprocess the dataset for training. The training configuration can be found at configs/experiment/stream3r/stream3r.yaml.

TODO

  • Release evaluation code.
  • Release training code.
  • Release the metric-scale version.

License

This project is licensed under NTU S-Lab License 1.0. Redistribution and use should follow this license.

Citation

If you find our code or paper helps, please consider citing:

@article{stream3r2025,
  title={STream3R: Scalable Sequential 3D Reconstruction with Causal Transformer},
  author={Lan, Yushi and Luo, Yihang and Hong, Fangzhou and Zhou, Shangchen and Chen, Honghua and Lyu, Zhaoyang and Yang, Shuai and Dai, Bo and Loy, Chen Change and Pan, Xingang},
  booktitle={arXiv preprint arXiv:2508.10893},
  year={2025}
}

Acknowledgments

We recognize several concurrent works on streaming methods. We encourage you to check them out:

StreamVGGT  |  CUT3R  |  SLAM3R  |  Spann3R

STream3R is built on the shoulders of several outstanding open-source projects. Many thanks to the following exceptional projects:

VGG-T  |  Fast3R  |  DUSt3R  |  MonST3R  |  Viser

Contact

If you have any question, please feel free to contact us via lanyushi15@gmail.com or Github issues.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · stream3r

Нельзя запустить

3D-генерация пока не поддерживается.

Ревизия весов
0af188b

0 моделей