两个对象之间具有相同的坐标系C#

问题描述 投票:0回答:1

我正在使用 C# 编写代码。我使用 Kinect SDK V2 和机器人,例如我的机器人模型是 IRB 1600。当人类从相机进行检测时,我会从 Kinect 传感器获取人体点云,并从机器人获取一个位置(X-Y-Z 位置)每次我问它时,它都会告诉我机器人在哪里。

我的问题是相机和机器人有不同的坐标系,传感器有相机的发送器,机器人有他的底座。我想在它们之间创建相同的坐标系,以计算人类和机器人之间的距离。有什么方法可以做到这一点吗?教程?

c# robotics coordinate-systems kinect-sdk
1个回答
0
投票

我认为你只需要进行校准...

在某个地方你需要说你的3D坐标系从(0,0,0)开始,然后基于这个坐标系重新转换所有位置。实施起来应该不难。

尽管如此,如果您拥有两个传感器的 3D 位置,则只需进行 3D 简单计算即可得出距离。

距离=sqrt(X2-X1)^2+(Y2-Y1)^2+(Z2-Z1)^2)

© www.soinside.com 2019 - 2024. All rights reserved.