Mercurial > hg > nsaunier > traffic-intelligence
comparison scripts/classify-objects.py @ 993:e8eabef7857c
update to OpenCV3 for python
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Wed, 16 May 2018 21:06:52 -0400 |
| parents | 64259b9885bf |
| children | 933670761a57 |
comparison
equal
deleted
inserted
replaced
| 992:2cd1ce245024 | 993:e8eabef7857c |
|---|---|
| 33 speedAggregationFunc = lambda speeds: np.percentile(speeds, args.speedAggregationQuantile) | 33 speedAggregationFunc = lambda speeds: np.percentile(speeds, args.speedAggregationQuantile) |
| 34 else: | 34 else: |
| 35 print('Unknown speed aggregation method: {}. Exiting'.format(classifierParams.speedAggregationMethod)) | 35 print('Unknown speed aggregation method: {}. Exiting'.format(classifierParams.speedAggregationMethod)) |
| 36 sys.exit() | 36 sys.exit() |
| 37 | 37 |
| 38 pedBikeCarSVM = ml.SVM() | 38 pedBikeCarSVM = ml.SVM_load(classifierParams.pedBikeCarSVMFilename) |
| 39 pedBikeCarSVM.load(classifierParams.pedBikeCarSVMFilename) | 39 bikeCarSVM = ml.SVM_load(classifierParams.bikeCarSVMFilename) |
| 40 bikeCarSVM = ml.SVM() | |
| 41 bikeCarSVM.load(classifierParams.bikeCarSVMFilename) | |
| 42 | 40 |
| 43 # log logistic for ped and bik otherwise ((pedBeta/pedAlfa)*((sMean/pedAlfa)**(pedBeta-1)))/((1+(sMean/pedAlfa)**pedBeta)**2.) | 41 # log logistic for ped and bik otherwise ((pedBeta/pedAlfa)*((sMean/pedAlfa)**(pedBeta-1)))/((1+(sMean/pedAlfa)**pedBeta)**2.) |
| 44 carNorm = norm(classifierParams.meanVehicleSpeed, classifierParams.stdVehicleSpeed) | 42 carNorm = norm(classifierParams.meanVehicleSpeed, classifierParams.stdVehicleSpeed) |
| 45 pedNorm = norm(classifierParams.meanPedestrianSpeed, classifierParams.stdPedestrianSpeed) | 43 pedNorm = norm(classifierParams.meanPedestrianSpeed, classifierParams.stdPedestrianSpeed) |
| 46 # numpy lognorm shape, loc, scale: shape for numpy is scale (std of the normal) and scale for numpy is exp(location) (loc=mean of the normal) | 44 # numpy lognorm shape, loc, scale: shape for numpy is scale (std of the normal) and scale for numpy is exp(location) (loc=mean of the normal) |
| 70 timeInterval = moving.TimeInterval.unionIntervals([obj.getTimeInterval() for obj in objects]) | 68 timeInterval = moving.TimeInterval.unionIntervals([obj.getTimeInterval() for obj in objects]) |
| 71 if args.startFrame0: | 69 if args.startFrame0: |
| 72 timeInterval.first = 0 | 70 timeInterval.first = 0 |
| 73 | 71 |
| 74 capture = cv2.VideoCapture(videoFilename) | 72 capture = cv2.VideoCapture(videoFilename) |
| 75 width = int(capture.get(cv2.cv.CV_CAP_PROP_FRAME_WIDTH)) | 73 width = int(capture.get(cv2.CAP_PROP_FRAME_WIDTH)) |
| 76 height = int(capture.get(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT)) | 74 height = int(capture.get(cv2.CAP_PROP_FRAME_HEIGHT)) |
| 77 | 75 |
| 78 #if undistort: # setup undistortion | 76 #if undistort: # setup undistortion |
| 79 # [map1, map2] = cvutils.computeUndistortMaps(width, height, undistortedImageMultiplication, intrinsicCameraMatrix, distortionCoefficients) | 77 # [map1, map2] = cvutils.computeUndistortMaps(width, height, undistortedImageMultiplication, intrinsicCameraMatrix, distortionCoefficients) |
| 80 # height, width = map1.shape | 78 # height, width = map1.shape |
| 81 # newImgSize = (int(round(width*undistortedImageMultiplication)), int(round(height*undistortedImageMultiplication))) | 79 # newImgSize = (int(round(width*undistortedImageMultiplication)), int(round(height*undistortedImageMultiplication))) |
| 87 currentObjects = [] | 85 currentObjects = [] |
| 88 if capture.isOpened(): | 86 if capture.isOpened(): |
| 89 ret = True | 87 ret = True |
| 90 frameNum = timeInterval.first | 88 frameNum = timeInterval.first |
| 91 if not args.startFrame0: | 89 if not args.startFrame0: |
| 92 capture.set(cv2.cv.CV_CAP_PROP_POS_FRAMES, frameNum) | 90 capture.set(cv2.CAP_PROP_POS_FRAMES, frameNum) |
| 93 lastFrameNum = timeInterval.last | 91 lastFrameNum = timeInterval.last |
| 94 | 92 |
| 95 while ret and frameNum <= lastFrameNum: | 93 while ret and frameNum <= lastFrameNum: |
| 96 ret, img = capture.read() | 94 ret, img = capture.read() |
| 97 if ret: | 95 if ret: |
