【问题标题】:Obstacle Avoidance with Point Cloud Library使用点云库避障
【发布时间】:2014-05-15 21:48:42
【问题描述】:

我一直在开发一个系统,旨在检测障碍物(使用 Kinect),然后根据 Kinect 的视角,找到非障碍物的一面。我正在使用点云库,因为我正在处理深度数据。到目前为止,我能够进行地板分割、一些下采样(体素网格、直通)和聚类(潜在障碍)。我工作的最后阶段是找到安全路线(无障碍物的一面)。但我不确定如何获得 Kinect 透视的水平边界(x 轴)来确定场景中障碍物的确切位置。

任何帮助将不胜感激

【问题讨论】:

  • 我不确定这个问题。如果您在相机的参考框架(“Kinect 透视”)中的每个阶段都工作,那么确定障碍物的轴对齐边界框(最小和最大 x、y 和 z 值)就足够了?这个问题似乎表明只考虑了一个参考框架?
  • 如果我得到障碍物的最大和最小边界,我怎么能确定障碍物,例如“它在靠近左边、中间、最右边等”。这就是我想知道的点: 有没有对应场景的参考系统。 0.0.0 是指场景的原点吗?
  • 什么需要避开障碍物?关于那个东西,相机在哪里?您需要定性输出“左近”还是数字?
  • 回答你的最后一个问题:如果我们考虑相机的坐标系,那么原点通常在相机光圈处 - 见en.wikipedia.org/wiki/Pinhole_camera_model
  • 相机应该戴在人的头上。(在头盔上)。我将水平轴除以 5:极左-左-中-右-极右。系统应该找到安全的一面并通知用户。这东西必须实时工作。

标签: kinect point-cloud-library


【解决方案1】:

好的,我找到了解决方案。在这里;

1-)我已将屏幕分成 4 个水平部分。每个部分代表0.75m的间隙,足以让普通人轻松通过。

2-)为了导航用户安全的一侧,我计算了每一侧(左侧或右侧)的点数。

3-) 完成第 2 步后,我知道分数很少的一方。然后,在点数较少的一侧,我执行了一个子控制。例如,如果右侧的点很少,那么我计算右侧子侧的点(靠近右侧,最右侧)。

4-) 最后,如果满足点数标准(如果它包含 100 或更少的点),那么点数少于另一个子面的子面将转置给用户

希望它能帮助其他正在研究它的人。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 1970-01-01
    • 2020-04-08
    • 2020-01-23
    • 1970-01-01
    相关资源
    最近更新 更多