Skip to content

Training Parameters

ferasha edited this page Sep 23, 2014 · 21 revisions

Basic Parameters

Parameter Required Default Description
--folderTraining FOLDER Yes Folder that contains training images. All images must have the same size. The format of the dataset is described in the README in more detail.
--outputFolder FOLDER Yes Folder where the trained trees are stored to as compressed JSON files.
--trees NUM Yes Number of random decision trees to train.

Dataset Preprocessing

Parameter Required Default Description
--useCIELab BOOL No True Whether to convert images to CIELab color space before training.
--useDepthFilling BOOL No False Whether to do simple depth filling. Simple depth filling reconstructs missing depth information by taking depth of neighboring pixels.

Sampling of Training Images

Parameter Required Default Description
--samplesPerImage NUM Yes Number of pixels to sample per training image.
--subsamplingType TYPE No 'classUniform' Type of sampling. TYPE is either pixelUniform or classUniform. Pixel uniform sampling draws pixel uniformly from an image. Class uniform sampling draws pixels such that the number of pixels per class is equal amongst all classes.
--maxImages NUM No 0 (automatic) Maximum number of images to load for training each tree. Set to 0 if all images should be loaded. Note that every tree in a forest gets a different random sample of images.
--ignoreColor R,G,B No Skip sampling of pixels with this color. Format: R,G,B where 0 <= R,G,B <= 255. This option is typically used to skip sampling of black pixels which indicate void in the ground truth. Multiple occurrences are possible to skip sampling of more than one color.
--useDepthImages BOOL No True Whether depth images are available and should be used in training.

Stopping Criteria

Parameter Required Default Description
--minSampleCount NUM Yes Stop splitting the node if a node falls short of this number of samples (pixels).
--maxDepth NUM Yes Maximum depth of the tree. Training is stopped when this depth is reached.

Feature Candidate Generation

Parameter Required Default Description
--featureCount NUM Yes Number of random feature candidates to sample that are evaluated as best split criterion.
--numThresholds NUM Yes Number of threshold candidates that are selected for the evaluation of the best node split criterion.
--boxRadius NUM Yes Specifies the interval from which to sample the offsets of the rectangular regions: [-NUM, +NUM]. Unit: pixel meter. See the documentation of visual features for more details.
--regionSize NUM Yes Specified the interval from which to sample the width and height of the rectangular regions: [1, NUM]. See the documentation of visual features for more details.
--horizontalFlipping BOOL No False Whether data is augmented with horizontally flipped images.

Performance Parameters

Parameter Required Default Description
--mode MODE No gpu Acceleration mode. MODE is 'gpu' (default), 'cpu' or 'compare'. Compare is only used for debugging purposes. It executes all code on GPU and on CPU and compares the result.
--deviceId NUM No 0 GPU device id that is used for training. Only necessary if acceleration mode is GPU.
--numThreads NUM No Number of CPU cores in your system Number of threads that are used for training.
--imageCacheSize NUM No 0 (automatic) Image cache size on the GPU in Megabytes. 0 means automatic adjustment. Try to adjust this parameter if the GPU is out of memory during training.
--trainTreesInParallel BOOL No False Whether to train multiple trees in the forest sequentially (default) or in parallel. Sequential training reduces memory consumption on the GPU without significantly affecting runtime performance. Parallel training on GPU is currently to be considered as an experimental feature.
--profile BOOL No False Whether to enable profiling output.

Miscellaneous

Parameter Required Default Description
--randomSeed SEED No 4711 Seed for pseudo random number generation.
--verboseTree BOOL No False Whether to store trees in a verbose format. Used for debugging and plotting of random forest details such as the training time per phase and per level. Note that verbose trees are significantly larger on disk.