Block-NeRF通过将城市级大场景划分为若干局部区块,并为每个区块单独优化一个小型神经辐射场,从而解决了单一网络容量不足与训练显存爆炸的问题。然而在区块拼接时,由于各个子网络在独立训练过程中学到的辐射场分布并不一致,位于区块边界附近的像素往往会出现亮度突变、几何错位或纹理断裂,这就是业界常说的接缝问题。要彻底理解并解决该问题,需要从空间划分时的重叠区域设计以及多区块结果后融合两个维度同时入手。

重叠区域为何是削弱接缝的第一道防线
在Block-NeRF的原始设计中,每个区块只负责以自身中心为原点的一定半径范围内的空间表达。如果两个相邻区块的训练边界恰好对齐,那么边界上的采样光线只会落入其中一个网络的感知范围,导致该处辐射场缺乏来自另一侧几何与外观的约束。当视角发生轻微偏移时,原本属于A块的区域被B块接管,由于两者密度与颜色映射函数不同,画面会突然跳变。引入重叠区域的核心目的,是让相邻区块在交界带都进行采样与优化,使得同一物理点在两个网络中都有对应的辐射值。
具体实现时,通常会将区块划分从硬切分改为软切分。例如设定区块半径为R,实际训练时让每个网络在距离中心R到R+margin的范围内也计算损失,这个margin就是重叠宽度。重叠宽度并非越大越好:过大会导致大量冗余计算,且多个网络在重叠区互相牵制可能降低收敛速度;过小则无法提供足够的一致性约束。实践中可依据场景复杂度和相机分布密度动态调整,城市街道场景常取R的百分之十五到二十作为重叠带。
除了静态重叠,还可以采用基于可见性的自适应重叠策略。通过分析训练视图中每条光线穿过哪些区块,对高频穿越边界的区域自动扩充重叠,而空旷区域缩小重叠。这种方式能在总计算量不变的前提下,把重叠资源集中在最容易产生接缝的地方,比统一margin更省资源。
多区块结果融合的主流方案对比
即便有了重叠区域,在推理阶段当一条光线同时被多个区块网络评估时,仍需决定如何组合这些辐射值。最直接的做法是按距离区块中心的远近做反距离加权,离谁近就更多采纳谁的颜色。这种加权平均在重叠区中心过渡平滑,但在重叠区边缘仍可能因权重切换过快而出现细线状痕迹。
另一种思路是最大值融合,即取各区块在该点预测的不透明度与颜色组合中权重最高者。它能保留最清晰的几何边缘,避免模糊,但要求各区块对相同表面的预测一致性极高,否则会出现块状硬边。相比之下,泊松融合把颜色梯度作为约束,在重叠带求解一个泊松方程,使拼接后的图像在接缝处梯度连续,视觉效果自然,不过它属于后处理,依赖二维图像且对几何误匹配无能为力。
更前沿的做法是引入可学习权重图,用一个轻量卷积网络预测每个像素位置应采用哪几个区块的混合比例。该网络可在Block-NeRF微调阶段联合训练,以接缝处像素差异为监督信号。其优势是能处理非均匀光照与动态物体残留,缺点是增加了推理时的额外模型。下表列出三种方案的特性:
| 融合方式 | 实现复杂度 | 接缝自然度 | 几何保真 |
|---|---|---|---|
| 反距离加权 | 低 | 中 | 中 |
| 最大值融合 | 低 | 低 | 高 |
| 可学习权重图 | 高 | 高 | 高 |
从训练目标层面消除接缝的根本策略
前述重叠与融合多属于几何与后处理层面补救,若能从损失函数上让相邻区块在边界达成共识,则接缝可从根本上变淡。常用手段是添加边界一致性损失:在重叠区域内随机采样点,要求其在一个区块网络中的预测密度与颜色,经位姿变换后逼近相邻区块的预测值。该损失权重不宜过大,否则会抹杀各区块对局部特殊光照的建模能力。
代码层面,边界一致性损失可这样实现:取出重叠区采样点,分别过两个相邻Block-NeRF的模型得到rgb_a、sigma_a与rgb_b、sigma_b,计算L1差并乘掩码。下面给出简化 PyTorch 风格片段:
import torch
def boundary_loss(block_a, block_b, pts, mask):
# pts: 重叠区三维点 [N,3]
# mask: 标识哪些点处于重叠带 [N]
rgb_a, sig_a = block_a(pts)
rgb_b, sig_b = block_b(pts)
diff = torch.abs(rgb_a - rgb_b) + torch.abs(sig_a - sig_b)
return (diff * mask.float()).mean()
# 假设两个相邻块与重叠点
loss = boundary_loss(net_a, net_b, overlap_pts, overlap_mask)
此外,还可采用共享浅层编码的方式:让所有区块的前几层MLP权重相同,仅深层解码各自风格。这样提取的几何特征在全局一致,仅在外观细节上分块,也能大幅减弱接缝。需要注意的是,共享层会限制单块灵活性,对差异极大的室内外过渡区可能欠拟合,因此常配合前述重叠与融合使用,而非单兵作战。
综合来看,解决Block-NeRF接缝不能只靠某一种技巧。合理的重叠区域布局提供了物理一致性基础,恰当的融合策略抹平了剩余不连续,而边界感知的训练目标则从优化起点压制了裂缝产生。实际部署时建议先以动态重叠加反距离加权跑通基线,再逐步引入边界损失与可学习融合,按渲染评测指标迭代宽度与权重,最终获得城市级无痕神经重建。
Block-NeRF重叠区域神经辐射场融合修改时间:2026-08-14 16:57:31