【问题标题】:PCL Correspondence Grouping Recognize Transformation DetailsPCL 对应分组识别转换详细信息
【发布时间】:2019-09-10 15:54:55
【问题描述】:

我遵循了以下教程:

http://pointclouds.org/documentation/tutorials/correspondence_grouping.php

努力估计场景中物体的姿势。我已经成功地让该教程适用于示例点云以及我自己的点云(在调整了一些参数之后)。

编写教程的人有以下话要说:

识别方法返回一个 Eigen::Matrix4f 向量,表示场景中找到的每个模型实例的变换(旋转 + 平移)(通过绝对方向获得)

我得到了这个转换矩阵,但我不明白这些值是指什么。

例如,同一个教程页面有以下输出:

    |  0.969 -0.120  0.217 |
R = |  0.117  0.993  0.026 |
    | -0.218 -0.000  0.976 |
t = < -0.159, 0.212, -0.042 >

虽然我知道这些值代表场景中每个模型的旋转和平移 - 这些值用作参考点是什么以及如何使用它们?

例如,如果我想在已识别模型之上放置另一个模型,是否可以使用这些值来本地化已识别模型?或者,如果我有一个想要与模型交互的机器人,机器人是否可以使用这些值来推断对象在场景中的位置?

对应分组方法需要两个参数——一个场景和一个模型。我目前的假设是算法说“我在场景中找到了这个模型,现在我需要对模型应用什么转换以使其与场景对齐?”。由于模型是从场景中提取出来的,算法在场景中找到模型后,就决定了需要应用什么变换。但由于模型是直接从场景中提取的,因此需要应用的转换很少。

谁能提供一些关于这些价值观的见解?

【问题讨论】:

    标签: point-cloud-library point-clouds


    【解决方案1】:

    好的,我相信我已经验证了我的理论。我拍摄了第二张场景图像,模型向左移动了大约 1 米。我提取了该模型并将其用作对应分组的输入。平移矩阵在 X 轴上平移对象的幅度明显大于原始对象。这向我证实了正在打印的转换矩阵是从提供的对象到场景中识别的对象实例的转换。

    【讨论】:

      猜你喜欢
      • 2011-12-21
      • 1970-01-01
      • 2010-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多