comparison python/storage.py @ 537:6c264b914846

work on classification parameters
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Wed, 02 Jul 2014 17:43:16 -0400
parents 95276d310972
children 048b43654870 6c0923f1ce68
comparison
equal deleted inserted replaced
536:95276d310972 537:6c264b914846
556 ######################### 556 #########################
557 # Utils to read .ini type text files for configuration, meta data... 557 # Utils to read .ini type text files for configuration, meta data...
558 ######################### 558 #########################
559 559
560 class ProcessParameters: 560 class ProcessParameters:
561 '''Class for all parameters controlling data processing: input, method parameters, etc. for tracking, classification and safety 561 '''Class for all parameters controlling data processing: input,
562 method parameters, etc. for tracking, classification and safety
562 563
563 Note: framerate is already taken into account''' 564 Note: framerate is already taken into account'''
564 565
565 def loadConfigFile(self, filename): 566 def loadConfigFile(self, filename):
566 from ConfigParser import ConfigParser 567 from ConfigParser import ConfigParser
568 from os import path 569 from os import path
569 570
570 config = ConfigParser() 571 config = ConfigParser()
571 config.readfp(FakeSecHead(openCheck(filename))) 572 config.readfp(FakeSecHead(openCheck(filename)))
572 self.sectionHeader = config.sections()[0] 573 self.sectionHeader = config.sections()[0]
574 # Tracking/display parameters
573 self.videoFilename = config.get(self.sectionHeader, 'video-filename') 575 self.videoFilename = config.get(self.sectionHeader, 'video-filename')
574 self.databaseFilename = config.get(self.sectionHeader, 'database-filename') 576 self.databaseFilename = config.get(self.sectionHeader, 'database-filename')
575 self.homographyFilename = config.get(self.sectionHeader, 'homography-filename') 577 self.homographyFilename = config.get(self.sectionHeader, 'homography-filename')
576 if (path.exists(self.homographyFilename)): 578 if (path.exists(self.homographyFilename)):
577 self.homography = loadtxt(self.homographyFilename) 579 self.homography = loadtxt(self.homographyFilename)
587 self.undistortedImageMultiplication = config.getfloat(self.sectionHeader, 'undistorted-size-multiplication') 589 self.undistortedImageMultiplication = config.getfloat(self.sectionHeader, 'undistorted-size-multiplication')
588 self.undistort = config.getboolean(self.sectionHeader, 'undistort') 590 self.undistort = config.getboolean(self.sectionHeader, 'undistort')
589 self.firstFrameNum = config.getint(self.sectionHeader, 'frame1') 591 self.firstFrameNum = config.getint(self.sectionHeader, 'frame1')
590 self.videoFrameRate = config.getfloat(self.sectionHeader, 'video-fps') 592 self.videoFrameRate = config.getfloat(self.sectionHeader, 'video-fps')
591 593
594 # Classification parameters
595
596
597 # Safety parameters
592 self.maxPredictedSpeed = config.getfloat(self.sectionHeader, 'max-predicted-speed')/3.6/self.videoFrameRate 598 self.maxPredictedSpeed = config.getfloat(self.sectionHeader, 'max-predicted-speed')/3.6/self.videoFrameRate
593 self.predictionTimeHorizon = config.getfloat(self.sectionHeader, 'prediction-time-horizon')*self.videoFrameRate 599 self.predictionTimeHorizon = config.getfloat(self.sectionHeader, 'prediction-time-horizon')*self.videoFrameRate
594 self.collisionDistance = config.getfloat(self.sectionHeader, 'collision-distance') 600 self.collisionDistance = config.getfloat(self.sectionHeader, 'collision-distance')
595 self.crossingZones = config.getboolean(self.sectionHeader, 'crossing-zones') 601 self.crossingZones = config.getboolean(self.sectionHeader, 'crossing-zones')
596 self.predictionMethod = config.get(self.sectionHeader, 'prediction-method') 602 self.predictionMethod = config.get(self.sectionHeader, 'prediction-method')