Mercurial Hosting > traffic-intelligence
comparison scripts/compute-homography.py @ 895:739acd338cc0
added script to extract camera info from tacal file by Lund University (T analyst)
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 01 Jun 2017 14:54:11 -0400 |
parents | 1fdafa9f6bf4 |
children | f5a49b603e8b |
comparison
equal
deleted
inserted
replaced
894:0c1fed9e8862 | 895:739acd338cc0 |
---|---|
81 if args.pointCorrespondencesFilename is not None: | 81 if args.pointCorrespondencesFilename is not None: |
82 worldPts, videoPts = cvutils.loadPointCorrespondences(args.pointCorrespondencesFilename) | 82 worldPts, videoPts = cvutils.loadPointCorrespondences(args.pointCorrespondencesFilename) |
83 homography, mask = cv2.findHomography(videoPts, worldPts) # method=0, ransacReprojThreshold=3 | 83 homography, mask = cv2.findHomography(videoPts, worldPts) # method=0, ransacReprojThreshold=3 |
84 elif args.tsaiCameraFilename is not None: # hack using PDTV | 84 elif args.tsaiCameraFilename is not None: # hack using PDTV |
85 from pdtv import TsaiCamera | 85 from pdtv import TsaiCamera |
86 f = storage.openCheck(args.tsaiCameraFilename, quitting = True) | 86 cameraData = storage.loadPinholeCameraModel(args.tsaiCameraFilename) |
87 content = storage.getLines(f) | |
88 cameraData = {} | |
89 for l in content: | |
90 tmp = l.split(':') | |
91 cameraData[tmp[0]] = float(tmp[1].strip().replace(',','.')) | |
92 camera = TsaiCamera(Cx=cameraData['Cx'], Cy=cameraData['Cy'], Sx=cameraData['Sx'], Tx=cameraData['Tx'], Ty=cameraData['Ty'], Tz=cameraData['Tz'], dx=cameraData['dx'], dy=cameraData['dy'], f=cameraData['f'], k=cameraData['k'], r1=cameraData['r1'], r2=cameraData['r2'], r3=cameraData['r3'], r4=cameraData['r4'], r5=cameraData['r5'], r6=cameraData['r6'], r7=cameraData['r7'], r8=cameraData['r8'], r9=cameraData['r9']) | 87 camera = TsaiCamera(Cx=cameraData['Cx'], Cy=cameraData['Cy'], Sx=cameraData['Sx'], Tx=cameraData['Tx'], Ty=cameraData['Ty'], Tz=cameraData['Tz'], dx=cameraData['dx'], dy=cameraData['dy'], f=cameraData['f'], k=cameraData['k'], r1=cameraData['r1'], r2=cameraData['r2'], r3=cameraData['r3'], r4=cameraData['r4'], r5=cameraData['r5'], r6=cameraData['r6'], r7=cameraData['r7'], r8=cameraData['r8'], r9=cameraData['r9']) |
93 homography = cvutils.computeHomographyFromPDTV(camera) | 88 homography = cvutils.computeHomographyFromPDTV(camera) |
94 elif args.videoFrameFilename is not None and args.worldFilename is not None: | 89 elif args.videoFrameFilename is not None and args.worldFilename is not None: |
95 worldImg = plt.imread(args.worldFilename) | 90 worldImg = plt.imread(args.worldFilename) |
96 videoImg = plt.imread(args.videoFrameFilename) | 91 videoImg = plt.imread(args.videoFrameFilename) |