Mercurial Hosting > traffic-intelligence
diff python/storage.py @ 1021:16932cefabc1
work on paths in line with new configurations from tracker
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Tue, 05 Jun 2018 17:02:28 -0400 |
parents | 75601be6019f |
children | b7689372c0ec |
line wrap: on
line diff
--- a/python/storage.py Tue Jun 05 14:33:31 2018 -0400 +++ b/python/storage.py Tue Jun 05 17:02:28 2018 -0400 @@ -1277,10 +1277,12 @@ config = ConfigParser() config.read_file(addSectionHeader(openCheck(filename))) + + parentPath = Path(filename).parent self.sectionHeader = config.sections()[0] - self.pedBikeCarSVMFilename = config.get(self.sectionHeader, 'pbv-svm-filename') - self.bikeCarSVMFilename = config.get(self.sectionHeader, 'bv-svm-filename') + self.pedBikeCarSVMFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'pbv-svm-filename')) + self.bikeCarSVMFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'bv-svm-filename')) self.percentIncreaseCrop = config.getfloat(self.sectionHeader, 'percent-increase-crop') self.minNPixels = config.getint(self.sectionHeader, 'min-npixels-crop') x = config.getint(self.sectionHeader, 'hog-rescale-size') @@ -1345,16 +1347,17 @@ config = ConfigParser(strict=False) config.read_file(addSectionHeader(openCheck(filename))) + parentPath = Path(filename).parent self.sectionHeader = config.sections()[0] # Tracking/display parameters - self.videoFilename = config.get(self.sectionHeader, 'video-filename') - self.databaseFilename = config.get(self.sectionHeader, 'database-filename') - self.homographyFilename = config.get(self.sectionHeader, 'homography-filename') + self.videoFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'video-filename')) + self.databaseFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'database-filename')) + self.homographyFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'homography-filename')) if Path(self.homographyFilename).exists(): self.homography = loadtxt(self.homographyFilename) else: self.homography = None - self.intrinsicCameraFilename = config.get(self.sectionHeader, 'intrinsic-camera-filename') + self.intrinsicCameraFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'intrinsic-camera-filename')) if Path(self.intrinsicCameraFilename).exists(): self.intrinsicCameraMatrix = loadtxt(self.intrinsicCameraFilename) else: @@ -1368,7 +1371,7 @@ self.minFeatureTime = config.getfloat(self.sectionHeader, 'min-feature-time') - self.classifierFilename = config.get(self.sectionHeader, 'classifier-filename') + self.classifierFilename = utils.getRelativeFilename(parentPath, config.get(self.sectionHeader, 'classifier-filename')) # Safety parameters self.maxPredictedSpeed = config.getfloat(self.sectionHeader, 'max-predicted-speed')/3.6/self.videoFrameRate @@ -1398,6 +1401,7 @@ '''Loads information from configuration file then checks what was passed on the command line for override (eg video filename and database filename''' + parentPath = Path(args.configFilename).parent if args.configFilename is not None: # consider there is a configuration file params = ProcessParameters(args.configFilename) videoFilename = params.videoFilename @@ -1421,12 +1425,13 @@ firstFrameNum = 0 # override video and database filenames if present on command line + # if not absolute, make all filenames relative to the location of the configuration filename if args.videoFilename is not None: - videoFilename = args.videoFilename + videoFilename = utils.getRelativeFilename(parentPath, args.videoFilename) else: videoFilename = params.videoFilename if args.databaseFilename is not None: - databaseFilename = args.databaseFilename + databaseFilename = utils.getRelativeFilename(parentPath, args.databaseFilename) else: databaseFilename = params.databaseFilename