其他分享
首页 > 其他分享> > c-从对象的图像坐标获取世界坐标

c-从对象的图像坐标获取世界坐标

作者:互联网

我一直在关注this文档以使用OpenCV.在下面的公式中,我成功地计算了内部矩阵和外部矩阵(我已使用SolvePnP()过程获得了这些矩阵).由于对象位于地面上,因此我已替换Z =0.然后,我刚刚删除了非本征矩阵的第三列,并将其与本征矩阵相乘以获得3X3投影矩阵.我将其取反,然后将其乘以图像坐标,即su,sv和s.

但是,世界坐标中的所有点似乎相差1毫米或更小,因此我的坐标不太准确.有人知道我可能会出问题吗?

谢谢

解决方法:

摄像机校准可能总是有些不准确,因为对于2个以上的校准图像,而不是对从校准图像获取的方程组得到一个真实的解,您将获得误差最小的解.

cv::solvePnP()也是如此.您可以使用三种方法中的一种来优化给定方程组的许多可能解.

我不明白您是如何从cv::solvePnP()获得本征矩阵和非本征矩阵的,该矩阵用于计算相机坐标系中对象的旋转和平移.

你可以做什么:

>尝试获得更好的内在参数
>为solvePnP like EPNP尝试其他方法或检查RANSAC version

标签:c,opencv,camera-calibration,computer-vision,signal-processing
来源: https://codeday.me/bug/20191010/1885409.html