我正在尝试从单个摄像头的图像投影中获取物体的三维坐标和方向,使用openCV。我已经阅读了相关资料并得出以下步骤:校准图像以获得旋转矩阵、平移矩阵和矩阵k。我在此处找到了很多使用棋盘进行校准的例子。但是我的问题是:一旦这些参数被获取,如何获取任何其他物体的位置?我没有找到任何完整的例子,只有我不太理解的数学解释。例如这个示例,但是需要使用这些矩阵来精确地获取方向。我已经有了分割好的图像,并且可以确定角点的位置。我想要实现的效果类似于这个视频。谢谢。
你需要了解对象模型在其坐标系中的位置,才能通过解决透视三点问题(即使用OpenCV中包含的cv::solvePnP或cv::solvePnPRansac函数)来检索对象的位置。请尝试研究视觉基准标记和这些特定类型参考对象的姿态估计。标记是用于执行此操作的对象。这是从原始PnP问题开始的很好的简化,你可以更好地理解发生了什么。在了解底层发生的情况后,你可以对任何拥有模型的对象进行操作。