Mercurial Hosting > traffic-intelligence
comparison scripts/classify-objects.py @ 947:053484e08947
found a more elegant solution, making a copy of the list to iterate
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Fri, 21 Jul 2017 11:31:42 -0400 |
parents | e5970606066f |
children | 64259b9885bf |
comparison
equal
deleted
inserted
replaced
946:e5970606066f | 947:053484e08947 |
---|---|
96 if ret: | 96 if ret: |
97 if frameNum%50 == 0: | 97 if frameNum%50 == 0: |
98 print('frame number: {}'.format(frameNum)) | 98 print('frame number: {}'.format(frameNum)) |
99 #if undistort: | 99 #if undistort: |
100 # img = cv2.remap(img, map1, map2, interpolation=cv2.INTER_LINEAR) | 100 # img = cv2.remap(img, map1, map2, interpolation=cv2.INTER_LINEAR) |
101 for obj in objects: | 101 for obj in objects[:]: |
102 if obj.getFirstInstant() <= frameNum: # if images are skipped | 102 if obj.getFirstInstant() <= frameNum: # if images are skipped |
103 obj.initClassifyUserTypeHoGSVM(speedAggregationFunc, pedBikeCarSVM, bikeCarSVM, classifierParams.maxPedestrianSpeed, classifierParams.maxCyclistSpeed, classifierParams.nFramesIgnoreAtEnds, invHomography, intrinsicCameraMatrix, distortionCoefficients) | 103 obj.initClassifyUserTypeHoGSVM(speedAggregationFunc, pedBikeCarSVM, bikeCarSVM, classifierParams.maxPedestrianSpeed, classifierParams.maxCyclistSpeed, classifierParams.nFramesIgnoreAtEnds, invHomography, intrinsicCameraMatrix, distortionCoefficients) |
104 currentObjects.append(obj) | 104 currentObjects.append(obj) |
105 objects[:] = [obj for obj in objects if obj.getFirstInstant() > frameNum] | 105 objects.remove(obj) |
106 | 106 |
107 for obj in currentObjects: | 107 for obj in currentObjects[:]: |
108 if obj.getLastInstant() <= frameNum: # if images are skipped | 108 if obj.getLastInstant() <= frameNum: # if images are skipped |
109 obj.classifyUserTypeHoGSVM(minSpeedEquiprobable = classifierParams.minSpeedEquiprobable, speedProbabilities = speedProbabilities, maxPercentUnknown = classifierParams.maxPercentUnknown) | 109 obj.classifyUserTypeHoGSVM(minSpeedEquiprobable = classifierParams.minSpeedEquiprobable, speedProbabilities = speedProbabilities, maxPercentUnknown = classifierParams.maxPercentUnknown) |
110 pastObjects.append(obj) | 110 pastObjects.append(obj) |
111 currentObjects.remove(obj) | |
111 else: | 112 else: |
112 obj.classifyUserTypeHoGSVMAtInstant(img, frameNum, width, height, classifierParams.percentIncreaseCrop, classifierParams.percentIncreaseCrop, classifierParams.minNPixels, classifierParams.hogRescaleSize, classifierParams.hogNOrientations, classifierParams.hogNPixelsPerCell, classifierParams.hogNCellsPerBlock, classifierParams.hogBlockNorm) | 113 obj.classifyUserTypeHoGSVMAtInstant(img, frameNum, width, height, classifierParams.percentIncreaseCrop, classifierParams.percentIncreaseCrop, classifierParams.minNPixels, classifierParams.hogRescaleSize, classifierParams.hogNOrientations, classifierParams.hogNPixelsPerCell, classifierParams.hogNCellsPerBlock, classifierParams.hogBlockNorm) |
113 currentObjects[:] = [obj for obj in objects if obj.getLastInstant() > frameNum] | |
114 frameNum += 1 | 114 frameNum += 1 |
115 | 115 |
116 for obj in currentObjects: | 116 for obj in currentObjects: |
117 obj.classifyUserTypeHoGSVM(minSpeedEquiprobable = classifierParams.minSpeedEquiprobable, speedProbabilities = speedProbabilities, maxPercentUnknown = classifierParams.maxPercentUnknown) | 117 obj.classifyUserTypeHoGSVM(minSpeedEquiprobable = classifierParams.minSpeedEquiprobable, speedProbabilities = speedProbabilities, maxPercentUnknown = classifierParams.maxPercentUnknown) |
118 pastObjects.append(obj) | 118 pastObjects.append(obj) |