diff --git a/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx b/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
index 2c0a7d65a730ccfdcc0e1fb1218f6ec33e306ea1..d0a57ffa4bc7d86b704921e2d1e2f1d27301d817 100644
--- a/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
+++ b/Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
@@ -259,11 +259,11 @@ protected:
     otbAppLogINFO("output model : " << GetInternalApplication("training")->GetParameterString("io.out"));
   }
 
-  void ComputeImageStatistics(const std::string &imageFileName,
+  void ComputeImageStatistics( ImageBaseType * img,
                                                const std::string &imagesStatsFileName)
   {
-    std::vector<std::string> imageFileNameList = {imageFileName};
-    GetInternalApplication("imgstats")->SetParameterStringList("il", imageFileNameList);
+    // std::vector<std::string> imageFileNameList = {imageFileName};
+    GetInternalApplication("imgstats")->SetParameterImageBase("il", img);
     GetInternalApplication("imgstats")->SetParameterString("out", imagesStatsFileName);
 
     ExecuteInternal( "imgstats" );
@@ -486,7 +486,7 @@ private:
                                         actualNBSamplesForKMeans);
 
     // Compute Images second order statistics
-    Superclass::ComputeImageStatistics(GetParameterString("in"), fileNames.imgStatOutput);
+    Superclass::ComputeImageStatistics(GetParameterImageBase("in"), fileNames.imgStatOutput);
 
     // Compute a train model with TrainVectorClassifier app
     Superclass::TrainKMModel(GetParameterImage("in"), fileNames.sampleOutput,
diff --git a/Modules/Applications/AppSegmentation/app/otbLargeScaleMeanShift.cxx b/Modules/Applications/AppSegmentation/app/otbLargeScaleMeanShift.cxx
index e97c862c2c45f27a9ac7e5e50f5c6e0b267695a4..7a72e7f9a154bd3c7f3aaaceb09e08a618c079cb 100644
--- a/Modules/Applications/AppSegmentation/app/otbLargeScaleMeanShift.cxx
+++ b/Modules/Applications/AppSegmentation/app/otbLargeScaleMeanShift.cxx
@@ -191,13 +191,13 @@ private:
       if (IsParameterEnabled("mode.vector.imfield") &&
           HasValue("mode.vector.imfield"))
         {
-        GetInternalApplication("vectorization")->SetParameterString("in",
-          GetParameterString("mode.vector.imfield"));
+        GetInternalApplication("vectorization")->SetParameterInputImage("in",
+          GetParameterImage<ImageBaseType>("mode.vector.imfield"));
         }
       else
         {
-        GetInternalApplication("vectorization")->SetParameterString("in",
-          GetParameterString("in"));
+        GetInternalApplication("vectorization")->SetParameterInputImage("in",
+          GetParameterImage<ImageBaseType>("in"));
         }
       GetInternalApplication("vectorization")->SetParameterString("inseg",
         tmpFilenames[2]);