X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FFilters%2FImage%2FExtractAxis.hxx;fp=lib%2Ffpa%2FFilters%2FImage%2FExtractAxis.hxx;h=0000000000000000000000000000000000000000;hb=a8ac405fe1422bc0792a810f7f0693096a22c20e;hp=203ea20fd8c0b157c744e7cf9d4faa798e255387;hpb=8abe87eaa0d29ba667d5cbf35f4ca1ca2e38c6c4;p=FrontAlgorithms.git diff --git a/lib/fpa/Filters/Image/ExtractAxis.hxx b/lib/fpa/Filters/Image/ExtractAxis.hxx deleted file mode 100644 index 203ea20..0000000 --- a/lib/fpa/Filters/Image/ExtractAxis.hxx +++ /dev/null @@ -1,150 +0,0 @@ -// ========================================================================= -// @author Leonardo Florez Valencia -// @email florez-l@javeriana.edu.co -// ========================================================================= -#ifndef __fpa__Filters__Image__ExtractAxis__hxx__ -#define __fpa__Filters__Image__ExtractAxis__hxx__ - -#include -#include - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -itk::ModifiedTimeType -fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GetMTime( ) const -{ - itk::ModifiedTimeType a = this->Superclass::GetMTime( ); - itk::ModifiedTimeType b = this->m_Centerness->GetMTime( ); - itk::ModifiedTimeType c = this->m_Dijkstra->GetMTime( ); - a = ( a < b )? a: b; - return( ( a < c )? a: c ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -AddSeed( const TIndex& seed ) -{ - this->m_Dijkstra->AddSeed( seed ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -AddSeed( const TPoint& seed ) -{ - this->m_Dijkstra->AddSeed( seed ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -ClearSeeds( ) -{ - this->m_Dijkstra->ClearSeeds( ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -SetInput( TInputImage* input ) -{ - this->Superclass::SetNthInput( 0, input ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -typename fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -TInputImage* fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GetInput( ) -{ - return( dynamic_cast< TInputImage* >( this->Superclass::GetInput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -const typename fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -TInputImage* fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GetInput( ) const -{ - return( - dynamic_cast< const TInputImage* >( this->Superclass::GetInput( 0 ) ) - ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -typename fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -TPath* fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GetOutput( ) -{ - return( dynamic_cast< TPath* >( this->Superclass::GetOutput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -const typename fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -TPath* fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GetOutput( ) const -{ - return( dynamic_cast< const TPath* >( this->Superclass::GetOutput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -ExtractAxis( ) - : Superclass( ) -{ - // I/O configuration - this->SetNumberOfRequiredInputs( 1 ); - this->SetNumberOfRequiredOutputs( 1 ); - this->SetNthOutput( 0, TPath::New( ) ); - - // Prepare weight function - typedef fpa::Functors::Dijkstra::Invert< TScalar > _TWeight; - typename _TWeight::Pointer weight = _TWeight::New( ); - weight->SetAlpha( 1 ); - weight->SetBeta( 1 ); - - // Filters - typedef itk::SignedMaurerDistanceMapImageFilter< TInputImage, TScalarImage > _TDefaultCenterness; - typename _TDefaultCenterness::Pointer dc = _TDefaultCenterness::New( ); - dc->InsideIsPositiveOn( ); - dc->SquaredDistanceOn( ); - dc->UseImageSpacingOn( ); - this->m_Centerness = dc; - - // Axis extractor - this->m_Dijkstra = TDijkstra::New( ); - this->m_Dijkstra->SetWeightFunction( weight ); - this->m_Dijkstra->StopAtOneFront( ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -~ExtractAxis( ) -{ -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Filters::Image::ExtractAxis< _TInputImage, _TScalar >:: -GenerateData( ) -{ - // Execute minipipeline - this->m_Centerness->SetInput( this->GetInput( ) ); - this->m_Dijkstra->SetInput( this->m_Centerness->GetOutput( ) ); - this->m_Dijkstra->Update( ); - - // Extract axis - typename TPath::Pointer out = this->GetOutput( ); - this->m_Dijkstra->GetMinimumSpanningTree( )->GetPolyLineParametricPath( - out, this->m_StartIndex, this->m_EndIndex - ); -} - -#endif // __fpa__Filters__Image__ExtractAxis__hxx__ -// eof - $RCSfile$