harry7557558/spirula-studio
摘要
Spirula Studio 是一款开源工具,用于从原始照片或视频训练3D高斯溅射模型,支持通过Vulkan在多个GPU上运行,具有VRAM效率高、原生支持360°相机以及内置SfM和AI遮罩等功能。
查看缓存全文
缓存时间: 2026/09/23 15:05
harry7557558/spirula-studio
来源:https://github.com/harry7557558/spirula-studio
Spirula Studio
GPLv3 许可证 | GitHub 发布页面 | 下载 (https://github.com/harry7557558/spirula-studio/releases/)
• 从源码构建 • 画廊 • 在线查看器 (https://harry7557558.github.io/spirula-studio/viewer/)
Spirula Studio 可在单一独立程序中完成 3D 高斯溅射模型的全流程训练——从原始照片/视频数据,到溅射表示,再到纹理网格生成。无需 Python/PyTorch,无需单独安装 COLMAP。通过 Vulkan 在 NVIDIA、AMD、Intel 和 Apple GPU 上运行,能在 8GB 显存内训练包含 1000 万完整球谐高斯参数的模型,并原生支持鱼眼与 360° 全景相机。
Spirula Studio - 开源 3D 高斯溅射处理流水线
数据集来源:Simon Bethke 的 Garage (https://www.kaggle.com/datasets/simonbethke/garage) (CC BY-SA 4.0);UTIAS 飞行系统与控制实验室;MegaDepth-X;Mip-NeRF 360。
功能特性
- 通过 Vulkan 计算实现跨厂商支持 —— 可在 NVIDIA、AMD、Intel 和 Apple GPU 上运行
- 融合 MCMC/IGS+/MRNF 优势的单一算法 —— 结果更清晰,浮点噪点更少,适用于从小物体到大场景的各种规模
- 极致的显存效率与量化训练 —— 在 8GB 显存中可处理最多 1000 万 SH3 高斯参数
- 原生支持 360° 相机与等距柱状投影 —— 仅需加载数据集即可训练,无需进行畸变校正
- 改进的双边网格与 PPISP 技术 —— 用于曝光/白平衡校正,提升质量且避免色偏或暗角
- 内置极速 SfM、AI 抠图、视频帧提取功能 —— 无需等待 COLMAP 或运行额外脚本
- 支持深度/法线图生成、网格化、天空盒、线性色彩空间……更多功能持续更新中。
动态新闻
- 2026年9月10日:度量尺度恢复 —— 数据集创建模块现已支持通过常见视频/图像格式的元数据恢复度量尺度与方向,解决了重建结果过大/过小或倾斜的常见问题。
- 2026年9月3日:LoMa 特征支持 —— SfM 模块现已支持 LoMa (https://github.com/davnords/LoMa),可在复杂数据集中进行特征检测与匹配。
- 2026年8月14日:macOS 支持 —— 已完成对 macOS/Apple Silicon 训练功能的验证。应用程序现可通过发布页面 (https://github.com/harry7557558/spirula-studio/releases/) 下载。
- 2026年8月8日:多语言支持 —— 新增多语言功能,图形界面与命令行均已支持。可选语言包括:English、日本語、简体中文、繁體中文、한국어、Deutsch、Français、Español、Português、Italiano、Nederlands、Русский、Türkçe。
- 2026年8月8日:端到端工作流 —— Vulkan 后端现已集成视频帧提取、AI 抠图、原生 SfM、网格生成和批处理功能,均可通过图形界面与命令行调用。
- 2026年7月22日:跨厂商支持 —— 新增 Vulkan 后端,支持 NVIDIA、AMD 和 Intel GPU。
下载
Windows、Linux 和 macOS 的可执行文件可通过发布页面 (https://github.com/harry7557558/spirula-studio/releases/) 下载。选择对应平台的版本,下载后解压,双击即可启动图形界面。
若在远程/云端 GPU 上进行训练,可使用命令行模式——运行 spirula --help 查看详细参数。
默认情况下,spirula train 命令会在 HTTP 端口启动查看器,可通过 SSH 端口转发在浏览器中实时查看训练进度。
从源码构建
Spirula Studio 提供两种后端:
- Vulkan(推荐):跨平台、跨厂商方案。经过最广泛测试,支持所有主流 GPU。构建更快且生成文件更小。
- CUDA:适用于支持 CUDA 的 NVIDIA GPU 的传统方案。
两者提供相同的训练与网格化功能。CUDA 后端可能因 GPU 驱动差异比 Vulkan 快或慢,但差异通常在百分之几以内。Vulkan 后端在某些情况下显存效率略高。
| 后端 | GPU/厂商支持 | 平台支持 | 依赖项 | 附加功能 |
|---|---|---|---|---|
| Vulkan | NVIDIA、AMD、Intel、Apple Silicon | Windows、Linux、macOS | Vulkan/MoltenVK、CMake/Ninja | 原生支持 SfM、视频帧提取和 AI 抠图 |
| CUDA | 大多数 NVIDIA GPU | Windows、Linux | CUDA、CMake/Ninja | - |
Vulkan 后端构建详情
请确保已安装 Vulkan SDK。macOS 上 MoltenVK 会由 CMake 自动获取。
克隆仓库后执行以下命令:
Windows (MSVC):
cd spirula-studio\
.\build_develop.bat -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON
若构建成功,将在 build_vulkan\spirula.exe 生成可执行文件。
Windows (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
若需要,可在首个 cmake 命令中通过 -DCMAKE_C_COMPILER 和 -DCMAKE_CXX_COMPILER 指定编译器。
若构建成功,将在 build_vulkan\spirula.exe 生成可执行文件。
Linux:
cd spirula-studio/
bash build_develop.bash -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON
若构建成功,将在 build_vulkan/spirula 生成二进制文件。
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 仅支持单一后端,因此构建结果直接生成于 build/ 目录。若构建成功,将生成类似 Linux 的 build/spirula 二进制文件,并会封装为双击即用的 build/Spirula Studio.app 及磁盘映像 build/Spirula Studio.dmg。
MoltenVK 默认静态链接,无需在 Mac 上额外安装依赖即可运行。
第三方许可说明
-DSS_ENABLE_PATENTED=ON 选项启用 GPU 视频解码(替代调用 ffmpeg),使帧提取速度提升约 15 倍,且无需安装 ffmpeg。但 AVC/HEVC 比特流解析器涉及第三方专利。启用此选项需自行确保遵守当地关于 AVC/HEVC 播放的专利法规。
AI 抠图功能需要 SAM 检查点文件,图形界面会在首次使用时自动下载并缓存。该文件为 Meta 模型并遵循 Meta 许可证——SAM 2.1 采用 Apache-2.0 协议,SAM 3 使用 Meta 专有非标准协议。这些文件从不打包分发,图形界面会在下载前显示相关条款。命令行模式下可通过 --model 参数指定自行下载的检查点文件路径。
CUDA 后端构建详情
请确保已安装最新版 CUDA。Windows 系统还需匹配 CUDA 版本的 MSVC 编译器。
克隆仓库后执行以下命令:
Windows:
cd spirula-studio\
.\build_develop.bat -DSS_BACKEND=cuda
若构建成功,将在 build_cuda\spirula.exe 生成可执行文件。
Linux:
cd spirula-studio/
bash build_develop.bash -DSS_BACKEND=cuda
若构建成功,将在 build_cuda/spirula 生成二进制文件。
画廊
可在 Megascapes Library (https://library.getmegascapes.com/) 及其 SuperSplat 页面 (https://superspl.at/user/megascapes) 找到由 Spirula Studio 训练的专业级溅射作品。
Spirula Studio 用户创作的溅射作品合集也可在 SuperSplat 页面 (https://superspl.at/explore/software/spirula-studio) 浏览。
Spirula Studio 作者的部分作品可在我的 SuperSplat 页面 (https://superspl.at/user?id=harry7557558) 查看。
趣闻
Spirula Studio(原名 spirulae-splat)的命名源自现已停止维护的项目 spirulae (https://github.com/harry7557558/spirulae),而后者的名字来源于深海头足纲软体动物——鹦鹉螺属 (https://en.wikipedia.org/wiki/Spirula)。
本项目几乎完全由个人开发维护。欢迎提交问题与代码合并请求——我有时会延迟响应,但请放心所有内容我都会认真审核。
相似文章
@vincieye: 从几张照片生成完整的3D场景通常意味着凭空想象盲点或内存爆炸。SPAR3S s…
SPAR3S是一种稀疏自回归生成模型,能高效地从稀疏多视角图像生成完整的3D场景,无需3D真值数据,使用体素对齐的潜在空间和可微分的3D Gaussian Splatting。
VidSplat:利用几何引导的视频扩散先验进行高斯泼溅重建
VidSplat 是一种无需训练的生成式重建框架,它利用视频扩散先验,通过合成新视角,从稀疏输入中恢复完整的 3D 场景。
@uxiabanos:使用@UnrealEngine制作的完整#3DGS公寓,由@lichtfeldstudio训练的高斯溅射,拥有500万个点和1万步……
展示了一个使用Unreal Engine进行的完整3D高斯溅射公寓,通过500万个点和1万步训练,显示了对复杂材质的更高保真度。
在Julia中实现更好的高斯溅射
GaussianSplatting.jl 2.0版本通过KernelAbstractions.jl带来了多GPU后端支持、多线程UI、MCMC致密化策略,以及用于更好3D重建的深度/几何监督。
ZipSplat:更少的高斯,更优的 Splats
ZipSplat 是一种基于 token 的前馈 3D 高斯溅射模型,利用 k-means 聚类将高斯放置与像素网格解耦,在无需真实位姿或内参的情况下,在 DL3DV 和 RealEstate10K 上实现了约 6 倍的高斯减少,同时设立了新的最佳结果。