X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FImage%2FExtractAxisFilter.hxx;fp=lib%2Ffpa%2FImage%2FExtractAxisFilter.hxx;h=0000000000000000000000000000000000000000;hb=3c639e5da479c7216a0a302ffa156ac6762caeed;hp=9d14fe4ef18ca53e15bb029c38266a0e5980c4eb;hpb=5bf766068f54d061d3816f4950a076c3cf3a4d8b;p=FrontAlgorithms.git diff --git a/lib/fpa/Image/ExtractAxisFilter.hxx b/lib/fpa/Image/ExtractAxisFilter.hxx deleted file mode 100644 index 9d14fe4..0000000 --- a/lib/fpa/Image/ExtractAxisFilter.hxx +++ /dev/null @@ -1,152 +0,0 @@ -// ========================================================================= -// @author Leonardo Florez Valencia -// @email florez-l@javeriana.edu.co -// ========================================================================= - -#ifndef __fpa__Image__ExtractAxisFilter__hxx__ -#define __fpa__Image__ExtractAxisFilter__hxx__ - -#include -#include - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -itk::ModifiedTimeType -fpa::Image::ExtractAxisFilter< _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::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -AddSeed( const TIndex& seed ) -{ - this->m_Dijkstra->AddSeed( seed ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -AddSeed( const TPoint& seed ) -{ - this->m_Dijkstra->AddSeed( seed ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -ClearSeeds( ) -{ - this->m_Dijkstra->ClearSeeds( ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -SetInput( TInputImage* input ) -{ - this->Superclass::SetNthInput( 0, input ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -typename fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -TInputImage* fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -GetInput( ) -{ - return( dynamic_cast< TInputImage* >( this->Superclass::GetInput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -const typename fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -TInputImage* fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -GetInput( ) const -{ - return( - dynamic_cast< const TInputImage* >( this->Superclass::GetInput( 0 ) ) - ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -typename fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -TPath* fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -GetOutput( ) -{ - return( dynamic_cast< TPath* >( this->Superclass::GetOutput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -const typename fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -TPath* fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -GetOutput( ) const -{ - return( dynamic_cast< const TPath* >( this->Superclass::GetOutput( 0 ) ) ); -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -fpa::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -ExtractAxisFilter( ) - : Superclass( ) -{ - // I/O configuration - this->SetNumberOfRequiredInputs( 1 ); - this->SetNumberOfRequiredOutputs( 1 ); - this->SetNthOutput( 0, TPath::New( ) ); - - // Prepare weight function - typedef fpa::Image::Functors::Dijkstra::Invert< TScalarImage, 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::Image::ExtractAxisFilter< _TInputImage, _TScalar >:: -~ExtractAxisFilter( ) -{ -} - -// ------------------------------------------------------------------------- -template< class _TInputImage, class _TScalar > -void fpa::Image::ExtractAxisFilter< _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__Image__ExtractAxisFilter__hxx__ - -// eof - $RCSfile$