Spirula Studio 3D 高斯泼溅训练:单二进制零配置安装,Windows / Linux / macOS 全部搞定
【免费下载链接】spirula-studioCross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA.项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio
Spirula Studio 是一款开源的 3D 高斯泼溅(3DGS)训练工具,把照片或视频变成 splat 与带纹理网格,全程只有一个自包含二进制。本文覆盖 Windows、Linux、macOS 三平台上预编译下载与源码构建两条路径。读完你能不依赖任何 Python 环境,直接打开训练界面开训。
先跑起来:3 步跑通预编译的 3D 高斯泼溅二进制
新手走这条最快:
- 去项目官方 Releases 页面,选择对应平台(Windows / Linux / macOS)的发布包
- 下载并解压
- 双击
spirula.exe(Windows)或运行./spirula(Linux / macOS)启动 GUI - 把照片或视频放进数据集目录,点训练
如果你在远程 GPU 服务器上训练,则不需要图形界面:spirula train默认会在一个 HTTP 端口上提供 3D 预览页面,ssh 端口转发后,本地浏览器就能看到训练进度。启动成功后的样子就是上图的界面:数据集选择与训练面板已经就绪。
为什么不用折腾环境:零依赖设计一览
多数 3DGS 工作流要 Python + PyTorch 环境再加一套 COLMAP,Spirula Studio 反着来:
- 零 Python 依赖:不装 Python、PyTorch,也不装 COLMAP,3D 重建用内置的原生 SfM 完成
- 跨厂商 GPU:一个 Vulkan 后端覆盖 NVIDIA、AMD、Intel 和 Apple Silicon
- 双后端功能对等:Vulkan(推荐)与 CUDA(NVIDIA),训练和网格化功能一致,性能差异通常控制在几个百分点以内
- 一个二进制全包含:GUI、命令行、SfM 重建、AI 分割都在
spirula里
预编译版够用的话,看到这里就可以停了;下面这一章只给想亲自编译的人。
想自己编译?先做选择题:Vulkan 还是 CUDA
想打开自定义编译参数,或你的机器上没有对应平台的发布包时,才需要源码构建。先做选择题:
| 后端 | 适用 GPU | 平台 | 一句话特点 |
|---|---|---|---|
| Vulkan(推荐) | NVIDIA / AMD / Intel / Apple Silicon | Windows、Linux、macOS | 跨厂商,构建更快、体积更小,自带 SfM + 视频抽帧 + AI 分割 |
| CUDA | NVIDIA | Windows、Linux | 传统方案,需 CUDA 工具包;功能与 Vulkan 一致,性能差异通常在几个百分点以内 |
先拉代码:
git clone https://gitcode.com/GitHub_Trending/sp/spirula-studio cd spirula-studio🪟 Windows(MSVC)
.\build_develop.bat -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON成功产物是build_vulkan\spirula.exe。CUDA 后端把参数换成-DSS_BACKEND=cuda,产物在build_cuda\spirula.exe。两个注意点:
- 脚本会用 vswhere 自动探测 Visual Studio 并调用
vcvars64.bat;PATH 上没有 CMake/Ninja 时,直接用 VS 自带的那套 - CUDA 后端默认自动挑选最新安装的 CUDA 工具包;想指定版本就传
-DCMAKE_CUDA_COMPILER=...
🐧 Linux
bash build_develop.bash -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON成功产物是build_vulkan/spirula。无显示器的无头服务器上,加-DSS_BUILD_GUI=OFF,只构建命令行工具。
🍎 macOS(Apple Silicon)
bash build_develop.bash -DSS_BACKEND=vulkan -DSS_ENABLE_PATENTED=ON cmake --build build --target macos_app cmake --build build --target macos_dmgmacOS 只有一个后端,所以构建目录是build/(而不是build_vulkan/)。产物除build/spirula外,还会打包出可双击的build/Spirula Studio.app和build/Spirula Studio.dmg。MoltenVK 默认静态链接,拷到别的 Mac 上也能直接跑。
一个影响行为的参数:-DSS_ENABLE_PATENTED=ON
这个参数启用进程内 GPU 视频解码,抽帧速度约快 15 倍,且无需安装 ffmpeg。参数默认是 OFF;关闭时,视频抽帧会回退调用系统里的 ffmpeg。H.264 / H.265 / AV1 解析器带有第三方专利授权问题,开启前请自行确认所在地区的合规要求。
💡 另外:python3 是完全可选的。缺了它,脚本只是跳过代码生成——生成的代码文件已随仓库提交,构建不受影响。
三平台构建依赖差异,一张表看完
| 依赖 | Windows | Linux | macOS |
|---|---|---|---|
| 编译器 | VS 2022(C++ 工具集),脚本自动调 vcvars64 | gcc/g++ | Xcode 命令行工具 |
| CMake + Ninja | VS 自带,用官方脚本则无需另装 | 必须 | 必须 |
| Vulkan SDK | 必须(Vulkan 后端) | 必须(Vulkan 后端) | 不需要,MoltenVK 由 CMake 自动获取并静态链接 |
| CUDA 工具包 | 仅 CUDA 后端需要,脚本自动选最新 | 仅 CUDA 后端需要 | 不支持 |
| python3 | 可选,缺了自动跳过代码生成 | 可选 | 可选 |
| libomp(OpenMP) | 不需要 | 系统自带即可 | 建议用 Homebrew 装,脚本会自动探测 keg-only 路径 |
💡 最容易漏掉的是 macOS 的 libomp:Homebrew 把它标成 keg-only,CMake 默认找不到。构建脚本会自动探测这条路径并传给 CMake,你只需
brew install libomp。
装完跑两条命令确认安装成功
spirula --version spirula --helpWindows 下命令换成spirula.exe。--version输出版本号(源码构建会额外带提交哈希),--help列出train、sfm等全部子命令。两者都能正常输出,说明安装成功。直接运行不带参数的spirula会启动 GUI——把数据集丢进去就能开训 🎉
报错了?按这个顺序查
先别慌,十有八九是下面这几个,按顺序对号入座:
| 看到的现象 | 大概率原因 | 你该做的 |
|---|---|---|
Windows 报vcvars64.bat not found | 没装 VS 的 C++ 工具集 | 安装 VS 的"C++ 桌面开发"工作负载,或在开发者命令提示符里运行脚本 |
| Vulkan 后端配置失败 | 没装 Vulkan SDK | Windows / Linux 先装 Vulkan SDK;macOS 无需安装 |
| GUI 构建卡在拉取 GLFW / ImGui | 首次构建需要联网 FetchContent | 联网让它一次性下载完依赖,或加-DSS_BUILD_GUI=OFF |
| 构建目录和脚本提示的对不上 | 手动传了-B参数 | 别传-B,脚本会按后端自动选build_vulkan/或build_cuda/ |
| 大规模并行编译被 OOM 杀掉 | 并发太高、内存不够 | 脚本已按可用内存自动限并发(每任务约 750MB),不用手动传-j |
| macOS 上网格化跑在单核 | 没找到 OpenMP(libomp) | 用 Homebrew 安装 libomp,构建脚本会自动探测 keg-only 路径并传给 CMake |
| nvcc 编译报错 | CUDA 版本与编译器不匹配 | 脚本默认选最新安装的 CUDA;想指定版本传-DCMAKE_CUDA_COMPILER=... |
| 中文路径 / 界面显示方块 | CJK 全量字体未下载 | 首次使用中文字体时 GUI 会提示下载并缓存,属正常行为 |
装好之后:继续深入
- docs/build.md —— 构建矩阵与全部选项,适合想定制构建参数的人
- docs/backends.md —— CUDA / Vulkan 后端缝的设计,适合想搞懂双后端架构的人
- docs/datasets.md —— 支持的数据集结构,适合准备第一份数据集的人
- cmake/SsOptions.cmake —— 所有 CMake 选项的定义处,适合想抠默认值的人
- build_develop.bash —— 构建入口脚本:自动探测 MSVC / CUDA 环境、自动限并发,适合想弄清脚本逻辑的人
装好之后,最快的上手方式是找一组同一场景的照片训一遍,看看效果。
【免费下载链接】spirula-studioCross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA.项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考