comparison mupdf-source/thirdparty/zxing-cpp/core/src/GlobalHistogramBinarizer.h @ 3:2c135c81b16c

MERGE: upstream PyMuPDF 1.26.4 with MuPDF 1.26.7
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:44:09 +0200
parents b50eed0cc0ef
children
comparison
equal deleted inserted replaced
0:6015a75abc2d 3:2c135c81b16c
1 /*
2 * Copyright 2016 Nu-book Inc.
3 * Copyright 2016 ZXing authors
4 */
5 // SPDX-License-Identifier: Apache-2.0
6
7 #pragma once
8
9 #include "BinaryBitmap.h"
10
11 namespace ZXing {
12
13 /**
14 * This Binarizer implementation uses the old ZXing global histogram approach. It is suitable
15 * for low-end mobile devices which don't have enough CPU or memory to use a local thresholding
16 * algorithm. However, because it picks a global black point, it cannot handle difficult shadows
17 * and gradients.
18 *
19 * Faster mobile devices and all desktop applications should probably use HybridBinarizer instead.
20 *
21 * @author dswitkin@google.com (Daniel Switkin)
22 * @author Sean Owen
23 */
24 class GlobalHistogramBinarizer : public BinaryBitmap
25 {
26 public:
27 explicit GlobalHistogramBinarizer(const ImageView& buffer);
28 ~GlobalHistogramBinarizer() override;
29
30 bool getPatternRow(int row, int rotation, PatternRow &res) const override;
31 std::shared_ptr<const BitMatrix> getBlackMatrix() const override;
32 };
33
34 } // ZXing