Quantcast
Channel: OpenCV Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 322

Error with stereocalibrate function in python

$
0
0
Hi all ! I have a problem with the stereocalibrate function in python although calibrateCamera works well with the same structure of data (e.g. list of numpy arrays). The error is a system error : " new style getargs format but argument is not a tuple". My version of python is 3.5 and OpenCV is 3.2.0.dev. I put my code below : import os import numpy as np import cv2 pathDir='/home/amelie/Documents/these/donnees_ucon/calibration_170410/' prefixCamera='cam' imageExtension='png' cameraNumber=3 referenceCamera=1 imageNumber=200 maxImageCalibration=100 xCornerNumber=11 yCornerNumber=7 criteria=(cv2.TERM_CRITERIA_EPS + cv2.TERM_CRITERIA_MAX_ITER, 30, 0.001) objP=np.zeros((xCornerNumber*yCornerNumber,3), np.float32) objP[:,0:2] = np.mgrid[0:xCornerNumber,0:yCornerNumber].T.reshape(xCornerNumber*yCornerNumber,2) objPoints = np.nan*np.ones((cameraNumber,imageNumber,xCornerNumber*yCornerNumber,3)) #3d point in real world space imgPoints = np.nan*np.ones((cameraNumber,imageNumber,xCornerNumber*yCornerNumber,2)) #2d points in image plane. validImages=np.zeros((imageNumber, cameraNumber),np.uint) for camera in range(1,cameraNumber+1): for image in range(1,imageNumber+1): fname=pathDir+prefixCamera+str(camera)+'_'+str(image)+'.'+imageExtension if os.path.isfile(fname): print(prefixCamera+str(camera)+'_'+str(image)+'.'+imageExtension) img = cv2.imread(fname) gray=img[:,:,1] #Study on the green channel of the image # Find the chess board corners found, corners = cv2.findChessboardCorners(gray, (xCornerNumber,yCornerNumber),None) if found == True: corners=corners.reshape(xCornerNumber*yCornerNumber,2) corners2 = cv2.cornerSubPix(gray,corners,(11,11),(-1,-1),criteria) # Draw and display the corners img = cv2.drawChessboardCorners(img, xCornerNumber,yCornerNumber),corners2,found) imgPoints[camera-1,image-1,:,:]=corners2 objPoints[camera-1,image-1,:,:]=objP validImages[image-1,camera-1]=1 hist=np.histogram(gray,255,(0,255)) else: hist=np.histogram(gray,255,(0,255)) objPointsCameras=[] imgPointsCameras=[] projErrorCameras=[] matrixCameras=[] distortCoeffCameras=[] rotVectorsCameras=[] trVectorsCameras=[] validImagesIndex=np.where(np.prod(validImages,axis=1)==1) for camera in range(1,cameraNumber+1): validImgPointsCam=imgPoints[camera-1,validImagesIndex[0],:,:] validObjPointsCam=objPoints[camera-1,validImagesIndex[0],:,:] print(len(validImgPointsCam)) index=0 imgPointsCamList=[] objPointsCamList=[] while index

Viewing all articles
Browse latest Browse all 322

Latest Images

Trending Articles



Latest Images