Mercurial Hosting > traffic-intelligence
changeset 826:8b74a5176549
explicitly computed the probabilities for predicted trajectories
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 27 Jun 2016 23:27:05 -0400 |
parents | 28526917a583 |
children | f6d5da619307 |
files | python/prediction.py |
diffstat | 1 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
diff -r 28526917a583 -r 8b74a5176549 python/prediction.py --- a/python/prediction.py Mon Jun 27 16:19:34 2016 -0400 +++ b/python/prediction.py Mon Jun 27 23:27:05 2016 -0400 @@ -391,8 +391,7 @@ PredictionParameters.__init__(self, 'constant velocity', maxSpeed) def generatePredictedTrajectories(self, obj, instant): - return [PredictedTrajectoryConstant(obj.getPositionAtInstant(instant), obj.getVelocityAtInstant(instant), - maxSpeed = self.maxSpeed)] + return [PredictedTrajectoryConstant(obj.getPositionAtInstant(instant), obj.getVelocityAtInstant(instant), maxSpeed = self.maxSpeed)] class NormalAdaptationPredictionParameters(PredictionParameters): def __init__(self, maxSpeed, nPredictedTrajectories, accelerationDistribution, steeringDistribution, useFeatures = False): @@ -423,12 +422,14 @@ else: positions = [obj.getPositionAtInstant(instant)] velocities = [obj.getVelocityAtInstant(instant)] + probability = 1./float(len(positions)*self.nPredictedTrajectories) for i in xrange(self.nPredictedTrajectories): for initialPosition,initialVelocity in zip(positions, velocities): predictedTrajectories.append(PredictedTrajectoryRandomControl(initialPosition, initialVelocity, self.accelerationDistribution, self.steeringDistribution, + probability, maxSpeed = self.maxSpeed)) return predictedTrajectories @@ -444,10 +445,9 @@ features = [f for f in obj.getFeatures() if f.existsAtInstant(instant)] positions = [f.getPositionAtInstant(instant) for f in features] velocities = [f.getVelocityAtInstant(instant) for f in features] - #for i in xrange(self.nPredictedTrajectories): + probability = 1./float(len(positions)) for initialPosition,initialVelocity in zip(positions, velocities): - predictedTrajectories.append(PredictedTrajectoryConstant(initialPosition, initialVelocity, - maxSpeed = self.maxSpeed)) + predictedTrajectories.append(PredictedTrajectoryConstant(initialPosition, initialVelocity, probability = probability, maxSpeed = self.maxSpeed)) return predictedTrajectories else: print('Object {} has no features'.format(obj.getNum())) @@ -480,13 +480,15 @@ else: positions = [obj.getPositionAtInstant(instant)] velocities = [obj.getVelocityAtInstant(instant)] + probability = 1./float(self.nPredictedTrajectories) for i in xrange(self.nPredictedTrajectories): for initialPosition,initialVelocity in zip(positions, velocities): predictedTrajectories.append(PredictedTrajectoryConstant(initialPosition, initialVelocity, moving.NormAngle(self.accelerationDistribution(), self.steeringDistribution()), - maxSpeed = self.maxSpeed)) + probability, + self.maxSpeed)) return predictedTrajectories