Mercurial > hg > nsaunier > traffic-intelligence
comparison python/prediction.py @ 296:586ead03fc00
added option to disable computation of crossing zones
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Mon, 11 Feb 2013 16:01:15 -0500 |
| parents | ba29bd82bd04 |
| children | f65b828e5521 |
comparison
equal
deleted
inserted
replaced
| 295:ba29bd82bd04 | 296:586ead03fc00 |
|---|---|
| 237 title('instant {0}'.format(i)) | 237 title('instant {0}'.format(i)) |
| 238 axis('equal') | 238 axis('equal') |
| 239 | 239 |
| 240 return collisionPoints, crossingZones | 240 return collisionPoints, crossingZones |
| 241 | 241 |
| 242 def computeCrossingsCollisions(obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, debug = False, timeInterval = None): | 242 def computeCrossingsCollisions(obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, computeCZ = False, debug = False, timeInterval = None): |
| 243 '''Computes all crossing and collision points at each common instant for two road users. ''' | 243 '''Computes all crossing and collision points at each common instant for two road users. ''' |
| 244 collisionPoints={} | 244 collisionPoints={} |
| 245 crossingZones={} | 245 crossingZones={} |
| 246 if timeInterval: | 246 if timeInterval: |
| 247 commonTimeInterval = timeInterval | 247 commonTimeInterval = timeInterval |
| 248 else: | 248 else: |
| 249 commonTimeInterval = obj1.commonTimeInterval(obj2) | 249 commonTimeInterval = obj1.commonTimeInterval(obj2) |
| 250 for i in list(commonTimeInterval)[:-1]: # do not look at the 1 last position/velocities, often with errors | 250 for i in list(commonTimeInterval)[:-1]: # do not look at the 1 last position/velocities, often with errors |
| 251 collisionPoints[i], crossingZones[i] = computeCrossingsCollisionsAtInstant(i, obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, debug) | 251 collisionPoints[i], crossingZones[i] = computeCrossingsCollisionsAtInstant(i, obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, computeCZ, debug) |
| 252 | 252 |
| 253 return collisionPoints, crossingZones | 253 return collisionPoints, crossingZones |
| 254 | 254 |
| 255 def computeCollisionProbability(obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, debug = False, timeInterval = None): | 255 def computeCollisionProbability(obj1, obj2, predictionParameters, collisionDistanceThreshold, timeHorizon, debug = False, timeInterval = None): |
| 256 '''Computes only collision probabilities | 256 '''Computes only collision probabilities |
