From 17b9952822c591466b6248b0553cabf90ba6d03f Mon Sep 17 00:00:00 2001 From: flyashi Date: Wed, 4 Aug 2010 14:09:09 +0000 Subject: [PATCH] C++ port: add changes to HybridBinarizer This closes Issue 490. git-svn-id: https://zxing.googlecode.com/svn/trunk@1507 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- cpp/core/src/zxing/common/HybridBinarizer.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cpp/core/src/zxing/common/HybridBinarizer.cpp b/cpp/core/src/zxing/common/HybridBinarizer.cpp index 65d03ee89..7fdb6642d 100644 --- a/cpp/core/src/zxing/common/HybridBinarizer.cpp +++ b/cpp/core/src/zxing/common/HybridBinarizer.cpp @@ -129,7 +129,12 @@ int* HybridBinarizer::calculateBlackPoints(unsigned char* luminances, int subWid // If the contrast is inadequate, use half the minimum, so that this block will be // treated as part of the white background, but won't drag down neighboring blocks // too much. - int average = (max - min > 24) ? (sum >> 6) : (min >> 1); + int average; + if (max - min > 24) { + average = (sum >> 6); + } else { + average = max == 0 ? 1 : (min >> 1); + } blackPoints[y * subWidth + x] = average; } }