querysplat logo

querysplat

repo for QuerySplat

Developer ToolsPythonApache-2.0 217 17Health 82
GitHub

What is it?

What it is

QuerySplat is an official implementation of a system designed for 3D Gaussian Splatting (3DGS) prediction that decouples geometry and appearance representations.

Why it exists

It exists to provide a method for 3D Gaussian prediction and rendering that leverages decoupled representations, improving the process of reconstructing 3D scenes from images.

Who should use it

Computer vision researchers3D reconstruction engineersAI researchers working on 3D Gaussian SplattingDevelopers building 3D scene representations

Who should avoid it

Users without a CUDA-capable NVIDIA GPUUsers on non-Linux operating systemsUsers looking for a lightweight/CPU-only solution

How it works

A quick walkthrough in plain English

How querysplat works

Step 1 of 3

You interact with it

Open querysplat, send a request, or connect it to your stack.

Features

Decoupling of geometry and appearance representations in 3D Gaussian Splatting (3DGS)
Integration with VGGT-Omega for camera and depth prediction
Custom-image preprocessing
Optional Test-Time Optimization (TTO) for reconstruction
Support for 3D Gaussian prediction and rendering
Exportable Gaussian PLY files with configurable opacity thresholds
Ability to export predicted input cameras and VGGT-Omega depth point clouds

Advantages

  • Improved 3DGS prediction through decoupled representations
  • High-quality depth and camera estimation via VGGT-Omega integration
  • Flexible reconstruction quality via TTO parameter tuning
  • Comprehensive diagnostic tools (opacity/scale distribution statistics)

Disadvantages

  • Requires high-end hardware (NVIDIA GPU with CUDA support)
  • Complex setup requiring multiple large model checkpoints (QuerySplat and VGGT-Omega)
  • Dependency on specific CUDA/PyTorch versions for custom extensions like fused-ssim

Installation

FAQ

What are the hardware and software requirements for running QuerySplat?

QuerySplat requires a Linux environment with a CUDA-capable NVIDIA GPU. The recommended software configuration is Python 3.12, PyTorch 2.11, and CUDA 12.8.

Do I need to download the VGGT-Omega weights separately?

Yes. QuerySplat requires both its own weights (available on Hugging Face via inspatio/querysplat) and the frozen VGGT-Omega weights (available via facebook/VGGT-Omega) to function correctly.

How do I enable Test-Time Optimization (TTO) during inference?

To run the feed-forward model with TTO, include the `--use_tto` flag in your inference command. You can also adjust the number of optimization steps using `--tto_n_steps`.

Where should I place the downloaded checkpoints?

All checkpoint files must be placed in a directory named `checkpoints/` at the root of the repository. This directory must contain the QuerySplat safetensors, the YAML config, and the VGGT-Omega.pt file.

Can I export the predicted camera parameters or depth information?

Yes. You can use `--save_predicted_input_cameras` to export cameras as JSON/NPZ files, and `--save_vggt_input_depths` to export VGGT-Omega depth and confidence products.

Loading documentation…
View on GitHub

Featured in Videos

YouTube tutorials and walkthroughs for querysplat

Alternatives

Similar projects ranked by category, topics, and text overlap.

Compare
querysplat | MushyBook