Frankensplat:浏览器里训练高斯泼溅,快 1.73 倍、画质低 0.87 dB

训练一个高斯泼溅模型,现在可以什么都不装:把一个图片文件夹、或者一个装着图片的 ZIP,配上一份 COLMAP 稀疏重建,拖进浏览器标签页,剩下的在本机显卡上跑完。OfflineTools(Rafael Spring)放出的 Frankensplat 就是这么一个免费的浏览器工作台,用 WebGPU 在本地训练 3D 高斯泼溅。

OfflineTools 在此之前已经放出过 COLMAP 的浏览器版——它产出的正是高斯泼溅训练器的起点:相机位姿和稀疏点云。Frankensplat 接的就是这份输出。它也能打开一个 PLY,放在 WebGL2 里查看。

十月我们报道过的 Splat Lab,同样在浏览器里用 WebGPU 训练,但定位是研究用的试验场,一次支持四种图元。Frankensplat 走的是另一条路:把日常要调的旋钮都摆出来,当工具用。

它把哪些旋钮交给你

  • splat 预算、图像缩放、PPISP 外观校正。 最后这项会逐张学习曝光与颜色校正,专治多机位、多时段拍下来的色差。
  • 开跑前先给显存估计。 不用等它跑到一半崩在分配上。
  • 训练过程中实时显示 loss 曲线、PSNR 和迭代计数;可以暂停,可以导出 PLY,也可以存一个 checkpoint,之后用同一份数据集续训。
  • 渐进模式(progressive)是默认。 从较小的图像尺度起步,随着场景成型逐步把训练目标抬到全分辨率。
  • 三级缓存:GPU 显存 → 系统内存 → 本地磁盘。 训练用的图片按这三层排布,显存小的卡因此也能把整份数据集留在手边。
  • 数据不上传。 但要联网才能加载这个应用——它不是可离线安装的本地程序。

与 LichtFeld Studio 的对比:时间省下来,质量赔出去

OfflineTools 自己发布了一份对比:对手是 LichtFeld Studio(11 月 1 日刚到 v0.5.4.2),测试集是 Mip-NeRF 360 的七个场景。

测试环境:RTX 3070,8 GB 显存,Windows。Frankensplat 跑在 Edge 里;LichtFeld Studio 用 0.5.4.1 的开发版构建,走原生 CUDA。两者都是 15,000 次迭代、150 万高斯上限。

时间上,浏览器版本赢。

对比项 结果
渐进模式 vs 关掉 edge map 与细结构特性的 LichtFeld Studio(在七套配置都跑完的那五个场景上) 少 42.3% 训练时间,等于 1.73 倍
渐进模式 vs LichtFeld Studio 默认设置 2.04 倍
固定分辨率模式 vs 关掉细节特性的 LichtFeld Studio 少 30.3% 时间

以上是 OfflineTools 自己的测量口径。

质量上,反过来。 七个场景的平均 PSNR:渐进模式 Frankensplat 28.52 dB,关掉细节特性的 LichtFeld Studio 29.39 dB——差 0.87 dB。这个数字是在留出照片上拟合过曝光与颜色之后测的。

口径要看清: 每种配置每个场景只跑了一次;LichtFeld Studio 的默认模式只在七个场景里的五个上跑通。

Frankensplat 现在就能在浏览器里用。

我们的整理

一变的是门槛,不是算法

这篇新闻里没有新算法。渐进式训练、PPISP 外观校正、checkpoint 续训,桌面训练器上早就有。变的是前置条件:过去跑一份 3DGS,先要一块能装驱动的 NVIDIA 卡、一套对得上的 CUDA、一个 Python 环境,再加上 COLMAP 的编译或预编译包——这四步每一步都能让人在第一天就放弃。

现在这条链条被压到"打开标签页 → 拖文件夹"。对教学、对新同事上手、对"我先看看这份数据到底能不能重建",这是数量级的差别。

但别把它读成"不需要显卡了"。它的下限是 8 GB 显存那一档,而且原文明说了要靠显存、内存、磁盘三层缓存才跑得动整份数据集。省掉的是环境,不是硬件。

二省了什么,赔了什么

