Regression refactoring : Train images regression
Introduce a new application for training a regression image from triplets of features image, predictor images and vector data containing polygons
TrainRegression is now deprecated (replaced by
This MR is part of the regression refactoring described in issue #1799.
TrainImagesRegression application is a composite application that takes as input :
io.il: a list of input features images
io.ip: a list of input predictor images
io.vd: a list of vector data files containing polygons that will be used to generate training samples (optional, the image extent is used if it is not provided)
io.valid: a list of vector data files contain polygons that will be used to generate validation samples (optional, the training samples will be split to create the validation set if it is not provided)
sample.nt: the number of training samples (if not set, all available samples are used)
sample.nv: the number of validation samples (if not set, all available samples are used)
sample.ratio: ratio between training and validation sample used to split the training data if no validation data is provided
io.imstats: image statistics used to normalize the training/validation samples.
classifier: the regression algorithm to be used (+ associated algorithm parameters)
and outputs :
io.out: a regression model
io.mse: the mse computed using the regression model on the validation set (mse between ground truth extracted from the predictor images and the predicted values), if no validation data is set, the training data is used instead.
This application is a composite application that use:
VectorDataSetField: adds a class field containing the same class for all polygons of the input training/validation data (we need this for the sampling framework)
PolygonClassStatistic: part of the sampling framework
MultiImageSamplingRate: part of the sampling framework
SampleSelection: part of the sampling framework
SampleExtraction: part of the sampling framework
TrainVectorRegression: train the model from sampled data, see !488 (merged)
The copyright owner is CNES and has signed the ORFEO ToolBox Contributor License Agreement.
Check before merging:
- All discussions are resolved
- At least 2
👍votes from core developers, no 👎vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run
git diff develop... -U0 --no-color | clang-format-diff.py -p1 -ion latest changes and commit