深度相机的点到机器人基坐标的变换

眼在手外的情况下,当我从深度相机的镜头里面可看到一个点P的时候,想知道这个想知道这个点在机器人坐标下的坐标是什么样的?通常需要做一个手眼标定。

但是这种方法比较麻烦。因为你需要一个标定版。架在机器人的操作手上。然后通过一系列的拍照得到这个信息。相关的技术方法网上可以找到很多。这次我希望能尝试用另一种方法来标定。

第一步,机器人的正运动学求解。也就是说当我的机器人的各个关节确定下来之后,我可以确定末端的位置这个需要先做dh。描述然后求出一系列的变换矩阵。最后进行正义能学,求解。

第二步,标定相机的内参。将畸变去除掉。这是也是比较常见的方法。不再赘述。当标定好相机的内参之后,我们就可以在相机的坐标系下面将每一个二维的点投射到三维的空间中去。

第三步,在机器人的末端,放置一个可被识别的小物体。比如一个乒乓球。在那图上红色或者绿色。便于分割。 

第四步,让机器人的手臂在空间中任意运动。每运动一个位置,记录下相机所拍到的。彩色头像和深度头像。这样我们从机器人的正运动学得到了机器人坐标下的点的坐标。又从要从相机的拍照里面得到了该点的相机坐标。

最后第五步,,帮我们的一个点。在两个坐标系下面都有了自己的坐标之后可以通过最小二乘法得到两个。坐标之间的转换矩阵。

第五步的算法见下面的代码。

nghiaho12/rigid_transform_3D (github.com)

猜你喜欢

转载自blog.csdn.net/lianbus/article/details/130429405