def cal_fromcorners(self, good):
"""
:param good: Good corner positions and boards
:type good: [(corners, ChessboardInfo)]
"""
boards = [ b for (_, b) in good ]
ipts = [ points for (points, _) in good ]
opts = self.mk_object_points(boards)
self.intrinsics = numpy.zeros((3, 3), numpy.float64)
if self.calib_flags & cv2.CALIB_RATIONAL_MODEL:
self.distortion = numpy.zeros((8, 1), numpy.float64) # rational polynomial
else:
self.distortion = numpy.zeros((5, 1), numpy.float64) # plumb bob
# If FIX_ASPECT_RATIO flag set, enforce focal lengths have 1/1 ratio
self.intrinsics[0,0] = 1.0
self.intrinsics[1,1] = 1.0
cv2.calibrateCamera(
opts, ipts,
self.size, self.intrinsics,
self.distortion,
flags = self.calib_flags)
# R is identity matrix for monocular calibration
self.R = numpy.eye(3, dtype=numpy.float64)
self.P = numpy.zeros((3, 4), dtype=numpy.float64)
self.set_alpha(0.0)
calibrator.py 文件源码
python
阅读 28
收藏 0
点赞 0
评论 0
评论列表
文章目录