python opencv库下载_PythonopenCV 2.4.3 cv2.SolvePnP

我是Python、OpenCV和Numpy的新手。我一直试图实现一个Python版本的C++代码,它决定相机相对于已知标记的相对姿态。这段代码使用了cv2.SolvePnP函数,我一直在运行这个函数。我在网上搜索了一下,但发现这个函数除了类似的混乱之外什么也没有。似乎不管我以什么形式传递数据,函数都是不愉快的。我使用的测试用例是:## target image points

tPoints = np.zeros((4,2),dtype=np.float64)

tPoints[0,0] = 384.3331

tPoints[0,1] = 162.23618

tPoints[1,0] = 385.27521

tPoints[1,1] = 135.21503

tPoints[2,0] = 409.36746

tPoints[2,1] = 165.64435

## actual marker point set

mPoints = np.zeros((4,3),dtype=np.float64)

mPoints[0,0] = -88.0

mPoints[0,1] = 88.0

mPoints[0,2] = 0

mPoints[1,0] = -88.0

mPoints[1,1] = -88.0

mPoints[1,2] = 0

mPoints[2,0] = 88.0

mPoints[2,1] = -88.0

mPoints[2,2] = 0

mPoints[3,0] = 88.0

mPoints[3,1] = 88.0

mPoints[3,2] = 0

camMatrix = np.zeros((3,3),dtype=np.float64 )

camMatrix[0][0] = 519.0

camMatrix[0][2] = 320.0

camMatrix[1][1] = 522.0

camMatrix[1][2] = 240.0

camMatrix[2][2] = 1.0

retval, rvec, tvec = cv2.solvePnP(objectPoints = tPoints, imagePoints = mPoints, cameraMatrix = camMatrix, distCoeffs = None)

返回的错误为:cv2.error: C:\slave\WinInstallerMegaPack\src\opencv\modules\calib3d\src\solvepnp.cpp:52: >error: (-215) npoints >= 0 && npoints == std::max(ipoints.checkVector(2, CV_32F), >ipoints.checkVector(2, CV_64F))

帮助执行这个,以及关于我在哪里出错的信息将非常感谢。还有很多东西要学!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值