Mercurial > hg > nsaunier > traffic-intelligence
comparison trafficintelligence/events.py @ 1150:14140b55e580
corrected issue with motion pattern for motion prediction for safety analysis (to few matches)
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Thu, 28 May 2020 01:03:45 -0400 |
| parents | 392db62ea1da |
| children | 658f87232536 |
comparison
equal
deleted
inserted
replaced
| 1149:392db62ea1da | 1150:14140b55e580 |
|---|---|
| 191 for instant in self.timeInterval: | 191 for instant in self.timeInterval: |
| 192 deltap = self.roadUser1.getPositionAtInstant(instant)-self.roadUser2.getPositionAtInstant(instant) | 192 deltap = self.roadUser1.getPositionAtInstant(instant)-self.roadUser2.getPositionAtInstant(instant) |
| 193 v1 = self.roadUser1.getVelocityAtInstant(instant) | 193 v1 = self.roadUser1.getVelocityAtInstant(instant) |
| 194 v2 = self.roadUser2.getVelocityAtInstant(instant) | 194 v2 = self.roadUser2.getVelocityAtInstant(instant) |
| 195 deltav = v2-v1 | 195 deltav = v2-v1 |
| 196 velocityAngles[instant] = np.arccos(moving.Point.dot(v1, v2)/(v1.norm2()*v2.norm2())) | 196 v1Norm = v1.norm2() |
| 197 v2Norm = v2.norm2() | |
| 198 if v1Norm != 0. and v2Norm != 0.: | |
| 199 velocityAngles[instant] = np.arccos(moving.Point.dot(v1, v2)/(v1Norm*v2Norm)) | |
| 197 collisionCourseDotProducts[instant] = moving.Point.dot(deltap, deltav) | 200 collisionCourseDotProducts[instant] = moving.Point.dot(deltap, deltav) |
| 198 distances[instant] = deltap.norm2() | 201 distances[instant] = deltap.norm2() |
| 199 speedDifferentials[instant] = deltav.norm2() | 202 speedDifferentials[instant] = deltav.norm2() |
| 200 if collisionCourseDotProducts[instant] > 0: | 203 if collisionCourseDotProducts[instant] > 0: |
| 201 interactionInstants.append(instant) | 204 interactionInstants.append(instant) |
