【发布时间】:2021-07-08 08:31:22
【问题描述】:
我有一个设置,其中(2D)相机安装在机器人手臂的末端执行器上 - 类似于 OpenCV documentation:
我想校准相机并找到从相机到末端执行器的转换。 我已经使用这个 OpenCV 指南 Camera Calibration 校准了相机,并在棋盘上获得了未失真的图像。
我的问题是找到从相机到末端执行器的转换。我可以看到 OpenCV 有一个函数,calibrateHandEye(),应该可以实现这一点。我已经有了“gripper2base”向量并且缺少“target2cam”向量。这应该基于棋盘格的大小还是我错过了什么? 任何正确方向的指导将不胜感激。
【问题讨论】:
-
恕我直言相机校准是不够的,因为您只修复了相机系统的内部结构。要获得相机的外部方向,您必须知道校准图案(棋盘)的大小。在 OpenCV 文档中提到的paper 中,他们称之为校准块世界坐标系(CW,第 347 页,图 2)。这些应该是
target2cam向量(我还没有使用机械臂)。 -
前段时间我发现了 George Hotz 的一个有趣的代码“live coding SLAM”视频。有很多有用的技巧。看看
-
你是在 ROS 中实现一切吗,在 ROS 中我们可以设置相机的 TF 和 EF。
-
它不是 ROS - 它是一个纯 python 实现
标签: python opencv camera-calibration robotics