如何从深度相机获取世界系统中的深度坐标

Posted

技术标签:

【中文标题】如何从深度相机获取世界系统中的深度坐标【英文标题】:How to get the depth coordinate in the world system from the depth camera 【发布时间】:2020-07-17 17:47:08 【问题描述】:

深度相机:intel realsense D415 语言:蟒蛇

我正在尝试获取世界坐标系中深度点的 z 坐标。我想知道是否有嵌入式方法或者是否有办法获得它?

提前谢谢你!

【问题讨论】:

您的问题中的“世界”是什么?相机物理测量场景中点相对于传感器的位置。如果你想用其他坐标系来表示它们,你需要告诉它是什么。 感谢您的回复!我要做的主要事情是将参考对象到传感器的距离的深度转换为 z 坐标,并以放置对象的表格作为参考。 (台面z坐标为0) 【参考方案1】:

听起来您想在场景中使用单独且固定的对象作为参考,例如支持您感兴趣的对象的表格。

找到桌子的 3D 平面通常很容易:您可以使用一些稳健的拟合算法以及合理的先验(例如,最大平面,或以已知方式相对于相机近似定向的最大平面)。

然而,找到一个平面只会给你一个与其正交的“z”方向,加上一个平移向量到平面上的一个点,这可能不是一个理想的点。所以你需要一种方法来识别点云中一些理想的“原点”。这通常使用已知形状的物体(也称为“校准夹具”或“钻机”)来完成,这些物体可以很容易地识别并精确地适合模型。例如,一个台球(拟合一个球体,找到中心,偏移半径到与平面的接触点),或一个圆锥体(找到底座的中心)等。请注意,使用圆锥形夹具允许一次找到平面和点。

【讨论】:

以上是关于如何从深度相机获取世界系统中的深度坐标的主要内容,如果未能解决你的问题,请参考以下文章

深度相机生成点云数据的原理

unity 从深度纹理重建世界坐标

从相机获取每个像素的深度

Intel Realsense D435 python 从深度相机realsense生成pcl点云

OpenCV - 立体视觉的倾斜相机和三角测量地标

立体相机如何创建好的深度图?