1 #include <itkSignedMaurerDistanceMapImageFilter.h> 4 #include <tclap/CmdLine.h> 6 int main(
int argc,
char **argv)
8 TCLAP::CmdLine cmd(
"INRIA / IRISA - VisAGeS/Empenn Team",
' ',ANIMA_VERSION);
10 TCLAP::ValueArg<std::string> inArg(
"i",
"inputfile",
"Input image",
true,
"",
"input image",cmd);
11 TCLAP::ValueArg<std::string> outArg(
"o",
"outputfile",
"Output image",
true,
"",
"output image",cmd);
13 TCLAP::SwitchArg invArg(
"I",
"positive-outside",
"Positive distances will be outside the object (default: not activated)",cmd,
false);
19 catch (TCLAP::ArgException& e)
21 std::cerr <<
"Error: " << e.error() <<
"for argument " << e.argId() << std::endl;
25 typedef itk::Image <unsigned short,3> ImageType;
26 typedef itk::Image <double,3> doubleImageType;
28 typedef itk::SignedMaurerDistanceMapImageFilter <ImageType,doubleImageType> MainFilterType;
30 MainFilterType::Pointer mainFilter = MainFilterType::New();
31 mainFilter->SetInput(anima::readImage <ImageType> (inArg.getValue()));
32 mainFilter->SetSquaredDistance(
false);
33 mainFilter->SetBackgroundValue(0);
36 mainFilter->InsideIsPositiveOn();
38 mainFilter->InsideIsPositiveOff();
40 mainFilter->UseImageSpacingOn();
43 anima::writeImage <doubleImageType> (outArg.getValue(),mainFilter->GetOutput());
int main(int argc, char **argv)