使用python进行cv2.camera校准

2024-09-30 18:30:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试学习如何使用openCV和python进行3D和立体相机校准。使用8x6棋盘(7x5内角)的3个摄像头视图,我可以让cv.calibrateCamera()正常工作,但当我使用cv2时,我完全卡住了。 其中一个步骤是找到棋盘的角。而cv.findChessboardCorners()以点列表的形式返回角点,而cv2使用numpy数组,并以(35,1,2)numpy数组的形式返回这些点。calibrateCamera()的参数是object_pointsimage_points和{}。我在(3,35,3)numpy数组中提供对象点,在(3,35,2)numpy数组中提供图像点。图像大小为(1632, 1224)。谁能告诉我出什么问题了吗?我得到的错误不是很有用:

Traceback (most recent call last):
  File "H:/pyCV/locv_book/ch11/calCamera2a.py", line 46, in <module>
  cv2.calibrateCamera(opts,ipts,size)
error: ..\..\..\src\opencv\modules\calib3d\src\calibration.cpp:3173: error: (-215) ni >= 0

Tags: 图像srcnumpy棋盘error数组cv2opencv