Mercurial Hosting > traffic-intelligence
diff trafficintelligence/processing.py @ 1028:cc5cb04b04b0
major update using the trafficintelligence package name and install through pip
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Fri, 15 Jun 2018 11:19:10 -0400 |
parents | python/processing.py@933670761a57 |
children | c6cf75a2ed08 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trafficintelligence/processing.py Fri Jun 15 11:19:10 2018 -0400 @@ -0,0 +1,20 @@ +#! /usr/bin/env python +'''Algorithms to process trajectories and moving objects''' + +import moving + +import numpy as np + + +def extractSpeeds(objects, zone): + speeds = {} + objectsNotInZone = [] + import matplotlib.nxutils as nx + for o in objects: + inPolygon = nx.points_inside_poly(o.getPositions().asArray().T, zone.T) + if inPolygon.any(): + objspeeds = [o.getVelocityAt(i).norm2() for i in range(int(o.length()-1)) if inPolygon[i]] + speeds[o.num] = np.mean(objspeeds) # km/h + else: + objectsNotInZone.append(o) + return speeds, objectsNotInZone