Request for Changes-97: KMeansClassification reimplemented (Shark KMeans composite application)

From OTBWiki
Revision as of 17:18, 7 July 2017 by Mbertolino (Talk | contribs) (Implementation details)

Jump to: navigation, search

[Request for Changes - 97] KMeansClassification reimplemented (Shark KMeans composite application)


  • Author: Marina Bertolino
  • Submitted on 07.07.2017
  • Proposed target release : 6.2
  • Adopted:
  • Link to a public git branch or pull request corresponding to the changes.
  • Merged : (put merge commit when merged)


Reimplement using Shark KMeans composite application.


Implement KMeansClassification as a composite application using an existing training and classification application.

The SharkKMeans model is used instead of ITK classes.

Implementation details

Classes and files

A       Modules/Applications/AppClassification/include/otbClassKMeansBase.h
A       Modules/Applications/AppClassification/include/otbClassKMeansBase.txx


M       Modules/Applications/AppClassification/app/otbKMeansClassification.cxx

The applications pipeline for this composite application is :

ImageEnveloppe => PolygonClassStatistics => SampleSelection => SamplesExtraction => TrainVectorClassifier => ImageClassifier.

Use this application for:

  • ImageEnveloppe: create an image envelope,
  • PolygonClassStatistics : create the statistics,
  • SampleSelection : select the samples by constant strategy in the shapefile,
  • SamplesExtraction : extract the samples descriptors,
  • TrainVectorClassifier : train the model,
  • ImageClassifier: performs the classification of the input image according to a model file.

The parameters of the internal applications have been initialized such as: (TODO list) The rest of the settings are by default.



Additional notes

List remaining open issues if any, and additional notes.