Mercurial Hosting > traffic-intelligence
diff python/events.py @ 306:93d851d0d21e
bug correction, minor work on indicators
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Tue, 02 Apr 2013 15:27:42 -0400 |
parents | 7e5fb4abd070 |
children | f7ca78a11ea6 |
line wrap: on
line diff
--- a/python/events.py Fri Mar 29 21:20:12 2013 -0400 +++ b/python/events.py Tue Apr 02 15:27:42 2013 -0400 @@ -3,6 +3,7 @@ Interactions, pedestrian crossing...''' import numpy as np +from numpy import arccos import multiprocessing import itertools @@ -50,17 +51,19 @@ deltap = self.movingObject1.getPositionAtInstant(instant)-self.movingObject2.getPositionAtInstant(instant) deltav = self.movingObject2.getVelocityAtInstant(instant)-self.movingObject1.getVelocityAtInstant(instant) collisionCourseDotProducts[instant] = moving.Point.dot(deltap, deltav) - distances[instant] = deltap.norm2() + distances[instant] = deltap.norm2() # todo compute closest feature distance, if features speedDifferentials[instant] = deltav.norm2() if collisionCourseDotProducts[instant] > 0: - collisionCourseCosines[instant] = collisionCourseDotProducts[instant]/(distances[instant]*speedDifferentials[instant]) + collisionCourseCosines[instant] = arccos(collisionCourseDotProducts[instant]/(distances[instant]*speedDifferentials[instant])) + # todo shorten the time intervals based on the interaction definition - # todos change cosines to angles self.addIndicator(indicators.SeverityIndicator('Collision Course Dot Product', collisionCourseDotProducts)) self.addIndicator(indicators.SeverityIndicator('Distance', distances)) self.addIndicator(indicators.SeverityIndicator('Speed Differential', speedDifferentials)) self.addIndicator(indicators.SeverityIndicator('Collision Course Cosine', collisionCourseCosines)) + # todo test for interaction instants and interval, compute indicators + def createInteractions(objects): '''Create all interactions of two co-existing road users