From 52b8bb6761d2e3270bdd9f5a9dea3a00a85914c0 Mon Sep 17 00:00:00 2001 From: Ilya Lavrenov Date: Fri, 27 Dec 2013 13:18:31 +0400 Subject: [PATCH] fixed getUMatIndex --- modules/imgproc/src/histogram.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/modules/imgproc/src/histogram.cpp b/modules/imgproc/src/histogram.cpp index 86575c9be3..71127b6385 100644 --- a/modules/imgproc/src/histogram.cpp +++ b/modules/imgproc/src/histogram.cpp @@ -1940,10 +1940,16 @@ static void getUMatIndex(const std::vector & um, int cn, int & idx, int & int ccn = um[i].channels(); totalChannels += ccn; - if (totalChannels >= cn) + if (totalChannels == cn) + { + idx = (int)(i + 1); + cnidx = 0; + return; + } + else if (totalChannels > cn) { idx = (int)i; - cnidx = i == 0 ? cn : cn % (totalChannels - ccn); + cnidx = i == 0 ? cn : (cn - totalChannels + ccn); return; } }