3D Gaussian Splatting

3D Gaussian Splatting is a revolutionary real-time 3D scene reconstruction technique with over 15,000 GitHub stars. Unlike NeRF-based methods, Gaussian Splatting represents scenes as millions of tiny 3D Gaussians that can be rendered at real-time frame rates (100+ FPS) while achieving photorealistic quality. Deploy it on Clore.ai's GPU cloud to reconstruct and explore 3D scenes from your own photos.


What is 3D Gaussian Splatting?

Traditional NeRF methods implicitly encode a scene in a neural network, requiring per-pixel ray marching at render time. Gaussian Splatting takes a fundamentally different approach:

  1. Initialization: Start from a sparse point cloud (from COLMAP)

  2. Representation: Expand each point into a 3D Gaussian with position, scale, rotation, opacity, and spherical harmonics color

  3. Optimization: Differentiably render Gaussians and optimize against training images

  4. Rendering: Project Gaussians onto the image plane via alpha-compositing (extremely fast)

Key advantages over NeRF:

  • Real-time rendering (100+ FPS at 1080p)

  • Better fine detail reconstruction

  • Explicit 3D representation (editable, exportable)

  • Faster training (30–60 min vs hours)

  • Works on consumer GPUs


Prerequisites

Requirement
Minimum
Recommended

GPU VRAM

12 GB

24 GB

GPU

RTX 3080 12GB

RTX 4090 / A100

RAM

16 GB

32 GB

Storage

30 GB

60 GB

CUDA

11.7+

12.1+

circle-exclamation

Step 1 — Rent a GPU on Clore.ai

  1. Click Marketplace and filter by VRAM ≥ 16 GB.

  2. Select a server — RTX 4090 offers the best price/performance.

  3. Set Docker image to your custom image (see Step 2).

  4. Set open ports: 22 (SSH) and 8080 (web viewer).

  5. Click Rent.


Step 2 — Dockerfile

Build a custom Docker image with all dependencies:

Build and Push

Build the image and push it to your own Docker Hub account (replace YOUR_DOCKERHUB_USERNAME with your actual username):

circle-info

There is no official pre-built Docker image for 3D Gaussian Splatting on Docker Hub. The official repository at graphdeco-inria/gaussian-splattingarrow-up-right does not provide one — build from the Dockerfile above. The image must be built with the correct CUDA architecture flags matching your target GPU.

Use YOUR_DOCKERHUB_USERNAME/gaussian-splatting:latest in your Clore.ai configuration.


Step 3 — Connect via SSH

Verify the build:


Step 4 — Prepare Your Dataset

Option A: Use Tandt (Tanks and Temples) Dataset

Classic benchmark dataset for quick testing:

Option B: Process Your Own Photos

circle-info

The convert.py script runs the full COLMAP pipeline: feature extraction, matching, sparse reconstruction, and undistortion. This takes 5–30 minutes depending on image count.

Option C: Process from Video


Step 5 — Train a Gaussian Splat

Standard Training

Training on Tandt Dataset

Fast Training (Quick Preview)

circle-info

Training to 7,000 iterations takes ~10 minutes on an RTX 4090 and gives a good quality preview. Full 30,000 iterations takes ~30–40 minutes and produces final quality.

Training Progress

Monitor training output — you'll see metrics like:

PSNR above 30 dB indicates high-quality reconstruction.


Step 6 — Render and Visualize

Render from Trained Model

Renders are saved to /workspace/output/my_scene/test/ours_30000/renders/.

Create a Flythrough Video

Evaluate Metrics

Expected output:


Step 7 — Interactive Web Viewer

To explore the trained scene interactively:

Using nerfview/viser

Then open: http://<clore-host>:<public-port-8080>

Alternative: Use SuperSplat (Browser-Based Viewer)

Download the .ply file and open it in SuperSplatarrow-up-right:

Then drag-and-drop the .ply into the SuperSplat browser at: https://playcanvas.com/super-splat


Advanced Options

Control Number of Gaussians

White Background (for Objects)

Large Scale Scenes


Alternative: Gaussian Splatting with gsplat

gsplat is a faster, memory-efficient implementation:


Troubleshooting

CUDA Extension Build Fails

Solution: Rebuild for your specific GPU architecture:

COLMAP Fails to Reconstruct

Solutions:

  • Ensure ≥ 50% image overlap

  • Use more photos (100+ recommended)

  • Try sequential matching for video frames: add --match sequential to convert.py

Out of Memory During Training

Floaters in the Scene

Floating artifacts from Gaussian initialization:

  • Increase --densify_grad_threshold to be more selective

  • Use --prune_opacity_threshold 0.005 to remove low-opacity Gaussians earlier


Clore.ai GPU Recommendations

Gaussian Splatting training is GPU-compute intensive with frequent CUDA kernel calls. VRAM determines max scene complexity (number of Gaussians); compute determines training speed.

GPU
VRAM
Clore.ai Price
30K iter training
Max Gaussians

RTX 3090

24 GB

~$0.12/hr

~45–55 min

~6M

RTX 4090

24 GB

~$0.70/hr

~30–35 min

~6M

A100 40GB

40 GB

~$1.20/hr

~12–18 min

~10M+

RTX 3080 12GB

12 GB

~$0.08/hr

~70 min

~3M (limited)

circle-info

RTX 3090 at ~$0.12/hr is the best choice for Gaussian Splatting. A full 30K iteration training run costs ~$0.09–0.11 in GPU time. For multiple scenes in a session, the cost is negligible.

For quick experiments: train to 7,000 iterations first (~15 min on RTX 3090, ~$0.03). Check quality in the web viewer. Only run full 30K iterations for final output.

COLMAP preprocessing note: COLMAP (Structure from Motion) runs on CPU/GPU but the heavy compute is on CPU. Most Clore.ai servers have adequate CPUs for scenes under 200 images. For 500+ image datasets, look for servers with 16+ CPU cores.


Useful Resources

Last updated

Was this helpful?