diff --git a/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx b/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
index 9284616399bb38d0c01401ef5af36f9f2feac229..aac361024a1e79d39af40f4089e49bc63c7e5ca9 100644
--- a/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
+++ b/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
@@ -77,7 +77,8 @@ protected:
     MandatoryOff("ts");
 
     AddParameter(ParameterType_Int, "maxit", "Maximum number of iterations");
-    SetParameterDescription("maxit", "Maximum number of iterations for the learning step.");
+    SetParameterDescription("maxit", "Maximum number of iterations for the learning step." 
+      " If this parameter is set to 0, the KMeans algorithm will not stop until convergence");
     SetDefaultParameterInt("maxit", 1000);
     MandatoryOff("maxit");
     
@@ -86,7 +87,9 @@ protected:
     "Group of parameters for centroids IO." );
 
     AddParameter(ParameterType_InputFilename, "centroids.in", "input centroids text file");
-    SetParameterDescription("centroids.in", "Input text file containing centroid posistions.");
+    SetParameterDescription("centroids.in", "Input text file containing centroid posistions used to initialize the algorithm."
+    " The file must contain one centroid per line, and each centroid value must be separated by a space. The number of"
+    " centroids in this file must match the number of classes (nc parameter).");
     MandatoryOff("centroids.in");
     
     ShareKMSamplingParameters();
diff --git a/Modules/Applications/AppClassification/include/otbTrainSharkKMeans.hxx b/Modules/Applications/AppClassification/include/otbTrainSharkKMeans.hxx
index 872391ee73f28bf6633958d0c0ed1d9670871177..7abbbe72163b6f437beaf29bab93e547ec1e8cac 100644
--- a/Modules/Applications/AppClassification/include/otbTrainSharkKMeans.hxx
+++ b/Modules/Applications/AppClassification/include/otbTrainSharkKMeans.hxx
@@ -46,14 +46,15 @@ void LearningApplicationBase<TInputValue, TOutputValue>::InitSharkKMeansParams()
   SetParameterDescription("classifier.sharkkm.k", "The number of classes used for the kmeans algorithm. Default set to 2 class");
   SetMinimumParameterIntValue("classifier.sharkkm.k", 2);
 
-
+  // Centroid IO
   AddParameter( ParameterType_Group, "classifier.sharkkm.centroids", "Centroids IO parameters" );
   SetParameterDescription( "classifier.sharkkm.centroids", "Group of parameters for centroids IO." );
 
-
   // Input centroids
   AddParameter(ParameterType_InputFilename, "classifier.sharkkm.centroids.in", "User definied input centroids");
-  SetParameterDescription("classifier.sharkkm.centroids", "Text file containing input centroids.");
+  SetParameterDescription("classifier.sharkkm.centroids.in", "Input text file containing centroid posistions used to initialize the algorithm."
+    " The file must contain one centroid per line, and each centroid value must be separated by a space. The number of"
+    " centroids in this file must match the number of classes (classifier.sharkkm.k).");
   MandatoryOff("classifier.sharkkm.centroids");
 
   // Centroid statistics
@@ -62,7 +63,7 @@ void LearningApplicationBase<TInputValue, TOutputValue>::InitSharkKMeansParams()
     "and reduce the centroids before the KMeans algorithm, produced by ComputeImagesStatistics application.");
   MandatoryOff("classifier.sharkkm.centroids.stats");
   
-  // output centroids
+  // Output centroids
   AddParameter(ParameterType_OutputFilename, "classifier.sharkkm.centroids.out", "Output centroids text file");
   SetParameterDescription("classifier.sharkkm.centroids.out", "Output text file containing centroids after the kmean algorithm.");
   MandatoryOff("classifier.sharkkm.centroids.out");