1 #include <cpPluginsImageFilters/MaskedImageToHistogramFilter.h>
2 #include <cpPlugins/Image.h>
3 #include <cpPlugins_ITKInstances/ImageFilters.h>
5 #include <itkMaskedImageToHistogramFilter.h>
6 #include <itkMaskedImageToHistogramFilter.hxx>
7 #include <itkImageToHistogramFilter.hxx>
9 // -------------------------------------------------------------------------
10 cpPluginsImageFilters::MaskedImageToHistogramFilter::
11 MaskedImageToHistogramFilter( )
14 this->_AddInput( "Input" );
15 this->_AddInput( "Mask" );
16 this->_AddOutput< cpPlugins::DataObject >( "Output" );
19 // -------------------------------------------------------------------------
20 cpPluginsImageFilters::MaskedImageToHistogramFilter::
21 ~MaskedImageToHistogramFilter( )
25 // -------------------------------------------------------------------------
26 std::string cpPluginsImageFilters::MaskedImageToHistogramFilter::
29 auto image = this->GetInputData( "Input" )->GetITK< itk::DataObject >( );
30 std::string cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 1 );
31 if( r != "" ) cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 2 );
32 if( r != "" ) cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 3 );
33 if( r != "" ) cpPlugin_Image_Demangle_Pixel_AllScalars( r, _GD0, image, 4 );
37 // -------------------------------------------------------------------------
38 template< class _TImage >
39 std::string cpPluginsImageFilters::MaskedImageToHistogramFilter::
40 _GD0( _TImage* image )
44 this->_GD1< _TImage, itk::Image< unsigned char, _TImage::ImageDimension > >( image )
48 "ImageFilters::MaskedImageToHistogramFilter: No valid input image."
52 // -------------------------------------------------------------------------
53 template< class _TImage, class _TMask >
54 std::string cpPluginsImageFilters::MaskedImageToHistogramFilter::
55 _GD1( _TImage* image )
57 typedef itk::Statistics::MaskedImageToHistogramFilter< _TImage, _TMask > _F;
62 _F* filter = this->_CreateITK< _F >( );
64 filter->SetInput( image );
65 filter->SetLowerThreshold( lower_val );
66 filter->SetUpperThreshold( upper_val );
67 filter->SetInsideValue( in_val );
68 filter->SetOutsideValue( out_val );
72 this->GetOutputData( "Output" )->SetITK( filter->GetOutput( ) );
74 return( "MaskedImageToHistogramFilter: not ready yet." );