From 8431164bc6b522d8c26bd89498f3da1ee7e376be Mon Sep 17 00:00:00 2001 From: yuyoyuppe Date: Thu, 25 Aug 2022 12:58:46 +0200 Subject: [PATCH] improve sum of all channel diffs method score calc --- src/modules/MeasureTool/MeasureToolCore/BGRATextureView.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/modules/MeasureTool/MeasureToolCore/BGRATextureView.h b/src/modules/MeasureTool/MeasureToolCore/BGRATextureView.h index 2ada059c15..05fbc53bfe 100644 --- a/src/modules/MeasureTool/MeasureToolCore/BGRATextureView.h +++ b/src/modules/MeasureTool/MeasureToolCore/BGRATextureView.h @@ -8,6 +8,7 @@ #include #endif #include +#include //#define DEBUG_TEXTURE @@ -115,7 +116,8 @@ struct BGRATextureView else { // Method 2: Test whether sum of all channel differences is smaller than tolerance - return _mm_cvtsi128_si32(_mm_sad_epu8(distances, _mm_setzero_si128())) <= tolerance; + const int32_t score = _mm_cvtsi128_si32(_mm_sad_epu8(distances, _mm_setzero_si128())); + return std::clamp(score, 0, std::numeric_limits::max()) <= tolerance; } }