File size: 1,324 Bytes
c0df561
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
---
license: other
license_name: nvidia-license
license_link: LICENSE
pipeline_tag: image-to-3d
tags:
  - 3d-reconstruction
  - camera-pose-estimation
  - multi-view
---

# Solv3R: 3D Looped Transformer as a Multi-view Solver

Pretrained weights of Solv3R ([paper](https://arxiv.org/abs/2611.02857), [project page](https://ubc-vision.github.io/solv3r/),
[code](https://github.com/ubc-vision/solv3r)).

```python
from solv3r import Solv3R, cameras_from_pose_enc, list_images, load_images

model = Solv3R.from_pretrained()                       # downloads solv3r.safetensors from this repo
images = load_images(list_images("path/to/images"))
ctx = model.encode(images)
z = model.solve(ctx, calls=16)
pred = model.decode(z, ctx)                            # depth, depth_conf, rays, world_points, pose_enc
c2w, K = cameras_from_pose_enc(pred["pose_enc"], (ctx.H, ctx.W))
```

The weights are built on [DVLT](https://github.com/nv-tlabs/dvlt) and are released under the
[NVIDIA License](LICENSE) (non-commercial, research and evaluation use only).

```bibtex
@article{kwak2026solv3r,
  title   = {Solv3R: 3D Looped Transformer as a Multi-view Solver},
  author  = {Kwak, Jeong-gi and Tagliasacchi, Andrea and Kagami, Sho and Ono, Yuki and Yi, Kwang Moo},
  journal = {arXiv preprint arXiv:2611.02857},
  year    = {2026}
}
```