Beste mede Tweakers,
Ik doe een project op school over zelfrijdende auto's. Ik wil met OpenCV een auto laten rijden met dit progamma in combinatie met de Rasberry Pi op de auto. Die verbonden is met de iMac.
Het probleem waar ik tegen aan loop is zoals u mischien al in de titel kan lezen is dat ik tegen een probleem aanloop met het configureren van de camera. Ik heb heel google al gezocht. Maar kan geen oplossing vinden. Ik hoop dat jullie me kunnen helpen.
Python Code
Alvast Bedankt,
Bas
Ik doe een project op school over zelfrijdende auto's. Ik wil met OpenCV een auto laten rijden met dit progamma in combinatie met de Rasberry Pi op de auto. Die verbonden is met de iMac.
Het probleem waar ik tegen aan loop is zoals u mischien al in de titel kan lezen is dat ik tegen een probleem aanloop met het configureren van de camera. Ik heb heel google al gezocht. Maar kan geen oplossing vinden. Ik hoop dat jullie me kunnen helpen.
Python Code
Foutcode als je het bestand runtimport cv2
import numpy as np
import glob
# termination criteria
criteria = (cv2.TERM_CRITERIA_EPS + cv2.TERM_CRITERIA_MAX_ITER, 30, 0.001)
# 6x9 chess board, prepare object points, like (0,0,0), (1,0,0), (2,0,0) ....,(6,5,0)
object_point = np.zeros((6*9, 3), np.float32)
object_point[:, :2] = np.mgrid[0:9, 0:6].T.reshape(-1, 2)
# 3d point in real world space
object_points = []
# 2d points in image plane
image_points = []
h, w = 0, 0
images = glob.glob('chess_board/*.jpg')
for file_name in images:
image = cv2.imread(file_name)
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
h, w = gray.shape[:2]
# find chess board corners
ret, corners = cv2.findChessboardCorners(gray, (9, 6), None)
# add object points, image points
if ret:
object_points.append(object_point)
cv2.cornerSubPix(gray, corners, (11, 11), (-1, -1), criteria)
image_points.append(corners)
# draw and display the corners
cv2.drawChessboardCorners(image, (9, 6), corners, ret)
cv2.imshow('image', image)
cv2.waitKey(500)
# calibration
retval, cameraMatrix, distCoeffs, rvecs, tvecs = cv2.calibrateCamera(object_points, image_points, (w, h), None, None)
print "camera matrix:\n", cameraMatrix
# pi camera intrinsic parameters
ay = cameraMatrix[1, 1]
u0 = cameraMatrix[0, 2]
v0 = cameraMatrix[1, 2]
print "Ay:", ay
print "u0:", u0
print "v0:", v0
cv2.destroyAllWindows()
Het is voor een cijfer dus dit is best belangrijk voor me dat dit lukt. Ik hoop dat jullie me kunnen helpen.cd '/Users/bas/Desktop/' && '/usr/local/bin/pythonw' '/Users/bas/Desktop/picam_calibratio.py' && echo Exit status: $? && exit 1
imac:~ bas$ cd '/Users/bas/Desktop/' && '/usr/local/bin/pythonw' '/Users/bas/Desktop/picam_calibratio.py' && echo Exit status: $? && exit 1
OpenCV Error: Assertion failed (nimages > 0) in calibrateCamera, file /Users/bas/opencv/modules/calib3d/src/calibration.cpp, line 3357
Traceback (most recent call last):
File "/Users/bas/Desktop/picam_calibratio.py", line 47, in
retval, cameraMatrix, distCoeffs, rvecs, tvecs = cv2.calibrateCamera(object_points, image_points, (w, h), None, None)
cv2.error: /Users/bas/opencv/modules/calib3d/src/calibration.cpp:3357: error: (-215) nimages > 0 in function calibrateCamera
Alvast Bedankt,
Bas