Mercurial Hosting > traffic-intelligence
changeset 118:b3e3d9f80a6a
added configuration file and parameter structure
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Wed, 10 Aug 2011 18:36:05 -0400 |
parents | fea680fb03ee |
children | 45a426552aaa |
files | c/tracking.cfg include/Parameters.hpp |
diffstat | 2 files changed, 81 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/c/tracking.cfg Wed Aug 10 18:36:05 2011 -0400 @@ -0,0 +1,50 @@ +# video file to process: videoFilenamePrefix +video-filename = carrefour.avi +# original video frame rate: videoFPS +video-fps = 29.97 +# number of digits of precision for all measurements derived from video: measurementPrecision +measurement-precision = 3 +# first frame to process: frame1 +frame1 = 0 +# number of frame to process: nFrames +nframes = -1 +# feature tracking +# maximum number of tracked features (> 500): maxNFeatures +max-nfeatures = 1000 +# quality level of the good features to track: featureQuality +feature-quality = 0.1 +# minimum distance between features: minFeatureDistanceKLT +min-feature-distance = 5 +# size of the search window at each pyramid level: windowSize +window-size = 7 +# maximal pyramid level in the feature tracking algorithm: pyramidLevel +pyramid-level = 5 +# number of frames to compute the feature displacement: nFramesDisplacement +nframes-displacement = 3 +# minimum displacement to keep features: minFeatureDisplacement +min-feature-displacement = 0.05 +# maximum feature acceleration: accelerationBound +acceleration-bound = 3 +# maximum feature deviation: deviationBound +deviation-bound = 0.6 +# number of frames to smooth positions (half window): nFramesSmoothing +nframes-smoothing = 5 +# number of frames to compute velocities: nFramesVelocity +nframes-velocity = 5 +# maximum number of iterations to stop feature tracking: maxNumberTrackingIterations +max-number-iterations = 20 +# minimum error to reach to stop feature tracking: minTrackingError +min-tracking-error = 0.3 +# minimum length of a feature (number of frames) to consider a feature for grouping: minFeatureTime +min-feature-time = 20 +# Min Max similarity parameters (Beymer et al. method) +# connection distance in feature grouping: mmConnectionDistance +mm-connection-distance = 3.75 +# segmentation distance in feature grouping: mmSegmentationDistance +mm-segmentation-distance = 1.5 +# maximum distance between features for grouping: maxDistance +max-distance = 5 +# minimum cosine of the angle between the velocity vectors for grouping: minVelocityCosine +min-velocity-cosine = 0.8 +# minimum average number of features per frame to create a vehicle hypothesis: minNFeaturesPerGroup +min-nfeatures-group = 3
--- a/include/Parameters.hpp Tue Aug 09 15:10:31 2011 -0400 +++ b/include/Parameters.hpp Wed Aug 10 18:36:05 2011 -0400 @@ -1,3 +1,34 @@ // ifdef... /// \todo Class for parameters, with utilities to save and load from configuration files + +struct FeatureTrackingParameters { + /// whether to load saved features, or compute them + bool loadFeatures; + + std::string videoFilename; + int videoFPS; + int measurementPrecision; + int frame1; + int nFrames; + // feature tracking + int maxNFeatures; + float featureQuality; + float minFeatureDistanceKLT; + int windowSize; + int pyramidLevel; + int nFramesDisplacement; + float minFeatureDisplacement; + float accelerationBound; + float deviationBound; + int nFramesSmoothing; + int nFramesVelocity; + int maxNumberTrackingIterations; + float minTrackingError; + int minFeatureTime; + float mmConnectionDistance; + float mmSegmentationDistance; + float maxDistance; + float minVelocityCosine; + int minNFeaturesPerGroup; +};