pixelSplat: 3D Gaussian Splats from Image Pairs for Scalable Generalizable 3D Reconstruction


Paper: 链接
Code: https://github.com/dcharatan/pixelsplat
Author: MIT, SFU


前置知识

1)几种常见的伪影

\quad ghosting artifacts:当摄像机运动,或者物体运动时,画面会在物体旧位置留下重影,其实就是残影。
在这里插入图片描述
\quad Blurring:和ghosting类似,都是把画面变糊,但是有区别。blurring指的是空域高频图像的细节损失,通常在锐利的边缘,如下图中,边缘模糊。导致这种伪影的原因,其实就是高频细节的丢失。
在这里插入图片描述

\quad Ringing artifacts / Gibbs artifacts / Spectral leakage artifacts / truncation artifacts(振铃伪影):图像的灰度剧烈变化处产生的震荡,就好像钟被敲击后产生的空气震荡。
在这里插入图片描述

\quad Aliasing Artifacts(混叠伪影):当对连续信号进行离散化(采样)时,如果采样频率过低,可能导致高频信号被误解为低频信号,产生混叠。该伪影往往由于采样频率不足而产生的"走样"效应,通常表现为图像中的锯齿状边缘(jaggies,左图)或周期性波纹(摩尔纹,moire pattern,右图)。
在这里插入图片描述
为了解决jagged sharp edges,一种方法叫做anti-aliasing(反走样),让边缘更光滑。如下图所示:
在这里插入图片描述
\quad Floating artifacts(漂浮伪影):漂浮是指某些区域的虚幻运动,而周围区域保持静止。从视觉上看,这些区域似乎漂浮在周围的背景之上。有两种类型的浮动:纹理浮动和边缘浮动。如下图出现了漂浮效应,从视觉上看,这些区域产生了一种强烈的错觉,就好像它们漂浮在叶子上。
在这里插入图片描述

\quad Block Boundary Artifact(块效应):不同的图像块进行了不同的处理,有时是量化步长不同,有时是舍去的高频分量不同,这将导致图像块之间的相关性被破坏。有点像马赛克。
在这里插入图片描述
\quad Flickering Artifacts:场景中的高频着色区域,会有闪烁的现象。这是最需要重点解决的artifact,因为最难看,而且是在静态的时候都会出现。闪烁一般是指亮度或色度随时间的频繁变化(类似于蜡烛的火焰),通常分为细粒忽明忽暗和粗粒忽明忽暗,如下图。
在这里插入图片描述
\quad speckling artifacts:在医学图像学、雷达图像、激光雷达图像等领域中经常出现的一种现象,主要是由于波的干涉或光学干涉引起的,通常表现为图像中的随机亮暗斑点。这种伪影可以使用滤波技术、图像平滑算法以及在采集图像时使用多视角或多个传感器等来解决。
在这里插入图片描述
\quad Jerkiness:抖动是一种类似闪烁的伪像,描述了对视频中的单个静止图像的感知。

2)small-baseline 与 large-baseline

\quad 这两个术语通常与立体视觉(stereo vision)或者三维重建有关。

  • Small Baseline(小基线):在立体视觉中,小基线通常用于处理近距离的场景,例如室内摄影或者近距离的物体。
  • Large Baseline(大基线):在立体视觉中,大基线通常用于处理遥远或广阔的场景,例如户外景观或者远距离的物
### 关于高斯世界模型用于流式3D占用预测的研究 在研究领域中,高斯世界模型(Gaussian World Model, GWM)被广泛应用于表示复杂的三维环境。对于流式3D占用预测的任务而言,该方法通过利用动态变化场景中的稀疏性和局部性来实现高效建模。 #### 高斯世界模型概述 高斯世界模型采用一系列加权的各向异性高斯分布来近似复杂物体表面及其周围的空间结构[^1]。这些分布在空间上定义了一个概率场,其中每个位置处的概率反映了存在实体的可能性大小。这种方法不仅能够捕捉到精细几何特征,而且支持高效的渲染操作以及实时更新机制。 #### 流式处理框架设计 为了适应不断变化的真实世界条件并保持较低延迟,在线学习成为构建此类系统的必要组成部分之一。具体来说: - **增量训练**:当新数据到来时,仅需调整受影响部分对应的参数而无需重新计算整个模型; - **自适应分辨率管理**:根据不同区域的重要性自动调节细节程度; - **分布式存储与通信协议**:确保大规模环境下多节点间协作顺畅无阻塞。 ```python class GaussianWorldModel: def __init__(self): self.gaussians = [] def add_gaussian(self, mean, covar, weight): gaussian = {'mean': mean, 'covariance': covar, 'weight': weight} self.gaussians.append(gaussian) def predict_occupancy(self, point_cloud): occupancy_probabilities = [] for p in point_cloud: prob_sum = sum([g['weight'] * multivariate_normal.pdf(p, g['mean'], g['covariance']) for g in self.gaussians]) occupancy_probabilities.append(prob_sum) return np.array(occupancy_probabilities) ``` 上述代码片段展示了如何初始化一个简单的`GaussianWorldModel`类,并提供了一种基于输入点云数据预测占据情况的方法。实际应用中可能还需要考虑更多因素如噪声抑制、边界效应等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值