Mercurial Hosting > traffic-intelligence
comparison scripts/process.py @ 1068:e6b791ad7f85
minor
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 16 Jul 2018 22:53:11 -0400 |
parents | 092bd9c7deaf |
children | 9ee5c7636640 |
comparison
equal
deleted
inserted
replaced
1067:092bd9c7deaf | 1068:e6b791ad7f85 |
---|---|
246 # Analyze | 246 # Analyze |
247 ################################# | 247 ################################# |
248 if args.analyze == 'object': | 248 if args.analyze == 'object': |
249 # user speeds, accelerations | 249 # user speeds, accelerations |
250 # aggregation per site | 250 # aggregation per site |
251 if args.eventFilename is None: | |
252 print('Missing output filename (event-filename). Exiting') | |
253 sys.exit(0) | |
251 data = [] # list of observation per site-user with time | 254 data = [] # list of observation per site-user with time |
252 headers = ['site', 'date', 'time', 'user_type'] | 255 headers = ['site', 'date', 'time', 'user_type'] |
253 aggFunctions, tmpheaders = utils.aggregationMethods(args.aggMethods, args.aggCentiles) | 256 aggFunctions, tmpheaders = utils.aggregationMethods(args.aggMethods, args.aggCentiles) |
254 headers.extend(tmpheaders) | 257 headers.extend(tmpheaders) |
255 if args.nProcesses == 1: | 258 if args.nProcesses == 1: |
258 else: | 261 else: |
259 jobs = [pool.apply_async(processing.extractVideoSequenceSpeeds, args = (str(parentPath/vs.getDatabaseFilename()), vs.cameraView.site.name, args.nObjects, vs.startTime, vs.cameraView.cameraType.frameRate, args.minUserDuration, args.aggMethods, args.aggCentiles)) for vs in videoSequences] | 262 jobs = [pool.apply_async(processing.extractVideoSequenceSpeeds, args = (str(parentPath/vs.getDatabaseFilename()), vs.cameraView.site.name, args.nObjects, vs.startTime, vs.cameraView.cameraType.frameRate, args.minUserDuration, args.aggMethods, args.aggCentiles)) for vs in videoSequences] |
260 for job in jobs: | 263 for job in jobs: |
261 data.extend(job.get()) | 264 data.extend(job.get()) |
262 pool.close() | 265 pool.close() |
263 | |
264 data = pd.DataFrame(data, columns = headers) | 266 data = pd.DataFrame(data, columns = headers) |
265 if args.output == 'figure': | 267 if args.output == 'figure': |
266 for name in headers[4:]: | 268 for name in headers[4:]: |
267 plt.ioff() | 269 plt.ioff() |
268 plt.figure() # siteids does not exist | 270 plt.figure() |
269 plt.boxplot([data.loc[data['site']==site.name, name] for site in sites], labels = [site.name for site in sites]) | 271 plt.boxplot([data.loc[data['site']==site.name, name] for site in sites], labels = [site.name for site in sites]) |
270 plt.ylabel(name+' Speeds (km/h)') | 272 plt.ylabel(name+' Speeds (km/h)') |
271 plt.savefig(name.lower()+'-speeds.png', dpi=dpi) | 273 plt.savefig(name.lower()+'-speeds.png', dpi=dpi) |
272 plt.close() | 274 plt.close() |
273 elif args.output == 'event': | 275 elif args.output == 'event': |