跳到主要内容
返回博客

技术解析 · 三维重建

3D Gaussian Splatting:多视角重建与新视角渲染

3D Gaussian Splatting 将多视角影像中的空间与外观信息组织为可渲染的三维表示,使场景能够随观察位置生成新画面。MakeWorlds Studio 将影像输入、重建、检查与整理纳入同一创作流程。本文结合图示与动画,说明相机求解、高斯表示和新视角渲染之间的关系。

MakeWorlds Studio 团队 ·

近处墙面、中部座椅与远处门洞形成前后层次的暖色室内空间
原理插图:墙面、座椅与门洞的前后层次,用于说明视差与遮挡。

三维场景让观察者能够选择位置和方向来检查内容。围绕一件物体移动,或从门口靠近室内家具,都会改变前景与背景的相对位置。对空间记录与展示而言,这种位置变化使外观细节与场景布局可以被一起观察。

MakeWorlds Studio 的 Train 与室内实测文章提供了对应的照片和渲染结果,可以逐项检查主体轮廓与纹理。理解这些结果,可以沿着三个环节展开:多视角照片建立相机关系,高斯基元表示场景,再由指定相机视点生成画面。

多视角照片建立相机与空间关系

从不同位置拍摄同一场景,会得到互补的二维投影。门框角点、表面纹理等共同可见内容,为连接不同照片提供对应关系。

典型的多视角重建流程利用这些对应关系估计相机位置、朝向和初步空间点,称为运动恢复结构,即 Structure from Motion(SfM)。这些相机与空间关系为后续重建提供坐标依据。

采集时围绕目标移动机位,并在相邻画面间保留共同内容,可以同时提供位置变化与视觉连接。先形成连续覆盖,再补充需要近看的部位,有助于组织一组可用于重建的观察。

相机关系建立后,场景表示便可利用这些已知观察调整空间分布与外观,进而支持指定视点下的渲染。

高斯基元表达场景的空间分布与外观

3DGS 在三维空间中使用大量高斯基元,每个基元具有位置、尺度、方向、不透明度与颜色等信息。多个基元的贡献共同构成场景外观。

高斯分布的影响由中心向外逐渐减弱,可以用柔和的椭球帮助理解。投影到图像平面后,它形成边缘渐淡的覆盖区域。

渲染时,这些投影根据前后关系和不透明度合成像素颜色。下面的原理动画以杯子为例,展示三维高斯基元如何投影并形成画面。

训练将已知训练视点下的渲染与照片进行比较,并持续调整场景表示,使其在多个观察方向上接近输入图像。

新视角渲染带来视差与遮挡变化

当观察位置或方向改变时,高斯基元在屏幕上的投影位置、大小与遮挡顺序随之变化。系统依据新的相机视点重新计算画面,让同一场景可以从多个位置被观察。

在相机横向平移的例子中,近处物体与远处背景的投影位移不同,形成视差。视线也可能绕过原先的前景遮挡,露出后方内容。下面的俯视图展示了这一空间关系。

俯视图中,A 位置到背景物体的视线被立柱阻挡,B 位置到同一物体的视线绕过立柱
前景立柱背景物体俯视观察同一场景:在 A 处,立柱挡住背景物体;移到 B 处,视线绕过立柱。这说明位置变化怎样改变遮挡关系。

单张全景图主要提供固定位置周围的方向观察;三维场景还支持改变观察位置,并重新计算前后关系。规划采集范围与观看路线时,可以把这种位置变化纳入设计。

面向使用场景组织采集与检查

开始采集前,先明确主要观看区域、预期移动路线和需要近看的细节。连续覆盖、清晰图像与相对稳定的光照,为重建提供一致的观察依据;局部特写则补充需要重点表达的纹理与结构。

检查结果时,沿预期路线观察轮廓、遮挡切换和新进入视野的区域。对玻璃、镜面、弱纹理表面与移动物体重点复核,有助于判断需要补充采集或继续整理的部位。未被素材观察到的区域,仍需要额外的重建依据。

本篇说明图像重建与视角渲染的原理。尺寸测量、碰撞检测和工程分析还需要相应的几何数据与验证,应按最终用途单独验收。

在 MakeWorlds Studio 中连接素材、场景与评估

MakeWorlds Studio 将影像输入、重建、检查与场景整理组织为连贯流程。用户围绕采集素材与重建结果开展工作,通过多个观察位置检查质量,再按展示目标整理场景。

公开实测提供了从原理到结果的具体参照:Train 展示机车主体细节与三平台数据,室内案例展示柜体、重复花纹和书架内容。通过原图对照和完整测试集指标,可以进一步判断这些技术环节最终保留了哪些结构与外观。