A pedagogical survey · 体图形学考古 · 1982 — 2026
找一种 3D 表示:像 3DGS 一样局部、像 SDF 一样连续、像 splat 一样解析直出、不透明度还能自己学
这是一次"图形学考古"。我们想要一种 3D 表示,它同时满足四个看似互相打架的愿望:
(1) 局部基元 ——像 3D Gaussian Splatting 那样由许多小块拼成,不像全局
SDF 那样一个函数管整个大场景;(2) 连续表面 ——像 SDF 那样定义出一张光滑曲面,
在机器学习里有干净、连续的梯度;(3) 解析 splat 渲染 ——不沿光线采样,
而是把每个基元解析地投到屏幕上直接合成;(4) 自适应厚度 / 不透明度 ——
不靠几何规则硬算,而是根据图像自动学出来。
没有任何一篇老论文同时给齐这四样。但 1982 年以来的图形学,几乎把这张设计图的每个角落都摸过了:
blobby model、点集曲面、EWA splatting、各向异性 SPH 核、opacity hull……
本站把它们由浅入深串成一条线。预设读者:会基本的微积分、线性代数、机器学习、NeRF、SDF。
不会本子领域也没关系——我们从头讲,每个新名词都配图、配公式、配交互 demo。
~45 篇论文 · 5 个交互演示 · 跨越 44 年 · 最后更新 2026-06-01
阅读路径建议
零基础 :从 §1 顺读,Primer 四节会把"场 vs splat"这条主线钉死,之后每章都挂在这条线上。
熟悉 3DGS / SDF :可直接跳到 §4 看"四个愿望"这张评分表,再挑感兴趣的家族(§6 隐式曲面 / §10 EWA / §11 各向异性核)。
只想看老想法如何接上现代 :直接读 §13–§14 的 Frontier,再回头查它们复活了哪条老路。
每一篇论文都标了它满足四愿望里的哪几条。
§1 我们到底在找什么
先把研究对象说清楚。本站关心的"3D 表示"都长一个样:一堆放在空间里的局部"核"(kernel /
primitive),每个核有中心、形状、强度;整个场景是这些核的某种叠加。 NeRF 那种"一个大 MLP
吃坐标吐密度颜色"的全局表示,不在我们今天的主线里——我们要的是由局部基元拼出来 的东西。
关键在于:同样一堆核,有两种完全不同的"读出"方式 ,而这两种读法分别对应了你已经
熟悉的两个世界。把这句话刻在脑子里,后面 40 年的论文都是在这两种读法之间反复横跳:
关键想法 · 一句话
把核求和成一个标量场 、再取它的等值面(level set) ,你得到的是
隐式曲面 / SDF 那一派 (连续表面、好梯度);把核当成发光发雾的小片 、
投到屏幕上从前往后 alpha 合成 ,你得到的是 splatting / 3DGS 那一派
(局部、解析直出)。它们用的是同一批高斯,只是问了不同的问题。
这两派各自缺了对方的长处:隐式曲面有连续表面但传统上要么靠全局求解、要么靠 ray marching 找零点,
不"解析直出";splatting 解析直出又局部,但它的高斯是飘在空中的"体雾",没有曲面、没有法向 。
我们要找的那种表示,本质上就是想把两派的优点焊在同一个基元上 。这也是为什么本站要回到
老图形学:这两派的根都在那里,而且它们曾经离合体只差一步。
一个核里存什么
作为贯穿全站的"基准基元",我们设想每个局部基元 $i$ 存下面这些量。后面每篇论文,基本都是
在增删或重新解释 这张表里的某几行:
符号 含义 典型大小
$\mathbf{c}_i$ 中心 / 位置 3 floats
$\Sigma_i = R_i S_i^2 R_i^\top$ 各向异性协方差(朝向 $R_i$ × 三轴尺度 $S_i$) 旋转 4 + 尺度 3
$\mathbf{n}_i,\ \kappa_i$ 法向、局部曲率(若是"曲面"派才有) 3 + 1~2
$h_i$ 法向厚度 / 壳厚(愿望 4) 1 float
$o_i,\ \beta_i$ 不透明度强度、核形状指数 1 + 1
$c_i$ 或 SH 系数 颜色,可随视角变化 3 ~ 48
一个 3DGS 高斯 ≈ 60 个 float (位置+协方差+不透明度+SH 颜色),记住这个"几十个 float
一颗"的数量级;一个百万级场景就是几千万到上亿 float。后面讲"大场景为什么要局部"时会反复用到它。
§2 两个核心方程
现在把上面那句话写成数学。读法一:标量场 + 等值面。 给每个核一个权重函数 $w_i(\mathbf{x})$
(通常是个紧支撑或高斯衰减的"凸包")和一个局部形状函数 $q_i(\mathbf{x})$(平面、二次曲面、或就是个高斯
鼓包),用单位分解(partition of unity) 把它们平滑拼起来,曲面就是这个场的零水平集:
$$ F(\mathbf{x})=\frac{\sum_i w_i(\mathbf{x})\,q_i(\mathbf{x})}{\sum_i w_i(\mathbf{x})+\epsilon},
\qquad \mathcal{S}=\{\mathbf{x}\,:\,F(\mathbf{x})=0\} $$
其中 $\sum_i w_i/\sum_j w_j \equiv 1$ 就是"单位分解"这个名字的来历——所有局部权重归一化后处处加起来等于 1,
保证拼接处连续。这是 §6–§7 整条局部隐式曲面 家族(MLS、IMLS、MPU、APSS)的母方程。
它最朴素的特例,是把 $q_i$ 直接换成高斯鼓包、阈值一减,就是 1982 年 Blinn 的 blobby 场 :
$$ F(\mathbf{x})=\sum_i b_i\,\exp\!\big(-a_i\lVert\mathbf{x}-\mathbf{c}_i\rVert^2\big)-T $$
读法二:投影 + alpha 合成。 同样这堆核,不求场、不找零点,而是把每个核当成一片"有色雾",
解析地投到屏幕,沿每条像素射线从前往后合成。这就是 splatting / 3DGS 的渲染方程:
$$ C(\mathbf{r})=\sum_i c_i\,\alpha_i\!\!\prod_{k\lt i}(1-\alpha_k),
\qquad \alpha_i = o_i\,\exp\!\big(-\tfrac12\,\mathbf{d}_i^\top\,{\Sigma'_i}^{-1}\,\mathbf{d}_i\big) $$
这里 $\mathbf{d}_i$ 是像素到第 $i$ 个投影核中心的 2D 偏移。$\alpha_i\prod_{k\lt i}(1-\alpha_k)$ 就是
"前面的核挡掉后面"的经典 over 合成。最妙的是 $\Sigma'_i$——3D 核投到屏幕后的 2D 椭圆协方差。
它由 §10 的 EWA 理论给出,是整条 splatting 家族的母方程:
$$ \Sigma' = J\,W\,\Sigma\,W^\top J^\top + V_h $$
$W$ 是世界→相机的旋转,$J$ 是透视投影在该点的雅可比(局部仿射近似) ,
$V_h$ 是一个约一个像素宽的屏幕空间低通滤波 (抗锯齿用,稍后细讲)。
一个 3D 高斯经过线性映射 $J\!W$ 后仍是高斯,协方差按 $J W \Sigma W^\top J^\top$ 变换——
这一行就是 3DGS 光栅化器每帧在做的事。
直觉:同一堆高斯,两台读出机
想象空间里飘着一堆毛茸茸的椭球。等值面读出机 问:"把你们的密度加起来,等于某个阈值的那张皮在哪?"
——它在意的是边界 ,给你一张连续曲面。splat 读出机 问:"从这个相机看过去,
每个像素被你们一层层挡出什么颜色?"——它在意的是从前往后的遮挡合成 ,给你一张图。
本站讲的全部,就是这两台机器各自的进化史,以及它们最后怎么被焊到一颗基元上。
§3 场 vs splat:四个轴上的较量
在进入论文之前,先把两派在我们关心的四个愿望 上摆开对比。这张表是全站的"地图",
之后每一章都是在某个格子里"上一颗螺丝":
维度 隐式场 / SDF 派 splat / 3DGS 派
愿望① 局部性 看实现:全局 SDF 不局部;PoU/MLS 局部 天生局部(每核一个紧footprint)
愿望② 连续表面 强项 :零水平集是真曲面,有法向曲率弱项 :体雾,无曲面无法向
愿望③ 解析 splat 弱项 :传统靠 marching cubes / ray 求零点强项 :投影+合成,不采样射线
愿望④ 自适应不透明 不透明度多半不在这套语言里 每核 $o_i$ 可学;但厚度=0、各向同性视角
梯度对 ML $\nabla F$ 解析可得(闭式法尤佳) 对核参数 SGD 友好,但遮挡梯度不连续
大场景 全局解 $O(N^3)$ 难;局部法 $O(N)$ 可 分块光栅化,可扩展
一句话:splat 派天生有①③、缺②;隐式场派天生有②、缺③;两边都对④语焉不详。
我们要找的那个"完美表示"住在这张表的右上角——而老图形学早就在这附近反复试探。下面这段教学代码,
把"同一堆核、两种读出"直接跑给你看(伪代码,为讲清楚而非性能):
核心前向 · 同一堆核的两种读出
# 一堆各向异性高斯核:中心 c、逆协方差 P=Sigma^-1、强度/不透明 w
# 读法一 = 隐式场 + 等值面;读法二 = splat + alpha 合成。
def field_value(x, kernels):
# 读法一:把所有核的高斯鼓包加起来,得到一个标量场 F(x)
F = 0.0
for c, P, w in kernels:
d = x - c
F += w * exp(-0.5 * d @ P @ d) # 一个各向异性高斯鼓包
return F - T # 减阈值 T;F=0 即曲面(零水平集)
def field_normal(x, kernels):
# 曲面法向 = 标量场梯度,解析可得 —— 这正是隐式派的连续好梯度
g = zeros(3)
for c, P, w in kernels:
d = x - c
g += w * exp(-0.5 * d @ P @ d) * (-(P @ d))
return normalize(g)
def splat_pixel(pixel, kernels_sorted_front_to_back, J, W):
# 读法二:同一堆核,投到屏幕,从前往后 over 合成
color, T_acc = 0.0, 1.0 # T_acc = 透射率(前面还剩多少没被挡)
for c, P, w, rgb in kernels_sorted_front_to_back:
cov2d = J @ W @ inv(P) @ W.T @ J.T # EWA: 3D 协方差投成 2D 椭圆
cov2d += V_h # 加一个像素宽的低通(抗锯齿)
d = pixel - project(c, J, W)
alpha = w * exp(-0.5 * d @ inv(cov2d) @ d)
color += T_acc * alpha * rgb # over 合成
T_acc *= (1 - alpha)
return color
§4 四个愿望(本站的枢纽)
现在正式立下评判标准。后面每一篇论文,我都会标它满足四愿望里的哪几条、缺哪几条 。
这四条不是我编的,正是本站缘起那个问题的四个诉求:
愿望 (a) · 局部基元 LOCAL
场景由许多互相独立、可增删可移动 的局部小块拼成,每块只影响自己附近一小片空间。
反面教材是全局 SDF :一个函数定义整个场景,大场景下既难训练又难局部编辑。局部性的数学标志是
紧支撑(compact support) :权重 $w_i(\mathbf{x})$ 在半径 $R$ 外严格为零,于是每次
查询只碰到附近 $O(1)$ 个核,整场 $O(N)$。
愿望 (b) · 连续表面 CONTINUOUS SURFACE
表示要定义出一张真正的曲面 (有良定义的法向、最好有曲率),而且这张曲面对参数是
连续可微 的——这样放进机器学习里,梯度才干净,优化才稳。3DGS 的高斯是体雾,没有曲面;
SDF 有曲面但传统上不解析直出。我们要的是"既是曲面、梯度又像高斯那样平滑"。
愿望 (c) · 解析 splat 渲染 ANALYTIC SPLAT
渲染时不沿光线一步步采样 (那是 NeRF / ray marching 的慢),而是把每个基元
解析地投影成屏幕上的一个 footprint ,直接合成出结果。这是 splatting 的全部魅力,
也是 3DGS 比 NeRF 快两个数量级的根本原因。
愿望 (d) · 自适应厚度 / 不透明度 ADAPTIVE OPACITY
不透明度、法向厚度不靠固定几何规则硬算,而是当成可学参数,从图像里自动学出不同的"刷输出强度" ;
最好还能随视角变化(毛发、玻璃、高光边缘)。老图形学里它对应 opacity hull、屏幕空间厚度积分;
现代它对应每核可学 $o_i$、乃至 $\alpha_i(v)=\sigma(a_i+\mathbf{b}_i^\top\mathrm{SH}(v))$。
家谱 · 两条河如何汇流
隐式场 / 核求和
Blinn 1982 blobby
splatting / footprint
Westover 1990
局部隐式曲面
MLS·MPU·APSS
各向异性核 / 厚度 / opacity
SPH·Yu-Turk·opacity hull
EWA surfel splat
Zwicker 2001
3DGS → 2DGS / GOF / 广义核
2023–2026:可微渲染把四条河接到一起(但还没焊成一颗)
粗橙线是主influence。左边"核求和→局部隐式曲面"供给愿望②(连续表面);右边"footprint→EWA"供给愿望③(解析 splat);
中间一支供给愿望④(自适应厚度/不透明)。三条河在 2023 年后被 3DGS 的可微渲染汇到一起——
但正如计分牌所示,它们至今拼在一起 而非合成一颗 。
§5 场景 = 一堆局部核 · Blobby / Metaball / Convolution
从最朴素的想法开始:把每个基元当成一个"密度鼓包",全部加起来,取等值面就是表面。
这条线 1982 年由 Blinn 开创,它在概念上是 3DGS 的"隐式孪生兄弟"——同样一堆各向同性高斯,
只不过它取等值面、3DGS 取 alpha 合成。读这一章,你会建立"场景=核求和"这个最核心的心智模型。
Blobby Model
— A Generalization of Algebraic Surface Drawing
满足 (a) 局部潜质、(b) 连续表面;缺 (c)(d)。最初是为了画分子电子云,想让原子球平滑融合而非硬相交。
关键想法 :在每个中心 $\mathbf{c}_i$ 放一个各向同性高斯"密度鼓包",求和减阈值得到标量场
$F(\mathbf{x})=\sum_i b_i\exp(-a_i\lVert\mathbf{x}-\mathbf{c}_i\rVert^2)-T$,曲面就是 $F=0$。两个鼓包靠近时
场值相加,等值面自动融合 出"表面张力"般的光滑过渡。法向解析可得:
$\nabla F=\sum_i -2a_i b_i\,\mathbf{d}_i\exp(-a_i\lVert\mathbf{d}_i\rVert^2)$——处处 $C^\infty$、梯度干净。
把硬碰硬的代数曲面/CSG,换成"局部场求和取等值面",blending 自动发生。这正是 3DGS 减掉 alpha 合成、换成等值面后的样子。
Metaballs
— Object Modeling by Distribution Function (LINKS soft objects)
IECE Japan 1985
Nishimura, Hirai, Kawai, Kawata, Shirakawa, Omura · Osaka Univ.
Blinn 的高斯无限延伸,每个基元影响全空间,大场景下 $O(N)$/查询点。能不能让它"到半径外就归零"?
关键想法 :把无限支撑的高斯,换成分段多项式、半径 $R$ 外严格为零 的密度。
这就是 (a) 局部性的真正起点——有了紧支撑,你才能做空间哈希、视锥裁剪、流式加载。
vs Blinn → 用紧支撑核换掉无限支撑高斯,是整条线在"大场景"维度上的关键转向。
Soft Objects
— Data Structure for Soft Objects
紧支撑核还要算得快、拼得光滑:既要 $C(R)=0$、又要 $C'(R)=0$(在支撑边界平滑相切)、还不能开根号。
关键想法 :著名的 Wyvill 立方衰减 ——一个关于 $r^2$ 的偶多项式
$C(r)=1-\tfrac{4}{9}\tfrac{r^6}{R^6}+\tfrac{17}{9}\tfrac{r^4}{R^4}-\tfrac{22}{9}\tfrac{r^2}{R^2}$($r\le R$,外侧为 0),
配一张均匀网格空间哈希 ,使大场景里每次查询近似 $O(1)$。$C(R)=C'(R)=0$ 给出干净的相切。
vs Metaball → 单条光滑多项式(不分段、无开根号)+ 空间数据结构,把"大场景里查局部核"做成了工程现实。3DGS 的 tile binning 本质是同一招。
Convolution Surfaces
— Convolution Surfaces
离散点鼓包沿骨架(线段、曲线、多边形)排会"鼓成一串葫芦",接缝处不光滑。
关键想法 :把离散求和 $\sum_i K(\mathbf{x}-\mathbf{c}_i)$ 升级成连续卷积积分
$F(\mathbf{x})=\int_S h(\mathbf{x}-\mathbf{s})\,d\mathbf{s}=(h*\mathbb{1}_S)(\mathbf{x})$:把核沿骨架积分。
对高斯核和线段/多边形骨架可闭式积分。卷积的线性 ⇒ 各骨架片段直接相加,拓扑无关地平滑融合。
vs Blinn → 用"骨架上无穷多个无穷小鼓包的连续极限"消除接缝;少量结构化基元就能表达连续形体。
Muraki Blobby Fit
— Volumetric Shape Description of Range Data using "Blobby Model"
前面都是"手摆基元建模"。能不能反过来,从扫描数据里把 blobby 参数拟合出来 ?
关键想法 :优化 blob 的中心 $\mathbf{c}_i$、权重 $b_i$、宽度 $a_i$,最小化等值面与采样点的偏差;
当误差大就分裂一个 blob 增加细节。这是 1991 年版的"用高斯拟合观测"——
分裂加细的思路,和 3DGS 的 densification(clone/split)如出一辙。
vs Blinn/Wyvill(正问题:摆基元出形状)→ 第一次解逆问题 :从数据反推基元参数。可微优化 3D 表示的远祖。
把这一章钉死
Blinn 的 blobby 场,字面意义上就是"曲面 = 一堆 3D 高斯之和的等值面"。
它和 3DGS 用的是同一批原子(中心+宽度+强度的高斯),唯一的概念差别是:blobby 把它们加成
标量场取阈值 (硬的内/外),3DGS 把它们当成发光发雾、从前往后 alpha 合成 (软的半透明)。
记住这对"等值面 vs alpha 合成"的孪生关系,你就拿到了理解全站的钥匙。
§6 局部隐式曲面 · MLS / 点集曲面 / IMLS
Blobby 把"形状"塞进鼓包的宽度里,精度有限。这一章是愿望 (b) 连续表面的真正主场 :
从一堆点(可能带法向)出发,用移动最小二乘(Moving Least Squares, MLS) 在每个查询点附近
现场拟合一个局部曲面,得到一张分辨率无关、处处 $C^\infty$、梯度解析的连续曲面。它天生局部(只看 kNN 邻域)、
无需全局求解——是"局部 + 连续 + 好梯度"这三条同时满足的老牌冠军,独缺解析 splat。
Hoppe92
— Surface Reconstruction from Unorganized Points
只给一堆裸点(无连接、无法向、无拓扑),怎么定义出一张曲面?这是整条线的"零号问题"。
关键想法 :在每个样本处用 kNN 邻域做 PCA,得切平面 $(\mathbf{c}_i,\mathbf{n}_i)$;
到曲面的有符号距离近似为投到最近平面 $f(\mathbf{p})=(\mathbf{p}-\mathbf{c}_{i})\cdot\mathbf{n}_{i}$;
法向朝向用最小生成树全局传播 统一,再 marching cubes 抽零集。
第一个只需点的重建法。但"最近平面"使场在 Voronoi 边界不连续 、梯度无处处定义——后面 MLS 就是来修这个的。
MLS / PSS
— Point Set Surfaces (Levin 的 MLS 投影算子 + Alexa 的可渲染表示)
Hoppe 的最近平面不连续。能否让局部参考面随查询点平滑移动 ,从而得到一张光滑曲面?
关键想法 :对查询点 $\mathbf{r}$,先用高斯权重 $\theta(d)=e^{-d^2/h^2}$ 加权拟合一个局部参考面 ,
再在面内拟合一个二次多项式 $g$,投影 $\mathcal{P}(\mathbf{r})=\mathbf{q}+g(0,0)\mathbf{n}$;曲面 = 投影算子的不动点集
$\{\mathbf{x}:\mathcal{P}(\mathbf{x})=\mathbf{x}\}$。因权重 $C^\infty$,曲面 $C^\infty$、局部、可任意重采样。
vs Hoppe → 把"最近平面"换成"加权移动的局部拟合",换来处处光滑;代价是曲面成了迭代不动点 (对 ML 求梯度要展开迭代)。
IMLS
— Provably Good Moving Least Squares (implicit MLS)
SODA 2005 / TALG 2008
Ravikrishna Kolluri · UC Berkeley
MLS 投影是个迭代,既慢又难求梯度。能不能给出一个闭式的隐式标量场 ,还证明它重建对?
关键想法 :把曲面写成一个有理闭式 ——各样本切平面有符号距离的加权平均:
$$ f(\mathbf{x})=\frac{\sum_i \theta(\lVert\mathbf{x}-\mathbf{p}_i\rVert)\,\big(\mathbf{n}_i\cdot(\mathbf{x}-\mathbf{p}_i)\big)}{\sum_i \theta(\lVert\mathbf{x}-\mathbf{p}_i\rVert)} $$
曲面 $=\{f=0\}$。只要分母非零,$f$ 处处 $C^\infty$、梯度解析、无迭代 ;Kolluri 证明在
$\varepsilon$-采样下零集与真曲面同伦。这是整条线里最适合直接塞进可微渲染 的形式。
vs MLS 投影 → 去掉每查询的非线性平面拟合与不动点迭代,变成一行可微有理函数。"Deep IMLS"等现代工作正是直接backprop进 $\mathbf{p}_i,\mathbf{n}_i,h$。
RIMLS
— Feature Preserving Point Set Surfaces based on Non-linear Kernel Regression
Eurographics 2009
Öztireli, Guennebaud, Gross · ETH Zürich
IMLS 会把尖锐边缘(crease)抹圆 。想保边,又不愿手工分割区域。
关键想法 :把 IMLS 重新看成核回归 ,再加一层对残差/法向偏差的鲁棒权重
$\phi$(类似双边滤波的 range kernel),迭代重加权:跨过一条边的样本被自动压低权重,边就被保住。
一个光滑、可微的鲁棒泛函,而非组合式的分割。
vs IMLS / vs Fleishman05(前向搜索+硬分割) → 用单个可微鲁棒核回归得到可控锐度的尖边,处处(除边上)可微。
§7 自适应分块 + 代数球 · MPU / SLIM / APSS
上一节的 MLS/IMLS 是"每点现场拟合"。这一节把它组织成可自适应、可压缩、更稳健 的形式:
MPU 用八叉树把空间分块、每块拟合局部隐式、再单位分解拼接(§2 母方程的正主);
APSS 把局部模型从"平面"升级成"代数球",在低采样/高曲率下大幅更稳。这两招——
自适应分块 和带曲率的局部基元 ——直接预言了现代"结构化/各向异性 splat"。
MPU
— Multi-level Partition of Unity Implicits
满足 (a)(b)。要从百万级点 重建、自适应细节、还要保尖锐特征,又不想做全局求解。
关键想法 :八叉树把空间分成重叠的格子,每格拟合一个局部隐式 $q_i$(光滑处用二次曲面,
边/角处用特制分段二次),按单位分解 用紧支撑权重拼起来(正是 §2 的 $F=\sum w_iq_i/\sum w_i$);
误差不达标就细分八叉树。没有全局 $N\times N$ 系统,纯局部拟合 + 平滑混合,故 $O(N)$ 可扩展。
vs RBF(全局求解) → 用八叉树自适应 + 单位分解换掉全局解,scale 到百万点。它就是 chatgpt 调研里和目标最像的那篇。
SLIM
— Sparse Low-degree Implicit Surfaces
SGP 2005
Ohtake, Belyaev, Alexa
MPU 仍有不少格子。能否把曲面压成稀疏的一小撮带支撑球的低阶隐式基元 ?
关键想法 :每个节点存一个 support sphere + 一个低阶隐式多项式;
渲染时沿视线对重叠的局部隐式做加权和(射线空间的单位分解),点上的函数值与导数都由几个局部隐式加权给出。
这已经是"局部基元 + 连续隐式面 + 可求导"的完整形态——稀疏到可当作一种表示 而非中间结构。
vs MPU → 用稀疏的"支撑球 + 低阶隐式"取代密集八叉树格子,基元数大降。形态上最接近"可学习的局部隐式 splat"。
APSS
— Algebraic Point Set Surfaces
平面 MLS 在低采样、高曲率 处退化:局部平面是糟糕的模型,投影会跳变/缩水。
关键想法 :把局部模型从平面升级成代数球
$s_\mathbf{u}(\mathbf{x})=u_0+\mathbf{u}_{1:3}\cdot\mathbf{x}+u_4\lVert\mathbf{x}\rVert^2$,
在约束 $\lVert\mathbf{u}_{1:3}\rVert=1$ 下做加权最小二乘拟合:
$$ \min_\mathbf{u}\ \sum_i \theta(\lVert\mathbf{x}-\mathbf{p}_i\rVert)\,s_\mathbf{u}(\mathbf{p}_i)^2,\qquad
\text{球心 } \mathbf{c}=-\tfrac{\mathbf{u}_{1:3}}{2u_4},\ \ \text{曲率} \propto 2u_4 $$
多出的一个曲率自由度 $u_4$,让小 邻域也能拟合弯 的局部面,法方程保持良态——
平面会秩亏的地方它依然稳。而且整个是线性 拟合(闭式、GPU 上每秒数千万次),曲率还白送。
vs 平面 MLS → 加一个曲率自由度把平面换成球,低采样/高曲率更稳、更快;天然 $C^\infty$、局部、可微——是这条线里最像"可 splat 的局部连续基元"的一个。
§8 另一极:全局解的 RBF 与 Poisson
为了让你看清"局部"的价值,这里放上它的对立面:径向基函数(RBF)和 Poisson 重建用一个全局解
得到处处光滑的隐式面 。它们 (b) 连续表面满分、梯度漂亮,但 (a) 局部性是软肋——
要解一个大线性系统。这一节是"对照组",也解释了为什么大场景最终还是回到局部分块。
RBF Implicits
— Reconstruction and Representation of 3D Objects with Radial Basis Functions
想要一个全局最光滑 、能补洞、能压缩的隐式面,从百万散点重建。
关键想法 :$f(\mathbf{x})=\sum_j \lambda_j\,\phi(\lVert\mathbf{x}-\mathbf{c}_j\rVert)+P(\mathbf{x})$,
用多调和样条 $\phi(r)=r$,系数解全局稠密系统 $f(\mathbf{c}_i)=h_i$(等价最小化薄板弯曲能);
用快速多极子(FMM)把 $O(N^3)$ 降到 $O(N\log N)$。曲面 $=\{f=0\}$,$C^\infty$、全局光滑。
vs MPU(局部 PoU) → 用一个全局解换来全局最优光滑与补洞能力;代价是稠密求解,天然不适合"局部增删 + 大场景流式"。
CS-RBF
— Interpolating Implicit Surfaces from Scattered Data using Compactly Supported RBFs
SMI 2001
Morse, Yoo, Rheingans, Chen, Subramanian
全局 RBF 的稠密系统太重。能不能让 RBF 也"只管附近"?
关键想法 :把 $\phi(r)=r$ 换成 Wendland 紧支撑核
$\phi(r)=(1-r)_+^4(4r+1)$($C^2$):只有支撑半径内的点对才相互作用 ⇒ 系统变稀疏带状 ,
大 $N$ 可解。这是把"局部性"注入 RBF 的关键一步,也是现代 NKSR 用紧支撑核的鼻祖。
vs 全局 RBF → 稠密换稀疏;代价是丢掉全局薄板最优,远样本间可能起鼓/漏洞。仍是稀疏全局解 ,非纯局部闭式。
Poisson Recon
— Poisson Surface Reconstruction / Screened Poisson
带朝向的点云有噪声,想要一张水密、抗噪 的曲面。
关键想法 :找一个指示函数 $\chi$,使其梯度匹配点法向场 $\vec V$:解 Poisson 方程
$\nabla^2\chi=\nabla\!\cdot\!\vec V$,基用局部支撑的八叉树 B 样条 ⇒ 稀疏 SPD 系统、多重网格可解。
Screened 版再加数据项把曲面钉在点上。曲面 = $\chi$ 的某个等值面。
vs RBF → 用 PDE 全局平滑替代核插值,抗噪、保证水密;仍是全局稀疏解(用局部基)。现代 Shape-As-Points 把它做成了可微层。
局部 vs 全局,这笔账
单位分解(MPU/APSS)用一个全局能量最优 换来了局部独立 + 速度 + 自适应 :
每格独立拟合、$O(N)$、可流式、可局部编辑。代价是稀疏覆盖处可能起鼓、漏水、接缝。这正是 现代
可扩展神经场的同一笔交易:hash-grid / 分块 vs 一个大 MLP。大场景几乎总是站在"局部"这边。
现在换到愿望 (c) 解析 splat 的主场。Ray marching 问"这条射线穿过哪些体素";
splatting 反过来——遍历基元,把每个投成屏幕上一个 footprint,直接累加 ,不沿射线采样。
这一章是这套"前向、并行、解析直出"思想的诞生:从 Westover 的体素脚印,到 Surfel 把它搬上曲面,
到 QSplat 用包围球层级渲一亿个点。3DGS 的光栅化器,血缘就在这里。
Footprint Splatting
— Footprint Evaluation for Volume Rendering
SIGGRAPH 1990
Lee Westover · UNC Chapel Hill
体渲染想要一个前向、可并行、不逐射线采样 的方法。
关键想法 :每个体素的重建核沿视线积分,得到一个 2D footprint
$\mathrm{foot}(x,y)=\int h(x,y,z)\,dz$;预存成一张表,每个样本把能量 $c\cdot\mathrm{foot}$ "啪"地拍(splat)到帧缓冲。"splat"这个词就是这么来的。
第一个前向、遍历基元的体渲染器。把"3D 核沿视线积分成 2D 脚印"这件事确立为 splatting 的核心动作。
Surfels
— Surfels: Surface Elements as Rendering Primitives
复杂曲面想抛弃三角网格连接 ,纯用点来渲染。
关键想法 :一个 surfel = 带深度、法向、颜色的点基元(本质是个朝向的小圆盘 disk);
前向 warp 到 z-buffer,先做"可见性 splatting"填深度以补洞。把 splatting 从体搬到曲面 ,
定义了 3DGS 继承的"点即面元"原语。
vs Westover(体素脚印) → 基元从体素变成朝向的曲面圆盘 ,带法向。3DGS 的高斯就是 surfel 去掉法向、加上各向异性与不透明。
QSplat
— QSplat: A Multiresolution Point Rendering System for Large Meshes
要实时 显示上亿采样点的扫描模型(米开朗基罗大卫像)。
关键想法 :一棵包围球层级 ,同一棵树同时干四件事:视锥裁剪、背面剔除、
LOD 选择 、渲染。自顶向下遍历,当节点投影球 ≈ 一个像素就停下并 splat 它。
vs Surfel → 把 LOD + 裁剪 + 渲染统一进一棵点层级树;3DGS 的空间加速结构(以及大场景 LOD 工作)的精神祖先。
§10 EWA:解析投影的数学顶点
Surfel/QSplat 解析直出,但会走样(aliasing) :圆盘小于一个像素就闪烁。Zwicker 这条线把
Heckbert 1989 的纹理重采样理论搬到不规则 3D 点,给出 splatting 的母方程 EWA(Elliptical
Weighted Average) ——一个把"3D 重建核 + 屏幕低通"合成的椭圆高斯重采样滤波。
这就是 §2 那行 $\Sigma'=JW\Sigma W^\top J^\top+V_h$ 的出处,也是 3DGS 光栅化器逐字在算的东西。
EWA / Heckbert
— Fundamentals of Texture Mapping and Image Warping (the EWA resampling filter)
把纹理在任意 2D 形变下重采样,如何抗锯齿 ?
关键想法 :重采样滤波 = 形变后的重建核 ⊛ 屏幕空间低通 。对高斯核,卷积仍是高斯,
得到一个屏幕椭圆 $\rho(\mathbf{x})=\exp(-\tfrac12\mathbf{x}^\top Q\mathbf{x})$,$Q=\Sigma'^{-1}$。
这条"两个高斯卷积=协方差相加"的根方程,统治了之后整条 splatting 线。
把 mip/EWA 滤波放到严格信号处理的地基上。所有 surface/volume splatting 的抗锯齿都源于此。
Surface Splatting
— Surface Splatting (the EWA surface splat)
不规则点集要抗锯齿、不漏洞、带纹理 地渲染。
关键想法 :把 Heckbert 的 EWA 抬到不规则 3D 点。透视投影在核中心做局部仿射近似(雅可比 $J$) ,
一个 3D 高斯核映射后协方差变成 $\Sigma'=J\,W\,\Sigma\,W^\top J^\top+V_h$($V_h$ 是约一像素的屏幕低通),
splat 权重 $\rho(\mathbf{x})=\exp(-\tfrac12(\mathbf{x}-\boldsymbol{\mu}')^\top\Sigma'^{-1}(\mathbf{x}-\boldsymbol{\mu}'))$。这一行 3DGS 直接在用。
vs Surfel/QSplat → 第一个解析、各向异性、抗锯齿 的曲面 splat,补上了点渲染的走样问题。
EWA Volume / Unified
— EWA Volume Splatting · EWA Splatting (unified TVCG)
能否用一套数学同时统一体 splat 和面 splat ?
关键想法 :体 splat 用满秩协方差 $V_k$,把 warp 后的 3D 高斯沿视线积分掉一维得 2D 脚印;
面 splat 就是把这个体核沿法向"拍扁" ——令法向方差 $\to 0$,得到一个秩 2 的薄壳
$V_k^{\text{surf}}=\mathrm{diag}(\sigma_t^2,\sigma_t^2,0)$,即躺在切平面里的椭圆盘。两者只差 $V_k$ 的秩。
vs Surface Splatting → 把面/体 splat 收进同一个 $\Sigma'$ 公式,"面=体核压扁"。3DGS 选择不 压扁(保留 $\sigma_n>0$),这正是它丢掉曲面的那一步。
Object-Space EWA / GPU
— Object Space EWA Surface Splatting · High-Quality Surface Splatting on GPUs
屏幕空间 EWA 要逐像素算椭圆 + 全局归一化,对(早期)GPU 不友好。
关键想法 :把重采样滤波烤进每个 splat 一个带纹理的多边形(object space) ,
让光栅化/纹理单元去算;再用三趟延迟着色 (可见性趟填 z → 属性趟累加归一化的法向/颜色 → 延迟逐像素着色)。
这套"object-space splat + 分趟累加归一化"几乎就是现代 splat 光栅器的模板。
vs 屏幕空间 EWA → 用 object-space 带纹理 quad 换取硬件并行;3DGS 正是采用这一形态(每核投影椭圆 + 分 tile 并行),用精确屏幕低通的丢失换吞吐。
§11 各向异性核 · 厚度即不透明 · SPH 与屏幕空间流体
到这里 (a)(b)(c) 都有人做过了,只剩愿望 (d):自适应厚度 / 不透明度 。
这一章的核心洞见有两个:其一,流体仿真里的 Yu-Turk 各向异性核 ——对每个粒子邻域做 PCA、
拟合一个拉伸的椭球核——和一个 3D 高斯 splat 是同一个对象 ,只不过它由邻域协方差闭式给出,
3DGS 由 SGD 学出。其二,屏幕空间流体渲染 把"厚度"当成一张可加 splat 的图,
厚 ⇒ 不透明,直接对应愿望 (d)。
SPH for Graphics
— Particle-Based Fluid Simulation for Interactive Applications
实时自由表面流体:怎么从一堆粒子得到密度、法向、表面?
关键想法 :用紧支撑核求和得密度 $\rho(\mathbf{x})=\sum_j m_j W(\mathbf{x}-\mathbf{x}_j,h)$,
法向 = 颜色场梯度 $\mathbf{n}=\nabla c_s$;表面 = 密度场的等值面。不同的力用不同核(Poly6 求密度、Spiky 求压力)。
"粒子 + 紧支撑核 + 局部密度/梯度/表面"——和隐式场派是同一套语言。
vs Desbrun 平滑粒子 → 把核按物理项专门化,确立"粒子云 = 紧支撑核求和场"的范式,直通各向异性核。
Yu-Turk Anisotropic
— Reconstructing Surfaces of Particle-Based Fluids Using Anisotropic Kernels
各向同性核做出的流体面"鼓鼓囊囊",薄片/尖边都糊掉。
关键想法 :对每个粒子,用加权 PCA 给邻域拟合一个各向异性高斯 :
加权协方差 $C_i=\sum_j w_{ij}(\mathbf{x}_j-\bar{\mathbf{x}}_i)(\mathbf{x}_j-\bar{\mathbf{x}}_i)^\top/\sum_j w_{ij}$,
特征分解 $C_i=R\Sigma R^\top$,整形奇异值(抗过扁、孤立粒子回退各向同性),得各向异性矩阵 $G_i\propto R\,\tilde\Sigma^{-1}R^\top$,
核 $W(\mathbf{x}-\mathbf{x}_j,G_j)$。沿数据展开方向拉伸 ⇒ 薄片扁、平面平、尖边利。
vs 各向同性 SPH → 标量 $h$ 升级成每粒子的 $3\times3$ 各向异性 $G_i$。这就是一个 3D 高斯 splat,只是用邻域 PCA 闭式拟合而非 SGD 学出。
直觉:Yu-Turk 的核 = 一个还没学习的 3DGS 高斯
一个 3DGS 高斯是 $\exp(-\tfrac12\mathbf{d}^\top\Sigma_i^{-1}\mathbf{d})$,$\Sigma_i=R_iS_i^2R_i^\top$。
Yu-Turk 的 $G_i^\top G_i$ 扮演的正是 $\Sigma_i^{-1}$——同一个特征向量框架 $R$(朝向),同一组按轴尺度 。
唯一区别是来历:Yu-Turk 把 $\Sigma_i$ 设成此刻邻居的数据协方差 (一遍闭式 PCA);
3DGS 把 $\Sigma_i$ 当成自由参数,用可微渲染对着图像 SGD 学 。
"矩匹配的高斯拟合" vs "可微渲染的高斯拟合"——终点是同一颗椭球。
Adaptive Particles
— Adaptively Sampled Particle Fluids
SIGGRAPH 2007
Adams, Pauly, Keiser, Guibas · Stanford
均匀粒子大小很浪费:只想在表面附近 放细粒子。
关键想法 :每粒子自适应半径 $h_i$——按到表面的距离分裂/合并,深处大、近面小,
维护一个有符号距离估计来驱动采样。这是 3DGS 每核尺度 + adaptive density control(clone/split/prune)的直系概念祖先。
vs 固定半径 SPH → 让基元大小随几何复杂度自适应;愿望 (a) 局部性 + (d) 自适应的早期合流。
Screen-Space Fluid
— Screen Space Fluid Rendering with Curvature Flow
I3D 2009
van der Laan, Green, Sainz · NVIDIA
实时渲流体面,不要 marching cubes、不要 ray march、不要网格伪影 。
关键想法 :把每粒子当球 splat 进深度图 (留最近 $z$),用曲率流 $\partial z/\partial t=H$
平滑(保轮廓),从深度梯度直接重建法向并着色——曲面完全在 2D 里得到,且只处理可见部分(自带 LOD)。
另起一趟累加厚度 $T(u,v)=\sum_j\Delta_j$,经 Beer–Lambert $\alpha=1-e^{-\kappa T}$ 映成不透明度。
vs 等值面抽取 → 不抽面、不射线采样,纯屏幕空间出面。"厚度图 = 可加 splat、视角相关的不透明场"——正中愿望 (d)。
§12 视角相关、图像驱动的不透明度 · Opacity Hull / Light Field
愿望 (d) 还有更激进的一面:不透明度不该由几何硬定,而该随视角变、从图像里测/学出来。
毛发、羽毛、玻璃、高光边缘——这些"模糊材质"传统扫描器搞不定,因为它们的轮廓和透明度本就随视角变。
2000–2003 年这批"基于图像"的工作,把外观和不透明度做成定义在表面上的视角函数 ,
正是现代"每核视角相关不透明度 $\alpha_i(v)$"的老图形学对应物。
Surface Light Field
— Surface Light Fields for 3D Photography
SIGGRAPH 2000
Wood, Azuma, Aldinger, Curless, Duchamp, Salesin, Stuetzle · UW
扫描模型上的视角相关高光/反射 ,固定 BRDF 着色画不真。
关键想法 :在每个表面点存一个 lumisphere $L_\mathbf{p}(\boldsymbol{\omega})$——
出射辐亮度作为视角方向的函数,沿表面用 PCA/函数逼近压缩。这是"每基元存视角相关颜色"的直系祖先。
把外观从"一个颜色"升级成"一个视角函数"。3DGS 的球谐(SH)颜色 $c_i(v)=\sum_\ell k_{i\ell}Y_\ell(v)$ 就是它的现代轻量版。
Opacity Hull
— Image-Based 3D Photography using Opacity Hulls
满足 (d)。要捕捉毛发/羽毛/玻璃这类模糊、半透明、随视角变轮廓 的物体。
关键想法 :多视角、多背景抠出 alpha matte,在视觉外壳表面上存一个视角相关不透明度
$\alpha(\mathbf{p},v)$——即 opacity hull:同一点的透明度随观察方向 $v$ 变化。配上 surface light field 就是
opacity light field (Vlasic 2003 做成实时)。外观与轮廓是从图像测出来的,不是几何定的。
vs surface light field → 在视角相关辐亮度之外,再加一层视角相关不透明度 。轮廓与透明度图像驱动。
ML 对应:每核一个视角相关不透明度
Opacity hull 是这个想法的 2002 年图像版:不透明度是挂在表面基元上、随视角变化的一个学/测出来的球面函数 ,
而非烤进几何的标量。搬进现代可微渲染,它就是给每个 Gaussian 一个
$$ \alpha_i(v)=\sigma\!\big(a_i+\mathbf{b}_i^\top\,\mathrm{SH}(v)\big) $$
用球谐调制的不透明度 logit。这正是 chatgpt 调研里愿望 (d) 想要的"根据图像自动给出不同刷输出强度"的精确数学落点。
§13 老路接上可微渲染 · 从 DSS 到 3DGS 到曲面化
2019 年后,可微渲染 + SGD 把前面四条河重新接到了一起。这一章按清晰的谱系 走:
DSS 先让 EWA splat 可微 → 3DGS 用自由高斯 + 可微合成引爆 → 然后整个领域忙着把 3DGS 丢掉的"曲面约束"
一点点加回来 (2DGS/Surfels 把高斯拍扁成面元 → GOF 从不透明度场读出连续等值面)。
对照 §10"面=体核压扁"、§6"等值面 vs alpha 合成",你会发现这就是老想法的回归。
DSS
— Differentiable Surface Splatting for Point-based Geometry Processing
EWA 曲面 splat 想可微 :对点位置和法向求梯度。难点在 z-buffer 可见性是阶跃、不可导。
关键想法 :前向用截断椭圆高斯的 EWA 面 splat;贡献在于手工推导梯度 ——
在遮挡/轮廓不连续处,把图像变化关联到 splat 边界的屏幕空间位移 ,从而把梯度传到点位置(含 $z$)和法向,
再加点分布正则。这是 2DGS / Gaussian Surfels 的概念祖先,比 3DGS 早四年。
把 Zwicker 的 EWA 面 splat 第一次做成梯度正确的可微渲染器——老路(§10)接上 ML 的关键一跳。
Fuzzy Metaballs
— Approximate Differentiable Rendering with Algebraic Surfaces
想要一个紧凑、可解释、梯度快 的可微形状渲染器。
关键想法 :形状 = 一小撮高斯"blob";用一个解析闭式 的近似混合直接给出深度/轮廓及其梯度,
不 ray march(前向快 5×、反向快 30×)。这是 metaballs / blobby(§5)在 autodiff 下的字面复活,
也是 3DGS 式高斯形状模型的直接概念前身。
vs 网格可微渲染 → 用"可微的 blobby 隐式"换取解析梯度与可解释性。Blinn 1982 的孙子。
3DGS
— 3D Gaussian Splatting for Real-Time Radiance Field Rendering
满足 (a)(c),部分 (d);缺 (b) 。要实时、高质量新视角合成,不要 MLP、不要 ray march。
关键想法 :场景 = 一堆各向异性 3D 高斯($\boldsymbol{\mu},\Sigma=RS^2R^\top,o,$ SH 颜色),
用 EWA 式投影 + 从前往后 alpha 合成光栅化,全程可微 + 自适应增删。本质上 = EWA splatting(§10)
+ 每核可学不透明 + SGD。 保留了 EWA 协方差、各向异性、alpha 合成、仿射 $J$;
丢掉了曲面约束(高斯不压扁、无法向)、原理化屏幕低通、经典归一化。
vs NeRF → 用显式局部高斯 + 解析 splat 换掉隐式场 + ray march,快两个数量级。但代价正是丢了愿望 (b)——后面全在补它。
2DGS · Gaussian Surfels
— 2D Gaussian Splatting · High-quality Surface Reconstruction using Gaussian Surfels
3DGS 的体高斯给出视角不一致的深度/法向 ,几何很差。把愿望 (b) 加回来。
关键想法 :把椭球压扁成一张朝向的圆盘 (2DGS 用切平面里的 2D 高斯 + 显式法向 $\mathbf{n}=\mathbf{t}_u\times\mathbf{t}_v$;
Gaussian Surfels 直接令 $z$ 轴尺度 $=0$)。渲染用透视正确的射线–splat 求交 而非仿射投影脚印;
配深度畸变 + 法向一致性正则。这字面上就是 §10"面 splat = 体核沿法向压扁"。
vs 3DGS → 把基元从体雾压成面元,法向良定义且视角一致;Surfel(§9)在可微时代的回归。
GOF
— Gaussian Opacity Fields: Efficient Adaptive Surface Reconstruction in Unbounded Scenes
无界大场景里,想不靠 Poisson/TSDF 融合 就抽出曲面。
关键想法 :定义一个不透明度场 $O(\mathbf{x})$ = 穿过 $\mathbf{x}$ 的射线从高斯们累积到的不透明度;
曲面 = 等值面 $\{\mathbf{x}:O(\mathbf{x})=\tau\}$,用 Marching Tetrahedra 在高斯诱导的四面体网格上直接抽取。
这就是 §6 隐式曲面"等值面读出"的字面回归 ——从一堆 splat 高斯上读出一个连续隐式场。
vs 2DGS/Surfels(压扁基元再 Poisson) → 升级成"从高斯读出连续隐式场再取等值面",是本站四愿望里离右上角最近的一个。
Mip-Splatting
— Mip-Splatting: Alias-free 3D Gaussian Splatting
缩放/改焦时 3DGS 走样、膨胀——因为它把 EWA 的原理化低通换成了固定 dilation。
关键想法 :加回两个滤波——3D 平滑滤波 把每个高斯带限到训练视角能分辨的最高频率
$\hat\nu_k=\max_n f_n/d_n$;2D Mip 滤波 用带补偿不透明度的盒滤波近似换掉固定 dilation。
几乎字面就是"把 Zwicker 的 $V_h$ 放回去"(§10)。
vs 3DGS → 把丢掉的 EWA 屏幕/3D 低通补回,抗锯齿。最干净的"3DGS 就是偷工的 EWA splatting"的反证。
Scaffold-GS · SDF 混合
— Scaffold-GS · 3DGSR / GSDF / NeuSG (Gaussian + 隐式 SDF 混合)
3DGS 过度生核、无结构(Scaffold);或想要一个真正连续的 SDF 而非事后等值面(混合派)。
关键想法 :Scaffold-GS 在稀疏网格放 anchor,每 anchor 由 MLP 解码出 $k$ 个高斯的属性 ⇒ 重新引入
局部性/结构 + 视角自适应。混合派 (3DGSR/GSDF/NeuSG)再挂一个 MLP 表示的 SDF,
用可微的 SDF→不透明度变换把两者耦合联训,把曲面约束传给高斯。
vs 纯 3DGS → 要么把愿望 (a) 局部性结构化,要么把愿望 (b) 真连续曲面外接 一个 SDF——代价是 SDF 那侧不再"解析 splat",而是被查询/marching。
§14 Gaussian 之后 · 广义核与凸基元
最后一支前沿,直接动 3DGS 的原语本身 :高斯是低通、各向同性衰减、无界拖尾,所以糊边、要很多核。
2024–2026 一批工作把核的形状指数、角向轮廓、甚至支撑紧致性都变成可学的 ——这把愿望 (d)
从"只学不透明"推进到"学厚度/频率/锐度",并在概念上接回了 §5 的紧支撑核与 §11 的各向异性核。
另有一支把经典 RBF/Poisson/IMLS 做成可学习/可微 的层。
GES
— GES: Generalized Exponential Splatting
高斯是低通,糊锐边、要很多核。
关键想法 :把高斯换成广义指数 $\exp(-(\lVert\mathbf{x}-\boldsymbol{\mu}\rVert/\sigma)^\beta)$,
让形状指数 $\beta$ 可学:$\beta\!\ne\!2$ 能给出比高斯更锐的边 ⇒ 更少核、约一半显存、+39% 速度。高斯是 $\beta=2$ 的特例。
vs 3DGS → 第一个让核的指数本身 可学。愿望 (d) 从"学不透明"扩到"学核形状/锐度"。
Beta Splatting
— Deformable / Universal Beta Splatting(有界支撑、频率自适应核)
高斯无限拖尾,既不真局部又糊;想要有界支撑 + 可调频率 。
关键想法 :用 Beta 核 ——紧支撑(真正局部,无高斯长尾)+ 自适应频率控制,
更锐更局部;配核无关的 MCMC 增densify。SOTA 质量、参数 45%、比 3DGS-MCMC 快 1.5×。
Universal 版把它推广到 N 维各向异性 Beta 核,在一颗核里建模空间+角度+时间依赖。
vs GES/高斯 → 把无界核换成有界支撑 核,直接对上 §5 metaball/Wendland 的紧支撑诉求(愿望 a)。2025 · 已核验 arXiv+项目页
3DCS · DRK · 其它广义核
— 3D Convex Splatting · Deformable Radial Kernel · Gabor / Student Splatting
椭圆高斯表达力有限:硬边、致密体、尖角都吃力。
关键想法 :换更富的基元——3D 光滑凸体 (3DCS,硬边/致密体更省核)、
可变形径向核 (DRK,角向可学 + 精确射线–基元求交)、Gabor 核(找回高频)、Student-t 核(带正/负密度,
近似 CSG 的"挖"操作)。都在"局部 + 解析 splat + 可学形状"上更进一步,但都没有自带连续曲面场 。
vs 高斯 → 用更灵活的几何/角向/尾部基元换更少核、更锐几何;几何仍靠和 2DGS/GOF 一样的后处理抽取。
可微经典三件套
— NKSR(可学紧支撑核)· Neural Splines(NTK 核)· Shape-As-Points(可微 Poisson)
把 §8 的经典核插值/Poisson 重建变成数据驱动、可端到端训练 的。
关键想法 :NKSR 用网络学出核 再现场解小的 PD 系统,且用紧支撑核 +稀疏解扩到百万点
——经典 CS-RBF(§8)的直系现代后裔;Neural Splines 用浅 ReLU 网的 NTK 做核岭回归,胜过 Poisson;
Shape-As-Points 把 Poisson 重建写成可微谱求解层。隐式场派全面"可学化"。
vs 经典 RBF/Poisson(固定核、一次求解) → 核可学、求解可微、可端到端;愿望 (b) 在 ML 时代的回归,但仍非解析 splat。
§15 仍然没解决的问题
把整张计分牌(Demo 2)再看一眼:到 2026 年中,仍然没有任何单一表示,在一颗基元上同时做到
局部 + 连续曲面(带梯度)+ 解析 splat + 可学厚度/不透明。 最接近的几个都还差一口气:
GOF 四条都沾 ,但它的"连续曲面"是渲染后事后 从不透明度场抽出来的等值面,不是基元优化时自带 的属性——曲面和渲染器是两个略有出入的对象,还要 Marching Tetrahedra 一步。
SDF 混合派(3DGSR/GSDF/NeuSG) 拿到了真连续 SDF,但靠外接第二个表示 (一个 MLP SDF)+ 双向一致性损失换来;那张曲面不再"解析 splat",SDF 那侧是被查询/marching 的。
广义核派(GES/Beta/3DCS/DRK) 把局部 + 解析 splat + 可学形状/不透明做到了极致,但没有一个定义出自带的连续曲面 ——它们仍是"外观优先",几何来自和 2DGS/GOF 同样的后处理。
大场景下的可见性梯度 :老 surface splatting 靠 z-buffer/深度趟,硬遮挡破坏梯度;DSS/Pulsar 的软化只是缓解。把"连续曲面 + 解析 splat + 干净遮挡梯度"三者在大场景同时拿住,仍是开放问题。
视角相关不透明度尚未成为标配 :opacity hull 的 $\alpha_i(v)$ 思路(§12)在主流 splat 里仍罕见;毛发/玻璃/高光边缘的"自适应刷强度"还没被一颗可学基元干净吃下。
真正的"局部隐式 splat"还没出现 :把 SLIM/APSS 的局部代数球(自带曲率、自带连续场、$C^\infty$)直接做成可微、可解析 splat、带可学不透明的基元——这颗"局部隐式高斯曲面 splat"在数学上呼之欲出,却仍无人完整交付。
总结一句话
这趟考古可以浓缩成两句:(a) 同一堆局部核,"取等值面"给你连续曲面(Blinn→MLS→MPU→APSS),
"投影 alpha 合成"给你解析 splat(Westover→Surfel→EWA→3DGS)——四十年来这两台读出机各自封顶,却始终
没合进一颗基元;(b) 现代可微渲染(2DGS/GOF/Beta-splat/SDF 混合)正把它们往一起焊,但至今仍是"拼装"而非"合体"。
你要找的那种表示——局部代数球当形状、单位分解保连续、EWA 薄壳做解析 splat、球谐调制学不透明厚度 ——
把本站每一章各取一颗螺丝就能拼出蓝图;真正的难点不在想象它,而在让它的可见性梯度 在大场景里依然干净可训。
§A 名词表 · Glossary
术语 解释
局部基元 / primitive 放在空间里、只影响附近一小片的小块(高斯、圆盘、代数球、metaball…)。
紧支撑 compact support 权重在半径 $R$ 外严格为 0。局部性的数学标志,使每次查询只碰 $O(1)$ 个基元。
等值面 / level set 标量场 $F(\mathbf{x})=c$ 的解集。隐式曲面把表面定义成 $F=0$ 的那张皮。
隐式曲面 implicit surface 用 $F(\mathbf{x})=0$ 隐式定义的曲面,而非显式列出顶点。SDF 是其特例($F$=有符号距离)。
单位分解 PoU 一组归一化局部权重 $\sum w_i/\sum w_j\equiv1$;用它把局部拟合平滑拼成全局连续场。
MLS 移动最小二乘:每个查询点附近现场加权拟合一个局部曲面,得处处光滑的连续面。
IMLS MLS 的闭式隐式版,$f=\sum\theta\,(\mathbf{n}\cdot\mathbf{d})/\sum\theta$,梯度解析、无迭代,最易可微。
代数球 algebraic sphere $u_0+\mathbf{u}\cdot\mathbf{x}+u_4\lVert\mathbf{x}\rVert^2=0$;APSS 的局部模型,多一个曲率自由度 $u_4$,低采样更稳。
splatting 遍历基元,把每个解析投影成屏幕 footprint 再累加合成;不沿射线采样。
surfel surface element,带法向/颜色的点基元(朝向的小圆盘),无网格连接。
footprint 3D 核沿视线积分得到的 2D 屏幕脚印。splatting 的基本投影量。
EWA Elliptical Weighted Average:把"形变后重建核 ⊛ 屏幕低通"做成椭圆高斯的抗锯齿重采样滤波。
雅可比 $J$ 透视投影在某点的局部线性(仿射)近似;3D 协方差经 $J$ 投成 2D 屏幕椭圆。
alpha 合成 over $\sum_i c_i\alpha_i\prod_{k\lt i}(1-\alpha_k)$,前面的核按不透明度挡掉后面。
各向异性核 协方差非球形的核;由邻域 PCA(Yu-Turk)或 SGD(3DGS)给出,沿数据展开方向拉伸。
opacity hull 表面上视角相关、图像测出的不透明度 $\alpha(\mathbf{p},v)$;现代对应每核 $\alpha_i(v)$。
RBF 径向基函数;$f=\sum\lambda_j\phi(\lVert\mathbf{x}-\mathbf{c}_j\rVert)$,全局光滑隐式面,通常需全局求解。
densification 训练中按需 clone/split/prune 基元;远祖是 Muraki 的 blob 分裂、Adams 的自适应粒子。
§B 推荐阅读顺序
这是教学顺序 (不是年代序):先建立"两台读出机"的对偶,再各深入一条河,最后看现代如何汇流。
Blinn 1982, Blobby Model —— 一切的起点:"曲面 = 一堆高斯之和的等值面"。先拿到这个心智模型。
Zwicker 2001/2002, Surface/EWA Splatting —— 另一台读出机:把同样的核解析投成屏幕椭圆。$\Sigma'=JW\Sigma W^\top J^\top+V_h$ 要会推。
Kolluri 2005, IMLS —— 局部隐式曲面里最干净、最可微的闭式;理解连续曲面 + 解析梯度。
Ohtake 2003, MPU —— 单位分解 + 八叉树自适应:局部如何拼成大场景的连续面。
Guennebaud 2007, APSS —— 代数球:为什么"带曲率的局部基元"比平面稳。本站设想的目标基元的核心零件。
Yu & Turk 2010, Anisotropic Kernels —— 看清"邻域 PCA 拟合的核 = 一个 3DGS 高斯",把两派在原语层面对齐。
Matusik 2002, Opacity Hulls —— 视角相关、图像驱动的不透明度;愿望 (d) 的老图形学落点。
Kerbl 2023, 3DGS —— 现在再读它,你会看见它就是"EWA splat + 可学不透明 + SGD",并清楚它丢了哪条愿望。
Huang 2024, 2DGS + Yu 2024, GOF —— 把曲面约束加回来:压扁成面元、再从不透明度场读出等值面。回到第 1、2 条的对偶。
Hamdi 2024, GES + Liu 2025, Beta Splatting —— 动原语本身:可学核形状 / 有界支撑,接回 §5 紧支撑与 §11 各向异性。
Made for learning. 完整 BibTeX、勘误、补遗欢迎 issue。最后更新 2026-06-01。
本站缘起于一个问题:能否找到一种 3D 表示,像 3DGS 一样局部、像 SDF 一样连续、像 splat 一样解析直出、不透明度还能自己学。
本站所有内容基于公开发表论文 / arXiv preprint / 项目页 / 官方代码仓。带 mustard
标的为 2025+ 较新工作(已核 arXiv + 项目页)。交互演示是 Canvas2D 的教学玩具,数值不代表论文实际性能。