Splats in Splats: Robust and Effective 3D Steganography towards Gaussian Splatting¶
会议: AAAI 2026
arXiv: 2412.03121
代码: 无
领域: 3D视觉
关键词: 3D高斯溅射, 隐写术, 版权保护, 球谐函数, 信息嵌入
一句话总结¶
提出"Splats in Splats",首个在3DGS中嵌入3D隐藏内容而不修改任何vanilla 3DGS属性的隐写术框架,通过重要性分级的SH系数加密和自编码器辅助的不透明度映射实现安全、鲁棒且高效的版权保护。
研究背景与动机¶
问题定义¶
随着3D Gaussian Splatting在3D重建和生成任务中的广泛应用,保护3DGS资产的版权变得日益迫切。3DGS隐写术的目标是在3DGS资产中嵌入隐藏信息(如另一个3D场景),以便在需要时验证所有权。
核心动机¶
现有3DGS版权保护技术存在两个关键缺陷:
1. 仅保护渲染图像而非3DGS本身:GaussianMarker等方法将信息嵌入渲染图像中,但恶意用户可以使用不同的渲染策略生成新样本,绕过水印保护。真正需要保护的是3DGS资产本身。
2. 破坏了3DGS资产的可用性:现有方法(GS-Hider、SecureGS)修改了vanilla 3DGS的属性和渲染管线: - GS-Hider引入了耦合特征场和神经解码器,无法在标准3DGS渲染引擎中使用 - SecureGS基于Scaffold-GS而非vanilla 3DGS,同样面临兼容性问题 - 这些修改使得3DGS资产难以部署在标准工具链中
核心问题¶
是否存在一种方案,能够在3DGS本身中嵌入隐藏信息,而不修改vanilla 3DGS的任何属性?
关键洞察¶
作者对球谐函数(SH)进行了深入分析,发现: - 低阶SH系数捕捉场景的主要外观(低频信息),高阶SH系数仅包含少量高频反射信息 - 高阶SH系数存在信息冗余,可以在其中嵌入信息而不显著影响渲染质量 - 同时,不透明度属性可以通过自编码器建立原始与隐藏场景之间的映射
方法详解¶
整体框架¶
Splats in Splats的嵌入和提取流程包含三个步骤: 1. 隐藏属性训练:使用原始和隐藏场景的视角训练两套SH系数和不透明度,共享相同的高斯基元位置 2. 重要性分级SH系数加密/解密:按SH阶数分级,将隐藏SH系数嵌入原始SH的高阶分量中 3. 自编码器辅助不透明度映射:训练一个轻量级卷积自编码器学习原始→隐藏不透明度的映射
关键设计¶
1. 球谐函数的深入分析¶
功能:揭示SH系数的信息重要性差异,为嵌入策略提供理论基础。
SH基函数定义:
其中 \(l\) 为阶数(band index),低阶代表低频基函数,高阶代表高频基函数。
关键发现:通过保留指定阶次SH系数(其他设为零)来渲染图像,实验表明: - 0阶SH捕捉了场景的主体颜色和结构 - 高阶SH仅包含少量高频反射细节(如镜面高光) - 高阶SH系数的冗余性使得信息嵌入难以被察觉
2. 重要性分级SH系数加密(Importance-graded SH Coefficient Encryption)¶
功能:将隐藏SH系数按重要性分级嵌入原始SH的高阶分量中。
核心思路:隐藏SH的低阶系数(最重要)嵌入到原始SH的高阶分量(最不重要)中,以最大化保真度。
嵌入过程:
Step 1 — 根据分级重要性清零原始系数的低位:
Step 2 — 将隐藏系数移位到对应位置并执行异或操作:
其中: - \(k=17\) 为0阶系数的位移长度 - \(\gamma\) 为最大位长度 - \(n-1-j\) 表示隐藏系数被反转以匹配分级选择(低阶隐藏→高阶原始)
提取过程:通过按位与操作恢复:
设计动机: - 分级嵌入确保对原始场景影响最小化(高阶系数本就贡献小) - 隐藏信息的低阶系数(最重要的外观信息)获得更多位来存储 - 这种策略在噪声攻击下比均匀加密更鲁棒
3. 自编码器辅助不透明度映射(Autoencoder-assisted Opacity Mapping)¶
功能:学习从原始不透明度到隐藏不透明度的映射,避免直接存储隐藏不透明度。
核心思路: 1. 设置阈值 \(\tau = 0.25\) 过滤不重要的隐藏不透明度值:\(\mathcal{I} = \{i \mid \alpha_i' > \tau\}\) 2. 存储这些位置的3D坐标 \(x_\mathcal{I}\) 3. 观察到 \(\alpha_i\) 和 \(\alpha_i'\) 在许多位置展现互补关系 4. 用卷积自编码器学习映射 \(1 - \alpha_\mathcal{I} \to \alpha_\mathcal{I}'\):
提取时:\(\alpha_\mathcal{I}' = \mathcal{D}_p(\mathcal{E}_p(1 - \alpha_\mathcal{I}))\)
设计动机: - 不修改原始不透明度,自编码器参数 \(W_p^*\) 作为私钥存储 - 阈值过滤减少存储需求(不重要的隐藏不透明度直接设为零) - 互补关系启发使用 \(1 - \alpha\) 作为输入,而非直接 \(\alpha\)
损失函数 / 训练策略¶
- 基于标准3DGS训练,30000次迭代,NVIDIA A800 GPU
- 超参数:\(\tau = 0.25\),\(k = 17\)
- 资产所有者需保存的私钥:自编码器参数 \(W_p^*\) + 重要位置坐标 \(x_\mathcal{I}\)
实验关键数据¶
主实验¶
Mip-NeRF360数据集上的保真度对比(PSNR↑):
| 方法 | 原始场景 PSNR | 隐藏场景 PSNR | 渲染 FPS | SIBR兼容 |
|---|---|---|---|---|
| 3DGS+StegaNeRF | 24.12 | 16.68 | 22 | ✗ |
| GS-Hider | 25.82 | 25.18 | 44 | ✗ |
| SecureGS | 26.57 | 23.68 | 36 | ✗ |
| Ours | 26.75 | 26.52 | 118 | ✓ |
关键指标: - 原始场景保真度最高(26.75 PSNR),比GS-Hider高5.31% - 隐藏场景质量也最优(26.52 PSNR) - 渲染速度是GS-Hider的3倍(118 vs 44 FPS) - 唯一兼容vanilla 3DGS的SIBR渲染引擎 - 训练时间仅47分钟,是GS-Hider的不到一半
消融实验¶
SH/不透明度加密的必要性:
| 配置 | 原始 PSNR↑ | 隐藏 PSNR↑ | 说明 |
|---|---|---|---|
| w/o Opacity | 24.21 | 23.35 | 无不透明度映射,两者均下降 |
| w/o SH | 26.80 | 11.09 | 无SH加密,隐藏场景崩溃 |
| SH+Opacity (完整) | 26.75 | 26.52 | 两者互补 |
鲁棒性实验(25%顺序剪枝):
| 方法 | PSNR↑ | SSIM↑ | 说明 |
|---|---|---|---|
| SecureGS | 16.96 | 0.577 | PSNR大幅下降5.17 |
| GS-Hider | 25.17 | 0.780 | PSNR下降0.01 |
| Ours | 26.52 | 0.797 | PSNR仅下降0.002 |
噪声鲁棒性(重要性分级 vs 均匀加密):
| 方法 | 噪声0.0005 | 噪声0.001 | 噪声0.005 | 噪声0.01 | 平均 |
|---|---|---|---|---|---|
| 均匀加密 (AVG) | 24.17 | 21.99 | 11.44 | 7.47 | 16.27 |
| 重要性分级 (Ours) | 24.58 | 24.51 | 22.80 | 20.03 | 22.98 |
关键发现¶
- 不透明度映射保护几何,SH加密保护外观:两者分别对应3D资产的两个本质组成部分
- 剪枝攻击下极度鲁棒:25%顺序剪枝仅导致0.002 PSNR下降
- 重要性分级加密大幅提升噪声鲁棒性:在强噪声(0.01)下AVG方案PSNR崩至7.47,我们仍保持20.03
- 位移长度 \(k\) 对质量影响极小:\(k\) 从10到22变化时,原始和隐藏场景PSNR几乎不变
- 唯一保持完整vanilla 3DGS管线和属性的方法
亮点与洞察¶
- 问题定义的精准性:明确区分了"保护渲染图像"和"保护3DGS资产本身",以及可用性的重要性
- 对SH系数冗余性的深入分析非常有启发价值——高阶SH的信息冗余是一个可被广泛利用的特性
- 比特级操作实现信息嵌入:纯算术操作,不引入神经网络,因此完全保留了vanilla 3DGS管线
- 互补关系的发现:\(\alpha\) 和 \(\alpha'\) 之间的互补性是一个有趣的观察
- 实用性极强:100+ FPS、标准引擎兼容、训练快速
局限与展望¶
- 对视角相关的细节(如镜面反射)有一定影响,因为高阶SH被部分用于嵌入
- 需要存储私钥(自编码器参数+位置坐标),增加了所有者端的存储开销
- 隐藏场景的质量(26.52 PSNR)略低于原始3DGS训练的场景,仍有提升空间
- 目前仅支持嵌入一个隐藏场景,多层嵌入尚未探索
- 在位移操作中使用定点整数表示,精度受限于量化
相关工作与启发¶
- GS-Hider:首个3DGS隐写术方法,使用耦合特征场和神经解码器,但破坏了vanilla管线
- SecureGS:基于Scaffold-GS的隐写术,同样修改了属性和管线
- StegaNeRF:NeRF隐写术的代表方法,通过微调NeRF权重嵌入秘密图像
- WaterRF:使用离散小波变换嵌入二进制消息的NeRF水印方法
- 3DGS:本文完全基于vanilla 3DGS框架,确保兼容性
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ — 首个不修改任何属性的3DGS隐写术,SH分级加密设计精巧
- 实验充分度: ⭐⭐⭐⭐⭐ — 保真度、效率、鲁棒性、安全性、可用性五个维度全面评估
- 写作质量: ⭐⭐⭐⭐ — 问题动机清晰,SH分析深入,但符号较多
- 价值: ⭐⭐⭐⭐⭐ — 实用意义极强,完全兼容vanilla 3DGS生态系统
Splats in Splats: Robust and Effective 3D Steganography towards Gaussian Splatting¶
会议: AAAI 2026
arXiv: 2412.03121
代码: 无
领域: 3D视觉
关键词: 3D隐写术, 高斯溅射, 球谐函数, 版权保护, 信息隐藏
一句话总结¶
提出 Splats in Splats,首个在不修改任何 vanilla 3DGS 属性的前提下将3D内容嵌入3DGS资产中的隐写术框架,通过重要性分级的球谐系数加密和自编码器辅助的不透明度映射,实现5.31%更高的场景保真度和3倍的渲染速度。
研究背景与动机¶
3D高斯溅射已成为主流的3D资产表示方式,广泛应用于3D重建和生成。然而,3DGS资产的版权保护问题日益紧迫。现有的3DGS隐写术方法存在严重缺陷:
核心问题:可用性(Usability)被忽视 - GS-Hider:引入耦合特征场和神经解码器来同时渲染原始和隐藏场景,但修改了3DGS的渲染管线和属性结构 - SecureGS:基于Scaffold-GS,同样修改了vanilla 3DGS架构 - 这些方法使修改后的3DGS资产无法直接在标准3DGS渲染引擎(如SIBR Viewer)中使用 - 用户需要特殊的渲染工具,严重影响实际部署
作者提出核心问题:"能否在不修改 vanilla 3DGS 任何属性的情况下,在3DGS本身中嵌入隐藏信息?"答案是肯定的,关键在于对球谐函数(SH)特性的深入洞察。
方法详解¶
整体框架¶
Splats in Splats 的流程分为三步: 1. 隐藏属性训练:使用原始和隐藏场景的视图分别训练两套SH系数和不透明度,共享高斯基元位置 2. 重要性分级SH系数加密:将隐藏SH系数按重要性分级嵌入原始SH的高阶分量中 3. 自编码器辅助不透明度映射:用卷积自编码器建立原始→隐藏不透明度的映射
关键设计¶
1. 球谐函数的深入洞察(Insight in SH):信息冗余的发现¶
球谐函数用于表示视角相关的颜色: $\(F(s) \approx \sum_{l=0}^{q-1} \sum_{m=-l}^{l} f_l^m Y_l^m(s)\)$
关键发现: - 低阶(band index \(l\) 小)SH基函数表示低频信息,包含场景的主要外观 - 高阶SH基函数表示高频信息,但在大多数场景中贡献微小 - 高阶SH系数存在大量信息冗余,在其中嵌入信息不易被检测且能保持高保真度
实验验证:仅保留0阶SH渲染得到的图像与保留所有阶的图像差异极小,证实高阶SH的信息冗余性。
2. 重要性分级SH系数加密(Importance-graded SH Coefficient Encryption):安全且鲁棒的信息嵌入¶
核心思想是将更重要的隐藏低阶SH系数嵌入到原始SH的高阶(不太重要)分量中。
清零操作:根据SH阶次的分级重要性,将原始系数 \(c_{i,j}\) 的低位清零: $\(\tilde{c}_{i,j} = c_{i,j} \& \sim((1 << (k + \lfloor\sqrt{j}\rfloor)) - 1)\)$
嵌入操作:将反转顺序的隐藏系数通过位移和异或嵌入: $\(c_{i,j}^w = \tilde{c}_{i,j} \oplus (c_{i,n-1-j}' >> (\gamma - (k + \lfloor\sqrt{j}\rfloor)))\)$
其中 \(n-1-j\) 表示隐藏系数的顺序被翻转——即隐藏的低阶(重要)系数被嵌入原始的高阶(不重要)分量中。这样: - 对原始场景高保真(仅修改高阶系数的低位) - 对隐藏场景可恢复(重要信息被保护在不容易被噪声影响的位置) - 对噪声攻击鲁棒(分级策略使关键信息分布在更安全的位置)
3. 自编码器辅助不透明度映射(Autoencoder-assisted Opacity Mapping):几何信息的隐藏¶
SH系数隐藏外观信息,而不透明度携带几何结构信息。
阈值过滤:设置阈值 \(\tau\) 过滤不重要的隐藏不透明度: $\(\mathcal{I} = \{i \mid \alpha_i' > \tau, i \in \{1,2,...,N\}\}\)$
互补性观察:原始和隐藏不透明度在很多位置呈互补关系,因此用 \(1-\alpha_\mathcal{I}\) 作为自编码器输入。
映射学习: $\(W_p^* = \arg\min_{\mathcal{E},\mathcal{D}} \ell_{mse}(\mathcal{D}(\mathcal{E}(1-\alpha_\mathcal{I})), \alpha_\mathcal{I}')\)$
自编码器由简单的卷积/反卷积层组成,保证实时渲染。训练好的模型参数 \(W_p^*\) 作为私钥存储。
提取过程: $\(c_{i,j}' = c_{i,n-1-j}^w \& (1 << (k + \lfloor\sqrt{n-1-j}\rfloor))\)$ $\(\alpha_\mathcal{I}' = \mathcal{D}_p(\mathcal{E}_p(1-\alpha_\mathcal{I}))\)$
损失函数 / 训练策略¶
- 使用标准3DGS训练流程,30000次迭代
- 两套SH系数和不透明度分别训练,共享高斯基元位置
- 自编码器使用MSE损失训练
- 阈值 \(\tau=0.25\),位移长度 \(k=17\)
实验关键数据¶
主实验(Mip-NeRF360 数据集,PSNR↑)¶
| 方法 | 原始场景 PSNR | 隐藏场景 PSNR | 渲染FPS | 保持vanilla管线 | 保持vanilla属性 |
|---|---|---|---|---|---|
| 3DGS+StegaNeRF | 24.120 | 16.681 | 22 | ✗ | ✓ |
| GS-Hider | 25.817 | 25.179 | 44 | ✗ | ✗ |
| SecureGS | 26.574 | 23.679 | 36 | ✗ | ✗ |
| Ours | 26.749 | 26.517 | 118 | ✓ | ✓ |
- 原始场景保真度最高(超SecureGS 0.175,超GS-Hider 0.932 PSNR)
- 隐藏场景质量最优(超GS-Hider 1.338,超SecureGS 2.838 PSNR)
- 渲染速度3x快于GS-Hider
- 训练时间仅47分钟,约为GS-Hider的40%
鲁棒性实验(随机剪枝攻击)¶
| 剪枝比例 | SecureGS PSNR | GS-Hider PSNR | Ours PSNR | 说明 |
|---|---|---|---|---|
| 5% | 22.920 | 24.923 | 26.415 | 优势显著 |
| 10% | 22.596 | 24.673 | 26.375 | 微降仅0.04 |
| 15% | 22.280 | 24.371 | 26.346 | 继续保持稳定 |
| 25% | 21.485 | 23.661 | 26.320 | 仅降0.095,远优于GS-Hider(降1.260) |
顺序剪枝下更为出色:25%剪枝后仅降0.002 PSNR。
消融实验¶
| 配置 | 原始场景 PSNR | 隐藏场景 PSNR | 说明 |
|---|---|---|---|
| w/o opacity mapping | 24.209 | 23.346 | 不透明度映射对两个场景都重要 |
| w/o SH encryption | 26.795 | 11.092 | SH加密对隐藏场景至关重要 |
| SH + opacity(完整) | 26.749 | 26.517 | 两者缺一不可 |
噪声鲁棒性(不同高斯噪声级别下隐藏场景PSNR):
| 加密方式 | σ=0.0005 | σ=0.001 | σ=0.005 | σ=0.01 | 平均 |
|---|---|---|---|---|---|
| 均匀加密(AVG) | 24.167 | 21.991 | 11.442 | 7.471 | 16.267 |
| 分级加密(Ours) | 24.577 | 24.509 | 22.797 | 20.032 | 22.979 |
分级加密在高噪声下优势尤为显著(σ=0.01时差距12.56 PSNR)。
关键发现¶
- SH的高阶系数确实存在大量信息冗余,可用于安全嵌入
- 不透明度的互补性观察(\(1-\alpha\) ↔ \(\alpha'\))使映射学习更容易
- 重要性分级加密比均匀加密在噪声攻击下鲁棒性提升40%+
- 保持vanilla 3DGS管线是唯一能直接兼容SIBR Viewer的方法
- 阈值 \(\tau\) 对质量有显著影响,\(\tau=0.25\) 最优
亮点与洞察¶
- 问题定义独到:首次提出必须保持vanilla 3DGS属性的隐写术需求,直击实际部署痛点
- SH特性的深入挖掘:发现高阶SH的信息冗余性并巧妙利用,是学术界对3DGS数据结构的深入理解
- 分级加密设计精妙:低阶隐藏系数→高阶原始系数,既保护了重要信息又最小化对原始场景的影响
- 极强的鲁棒性:25%随机剪枝仅降0.095 PSNR,实际应用中几乎不可能被攻击破坏
- 实用性最佳:首个可直接在标准3DGS渲染引擎中部署的隐写术方案
局限与展望¶
- 对视角相关细节有一定影响(SH高阶系数被部分占用)
- 隐藏场景的质量仍略低于原始场景
- 仅支持嵌入一个隐藏3D场景,未探索多内容嵌入
- 自编码器参数需要安全存储和传输
- 未讨论在3DGS压缩场景下的表现
相关工作与启发¶
- GS-Hider:最直接的竞品,但修改了管线导致不可用
- StegaNeRF/WaterRF:NeRF隐写术的前驱工作,但不适用于3DGS的显式表示
- 3DGS压缩:CompGS等方法对SH系数的量化可能与隐写术产生冲突
- 启发:SH系数的冗余性分析方法论可推广到其他基于SH的3D表示
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ — 首个保持vanilla 3DGS属性的隐写术,SH分级加密设计巧妙
- 实验充分度: ⭐⭐⭐⭐ — 保真度/效率/鲁棒性/安全性/可用性全面评估
- 写作质量: ⭐⭐⭐⭐ — 问题定义清晰,方法直观
- 实用价值: ⭐⭐⭐⭐⭐ — 直接可部署的3DGS版权保护方案