int
main(int argc, char * argv[])
{
if (argc != 2)
{
std::cerr << "Usage:" << std::endl;
std::cerr << argv[0] << " <OutputImage>" << std::endl;
return EXIT_FAILURE;
}
using PixelType = unsigned char;
region.SetIndex(start);
ImageType::Pointer image1 = ImageType::New();
image1->SetRegions(region);
image1->Allocate();
image1->FillBuffer(0);
ImageType::Pointer image2 = ImageType::New();
image2->SetRegions(region);
image2->Allocate();
image2->FillBuffer(255);
CheckerBoardFilterType::Pointer checkerBoardFilter = CheckerBoardFilterType::New();
checkerBoardFilter->SetInput1(image1);
checkerBoardFilter->SetInput2(image2);
WriterType::Pointer writer = WriterType::New();
writer->SetInput(checkerBoardFilter->GetOutput());
writer->SetFileName(argv[1]);
try
{
writer->Update();
}
catch (itk::ExceptionObject & error)
{
std::cerr << "Error: " << error << std::endl;
return EXIT_FAILURE;
}
return EXIT_SUCCESS;
}