From b89be6880616ea6584b9a45a0f6d063e40f2aba4 Mon Sep 17 00:00:00 2001 From: Patrick Imbo <patrick.imbo@c-s.fr> Date: Tue, 12 Sep 2006 12:35:00 +0000 Subject: [PATCH] =?UTF-8?q?otbForwardFourierMellinTransformImageFilter=20:?= =?UTF-8?q?=20impl=C3=A9mentation=20de=20la=20classe=20+=20tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../otbLogPolarResampleImageFilter.h | 19 +++++-------------- .../otbLogPolarResampleImageFilter.txx | 6 ++++-- ...ForwardFourierMellinTransformImageFilter.h | 8 ++++++-- ...rwardFourierMellinTransformImageFilter.txx | 2 -- 4 files changed, 15 insertions(+), 20 deletions(-) diff --git a/Code/BasicFilters/otbLogPolarResampleImageFilter.h b/Code/BasicFilters/otbLogPolarResampleImageFilter.h index 0ffb9ac709..b2d427c9b3 100644 --- a/Code/BasicFilters/otbLogPolarResampleImageFilter.h +++ b/Code/BasicFilters/otbLogPolarResampleImageFilter.h @@ -38,23 +38,14 @@ namespace otb * This function is set via SetInterpolator(). The default is * itk::LinearInterpolateImageFunction<InputImageType, TInterpolatorPrecisionType>, which * - * Output information (spacing, size and direction) for the output - * image should be set. This information has the normal defaults of - * unit spacing, zero origin and identity direction. Optionally, the - * output information can be obtained from a reference image. If the - * reference image is provided and UseReferenceImage is On, then the - * spacing, origin and direction of the reference image will be used. - * - * Since this filter produces an image which is a different size than - * its input, it needs to override several of the methods defined - * in ProcessObject in order to properly manage the pipeline execution model. - * In particular, this filter overrides - * ProcessObject::GenerateInputRequestedRegion() and - * ProcessObject::GenerateOutputInformation(). - * * This filter is implemented as a multithreaded filter. It provides a * ThreadedGenerateData() method for its implementation. * + * By default the sigma value is fixed to 0.5 + + + + The resampled Log-polar image dimension is a power of two for each + direction. + * * \ingroup GeometricTransforms */ template <class TInputImage, diff --git a/Code/BasicFilters/otbLogPolarResampleImageFilter.txx b/Code/BasicFilters/otbLogPolarResampleImageFilter.txx index 16febf80d3..d5d1f4892d 100644 --- a/Code/BasicFilters/otbLogPolarResampleImageFilter.txx +++ b/Code/BasicFilters/otbLogPolarResampleImageFilter.txx @@ -50,9 +50,11 @@ LogPolarResampleImageFilter<TInputImage, TInterpolator> m_RadialStepIsConfigured = false; - m_OriginIsAtCenter = true; + m_OriginIsAtCenter = true; m_DefaultPixelValue = 0; - m_Interpolator = itk::LinearInterpolateImageFunction<InputImageType, CoordRepType>::New(); + m_Sigma = 0.5; + + m_Interpolator = itk::LinearInterpolateImageFunction<InputImageType, CoordRepType>::New(); } diff --git a/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.h b/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.h index c15bf85ef5..69f3d33d79 100644 --- a/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.h +++ b/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.h @@ -34,10 +34,14 @@ namespace otb * * This class implements a composite filter. It combines two filters : * \begin{itemize} - * \item otb::LogPolarResampleImageFilter - * \item itk:: ... + * \item otb::LogPolarResampleImageFilter : converting the input image in a + log-polar system coordinate + * \item itk::VnlFFTRealToComplexConjugateImageFilter : applying the Forward + Fourier transform of the log-polar image. * \end{itemize} * + * N.B.: the Fourier transform image is coded from 0.0 to 1.0 + * * \ingroup ImageFunctions */ diff --git a/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.txx b/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.txx index 3acc50a861..39eca5a683 100644 --- a/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.txx +++ b/Code/FeatureExtraction/otbForwardFourierMellinTransformImageFilter.txx @@ -39,7 +39,6 @@ ForwardFourierMellinTransformImageFilter<TPixel, TInterpol, Dimension > ::GenerateData() { m_LogPolarResample->SetInput( this->GetInput() ); - m_LogPolarResample->Update(); m_FourierTransform->SetInput( m_LogPolarResample->GetOutput() ); m_FourierTransform->GraftOutput( this->GetOutput() ); @@ -69,7 +68,6 @@ ForwardFourierMellinTransformImageFilter<TPixel, TInterpol, Dimension > m_LogPolarResample->GenerateOutputInformation(); - OutputImageRegionType outputLargestPossibleRegion; outputLargestPossibleRegion.SetSize( m_LogPolarResample->GetOutput()->GetLargestPossibleRegion().GetSize() ); outputLargestPossibleRegion.SetIndex( m_LogPolarResample->GetOutput()->GetLargestPossibleRegion().GetIndex() ); -- GitLab