机器人视觉与感知

点云

点云说白了就是散布在三维空间里的一大袋小点,其中每一个点都标记着机器人在某个真实物体表面上测到的一个位置。想象你用喷漆,在手指碰到物体的每一处——椅子、地板、咖啡杯——都点上一个发光的小斑点,然后让所有这些斑点悬浮在空中,彼此之间没有任何东西相连。退后一步看,这一团斑点就勾勒出了整个房间以及里面所有东西的形状,尽管它其实只是一张点的清单,而不是一个实心模型。每个点至少带有三个数字:相对于传感器,它在左右方向、上下方向、远近方向上各有多远。

机器人是从深度传感器那里得到点云的。激光雷达让一束激光四处扫描,并计时每个脉冲弹回来要花多久,再把这些时间换算成距离、进而变成一个个点;深度相机用红外光做的也大致是同一件事。得到的结果,就是机器人最初拿到手的、未经加工的几何画面——这时还没有标好的物体、没有曲面,只有成千上万乃至上百万个光秃秃的点。每个点还可以额外携带数据,比如从相机借来的颜色或一个亮度值,于是一团点云看上去就像是一张幽灵般的三维照片。

正因为点云是原始而无结构的——这些点没有顺序,也并不自带“哪个属于桌子、哪个属于杯子”的概念——感知工作的大部分内容,就是把它变成有意义的东西:抹平传感器的抖动、把好几次扫描拼接起来、把点归拢成曲面,或者拿这团点去和某个已知形状做匹配。它是给一栋建筑测绘建图、识别一件物体,或让自动驾驶汽车理解周围道路时,共同的起点原料。

仓库机器人的激光雷达每秒产生由数百万个点组成的点云;软件把这些点归拢成地面、货架和箱子,机器人才能规划出一条不会蹭到托盘的路线。

先有原始几何,后有含义:在软件把点归拢之前,点云只是一堆点。

点云只记录传感器能看到的表面;任何被别的物体挡在后面的东西,都会在点云里留下一片空洞,这叫做遮挡。

又称
3D point cloud三维点云三維點雲