From 37b5cf2d03578a894dbcedda95550b1234e24f93 Mon Sep 17 00:00:00 2001 From: Julien Michel <julien.michel@orfeo-toolbox.org> Date: Thu, 1 Mar 2012 16:55:29 +0100 Subject: [PATCH] ENH: Allowing access to functor with parameters --- .../otbPixelWiseBlockMatchingImageFilter.h | 16 +++++++++++++++- .../otbPixelWiseBlockMatchingImageFilter.txx | 5 ----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.h b/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.h index c81b69efd5..4fc9c9d115 100644 --- a/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.h +++ b/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.h @@ -247,7 +247,6 @@ public: itkSetMacro(MaximumVerticalDisparity,int); itkGetConstReferenceMacro(MaximumVerticalDisparity,int); - itkSetMacro(Minimize, bool); itkGetConstReferenceMacro(Minimize,bool); itkBooleanMacro(Minimize); @@ -264,6 +263,18 @@ public: itkSetMacro(InitVerticalDisparity,int); itkGetConstReferenceMacro(InitVerticalDisparity,int); + /** Get the functor for parameters setting */ + BlockMatchingFunctorType & GetFunctor() + { + return m_Functor; + } + + /** Get the functor (const version) */ + const BlockMatchingFunctorType & GetFunctor() const + { + return m_Functor; + } + /** Set initial horizontal disparity field (optional, override m_InitHorizontalDisparity) */ void SetHorizontalDisparityInput( const TOutputDisparityImage * hfield); @@ -314,6 +325,9 @@ private: /** The exploration radius for disparities (used if non null) */ SizeType m_ExplorationRadius; + + /** Block-matching functor */ + BlockMatchingFunctorType m_Functor; /** Initial horizontal disparity (0 by default, used if an exploration radius is set) */ int m_InitHorizontalDisparity; diff --git a/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.txx b/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.txx index a988ec94aa..2a496139fe 100644 --- a/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.txx +++ b/Code/DisparityMap/otbPixelWiseBlockMatchingImageFilter.txx @@ -471,8 +471,6 @@ TOutputDisparityImage,TMaskImage,TBlockMatchingFunctor> // account for pixels that are out of range for a given disparity itk::ProgressReporter progress(this, threadId, (m_MaximumHorizontalDisparity - m_MinimumHorizontalDisparity + 1)*(m_MaximumVerticalDisparity - m_MinimumVerticalDisparity + 1)); - // Define the block matching functor - TBlockMatchingFunctor bmFunctor; // Check if we use initial disparities and exploration radius bool useExplorationRadius = false; @@ -486,9 +484,6 @@ TOutputDisparityImage,TMaskImage,TBlockMatchingFunctor> } } - // std::cout<<"Output region: "<<outputRegionForThread<<std::endl; - - // We loop on disparities for(int vdisparity = m_MinimumVerticalDisparity; vdisparity <= m_MaximumVerticalDisparity; ++vdisparity) { -- GitLab