首先,这东西是干嘛用的?
答:如下所示。
输入3D的TSDF模型——>光线投影法——>输出2D图像。
当机器人站在某个视角下“看”TSDF模型(3D),如何从TSDF模型,得到一张图像(2D)
光线投影法,算法具体是怎么实现的?
从上面这个图可以看到,2D图像的某个像素点,是后面很多个小立方体(图中是一些小圆圈,但对应TSDF模型应该是一个个体素)一起映射过来的结果,这是问题就转化成:
如何通过这么多个小立方体的信息,获得最终在2D平面的一个像素点的像素值?
那么得先看小立方体给了我们什么信息:
一般是利用两个信息:透明度和颜色值(一般来说是RGB值)
实际上,小立方体的这两个信息的背后,是光学中的吸收模型和发散模型,这一点可以从参考博文里面看看,这里不展开。
透明度和颜色值——然后呢?
显然,我们这里需要讨论到透明度,就说明这个过程肯定是各个小立方块在叠加效果了,那么先看看最简单的情况:
当我们隔着一个半透明度的物体去看另一个完全不透明的物体,最终我们看出来是什么颜色的呢?可以根据这个公式: