MCPcopy Create free account
hub / github.com/MITK/MITK / main

Function main

Modules/BasicImageProcessing/MiniApps/MaskRangeBasedFiltering.cpp:20–110  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18
19
20int main(int argc, char* argv[])
21{
22 mitkCommandLineParser parser;
23
24 parser.setTitle("Mask Outlier filtering");
25 parser.setCategory("Basic Image Processing");
26 parser.setDescription("");
27 parser.setContributor("German Cancer Research Center (DKFZ)");
28
29 parser.setArgumentPrefix("--", "-");
30 // Add command line argument names
31 parser.addArgument("help", "h", mitkCommandLineParser::Bool, "Help:", "Show this help text");
32 parser.addArgument("image", "i", mitkCommandLineParser::File, "Input image:", "Input Image", us::Any(), false, false, false, mitkCommandLineParser::Input);
33 parser.addArgument("mask", "m", mitkCommandLineParser::File, "Input mask:", "Input Mask", us::Any(), false, false, false, mitkCommandLineParser::Input);
34 parser.addArgument("output", "o", mitkCommandLineParser::File, "Output file:", "Output Mask", us::Any(), false, false, false, mitkCommandLineParser::Output);
35
36 parser.addArgument("lower-limit", "lL", mitkCommandLineParser::Float, "Lower Limit", "Lower Limit", us::Any(), true);
37 parser.addArgument("upper-limit", "ul", mitkCommandLineParser::Float, "Upper Limit", "Upper Limit", us::Any(), true);
38
39 std::map<std::string, us::Any> parsedArgs = parser.parseArguments(argc, argv);
40
41 if (parsedArgs.size() == 0)
42 return EXIT_FAILURE;
43
44 // Show a help message
45 if (parsedArgs.count("help") || parsedArgs.count("h"))
46 {
47 std::cout << parser.helpText();
48 return EXIT_SUCCESS;
49 }
50
51 std::string inputFilename = us::any_cast<std::string>(parsedArgs["image"]);
52 std::string maskFilename = us::any_cast<std::string>(parsedArgs["mask"]);
53 std::string outputFilename = us::any_cast<std::string>(parsedArgs["output"]);
54
55 auto nodes = mitk::IOUtil::Load(inputFilename);
56 if (nodes.size() == 0)
57 {
58 MITK_INFO << "No Image Loaded";
59 return 0;
60 }
61 mitk::Image::Pointer image = dynamic_cast<mitk::Image*>(nodes[0].GetPointer());
62
63 if (image.IsNull())
64 {
65 MITK_INFO << "Loaded data (image) is not of type image";
66 return 0;
67 }
68
69
70 auto maskNodes = mitk::IOUtil::Load(maskFilename);
71 if (maskNodes.size() == 0)
72 {
73 MITK_INFO << "No Mask Loaded";
74 return 0;
75 }
76 mitk::Image::Pointer mask = dynamic_cast<mitk::Image*>(maskNodes[0].GetPointer());
77

Callers

nothing calls this directly

Calls 15

LoadFunction · 0.85
RangeBasedMaskingClass · 0.85
setCategoryMethod · 0.80
setContributorMethod · 0.80
setArgumentPrefixMethod · 0.80
addArgumentMethod · 0.80
parseArgumentsMethod · 0.80
countMethod · 0.80
helpTextMethod · 0.80
GetPointerMethod · 0.80
AnyClass · 0.50
setTitleMethod · 0.45

Tested by

no test coverage detected