基于学习的地板分割与重建及DARPA虚拟机器人挑战赛技术方案
1 基于学习的地板分割与重建算法
1.1 点云输入过滤
在处理点云数据时,首先要进行输入过滤。原始点云可能包含大量的点,例如有 208974 个点的原始点云,过滤后,以 3 厘米的立方体大小进行过滤,点云数量减少到 36242 个点。这一步有助于减少后续处理的数据量,提高处理效率。
1.2 点云分割
算法的第二步是将点云分割成不同的主平面。这里使用 RANSAC(RANdom SAmple Consensus)算法来计算这些平面。该算法通过迭代的方式调整包含最多点的平面的参数,同时为了最小化可能的误差,它还会评估不同点之间的距离,区分出超过限制的点。
数学上,平面可以用方程 $ax + by + cz + d = 0$ 来描述。当获得所有平面的系数后,会分析它们在 3D 环境中的位置。假设相机放置使得深度传感器的 z 轴平行于地板,以相机为参考,如果 $a, c \approx 0$ 且 $b \approx \pm1$,则该平面被认为是水平的,因为对于每个 $(x, z)$,y 是常数,平面的高度为 $y \approx -d/b$。因此,如果 $y < 0$,该平面被标记为地板,否则为天花板。以下是生成平面的系数表格:
| 平面 | a | b | c | d |
| — | — | — | — | — |
| 右墙 | 0.990 | 0.995 | 0.124 | 1.134 |
| 左墙 | 0.995 | -0.030 | 0.093 | -1.204 |
| 屋顶 | -0.047 | 0.999 |
超级会员免费看
订阅专栏 解锁全文
40

被折叠的 条评论
为什么被折叠?



