diff --git a/Examples/MultiScale/CMakeLists.txt b/Examples/MultiScale/CMakeLists.txt index 834e50366a3a02f8e8d48e0cfd8f63f604b57292..f59fbc94f4675f4dad59ca81cd44a11dba7fc370 100644 --- a/Examples/MultiScale/CMakeLists.txt +++ b/Examples/MultiScale/CMakeLists.txt @@ -13,3 +13,89 @@ TARGET_LINK_LIBRARIES(MorphologicalPyramidSegmenterExample OTBCommon OTBIO OTBMu ADD_EXECUTABLE(MorphologicalPyramidSegmentationExample MorphologicalPyramidSegmentationExample.cxx ) TARGET_LINK_LIBRARIES(MorphologicalPyramidSegmentationExample OTBCommon OTBIO OTBMultiScale ITKCommon ITKIO) + + + +IF( NOT OTB_DISABLE_CXX_TESTING AND NOT OTB_DISABLE_CXX_EXAMPLES_TESTING ) + +SET(BASELINE ${OTB_DATA_ROOT}/Baseline/Examples/MultiScale) + +SET(INPUTDATA ${OTB_SOURCE_DIR}/Examples/Data) +SET(TEMP ${OTB_BINARY_DIR}/Testing/Temporary) + +SET(EXE_TESTS ${CXX_TEST_PATH}/otbMultiScaleExamplesTests) + +SET(TOL 0.0) + + +# ------- MorphologicalPyramidAnalysisFilterExampleTest ---------- + +ADD_TEST(MorphologicalPyramidAnalysisFilterExampleTest ${EXE_TESTS} + --compare-n-images ${TOL} 20 + ${BASELINE}/suburb2_an_1.jpeg ${TEMP}/suburb2_an_1.jpeg + ${BASELINE}/suburb2_an_2.jpeg ${TEMP}/suburb2_an_2.jpeg + ${BASELINE}/suburb2_an_3.jpeg ${TEMP}/suburb2_an_3.jpeg + ${BASELINE}/suburb2_an_4.jpeg ${TEMP}/suburb2_an_4.jpeg + ${BASELINE}/suburb2_sf_1.jpeg ${TEMP}/suburb2_sf_1.jpeg + ${BASELINE}/suburb2_sf_2.jpeg ${TEMP}/suburb2_sf_2.jpeg + ${BASELINE}/suburb2_sf_3.jpeg ${TEMP}/suburb2_sf_3.jpeg + ${BASELINE}/suburb2_sf_4.jpeg ${TEMP}/suburb2_sf_4.jpeg + ${BASELINE}/suburb2_if_1.jpeg ${TEMP}/suburb2_if_1.jpeg + ${BASELINE}/suburb2_if_2.jpeg ${TEMP}/suburb2_if_2.jpeg + ${BASELINE}/suburb2_if_3.jpeg ${TEMP}/suburb2_if_3.jpeg + ${BASELINE}/suburb2_if_4.jpeg ${TEMP}/suburb2_if_4.jpeg + ${BASELINE}/suburb2_id_1.jpeg ${TEMP}/suburb2_id_1.jpeg + ${BASELINE}/suburb2_id_2.jpeg ${TEMP}/suburb2_id_2.jpeg + ${BASELINE}/suburb2_id_3.jpeg ${TEMP}/suburb2_id_3.jpeg + ${BASELINE}/suburb2_id_4.jpeg ${TEMP}/suburb2_id_4.jpeg + ${BASELINE}/suburb2_sd_1.jpeg ${TEMP}/suburb2_sd_1.jpeg + ${BASELINE}/suburb2_sd_2.jpeg ${TEMP}/suburb2_sd_2.jpeg + ${BASELINE}/suburb2_sd_3.jpeg ${TEMP}/suburb2_sd_3.jpeg + ${BASELINE}/suburb2_sd_4.jpeg ${TEMP}/suburb2_sd_4.jpeg + MorphologicalPyramidAnalysisFilterExampleTest + ${INPUTDATA}/suburb2.jpeg + ${TEMP}/suburb2_an_1.jpeg ${TEMP}/suburb2_an_2.jpeg + ${TEMP}/suburb2_an_3.jpeg ${TEMP}/suburb2_an_4.jpeg + ${TEMP}/suburb2_sf_1.jpeg ${TEMP}/suburb2_sf_2.jpeg + ${TEMP}/suburb2_sf_3.jpeg ${TEMP}/suburb2_sf_4.jpeg + ${TEMP}/suburb2_if_1.jpeg ${TEMP}/suburb2_if_2.jpeg + ${TEMP}/suburb2_if_3.jpeg ${TEMP}/suburb2_if_4.jpeg + ${TEMP}/suburb2_id_1.jpeg ${TEMP}/suburb2_id_2.jpeg + ${TEMP}/suburb2_id_3.jpeg ${TEMP}/suburb2_id_4.jpeg + ${TEMP}/suburb2_sd_1.jpeg ${TEMP}/suburb2_sd_2.jpeg + ${TEMP}/suburb2_sd_3.jpeg ${TEMP}/suburb2_sd_4.jpeg + 4 2 +) + +# ------- MorphologicalPyramidSynthesisFilterExampleTest ---------- + +ADD_TEST(MorphologicalPyramidSynthesisFilterExampleTest ${EXE_TESTS} + --compare-image ${TOL} + ${BASELINE}/suburb2_synthesis.jpeg + ${TEMP}/suburb2_synthesis.jpeg + MorphologicalPyramidSynthesisFilterExampleTest + ${INPUTDATA}/suburb2.jpeg + ${TEMP}/suburb2_synthesis.jpeg + 4 2 +) + +# ------- MorphologicalPyramidSegmenterExampleTest ---------- + +ADD_TEST(MorphologicalPyramidSegmenterExampleTest ${EXE_TESTS} + --compare-image ${TOL} + ${BASELINE}/outputPyrSegmented.tif + ${TEMP}/outputPyrSegmented.tif + MorphologicalPyramidSegmenterExampleTest + ${INPUTDATA}/msPyrMRToMS_IKO_Halles_4_2_sf_full.tif + ${INPUTDATA}/ROI_IKO_PAN_LesHalles.tif + ${TEMP}/outputPyrSegmented.tif + 0 0.9 0.9 10 +) + + +INCLUDE_DIRECTORIES("${OTBTesting_BINARY_DIR}") + +ADD_EXECUTABLE(otbMultiScaleExamplesTests otbMultiScaleExamplesTests.cxx) +TARGET_LINK_LIBRARIES(otbMultiScaleExamplesTests gdal ITKIO ITKAlgorithms ITKStatistics ITKCommon OTBBasicFilters OTBCommon OTBDisparityMap OTBIO OTBSpatialReasoning OTBChangeDetection OTBFeatureExtraction OTBLearning OTBMultiScale) + +ENDIF( NOT OTB_DISABLE_CXX_TESTING AND NOT OTB_DISABLE_CXX_EXAMPLES_TESTING ) diff --git a/Examples/MultiScale/otbMultiScaleExamplesTests.cxx b/Examples/MultiScale/otbMultiScaleExamplesTests.cxx new file mode 100644 index 0000000000000000000000000000000000000000..64b0d0e5c1ad013c5e41dc0883dabd63bed8c415 --- /dev/null +++ b/Examples/MultiScale/otbMultiScaleExamplesTests.cxx @@ -0,0 +1,43 @@ +/*========================================================================= + + Program: ORFEO Toolbox + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) Centre National d'Etudes Spatiales. All rights reserved. + See OTBCopyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ + +// this file defines the otbMultiScaleTest for the test driver +// and all it expects is that you have a function called RegisterTests +#if defined(_MSC_VER) +#pragma warning ( disable : 4786 ) +#endif +#include <iostream> +#include "otbTestMain.h" + +void RegisterTests() +{ +REGISTER_TEST(MorphologicalPyramidAnalysisFilterExampleTest); +REGISTER_TEST(MorphologicalPyramidSynthesisFilterExampleTest); +REGISTER_TEST(MorphologicalPyramidSegmenterExampleTest); +} + +#undef main +#define main MorphologicalPyramidAnalysisFilterExampleTest +#include "MorphologicalPyramidAnalysisFilterExample.cxx" + +#undef main +#define main MorphologicalPyramidSynthesisFilterExampleTest +#include "MorphologicalPyramidSynthesisFilterExample.cxx" + +#undef main +#define main MorphologicalPyramidSegmenterExampleTest +#include "MorphologicalPyramidSegmenterExample.cxx"