6 #include <itkImageFileReader.h>
7 #include <itkImageFileWriter.h>
8 #include <itkRGBPixel.h>
10 #include <cpPlugins/Extensions/Algorithms/LightCompensationFilter.h>
12 // -------------------------------------------------------------------------
13 const unsigned int Dim = 2;
14 typedef itk::RGBPixel< unsigned char > TPixel;
15 typedef itk::Image< TPixel, Dim > TImage;
17 // -------------------------------------------------------------------------
18 int main( int argc, char* argv[] )
23 << "Usage: " << argv[ 0 ]
24 << " input_image output_image"
29 std::string input_image_fn = argv[ 1 ];
30 std::string output_image_fn = argv[ 2 ];
33 itk::ImageFileReader< TImage >::Pointer input_image_reader =
34 itk::ImageFileReader< TImage >::New( );
35 input_image_reader->SetFileName( input_image_fn );
38 input_image_reader->Update( );
40 catch( itk::ExceptionObject& err )
42 std::cerr << "Error caught: " << err << std::endl;
46 TImage::Pointer input_image = input_image_reader->GetOutput( );
48 cpPlugins::Extensions::Algorithms::
49 LightCompensationFilter< TImage >::Pointer filter =
50 cpPlugins::Extensions::Algorithms::
51 LightCompensationFilter< TImage >::New( );
52 filter->SetInput( input_image );
56 itk::ImageFileWriter< TImage >::Pointer output_image_writer =
57 itk::ImageFileWriter< TImage >::New( );
58 output_image_writer->SetInput( filter->GetOutput( ) );
59 output_image_writer->SetFileName( output_image_fn );
62 output_image_writer->Update( );
64 catch( itk::ExceptionObject& err )
66 std::cerr << "Error caught: " << err << std::endl;