diff --git a/Code/BasicFilters/otbLogPolarResampleImageFilter.h b/Code/BasicFilters/otbLogPolarResampleImageFilter.h
index 2fe4ad4e051076ddcd784132de423c9fecd94971..81dc020e1855fb569766a4c785c827795694eb18 100644
--- a/Code/BasicFilters/otbLogPolarResampleImageFilter.h
+++ b/Code/BasicFilters/otbLogPolarResampleImageFilter.h
@@ -133,6 +133,11 @@ public:
   /** Get the Radial number of samples. */
   itkGetConstReferenceMacro(RadialNumberOfSamples, double);
 
+  /** Set the Angular number of samples. */
+  itkSetMacro(AngularNumberOfSamples, double);
+  /** Get the Angular number of samples. */
+  itkGetConstReferenceMacro(AngularNumberOfSamples, double);
+
   /** Set the Sigma value. */
   itkSetMacro(Sigma, double);
   /** Get the Sigma value. */
diff --git a/Code/BasicFilters/otbLogPolarResampleImageFilter.txx b/Code/BasicFilters/otbLogPolarResampleImageFilter.txx
index db91fd29c0960da38f17bdd7947af3f8116e28b6..e3806f6e6749bf58c79f9b5320eb8f255cdf0c13 100644
--- a/Code/BasicFilters/otbLogPolarResampleImageFilter.txx
+++ b/Code/BasicFilters/otbLogPolarResampleImageFilter.txx
@@ -288,25 +288,24 @@ LogPolarResampleImageFilter<TInputImage,TInterpolator>
     itkExceptionMacro(<< "LogPolarResampleImageFilter::GenerateOutputInformation() Image size msut be greater than zero for the Radial part"<< std::endl);
     }
 
-  m_RadialStep = log(Radial_max) / m_RadialNumberOfSamples;
-
   double bx = log(m_RadialNumberOfSamples) / log(2.0);
   if(int(bx)!=bx)
     {
      m_RadialNumberOfSamples = pow(2,int(bx)+1);
     }
+  m_RadialStep = log(Radial_max) / m_RadialNumberOfSamples;
   
   if( m_AngularNumberOfSamples ==0 )
     {
     itkExceptionMacro(<< "LogPolarResampleImageFilter::GenerateOutputInformation() Image size msut be greater than zero for the Angular part");
     }
 
-  m_AngularStep = Angular_max / m_AngularNumberOfSamples;
   double by = log(m_AngularNumberOfSamples) / log(2.0);
   if(int(by)!=by)
     {
      m_AngularNumberOfSamples = pow(2,int(by)+1);
     }
+  m_AngularStep = Angular_max / m_AngularNumberOfSamples;
   
   Size[0] = static_cast<SizeValueType>(m_AngularNumberOfSamples);
   Size[1] = static_cast<SizeValueType>(m_RadialNumberOfSamples);
diff --git a/Testing/Code/BasicFilters/otbLogPolarResampleImageFilter.cxx b/Testing/Code/BasicFilters/otbLogPolarResampleImageFilter.cxx
index 6ddcc8fa975233339e3a5c82d81b46f6f828306c..d03881f1fee24655bbd8309b55775740bb4ab4c3 100644
--- a/Testing/Code/BasicFilters/otbLogPolarResampleImageFilter.cxx
+++ b/Testing/Code/BasicFilters/otbLogPolarResampleImageFilter.cxx
@@ -59,6 +59,10 @@ int otbLogPolarResampleImageFilter(int argc, char* argv[])
         writer->SetFileName( outputFilename );
 
 	LogPolarImage->SetInput( reader->GetOutput() );
+	LogPolarImage->SetIsOriginAtCenter(true);
+	LogPolarImage->SetAngularNumberOfSamples(512);
+	LogPolarImage->SetRadialNumberOfSamples(513);
+	
         writer->SetInput( LogPolarImage->GetOutput() );
         
         writer->Update();