spirula-studio

harry7557558GPL-3.0活跃维护

跨厂商 3D 高斯泼溅训练器,能把视频转成 splat 再生成网格,支持 Vulkan 或 CUDA 后端,并带量化训练加速。

Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA.

v2026.10.30发布于 2026-10-30 04:57 UTC2,295star +81 / 7 天219fork同步于 2026-11-10 17:46 UTC

怎么上手

由 README 提炼,执行前请确认
从 Releases 页面下载对应平台压缩包,解压后双击打开 GUI;命令行运行 spirula --help 查看用法
硬件要求按 README 说明

支持 NVIDIA、AMD、Intel 和 Apple Silicon GPU,Vulkan 后端覆盖 Windows、Linux、macOS;CUDA 后端面向多数 NVIDIA GPU,仅支持 Windows、Linux。README 称 8GB 显存可训练 1000 万全 SH 高斯。

8G 显存可跑支持 Apple Silicon需要 CUDA
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

跨厂商 3D Gaussian Splatting 训练器,一个二进制完成视频到 splat 到网格

跨厂商 3D 高斯泼溅训练器,能把视频转成 splat 再生成网格,支持 Vulkan 或 CUDA 后端,并带量化训练加速。

核心能力

  • 通过 Vulkan 计算在 NVIDIA、AMD、Intel、Apple GPU 上跨厂商运行
  • 融合 MCMC/IGS+/MRNF 策略,减少浮空点并提升锐度
  • 量化训练实现高显存效率,8GB 显存可训练 1000 万 SH3 高斯
  • 原生支持 360° 相机与等距柱状投影,无需去畸变
  • 内置快速 SfM、AI 遮罩与视频抽帧,无需 COLMAP 或额外脚本

容易踩的坑

