Spirula Studio 快速上手:5 分钟用照片训练出第一个 3D 高斯泼溅模型
【免费下载链接】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)训练工具,把照片或视频直接训练成可自由视角观看的 3D 场景,一个程序包办数据集、训练与导出,NVIDIA、AMD、Intel、Apple 显卡都能跑。本文带你完成三件事:拿到程序、从照片建数据集、训练出第一个 Splat 模型。
快速认识:一个程序替代一整条 Python 流水线 🎯
传统 3DGS 流程需要 Python 环境、PyTorch 和 COLMAP 三套组件来回切换,Spirula Studio 把整条流水线装进一个独立二进制:
- 省掉环境搭建——不装 Python、不配 CUDA 环境,下载即用;Vulkan 与 CUDA 双后端让 AMD、Intel、NVIDIA 乃至 Apple 显卡都能训练,详见 docs/backends.md
- 省掉相机重建环节——内置 SfM(运动恢复结构,即从照片推算相机位置的技术),照片拖进来几分钟后就得到带相机位姿的数据集,不必再单独运行 COLMAP
- 省显存——量化训练让 8GB 显存可容纳 1000 万个高斯(高斯即构成 3D 场景的最小单元),普通消费级显卡即可开工
拿到 Spirula Studio:下载安装包或 5 分钟源码编译
目标:让spirula程序在你机器上跑起来。
- 新手:从项目 Releases 页面下载对应平台的安装包(Windows / Linux / macOS),解压后双击打开 GUI
- AMD / Intel / Mac 用户,或想自己构建的读者:从源码编译 Vulkan 后端
git clone https://gitcode.com/GitHub_Trending/sp/spirula-studio cd spirula-studio bash build_develop.bash -DSS_BACKEND=vulkan构建脚本会自动完成代码生成与 CMake + Ninja 编译,产物在build_vulkan/spirula;Windows 下改用build_develop.bat。
你应该看到什么:程序启动后进入 Home 界面,有"Open a Dataset"和"Create Dataset from Photos/Video"两个入口;命令行里spirula --help能列出全部子命令。
把照片或视频变成训练数据集 📷
目标:不用 COLMAP,让软件自己完成相机重建。
- 把照片文件夹或视频文件直接拖进窗口,软件自动识别输入类型
- 视频会自动抽帧(每段窗口保留最清晰的一帧,可选跳过模糊帧)
- 等待内置 SfM 完成特征提取、匹配与位姿求解
| 输入 | 自动处理 |
|---|---|
| 照片文件夹 | 特征匹配 + 相机重建,直接生成数据集 |
| 视频 | 抽帧挑清晰帧,原生支持 GoPro MAX.360等 360° 格式 |
| 现成数据集 | COLMAP / Nerfstudio / Metashape 格式直接打开 |
支持的目录布局与识别规则见 docs/datasets.md。
你应该看到什么:左侧面板滚过抽帧、特征、匹配、重建的实时日志,视口里出现稀疏点云和相机视锥线框,界面提示相机注册成功率;一切正常后直接"Open in Trainer"进入训练界面。
启动训练,在视口里看模型实时长出来 🏁
目标:跑完一次最短完整训练。
- 预设(Preset)下拉框选
3dgs(默认);环绕拍摄的静态物体选centered-object,全景数据选360-camera - Basic Options 保持默认,把Steps(训练步数)调到 2000 左右,首次体验足够
- 点击Start Training
你应该看到什么:右侧视口实时渲染,模型从一团模糊逐渐变清晰;左侧折线图滚动显示 PSNR(峰值信噪比,越高表示重建越忠实)等指标。训练结束自动保存 PLY 格式的 Splat 文件和检查点,Viewer 界面可打开自由旋转观看,最多 4 个模型同屏对比。
进阶一瞥:命令行训练、网格导出与远程观看 💻
spirula train --data <数据集目录> # 默认同时启动 Web 查看器 spirula mesh <训练输出> # Splat 转 glb / ply / obj / stlspirula train在云 GPU 上一样好用:它自带 HTTP 端口的 Web 查看器,用ssh -L端口转发后在浏览器里远程盯训练进度。spirula mesh(GUI 的 Mesh 界面同底层逻辑)把模型转成带顶点色或烘焙纹理的网格,可直接导入 Blender 或 3D 打印机。界面支持 13 种语言,中文用户可在设置中切换简体中文,多语言细节见 docs/i18n.md。
常见坑与处理办法 ⚠️
- 显存不够:报错提示显存不足。默认量化训练下 8GB 显存通常可训 1000 万高斯,不足说明输入分辨率过高。把 Basic Options 里的 Image resolution 调低一档,或减少
cap_max(最大 Splat 数)。 - 结果比例不对或整体倾斜:场景尺寸失真、倒立。新版数据集模块会读取视频与照片里的 IMU / GPS 遥测元数据恢复真实比例和朝向,重新跑一次数据集创建即可;竖拍照片导致的歪斜,注意 SfM 与训练两次使用相同的
--exif-orientation(默认orient)。 - 360° 全景、鱼眼数据打不开:以为必须先去畸变。其实无需预处理,等距 / 等立体鱼眼与球面全景可直接加载训练,GoPro MAX
.360默认自动拆成 10 个透视视角。 - AI 遮罩卡在模型下载:首次使用会拉取 SAM 分割模型并展示许可条款。无网环境可先不勾遮罩完成训练,之后回来补做。
- Vulkan 构建失败:Linux / Windows 缺少 Vulkan SDK。先安装 Vulkan SDK 再重跑构建脚本;macOS 的 MoltenVK 由 CMake 自动获取,无需手工安装。
从拍照、拖入窗口建数据集、几分钟训练到导出网格,这条链路你已经全部走通。接下来可以试试:用 AI 遮罩框住路人或车辆,让模型学习"没有它们"的场景;或用 Batch 界面把多段视频排进队列,一次性批量出片。
【免费下载链接】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),仅供参考