省 / 赢 赔 / 限
时间 比桌面 CUDA 版快 1.73 倍(对关掉细节特性的配置)、2.04 倍(对默认配置) —
质量 — 平均 PSNR 低 0.87 dB
环境 不用装 CUDA / Python / COLMAP 二进制 要联网加载应用,不能离线安装
数据 训练在本地,数据集不上传 图片与 COLMAP 结果仍需先在你机器上备好
硬件 8 GB 显存这一档能跑 显存仍是硬门槛,靠三级缓存换空间

0.87 dB 在重建里是什么量级?它不是"模糊一片",更像细密结构(栏杆、文字、格栅)边缘软一档,或者薄结构出现轻微的鬼影。对拿来当参考底图、做体积估算、当众筹页面的展示素材,够用;对要拿去做测量比对、或者要交付给美术继续清理的场景,差值就落在会被人看出来的那一侧。

三三条你可以自己验的检查

厂商自测只跑了一次,所以别照抄结论——照抄方法更划算。下面三条在一台 8 GB 的机器上就能复现:

  1. 同一份数据集,跑一遍渐进模式,再跑一遍固定分辨率模式。 差的是时间,看的是质量有没有跟着变。如果两者 PSNR 与肉眼观感接近,渐进模式就是白赚。
  2. 把同一份数据也丢进你手边任意一个桌面训练器。 只比一件事:到达"能看"的迭代数,谁先到。原文是在 15,000 次迭代这个固定点上比的,实际用起来你会更早停手。
  3. 导出的 PLY 换一个渲染器打开。 checkpoint 与 PLY 都在本地,这是唯一能确认"结果不属于某个工具"的办法——换渲染器还能立住,才说明它不是过拟合到某个查看器的着色。

四这份对比里没说的四件事

  • "快"的基准是被关掉特性的那一档。 42.3% 和 1.73 倍对应的是 edge map 与细结构特性关闭的 LichtFeld Studio;对它的默认设置,Frankensplat 是 2.04 倍。也就是说桌面版把质量押在了那两个特性上,关掉之后才谈得上同等条件。
  • 五个场景,不是七个。 时间对比只发生在七套配置都跑完的那 5 个场景上。剩下两个场景为什么没跑完,原文没写。
  • PSNR 的 0.87 dB 跨的是不同场景集。 28.52 dB 是七个场景的平均,而对手那一档的默认模式只跑了五个。严格说这不该直接相减。
  • Edge 里的 WebGPU 与原生 CUDA 不是同一种负载。 一个走浏览器进程的显存配额与调度,一个是独占显卡的本地进程。同一块卡上"谁更快"这个问题的答案,会随你后台还开着什么而变。

五适合谁,不适合谁

适合:想在采完现场当天就确认"这段素材能不能重建"的人;显卡只有 8 GB、又不想为一次实验配环境的人;教学或团队内训,需要让每个人十分钟内跑出第一个 splat 的人。

不适合:要出交付级资产、且 PSNR 与薄结构保真度都要压到极限的人;完全离线、内网隔离的环境(应用要联网加载);要长期批量训练几十份数据集的人(浏览器标签页不是队列系统)。

落到工具上:先看结果,再决定要不要装环境

这个工具最实用的地方在最后一步:它导出的是一份标准 PLY。 也就是说你完全可以先在浏览器里训一遍、导出,然后用一个完全独立的渲染器确认结果——"这份数据到底救不救得回来"这个问题,答案在十分钟内就能出来。

把导出的 PLY 直接拖进 3D 模型查看器,不用装引擎就能在浏览器里转着看。判断标准很简单:换一个渲染器还能立住,说明重建本身站得住;换一个渲染器就散,那问题在训练,不在查看器。

同主题的历史文章,按顺序读正好是一条线:

专题入口:AI × 3D / 生成式 AI 完全指南。

来源:OfflineTools' Frankensplat Trains Splats in the Browser(Michael Rubloff,Radiance Fields,2026-11-13)。性能与 PSNR 数字均为 OfflineTools 自测口径,本文未做本地复测。

本文由 BimAnt 编译整理,转载请注明出处。