AI 遮罩需要 SAM checkpoint,GUI 首次使用时下载并缓存,命令行需用 --model 指向自行下载的模型文件;构建时开启 -DSS_ENABLE_PATENTED=ON 会引入 AVC/HEVC 专利风险,需自行确保合规;spirula train 默认会在 HTTP 端口启动查看器,远程训练需通过 ssh 转发访问

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2026.10.30
  1. v2026.10.30最新正式版2026-10-30 · 2026-10-30 04:57 UTC

    Changelog

    • Improved training quality in general
    • Improved compatibility of trained splats with PlayCanvas and Spark viewers
    • Fixed incompatibility with older AMD GPUs
    • Fixed occasional training out of memory caused by VRAM spike
    • Improved accuracy of progress bars, and added RAM/VRAM forecasting for SfM
    • Support MoGe 3 and Marigold v2 for depth/normal estimation
    • Support scaling the model based on distance between two points in editor
    • Support recovering orientation and scale based on Apriltags and ArUco markers in editor (experimental)
    • Support skipping blurry and near-duplicate frames during dataset creation
    • Support manually removing false matches in dataset creation
    • Support parsing masks with file names in Reality Scan convention
    • Support direct camera control beside preview pane during trajectory editing
    • Support reading GPS origin from gauge.txt
    • Support dataset creation from QooCam 3 Ultra raw footage

    Notes

    • This release carries training quality difference intended to be improvement. Please submit an issue if you notice significant regression in training quality or efficiency on your datasets.
    • A lot of great new features in this release are made by community contributors. Thanks those who contributed or tried to contribute, and we continue to welcome contributions, no matter large or small.
  2. v2026.10.162026-10-16 · 2026-10-16 01:22 UTC
    查看更新说明

    Changelog

    • Optimized RAM and VRAM usage for SfM on large datasets
    • Optimized VRAM usage when training on high resolution images
    • Support dense initialization, inspired by LichtFeld Densification Plugin
    • Support taking screenshots and saving camera views during training and viewing
    • Better support for creating datasets on log footage (DJI D-Log M, Insta360 I-Log, etc.)
    • Improved use of GPS in dataset creation
    • Support source preview and video trimming in dataset creation
    • Support spherical beta from Deformable Beta Splatting for view-dependent appearance
    • Reduced chance of watchdog timeout error (VkResult -4 / "Impacting Interactivity") on slower GPUs
    • Reduced seams in merged models after partitioned training
    • Revised masking prompts for dataset creation with 360 cameras
    • Made scene centering automatic for datasets in ECEF-like frames to reduce precision issues
    • Support parsing IMU and GPS from Antigravity A1 footage

    Notes

    • This release carries RAM and VRAM optimizations in SfM and training. Expect similar training speed, SfM speed can be similar or slower depending on disk bandwidth. Quality should remain near-identical. Please submit an issue if you notice significant regression compared to previous versions on your dataset.
    • A lot of great new features in this release are made by community contributors. Thanks those who contributed or tried to contribute, and we continue to welcome contributions, no matter large or small.
  3. v2026.10.62026-10-06 · 2026-10-06 02:31 UTC
    查看更新说明

    Changelog

    • Support region of interest (ROI) in training
    • Redesigned GUI home screen to keep recently opened items of various formats
    • Faster depth and normal map estimation for 360 cameras
    • Support separate masks for feature points and training (useful for sky and texture-rich clouds)
    • Support using LiDAR scans to recover metric scale and compute depth and normal maps
    • Reduced unnecessary step reruns when updating datasets after adjusting parameters
    • Improved support for various input image formats
    • Improved support for utilizing GPS in dataset creation
    • Addressed occasional training divergence
    • Addressed occasional crashes during meshing
    • Added warning message on known incompatible hardware and drivers
    • Support zooming using mouse wheel when editing masks

    Notes:

    • This release carries difference in both training and dataset creation intended to be improvement. Please submit an issue if you notice significant regression in quality or resource usage compared to previous versions.
    • LiDAR support was tested on a limited set of publicly available datasets. It is currently an experimental feature. Community feedback is welcome.
  4. v2026.9.302026-09-30 · 2026-09-30 00:59 UTC
    查看更新说明

    Changelog

    • General speed improvement in dataset creation
    • Support splitting a large dataset into multiple parts, then train separately and merge
    • Support natural language prompt for SAM 2.1 masking models
    • Support BiRefNet masking model
    • Improved training ETA estimation, and added training VRAM forecasting and OOM warning
    • Reduced chance of "VkResult -4" error in dataset creation and meshing
    • Improved support for using telemetry information in dataset creation
    • Support pen tool for masks
    • Support using a separate fixed-area mask for each camera in dual-fisheye setups
    • Fixed error loading PLY saved from a resumed training
    • Fixed COLMAP dataset parsing error with relative paths
    • Fixed video decoding issues with some drivers

    Notes:

    • This release carries difference in SfM intended to be improvement. Please submit an issue if you notice significant regression in accuracy or speed compared to previous versions.
    • The default masking model has been changed from SAM 3 to SAM 2.1 Base+ with Grounding DINO, which provides 2-3x faster masking with slightly reduced accuracy. SAM 3 remains available as a non-default option.
  5. v2026.9.242026-09-24 · 2026-09-24 04:27 UTC
    查看更新说明

    Changelog

    • Added editing features for 3DGS models, sparse reconstructions, and meshes
    • Support exporting image and video renders
    • Support manually refine masks (#96)
    • Improved SfM for sequential datasets with repetitive features
    • Improved fisheye border detection
    • Support insp and lrv input formats
    • Improved auto alignment after sparse reconstruction, especially when no telemetry data is available
    • Support saving and loading hand-edited masks for fixed areas of frames
    • Support extracting every single frame from a video, by filling 0 for fps
    • Support explicit control over color space of input point cloud in training
    • Added MCP server for agentic workflows
    • Added ModelScope mirror for downloading of model checkpoints

    Notes:

    • Editing and rendering features are experimental. Bug reports, feature requests, suggestions for UI/UX enhancements, and anything related are welcome.
    • This release carries difference in SfM intended to be improvement. Please submit an issue if you notice significant regression in accuracy or speed compared to previous versions.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Spirula Studio

    GPLv3 License  GitHub Releases  Platform

    Download • Build from Source • Gallery • Web Viewer

    Spirula Studio trains 3D Gaussian Splatting models – from raw photo/video to splat to textured mesh – in one self-contained binary. No Python/PyTorch, no separate COLMAP install. Runs on NVIDIA, AMD, Intel, and Apple GPUs via Vulkan, trains 10M full-SH Gaussians in 8 GB VRAM, and has native support for fisheye and 360° cameras.

    Spirula Studio - Open Source 3D Gaussian Splatting Pipeline

    Dataset credit: Garage by Simon Bethke (CC BY-SA 4.0); Flight Systems and Control Lab at UTIAS; MegaDepth-X; Mip-NeRF 360.

    Features

    • Cross vendor support via Vulkan compute – Runs on NVIDIA, AMD, Intel, and Apple GPUs

    • One strategy combining advantages of MCMC/IGS+/MRNF – Sharper results, fewer floaters, from objects to large scenes

    • Extreme VRAM efficiency with quantized training – Up to 10 million SH3 Gaussians in 8GB VRAM

    • Native 360° camera and equirectangular support – Load a dataset and train, no undistortion needed

    • Modified Bilateral grid and PPISP for exposure/WB correction – Improving quality without unwanted color shift or darkening

    • Built-in lightning-fast SfM, AI masking, frame extraction from videos – No need to wait for COLMAP or run separate scripts

    • Depth/normal, meshing, skybox, linear color... And more.

    News

    • September 23, 2026: Editing and rendering features – Editing features for 3DGS models, sparse reconstructions, meshes, and masks have been added, along with support for exporting image and video renders.

    • September 10, 2026: Metric scale – The dataset creation module now uses telemetry metadata in common video and image formats to recover metric scale and orientation, addressing the popular report that reconstruction results are too large/small or tilted.

    • September 3, 2026: LoMa feature support – The SfM module now supports LoMa for feature detection and matching on difficult datasets.

    • August 14, 2026: macOS support – Support for training on macOS/Apple Silicon has been validated. The app can now be downloaded from Releases page.

    • August 8, 2026: Multilingual support – Multilingual support has been added, available to both GUI and CLI. Supported languages: English, 日本語, 简体中文, 繁體中文, 한국어, Deutsch, Français, Español, Português, Italiano, Nederlands, Русский, Türkçe.

    Download

    Binaries for Windows, Linux, and macOS can be downloaded from Releases page. Simply select the one for your platform, download and unzip, and double click to open the GUI.

    If you are training on remote/cloud GPUs, you may use the CLI – Run spirula --help for details. By default, spirula train command will serve a viewer on an HTTP port, one you can forward over ssh and view training progress in your web browser.

    Build from source

    To build from source, Spirula Studio provides two backends:

    • Vulkan (Recommended): The cross-platform and cross-vendor option. Most tested. Works on all major GPUs. Faster to build and produces smaller binary.

    • CUDA: Legacy option for CUDA-capable NVIDIA GPUs.

    Both provide the same training and meshing functionality. CUDA backend may be faster or slower than Vulkan depending on GPU driver, with difference generally within a few percents. Vulkan backend can be slightly more VRAM efficient in some cases.

    BackendGPU/Vendor SupportPlatform SupportDependenciesAdditional Features
    VulkanNVIDIA, AMD, Intel, Apple SiliconWindows, Linux, macOSVulkan/MoltenVK, CMake/NinjaNative support for SfM, frame extraction from videos, and AI masking
    CUDAMost NVIDIA GPUsWindows, LinuxCUDA, CMake/Ninja-

    Make sure you have Vulkan SDK installed. On macOS, MoltenVK is automatically fetched by CMake. Clone the repository and run the commands:

    Windows with MSVC:

    cd spirula-studio\
    .\build_develop.bat -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON
    

    If it builds successfully, you get build_vulkan\spirula.exe.

    Windows with GCC/Clang:

    cd spirula-studio\
    cmake -G Ninja -B build_vulkan -DCMAKE_BUILD_TYPE=Release -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON -DCMAKE_MAKE_PROGRAM=Ninja
    cmake --build build_vulkan -j
    

    Pass -DCMAKE_C_COMPILER and -DCMAKE_CXX_COMPILER to the first cmake command if needed.

    If it builds successfully, you get build_vulkan\spirula.exe.

    Linux:

    cd spirula-studio/
    bash build_develop.bash -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON
    

    If it builds successfully, you get build_vulkan/spirula binary.

    macOS:

    cd spirula-studio/
    bash build_develop.bash -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON
    cmake --build build --target macos_app
    cmake --build build --target macos_dmg
    

    macOS has only the one backend, so it builds into build/ rather than into a per-backend tree. If it builds successfully, you get build/spirula binary similar to Linux. Additionally, it wraps that binary in a double-clickable build/Spirula Studio.app, as well as disk image build/Spirula Studio.dmg. MoltenVK is statically linked by default and will run on a Mac without dependency installed.

    Notes regarding third-party licensing

    -DSS_ENABLE_PATENTED=ON enables decoding video on the GPU instead of shelling out to ffmpeg (about 15x faster frame extraction, and without need to install ffmpeg). However, AVC/HEVC bitstream parsers carry third-party patent exposure. If you turn this on, you are responsible for ensuring compliance with local patent laws regarding AVC/HEVC playback.

    Masking needs a SAM checkpoint, which the GUI downloads on first use and caches. The checkpoints are Meta's models under Meta's licenses – SAM 2.1 is Apache-2.0, SAM 3 is under Meta's own, non-standard license. They are never bundled, and the GUI shows the terms before fetching anything. On the command line, point --model at a file you downloaded yourself.

    Make sure you have a recent version of CUDA installed. On Windows, you also need MSVC compiler compatible with your CUDA version. Clone the repository and run the commands:

    Windows:

    cd spirula-studio\
    .\build_develop.bat -DSS_BACKEND=cuda
    

    If it builds successfully, you get build_cuda\spirula.exe.

    Linux:

    cd spirula-studio/
    bash build_develop.bash -DSS_BACKEND=cuda
    

    If it builds successfully, you get build_cuda/spirula binary.

    Gallery

    You can find some professional-quality splats trained by Spirula Studio from Megascapes Library and their SuperSplat page.

    Collection of splats created by the users of Spirula Studio can also be found on SuperSplat page.

    Some splats created by the author of Spirula Studio can also be found on my SuperSplat page.

    Trivia

    Spirula Studio (formerly spirulae-splat) is named after the now-inactive project spirulae, which was named after the deep-ocean cephalopod mollusk.

    Spirula Studio is maintained almost entirely by one person. Issues and PRs welcome – I sometimes respond late, but rest assured that I do review them all.