Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • otb otb
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 207
    • Issues 207
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 12
    • Merge requests 12
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Main Repositories
  • otbotb
  • Merge requests
  • !496

Regression refactoring : Train images regression

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Cédric Traizet requested to merge train_images_regression into develop May 15, 2019
  • Overview 8
  • Commits 48
  • Pipelines 22
  • Changes 9

Summary

Introduce a new application for training a regression image from triplets of features image, predictor images and vector data containing polygons

The application TrainRegression is now deprecated (replaced by TrainVectorRegression and TrainImagesRegression)

Rationale

This MR is part of the regression refactoring described in issue #1799 (closed).

The new 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.

Implementation Details

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)

Copyright

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 -i on latest changes and commit
Edited May 28, 2019 by Cédric Traizet
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: train_images_regression