diff --git a/Modules/Learning/Supervised/include/otbSharkRandomForestsMachineLearningModel.txx b/Modules/Learning/Supervised/include/otbSharkRandomForestsMachineLearningModel.txx
index 833ab6b457e0e78a4cd073f694022d0a035331cb..0e0b08f3e26dd2d4cb8a0e4bddd7e036d9aae444 100644
--- a/Modules/Learning/Supervised/include/otbSharkRandomForestsMachineLearningModel.txx
+++ b/Modules/Learning/Supervised/include/otbSharkRandomForestsMachineLearningModel.txx
@@ -158,10 +158,9 @@ SharkRandomForestsMachineLearningModel<TInputValue,TOutputValue>
   omp_set_num_threads(itk::MultiThreader::GetGlobalDefaultNumberOfThreads());
   #endif
   
-  shark::Data<shark::RealVector> probas = m_RFModel(inputSamples);
-
   if(quality != ITK_NULLPTR)
     {
+    shark::Data<shark::RealVector> probas = m_RFModel(inputSamples);
     unsigned int id = startIndex;
     for(shark::RealVector && p : probas.elements())
       {