转回 PLY 会大多少
一份 2.5 MB 的 SPZ,展开成 SH 3 阶的 PLY 大约 24.8 MB(10 万点 × 248 字节);如果是 SOG 或 SPLAT,展开后的体积也按 PLY 的每点成本算,不会因为源文件小就变小。
体积变大是预期行为,不是转坏了:量化后的数据本来就只有那么多信息,PLY 只是换了一种更通用的装法。
PLY 里到底存了什么
3DGS 的 PLY 不是普通点云:除了位置,还存尺度、旋转、不透明度、颜色,以及 f_dc_* / f_rest_* 球谐系数。SH 3 阶时每点约 248 字节;不带 f_rest_* 的 PLY 通常不是完整的 3DGS 文件。
这也是为什么普通点云查看器能打开文件、却看不出高斯效果:它把每个点当圆点画,丢掉了协方差和球谐。
- 输入:SPZ、SPLAT、KSPLAT、SOG、Compressed PLY、PLY
- 输出:PLY(二进制小端,带 SH 系数)
- 转换后可以继续在这里查看,或直接下载
谁在读 PLY
训练器和大多数编辑工具默认输出、默认输入都是 PLY;three.js r187 用 GaussianSplatPLYLoader 读它,Blender 5.3 起也能把高斯泼溅当点云导入,但属性命名和坐标系要对一下。
如果下游是网页查看器,PLY 往往太大;先在这里转成 SPZ 或 SPLAT,再上线。
常见报错:这不是 3DGS PLY
看到“缺少 f_dc_* / f_rest_*”或“不是 3DGS 文件”,通常是把普通点云 PLY 拖进来了。普通点云没有高斯参数,本工具不会假装能渲染。
看到“Missing PLY header”或直接解析失败,多半是文件截断、下载不完整,或者根本不是 PLY;重新下载源文件再试。
怎么验证输出没问题
把 PLY 再拖回本页:点数、包围盒、SH 阶数与源文件一致,说明写出成功。
更严格的做法是做一次 spz → ply → spz 回环,比较两次 PLY 的点数与包围盒;允许量化误差,但不应该出现点数变化。
PLY 适合谁,不适合谁
要继续训练、用编辑器改高斯、或在 Blender 等 DCC 里处理,PLY 是最稳的交换格式:字段完整、工具最多、精度最高。它也是长期存档的默认选择。
PLY 里的 f_rest_* 数量决定 SH 阶数:没有 f_rest 是 SH0,15 组是 SH3。转出来的 SH 阶数由源文件决定,不会凭空增加。
不适合直接上网页:SH 3 阶每点约 248 字节,10 万点就是 24.8 MB,移动端加载会很吃力。网页分发请再转 SPZ 或 SPLAT,PLY 留作母版。只是想在网页上看时,不要先转 PLY,直接留源压缩格式更省事。这并不代表 PLY 更适合网页分发。
- 适合:训练器输入、编辑器、Blender、需要球谐的离线渲染
- 不适合:直接做网页首屏、带宽敏感的分发
- 注意:普通点云 PLY 不是 3DGS PLY,字段对不上会被拒绝
和 SPZ / SPLAT 的取舍
SPZ 是压缩语,PLY 是通用语:SPZ 适合分发,PLY 适合存档与继续编辑。把 SPZ 转 PLY 只是解压,不会把量化丢掉的细节找回来。
SPLAT 更小、更简单,但不存球谐;同样 10 万点,PLY 约 24.8 MB,SPLAT 3.2 MB,SPZ 2.5 MB。要回训练器,还是 PLY。
如果你的下游是网页,别转 PLY:留 SPZ 或 SPLAT 更省带宽;只有对方明确要 PLY,或你要接着编辑时才转。
- 训练器、Blender、长期存档:PLY
- 网页分发:SPZ
- 老查看器:SPLAT
- 只做预览、不保真:SPLAT / SPZ
手把手:从压缩格式转回 PLY
- 把 SPZ / SPLAT / KSPLAT / SOG / Compressed PLY 拖进来
- 点「⇩ 转换」,目标已经预选为 PLY
- 转换完成后下载 .ply;体积通常会明显变大,这是正常的
- 把 PLY 拖回本页,确认点数、SH 阶数与包围盒
- 需要给训练器用时,先在本地小样本上跑通,再处理大场景
替代方案:不一定要转 PLY
如果下游是网页查看器,转 PLY 反而让文件更大;直接留 SPZ 更合适。如果下游只认老查看器,转 SPLAT 可能比 PLY 更实用。
只有在“对方明确要 PLY”或“你要继续编辑/训练”时才转。PLY 是通用语,不是压缩格式;把它当分发格式会浪费带宽。
常见问题
PLY 里有球谐系数吗?
训练器默认导出的 3DGS PLY 通常带 f_dc_0..2 与 f_rest_* 属性,SH 3 阶时每点约 248 字节。只有位置和颜色的普通点云 PLY 不是 3DGS 文件,本工具会按普通 PLY 读取并提示。
转成 PLY 能直接进 Blender 吗?
Blender 5.3 起原生支持高斯泼溅的点云表示,但属性命名与坐标系可能要对一下。PLY 只是容器,能否直接用取决于对方插件的读法。
转换会改变坐标系吗?
不会。工具只做格式转换,不做坐标轴变换;不同来源的模型朝向本来就不统一,查看器里可以用「摆正」和拖拽旋转调整。
PLY 转出来比原文件还大,正常吗?
正常。PLY 保留原始浮点,SPZ / SPLAT / SOG 都是压缩过的;解压回 PLY 体积变大不代表精度变高。
转出来的 PLY 球谐阶数会变吗?
不会凭空增加。目标 PLY 的 SH 阶数由源文件决定;源文件没有 f_rest_*,转出来也不会有高阶球谐。