截断符号距离 | TSDF, Truncated Signed Distance Function

1 定义

TSDF(Truncated Signed Distance Function)是截断符号距离函数的缩写,各个体素的截断符号距离组成了 TSDF 场。理解 TSDF 首先要理解下符号距离 SDF。如下图所示:

假设相机光心到表面的距离为d_{s},到射线上体素\bar{x}的距离为 d_{v},则符号距离就是SDF(x)=d_{\vec{x}},显然,当d_{\vec{x}}>0时,表示体素在平面前方,当d_{\vec{x}}<0 时,表示体素在平面后方。

体素的概率值是我们更新体素距离的方式。因为体素距离平面过远时,其数值对于平面影响过小因此通常都会采用 TSDF 设定一个阈值 δ𝛿 来截断,类似下图:

用公式定义如下:

 \operatorname{TSDF}(x)=\left\{\begin{array}{ll} 1 & \text { if } x>\delta \\ \frac{\operatorname{SDF}(x)}{|\delta|} & \text { if }-\delta \leq x \leq \delta \\ -1 & \text { if } x<\delta \end{array}\right.

如果是在 2D 平面上,一个简单的 TSDF 场类似下面的样子:

2 融合

2.1 权重

有了上述 TSDF 的定义,想要对于多个不同帧的同一个体素观测进行更新,首先要定义体素的概率,考虑到一个显然的事实,对于一个深度传感器来说,测量数据的方差与角度有关:

 则可以想到一种基本的权重定义如下:

w(p)=\frac{\cos (\theta)}{\text { distance }(v)}

其中, distance(v)=d_{v}

2)更新 TSDF 和 W 值:

其中小写 tsdf 和 w 表示更新之前的观测值(对于相机视野外的情况 w=0 对于是业内的情况 w=1),大写 TSDF 和 W 表示更新之后的值。反复执行上述操作即可将新的帧融合到之前的帧上。 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值