小编ras*_*ssi的帖子

OpenCV Python solvePnP 的 EPnP 实现与官方 MATLAB EPnP 实现产生的输出不同

这些天我正在研究用于计算机视觉的 solvePnP 算法。我在这里找到了 MATLAB 中的官方 EPnP 算法https://github.com/cvlab-epfl/EPnP

我正在通过 Python API 将官方实现的结果与 OpenCV 版本进行比较。

用这两种方法运行一个简单的例子,给我不同的 R 矩阵和 t 向量。t 向量不同,并且 R 的上面两行的符号被翻转(参见下面代码示例下的输出)。我在这里缺少什么?

谢谢!

示例 Python 代码:

import numpy as np
import cv2

cam_in = [[2445.72, 0.0, 819.29],
          [0.0, 2442.39, 660.13],
          [0.0, 0.0, 1.0]]
          
# 3p model from opencv
objPts = [[  0. ,   0. ,   0. ],
          [ 82.5,   0. ,   0. ],
          [165. ,   0. ,   0. ],
          [247.5,   0. ,   0. ],
          [ 55. ,  27.5,   0. …
Run Code Online (Sandbox Code Playgroud)

python opencv computer-vision opencv-solvepnp

5
推荐指数
0
解决办法
257
查看次数

标签 统计

computer-vision ×1

opencv ×1

opencv-solvepnp ×1

python ×1