X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=appli%2Fexamples%2Fexample_Image_RegionGrow_AllPixels.cxx;fp=appli%2Fexamples%2Fexample_Image_RegionGrow_AllPixels.cxx;h=0000000000000000000000000000000000000000;hb=9c4035dc18f4e44a92cda3e3c1c6e583c94ef06b;hp=db7db5f9892fe233e8bd6fa2fa1b58d082885b24;hpb=e832f438861464a8d521464b61be7e31c896adb8;p=FrontAlgorithms.git diff --git a/appli/examples/example_Image_RegionGrow_AllPixels.cxx b/appli/examples/example_Image_RegionGrow_AllPixels.cxx deleted file mode 100644 index db7db5f..0000000 --- a/appli/examples/example_Image_RegionGrow_AllPixels.cxx +++ /dev/null @@ -1,101 +0,0 @@ -#include -#include -#include -#include - -#include -#include - -#include -#include -#include - -#include "fpa_Utility.h" - -// ------------------------------------------------------------------------- -const unsigned int Dim = 2; -typedef unsigned char TPixel; -typedef itk::Image< TPixel, Dim > TImage; - -// ------------------------------------------------------------------------- -int main( int argc, char* argv[] ) -{ - if( argc < 4 ) - { - std::cerr - << "Usage: " << argv[ 0 ] - << " input_image neighborhood_order stop_at_one_front" - << std::endl; - return( 1 ); - - } // fi - std::string input_image_fn = argv[ 1 ]; - unsigned int neighborhood_order = std::atoi( argv[ 2 ] ); - bool stop_at_one_front = ( std::atoi( argv[ 3 ] ) != 0 ); - - // Read image - TImage::Pointer input_image; - std::string err = fpa_Utility::ReadImage( input_image, input_image_fn ); - if( err != "" ) - { - std::cerr << err << std::endl; - return( 1 ); - - } // fi - - // Show image and wait for, at least, one seed - itk::ImageToVTKImageFilter< TImage >::Pointer vtk_input_image = - itk::ImageToVTKImageFilter< TImage >::New( ); - vtk_input_image->SetInput( input_image ); - vtk_input_image->Update( ); - - fpa_Utility::Viewer2DWithSeeds viewer; - viewer.SetImage( vtk_input_image->GetOutput( ) ); - while( viewer.GetNumberOfSeeds( ) == 0 ) - viewer.Start( ); - - // Region growing types - typedef fpa::Image::RegionGrow< TImage > TFilter; - typedef fpa::Image::Functors:: - RegionGrowAllBelongsFunction< TImage > TFunction; - - // Prepare region grow function - TFunction::Pointer function = TFunction::New( ); - - // Prepare region grow filter - TFilter::Pointer filter = TFilter::New( ); - filter->SetInput( input_image ); - filter->SetGrowingFunction( function ); - filter->SetNeighborhoodOrder( neighborhood_order ); - filter->SetOutsideValue( TPixel( 0 ) ); - filter->SetInsideValue( std::numeric_limits< TPixel >::max( ) ); - filter->SetStopAtOneFront( stop_at_one_front ); - - // Associate seeds - for( unsigned long s = 0; s < viewer.GetNumberOfSeeds( ); ++s ) - { - TImage::PointType pnt; - TImage::IndexType idx; - viewer.GetSeed( pnt, s ); - if( input_image->TransformPhysicalPointToIndex( pnt, idx ) ) - filter->AddSeed( idx, 0 ); - - } // rof - - // Prepare graphical debugger - typedef fpa::VTK::Image2DObserver< TFilter, vtkRenderWindow > TDebugger; - TDebugger::Pointer debugger = TDebugger::New( ); - debugger->SetRenderWindow( viewer.Window ); - debugger->SetRenderPercentage( 0.01 ); - filter->AddObserver( itk::AnyEvent( ), debugger ); - filter->ThrowEventsOn( ); - - // Go! - filter->Update( ); - - // Some more interaction and finish - viewer.Start( ); - return( 0 ); -} - -// eof - $RCSfile$