diff --git a/Modules/PhotoacousticsAlgorithms/test/mitkPAFilterServiceTest.cpp b/Modules/PhotoacousticsAlgorithms/test/mitkPAFilterServiceTest.cpp index d04b0c9343..9ce85b81ce 100644 --- a/Modules/PhotoacousticsAlgorithms/test/mitkPAFilterServiceTest.cpp +++ b/Modules/PhotoacousticsAlgorithms/test/mitkPAFilterServiceTest.cpp @@ -1,131 +1,127 @@ /*=================================================================== The Medical Imaging Interaction Toolkit (MITK) Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See LICENSE.txt or http://www.mitk.org for details. ===================================================================*/ #include #include #include #include #include #include // us #include #include #include #include #include #include #include class mitkPAFilterServiceTestSuite : public mitk::TestFixture { CPPUNIT_TEST_SUITE(mitkPAFilterServiceTestSuite); MITK_TEST(testRunning); CPPUNIT_TEST_SUITE_END(); private: mitk::PhotoacousticFilterService::Pointer m_PhotoacousticFilterService; + mitk::BeamformingSettings::Pointer m_BeamformingSettings; + unsigned int* inputDimensions; + const int xDim = 16; + const int yDim = 128; + const int length = yDim * xDim; public: void setUp() override { m_PhotoacousticFilterService = mitk::PhotoacousticFilterService::New(); + m_BeamformingSettings = CreateBeamformingSettings(); } - mitk::BeamformingSettings::Pointer CreateEmptyBeamformingSettings() - { - return CreateFunctionalBeamformingSettings(); - } - - mitk::BeamformingSettings::Pointer CreateFunctionalBeamformingSettings() + mitk::BeamformingSettings::Pointer CreateBeamformingSettings() { + inputDimensions = new unsigned int[length]; + inputDimensions[0] = yDim; + inputDimensions[1] = xDim; mitk::BeamformingSettings::Pointer outputSettings = mitk::BeamformingSettings::New( (float)(0.3 / 1000), (float)(1500), (float)(0.0125 / 1000000), 27, true, 3000, 128, - 20, + 0, false, (unsigned int*) nullptr, - (unsigned int*) nullptr, + inputDimensions, false, mitk::BeamformingSettings::DelayCalc::Spherical, mitk::BeamformingSettings::Apodization::Box, 128, mitk::BeamformingSettings::BeamformingAlgorithm::DAS, false, 0.0f, 0.0f); return outputSettings; } void testRunning() { - int xDim = 3; - int yDim = 3; - int length = yDim * xDim; float* testArray = new float[length]; for (int i = 0; i < length; ++i) { testArray[i] = 0; } - unsigned int NUMBER_OF_SPATIAL_DIMENSIONS = 2; - unsigned int* dimensions = new unsigned int[NUMBER_OF_SPATIAL_DIMENSIONS]; - dimensions[0] = yDim; - dimensions[1] = xDim; mitk::PixelType pixelType = mitk::MakeScalarPixelType(); mitk::Image::Pointer testImage = mitk::Image::New(); - testImage->Initialize(pixelType, NUMBER_OF_SPATIAL_DIMENSIONS, dimensions); + testImage->Initialize(pixelType, 2, inputDimensions); testImage->SetImportSlice(testArray, 0, 0, 0, mitk::Image::ImportMemoryManagementType::CopyMemory); delete[] testArray; mitk::ImageReadAccessor readAccessInput(testImage); const float* inputArray = (const float*)readAccessInput.GetData(); for (int i = 0; i < length; ++i) { CPPUNIT_ASSERT_MESSAGE(std::string("Input array already not correct: " + std::to_string(inputArray[i])), abs(inputArray[i]) < 1e-5f); } - mitk::BeamformingSettings::Pointer config = CreateEmptyBeamformingSettings(); - auto output = m_PhotoacousticFilterService->ApplyBeamforming(testImage, config); + auto output = m_PhotoacousticFilterService->ApplyBeamforming(testImage, m_BeamformingSettings); mitk::ImageReadAccessor readAccess(output); const float* outputArray = (const float*)readAccess.GetData(); for (int i = 0; i < length; ++i) { - CPPUNIT_ASSERT_MESSAGE(std::string("Ouput array not correct: " + std::to_string(abs(outputArray[i]))), abs(outputArray[i]) < 1e-5f); + CPPUNIT_ASSERT_MESSAGE(std::string("Output array not correct: " + std::to_string(abs(outputArray[i]))), abs(outputArray[i]) < 1e-5f); } - delete[] dimensions; } void tearDown() override { m_PhotoacousticFilterService = nullptr; + delete[] inputDimensions; } }; MITK_TEST_SUITE_REGISTRATION(mitkPAFilterService)