Mercurial > hg > orthanc
comparison OrthancFramework/UnitTestsSources/ImageProcessingTests.cpp @ 4780:ebb801d44e06
optimization in ImageProcessing::ShiftScale()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 30 Aug 2021 12:13:05 +0200 |
parents | d9473bd5ed43 |
children | 7053502fbf97 |
comparison
equal
deleted
inserted
replaced
4779:4f368230f32b | 4780:ebb801d44e06 |
---|---|
973 ASSERT_TRUE(TestGrayscale8Pixel(image, 3, 0, 13)); // (10 - 1.1) * 1.5 = 13.35 => 13 | 973 ASSERT_TRUE(TestGrayscale8Pixel(image, 3, 0, 13)); // (10 - 1.1) * 1.5 = 13.35 => 13 |
974 ASSERT_TRUE(TestGrayscale8Pixel(image, 4, 0, 255)); | 974 ASSERT_TRUE(TestGrayscale8Pixel(image, 4, 0, 255)); |
975 } | 975 } |
976 | 976 |
977 | 977 |
978 TEST(ImageProcessing, Grayscale8_Identity) | |
979 { | |
980 Image image(PixelFormat_Float32, 5, 1, false); | |
981 ImageTraits<PixelFormat_Float32>::SetPixel(image, 0, 0, 0); | |
982 ImageTraits<PixelFormat_Float32>::SetPixel(image, 2.5, 1, 0); | |
983 ImageTraits<PixelFormat_Float32>::SetPixel(image, 5.5, 2, 0); | |
984 ImageTraits<PixelFormat_Float32>::SetPixel(image, 10.5, 3, 0); | |
985 ImageTraits<PixelFormat_Float32>::SetPixel(image, 255.5, 4, 0); | |
986 | |
987 Image image2(PixelFormat_Grayscale8, 5, 1, false); | |
988 ImageProcessing::ShiftScale(image2, image, 0, 1, false); | |
989 ASSERT_TRUE(TestGrayscale8Pixel(image2, 0, 0, 0)); | |
990 ASSERT_TRUE(TestGrayscale8Pixel(image2, 1, 0, 2)); | |
991 ASSERT_TRUE(TestGrayscale8Pixel(image2, 2, 0, 5)); | |
992 ASSERT_TRUE(TestGrayscale8Pixel(image2, 3, 0, 10)); | |
993 ASSERT_TRUE(TestGrayscale8Pixel(image2, 4, 0, 255)); | |
994 } | |
995 | |
996 | |
978 TEST(ImageProcessing, ShiftScaleGrayscale16) | 997 TEST(ImageProcessing, ShiftScaleGrayscale16) |
979 { | 998 { |
980 Image image(PixelFormat_Grayscale16, 5, 1, false); | 999 Image image(PixelFormat_Grayscale16, 5, 1, false); |
981 SetGrayscale16Pixel(image, 0, 0, 0); | 1000 SetGrayscale16Pixel(image, 0, 0, 0); |
982 SetGrayscale16Pixel(image, 1, 0, 2); | 1001 SetGrayscale16Pixel(image, 1, 0, 2); |
1006 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 0, 0, -197)); | 1025 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 0, 0, -197)); |
1007 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 1, 0, -174)); | 1026 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 1, 0, -174)); |
1008 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 2, 0, -139)); | 1027 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 2, 0, -139)); |
1009 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 3, 0, -82)); | 1028 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 3, 0, -82)); |
1010 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 4, 0, 2736)); | 1029 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 4, 0, 2736)); |
1030 } | |
1031 | |
1032 | |
1033 TEST(ImageProcessing, ShiftScaleSignedGrayscale16_Identity) | |
1034 { | |
1035 Image image(PixelFormat_SignedGrayscale16, 5, 1, false); | |
1036 SetSignedGrayscale16Pixel(image, 0, 0, 0); | |
1037 SetSignedGrayscale16Pixel(image, 1, 0, 2); | |
1038 SetSignedGrayscale16Pixel(image, 2, 0, 5); | |
1039 SetSignedGrayscale16Pixel(image, 3, 0, 10); | |
1040 SetSignedGrayscale16Pixel(image, 4, 0, 255); | |
1041 | |
1042 ImageProcessing::ShiftScale(image, 0, 1, true); | |
1043 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 0, 0, 0)); | |
1044 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 1, 0, 2)); | |
1045 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 2, 0, 5)); | |
1046 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 3, 0, 10)); | |
1047 ASSERT_TRUE(TestSignedGrayscale16Pixel(image, 4, 0, 255)); | |
1011 } | 1048 } |
1012 | 1049 |
1013 | 1050 |
1014 TEST(ImageProcessing, ShiftScale2) | 1051 TEST(ImageProcessing, ShiftScale2) |
1015 { | 1052 { |