diff --git a/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.h b/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.h
index 23c0bdd8e826e3d3bc8660a8ff47c24d9c9b0f43..64ee4ff48f9611919a92c813b10fda9781583afc 100644
--- a/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.h
+++ b/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.h
@@ -121,15 +121,9 @@ public:
     this->Modified();
   }
 
+  /** Neighborhood radius */
   itkSetMacro(Radius, RadiusSizeType);
 
-  /** Sets the histogram size. Note this function must be called before
-    \c Initialize(). */
-  itkSetMacro(HistogramSize, HistogramSizeType);
-
-  /** Gets the histogram size. */
-  itkGetConstReferenceMacro(HistogramSize, HistogramSizeType);
-
   /** Factor to increase the upper bound for the samples in the histogram.
       Default value is 0.001 */
   itkSetMacro(UpperBoundIncreaseFactor, double);
@@ -190,9 +184,6 @@ private:
       padding value should be ignored when calculating the similarity
       measure. */
   bool m_UsePaddingValue;
-
-  /** The histogram size. */
-  HistogramSizeType m_HistogramSize;
   
   /** The increase in the upper bound. */
   double m_UpperBoundIncreaseFactor;
diff --git a/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.txx b/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.txx
index a25517df8894fcc94f85d1813008b6ca168fc442..b2491f8d87e2c8ff0372086ac048e720071ad4d9 100644
--- a/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.txx
+++ b/Code/ChangeDetection/otbBinaryFunctorNeighborhoodJoinHistogramImageFilter.txx
@@ -33,11 +33,10 @@ namespace otb
 template <class TInputImage1, class TInputImage2,
     class TOutputImage, class TFunction>
 BinaryFunctorNeighborhoodJoinHistogramImageFilter<TInputImage1, TInputImage2, TOutputImage, TFunction>
-::BinaryFunctorNeighborhoodJoinHistogramImageFilter(): m_HistogramSize(2)
+::BinaryFunctorNeighborhoodJoinHistogramImageFilter()
 {
   this->SetNumberOfRequiredInputs(2);
   m_Radius = 3;
-  m_HistogramSize.Fill(256);
   m_UsePaddingValue = false;
   m_UpperBoundIncreaseFactor = 0.001;
 }
@@ -268,8 +267,10 @@ BinaryFunctorNeighborhoodJoinHistogramImageFilter<TInputImage1, TInputImage2, TO
   Input2IteratorType ti2(pInput2Image, input2Region);
 
   typename HistogramType::Pointer histogram = HistogramType::New();
+  HistogramSizeType histogramSize(2);
+  histogramSize.Fill(256);
   histogram->SetMeasurementVectorSize(2);
-  histogram->Initialize(m_HistogramSize, lowerBound, upperBound);
+  histogram->Initialize(histogramSize, lowerBound, upperBound);
 
   ti1.GoToBegin();
   ti2.GoToBegin();