22 CPPUNIT_TEST_SUITE(mitkGIFLocalIntensityTestSuite);
24 MITK_TEST(ImageDescription_PhantomTest_Small);
25 MITK_TEST(ImageDescription_PhantomTest_Large);
26 MITK_TEST(ImageDescription_PhantomTest_Large_RangeChanged);
28 CPPUNIT_TEST_SUITE_END();
38 void setUp(
void)
override 40 m_IBSI_Phantom_Image_Small = mitk::IOUtil::Load<mitk::Image>(
GetTestDataFilePath(
"Radiomics/IBSI_Phantom_Image_Small.nrrd"));
41 m_IBSI_Phantom_Image_Large = mitk::IOUtil::Load<mitk::Image>(
GetTestDataFilePath(
"Radiomics/IBSI_Phantom_Image_Large.nrrd"));
42 m_IBSI_Phantom_Mask_Small = mitk::IOUtil::Load<mitk::Image>(
GetTestDataFilePath(
"Radiomics/IBSI_Phantom_Mask_Small.nrrd"));
43 m_IBSI_Phantom_Mask_Large = mitk::IOUtil::Load<mitk::Image>(
GetTestDataFilePath(
"Radiomics/IBSI_Phantom_Mask_Large.nrrd"));
46 void ImageDescription_PhantomTest_Small()
50 auto featureList = featureCalculator->CalculateFeatures(m_IBSI_Phantom_Image_Small, m_IBSI_Phantom_Mask_Small);
52 std::map<std::string, double> results;
53 for (
auto valuePair : featureList)
55 MITK_INFO << valuePair.first <<
" : " << valuePair.second;
56 results[valuePair.first] = valuePair.second;
58 CPPUNIT_ASSERT_EQUAL_MESSAGE(
"Image Diagnostics should calculate 2 features.", std::size_t(2), featureList.size());
62 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Local Intensity Peak with Large IBSI Phantom Image", 2.6, results[
"Local Intensity::2. Local Intensity Peak"], 0.1);
63 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Global Intensity Peak with Large IBSI Phantom Image", 3.1, results[
"Local Intensity::2. Global Intensity Peak"], 0.1);
66 void ImageDescription_PhantomTest_Large()
70 auto featureList = featureCalculator->CalculateFeatures(m_IBSI_Phantom_Image_Large, m_IBSI_Phantom_Mask_Large);
72 std::map<std::string, double> results;
73 for (
auto valuePair : featureList)
75 MITK_INFO << valuePair.first <<
" : " << valuePair.second;
76 results[valuePair.first] = valuePair.second;
78 CPPUNIT_ASSERT_EQUAL_MESSAGE(
"Image Diagnostics should calculate 2 features.", std::size_t(2), featureList.size());
82 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Local Intensity Peak with Large IBSI Phantom Image", 1.43, results[
"Local Intensity::2. Local Intensity Peak"], 0.01);
83 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Global Intensity Peak with Large IBSI Phantom Image", 1.43, results[
"Local Intensity::2. Global Intensity Peak"], 0.01);
86 void ImageDescription_PhantomTest_Large_RangeChanged()
90 featureCalculator->SetRange(1);
92 auto featureList = featureCalculator->CalculateFeatures(m_IBSI_Phantom_Image_Large, m_IBSI_Phantom_Mask_Large);
94 std::map<std::string, double> results;
95 for (
auto valuePair : featureList)
97 MITK_INFO << valuePair.first <<
" : " << valuePair.second;
98 results[valuePair.first] = valuePair.second;
100 CPPUNIT_ASSERT_EQUAL_MESSAGE(
"Image Diagnostics should calculate 2 features.", std::size_t(2), featureList.size());
104 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Local Intensity Peak with Large IBSI Phantom Image", 6, results[
"Local Intensity::2. Local Intensity Peak"], 0.01);
105 CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(
"Local Intensity::Global Intensity Peak with Large IBSI Phantom Image", 6, results[
"Local Intensity::2. Global Intensity Peak"], 0.01);
MITK_TEST_SUITE_REGISTRATION(mitkImageToItk)
#define MITK_TEST(TESTMETHOD)
Adds a test to the current test suite.
static std::string GetTestDataFilePath(const std::string &testData)
Get the absolute path for test data.
Test fixture for parameterized tests.