Mercurial Hosting > 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 |