diff --git a/modules/photo/src/fast_nlmeans_denoising_invoker.hpp b/modules/photo/src/fast_nlmeans_denoising_invoker.hpp index 1dcb6b3ec..c4f13826d 100644 --- a/modules/photo/src/fast_nlmeans_denoising_invoker.hpp +++ b/modules/photo/src/fast_nlmeans_denoising_invoker.hpp @@ -257,7 +257,7 @@ void FastNlMeansDenoisingInvoker::operator() (const BlockedRange& range) cons } for (size_t channel_num = 0; channel_num < sizeof(T); channel_num++) - estimation[channel_num] = (estimation[channel_num] + weights_sum/2) / weights_sum; + estimation[channel_num] = ((unsigned)estimation[channel_num] + weights_sum/2) / weights_sum; dst_.at(i,j) = saturateCastFromArray(estimation); } diff --git a/modules/photo/src/fast_nlmeans_multi_denoising_invoker.hpp b/modules/photo/src/fast_nlmeans_multi_denoising_invoker.hpp index 870760b48..2ae5054e0 100644 --- a/modules/photo/src/fast_nlmeans_multi_denoising_invoker.hpp +++ b/modules/photo/src/fast_nlmeans_multi_denoising_invoker.hpp @@ -287,7 +287,7 @@ void FastNlMeansMultiDenoisingInvoker::operator() (const BlockedRange& range) } for (size_t channel_num = 0; channel_num < sizeof(T); channel_num++) - estimation[channel_num] = (estimation[channel_num] + weights_sum / 2) / weights_sum; + estimation[channel_num] = ((unsigned)estimation[channel_num] + weights_sum / 2) / weights_sum; dst_.at(i,j) = saturateCastFromArray(estimation);