Mercurial Hosting > traffic-intelligence
comparison scripts/play-synced-videos.py @ 833:8d1dd771aeb3
updated for play synced
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 30 Jun 2016 14:01:13 -0400 |
parents | 2a5856961933 |
children | 75530d8c0090 |
comparison
equal
deleted
inserted
replaced
832:02f2809c2f66 | 833:8d1dd771aeb3 |
---|---|
1 #! /usr/bin/env python | 1 #! /usr/bin/env python |
2 | 2 |
3 import sys, argparse, os.path | 3 import sys, argparse, os.path |
4 import cvutils, utils | 4 import cvutils, utils |
5 from metadata import createDatabase, Site, VideoSequence | 5 from metadata import createDatabase, Site, CameraView, VideoSequence |
6 from datetime import datetime, timedelta | 6 from datetime import datetime, timedelta |
7 | 7 |
8 parser = argparse.ArgumentParser(description='The program displays several views of the same site synchronously.') | 8 parser = argparse.ArgumentParser(description='The program displays several views of the same site synchronously.') |
9 parser.add_argument('-i', dest = 'metadataFilename', help = 'name of the metadata file', required = True) | 9 parser.add_argument('-i', dest = 'metadataFilename', help = 'name of the metadata file', required = True) |
10 parser.add_argument('-n', dest = 'siteId', help = 'site id or site name', required = True) | 10 parser.add_argument('-n', dest = 'siteId', help = 'site id or site name', required = True) |
25 site = site[0] | 25 site = site[0] |
26 | 26 |
27 dirname = os.path.split(args.metadataFilename)[0] | 27 dirname = os.path.split(args.metadataFilename)[0] |
28 | 28 |
29 startTime = datetime.strptime(args.startTime, utils.datetimeFormat) | 29 startTime = datetime.strptime(args.startTime, utils.datetimeFormat) |
30 videoSequences = session.query(VideoSequence).filter(VideoSequence.site == site).filter(VideoSequence.startTime <= startTime).all() | 30 cameraViews = session.query(CameraView).filter(CameraView.site == site) |
31 videoSequences = [v for v in videoSequences if v.containsInstant(startTime)] | 31 videoSequences = session.query(VideoSequence).filter(VideoSequence.name != None).filter(VideoSequence.startTime <= startTime).all() |
32 #videoSequences = session.query(VideoSequence).filter(VideoSequence.site == site).filter(VideoSequence.startTime <= startTime).all() | |
33 videoSequences = [v for v in videoSequences if v.containsInstant(startTime) and v.cameraView in cameraViews] | |
32 filenames = [dirname+os.path.sep+v.getVideoSequenceFilename() for v in videoSequences] | 34 filenames = [dirname+os.path.sep+v.getVideoSequenceFilename() for v in videoSequences] |
33 firstFrameNums = [v.getFrameNum(startTime) for v in videoSequences] | 35 firstFrameNums = [v.getFrameNum(startTime) for v in videoSequences] |
34 | 36 |
35 cvutils.playVideo(filenames, [v.cameraView.description for v in videoSequences], firstFrameNums, args.frameRate, rescale = args.rescale, step = args.step) | 37 cvutils.playVideo(filenames, [v.cameraView.description for v in videoSequences], firstFrameNums, args.frameRate, rescale = args.rescale, step = args.step) |