Mercurial > hg > nsaunier > 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) |
