☰
Spirula Studio:不依赖 Python 的 3DGS 训练工具,8GB 显卡也能训 1000 万高斯
2026/10/23 2:29:06 网站建设 项目流程

Spirula Studio:不依赖 Python 的 3DGS 训练工具,8GB 显卡也能训 1000 万高斯

【免费下载链接】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 Gaussian Splatting(3DGS)训练工具,把"照片/视频 → 相机位姿 → 训练 → Splat 模型 → 带纹理网格"整条流水线装进了一个独立二进制里。不装 Python、不装 PyTorch、不装 COLMAP,NVIDIA、AMD、Intel、Apple 显卡都能跑。如果你受够了在 3DGS 环境配置上耗掉的半个工作日,这个工具值得花 5 分钟试一次。

一条流水线压进一个二进制:Spirula Studio 解决的是什么问题

传统 3DGS 工作流是一条长链条:装 Python 环境、配 CUDA 版 PyTorch、再单独跑 COLMAP 求相机位姿,每一步都可能翻车,而且多数教程默认你有一块 NVIDIA 显卡。有意思的是,Spirula Studio 把这条链彻底压平——从原始照片或视频,到带相机位姿的数据集,到训练好的 Splat,再到可导出的纹理网格,全部由同一个程序完成,而且通过 Vulkan 计算后端做到了跨厂商:AMD、Intel、甚至 Apple Silicon 的 Mac 都能训练。

核心能力拆解:四个让它站住脚的点

Vulkan 跨厂商后端,是最容易被低估的一条。仓库提供 Vulkan 与 CUDA 两个可互换的后端,二者共享同一套设备数学(Slang 编译两次,分别产出 CUDA 头文件与 SPIR-V),训练和网格化功能完全一致。Vulkan 后端是官方推荐的选项:支持 NVIDIA/AMD/Intel/Apple Silicon,构建更快、体积更小,macOS 上通过 MoltenVK 自动静态链接,开箱即用。后端的设计细节在 backends.md 里有完整说明,包括针对各芯片能力差异做的 pipeline 变体。

量化训练带来的显存效率,直接决定了它能跑在什么机器上。官方给出的数字是:8GB 显存可以训练多达 1000 万个带完整 SH3 的 Gaussian。对显存敏感的读者,docs/notes/ 目录下还有 vram-high-res、vram-splat-x-img 等笔记,记录了每一项显存开销的实测拆解——想深入的人可以翻一翻。

内置 SfM 替代 COLMAP,这是"不需要装 Python"的核心一环。拖入照片文件夹或视频后,软件会走内置重建流程:特征检测支持 SIFT、ALIKED(配合 LightGlue 匹配)、LoMa,视频会自动挑选最清晰的帧。重建完成前不需要碰任何外部工具;如果你偏好传统路线,reference/scripts/ 里也备有一批独立 Python 预处理脚本(如process_data_colmap.py)作为退路。

鱼眼和 360° 相机是原生支持,不是"先矫正再说"。GoPro MAX 的.360、.insv双镜头文件、等距柱状全景都能直接加载训练,省去去畸变这一整步,数据格式支持见 datasets.md。

最小可用路径:两条方式拿到能跑的程序

拿到程序的方式只有两种,挑一个就行。

方式一,下载现成版本(最省事)。去项目的 Releases 页面选对应平台(Windows / Linux / macOS)的安装包,解压后双击打开 GUI,无需任何配置。

方式二,源码编译(AMD/Intel 用户或构建爱好者)。仓库自带构建脚本,会自动完成代码生成、环境检查并调用 CMake + Ninja,大约几分钟:

git clone https://gitcode.com/GitHub_Trending/sp/spirula-studio cd spirula-studio bash build_develop.bash -DSS_BACKEND=vulkan

Windows 下对应build_develop.bat -DSS_BACKEND=vulkan,产物在build_vulkan/spirula(.exe);NVIDIA 用户把参数换成-DSS_BACKEND=cuda即可。构建相关的完整选项矩阵在 build.md。

程序启动后进入主界面,新手路径很直接:Home → "Open a Dataset"(或 "Create Dataset from Photos/Video")→ 选一个预设 → 过一遍 Basic Options → Start Training。界面刻意做成"预设 + 精选基础选项"的形态:新手只碰少数几项,全部高级参数收在 "All Options" 里,支持搜索、悬停提示,改动过的项会被高亮并可右键重置。这个选项编辑器是从 TrainConfig.h 里的 X-macro 表自动生成的——加一行配置,CLI、GUI、config.json 三处自动同步,不会漂移。训练启动后,右侧视口实时渲染模型,左侧同步显示指标曲线和逐步日志,随时可以暂停或停止。

数据集准备:三类输入,自动识别,不用手工整理

这一步的体验比想象中好,因为三种输入格式(Nerfstudio、COLMAP、Metashape)由同一套 C++ 解析器自动识别,CLI、GUI 和 WASM 查看器共用,不存在"GUI 认得、CLI 认不得"的尴尬。照片文件夹可以原地索引(不拷贝、递归扫描);视频内置抽帧,按清晰度打分挑帧,多个视频可以合并成一个数据集;现成的 COLMAP / Nerfstudio / Metashape 结果直接打开,点位云缺失时会随机播种种子点。值得一提的是,数据集创建模块还会读取图片和视频里的运动遥测元数据来恢复真实比例与朝向——"重建结果偏大偏小、歪了"这个经典抱怨,新版本已经针对性修掉了。

进阶玩法:按你的场景挑一段

云 GPU 远程训练:浏览器里盯进度。在远程机器上跑spirula train时,它会默认在 HTTP 端口起一个 Web 查看器,ssh -L转发端口后,本地浏览器就能看到训练实时画面,不用把整个桌面会话拉过来:

spirula train --data <数据集目录>

全部选项敲spirula --help可见。

从 Splat 到网格:一条命令出纹理。spirula mesh <checkpoint>(GUI 的 Mesh 界面走的是同一套底层逻辑)把训练结果转成glb / ply / obj / stl等格式;支持顶点色或烘焙 UV 纹理(--color texture时 GLB 内嵌贴图),一次运行可以同时产出"看的 glb"和"打印用的 stl"。没有安装软件的场合,仓库内置的 Web Viewer 基于 WebGL2 + WASM,浏览器里就能看 Splat、网格和 MVS 数据集,甚至能流式加载数 GB 的大文件。

批量与恢复:把周末交给队列。GUI 的 Batch 界面可以排队"建数据集 → 训练 → 网格化"多行任务,队列保存在本地文件里,崩溃也不会丢;训练本身也支持中断后从 checkpoint 续训,优化器状态和步数原样接上,规则见 training-resume.md。

显存不够或效果不对时,先动这两个旋钮

显存吃紧时的顺序是:先调低 Image resolution 一档,再下调cap_max(最大 Splat 数上限)——量化训练已经把底噪压得很低,这两项通常足够。如果重建比例或朝向不对,重新跑一次数据集创建即可,遥测元数据的恢复会在这一环生效。界面支持 13 种语言,简体中文可在设置里直接切换,中文用户看日志和提示没有障碍。

收尾:拍照、SfM、训练、出网格,全程一个程序

回头看这条路径:拖入照片或视频 → 内置 SfM 出位姿 → 几分钟训练 → 得到 Splat 文件与检查点 → 需要时一键导出网格。整件事里没有 Python 环境、没有 COLMAP 安装、没有显卡厂商门槛。Spirula Studio 目前几乎由一个人维护,issue 和 PR 都开着——想深入架构的读者,architecture.md 和 src/app/README.md 是入口。

【免费下载链接】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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询