Skip to main content

A simple, Pillow-friendly, Python wrapper around tesseract-ocr API using Cython

Project description

A simple, Pillow-friendly, wrapper around the tesseract-ocr API for Optical Character Recognition (OCR).

Github Actions build status Latest version on PyPi Supported python versions

tesserocr integrates directly with Tesseract’s C++ API using Cython which allows for a simple Pythonic and easy-to-read source code. It enables real concurrent execution when used with Python’s threading module by releasing the GIL while processing an image in tesseract.

tesserocr is designed to be Pillow-friendly but can also be used with image files instead.

Requirements

Requires libtesseract (>=3.04) and libleptonica (>=1.71).

On Debian/Ubuntu:

$ apt-get install tesseract-ocr libtesseract-dev libleptonica-dev pkg-config

You may need to manually compile tesseract for a more recent version. Note that you may need to update your LD_LIBRARY_PATH environment variable to point to the right library versions in case you have multiple tesseract/leptonica installations.

Cython (>=0.23) is required for building and optionally Pillow to support PIL.Image objects.

Installation

Linux and BSD/MacOS

$ pip install tesserocr

The setup script attempts to detect the include/library dirs (via pkg-config if available) but you can override them with your own parameters, e.g.:

$ CPPFLAGS=-I/usr/local/include pip install tesserocr

or

$ python setup.py build_ext -I/usr/local/include

Tested on Linux and BSD/MacOS

Windows

The proposed downloads consist of stand-alone packages containing all the Windows libraries needed for execution. This means that no additional installation of tesseract is required on your system.

The recommended method of installation is via Conda as described below.

Conda

You can use the simonflueckiger channel to install from Conda:

> conda install -c simonflueckiger tesserocr

Or alternatively the conda-forge channel:

> conda install -c conda-forge tesserocr

pip

Download the wheel file corresponding to your Windows platform and Python installation from simonflueckiger/tesserocr-windows_build/releases and install them via:

> pip install <package_name>.whl

Build from source

If you need Windows tessocr package and your Python version is not supported by above mentioned project, you can try to follow step by step instructions for Windows 64bit in Windows.build.md.

tessdata

You may need to point to the tessdata path if it cannot be detected automatically. This can be done by setting the TESSDATA_PREFIX environment variable or by passing the path to PyTessBaseAPI (e.g.: PyTessBaseAPI(path='/usr/share/tessdata')). The path should contain .traineddata files which can be found at https://github.com/tesseract-ocr/tessdata.

Make sure you have the correct version of traineddata for your tesseract --version.

You can list the current supported languages on your system using the get_languages function:

from tesserocr import get_languages

print(get_languages('/usr/share/tessdata'))  # or any other path that applies to your system

Usage

Initialize and re-use the tesseract API instance to score multiple images:

from tesserocr import PyTessBaseAPI

images = ['sample.jpg', 'sample2.jpg', 'sample3.jpg']

with PyTessBaseAPI() as api:
    for img in images:
        api.SetImageFile(img)
        print(api.GetUTF8Text())
        print(api.AllWordConfidences())
# api is automatically finalized when used in a with-statement (context manager).
# otherwise api.End() should be explicitly called when it's no longer needed.

PyTessBaseAPI exposes several tesseract API methods. Make sure you read their docstrings for more info.

Basic example using available helper functions:

import tesserocr
from PIL import Image

print(tesserocr.tesseract_version())  # print tesseract-ocr version
print(tesserocr.get_languages())  # prints tessdata path and list of available languages

image = Image.open('sample.jpg')
print(tesserocr.image_to_text(image))  # print ocr text from image
# or
print(tesserocr.file_to_text('sample.jpg'))

image_to_text and file_to_text can be used with threading to concurrently process multiple images which is highly efficient.

Advanced API Examples

GetComponentImages example:

from PIL import Image
from tesserocr import PyTessBaseAPI, RIL

image = Image.open('/usr/src/tesseract/testing/phototest.tif')
with PyTessBaseAPI() as api:
    api.SetImage(image)
    boxes = api.GetComponentImages(RIL.TEXTLINE, True)
    print('Found {} textline image components.'.format(len(boxes)))
    for i, (im, box, _, _) in enumerate(boxes):
        # im is a PIL image object
        # box is a dict with x, y, w and h keys
        api.SetRectangle(box['x'], box['y'], box['w'], box['h'])
        ocrResult = api.GetUTF8Text()
        conf = api.MeanTextConf()
        print(u"Box[{0}]: x={x}, y={y}, w={w}, h={h}, "
              "confidence: {1}, text: {2}".format(i, conf, ocrResult, **box))

Orientation and script detection (OSD):

from PIL import Image
from tesserocr import PyTessBaseAPI, PSM

with PyTessBaseAPI(psm=PSM.AUTO_OSD) as api:
    image = Image.open("/usr/src/tesseract/testing/eurotext.tif")
    api.SetImage(image)
    api.Recognize()

    it = api.AnalyseLayout()
    orientation, direction, order, deskew_angle = it.Orientation()
    print("Orientation: {:d}".format(orientation))
    print("WritingDirection: {:d}".format(direction))
    print("TextlineOrder: {:d}".format(order))
    print("Deskew angle: {:.4f}".format(deskew_angle))

or more simply with OSD_ONLY page segmentation mode:

from tesserocr import PyTessBaseAPI, PSM

with PyTessBaseAPI(psm=PSM.OSD_ONLY) as api:
    api.SetImageFile("/usr/src/tesseract/testing/eurotext.tif")

    os = api.DetectOS()
    print("Orientation: {orientation}\nOrientation confidence: {oconfidence}\n"
          "Script: {script}\nScript confidence: {sconfidence}".format(**os))

more human-readable info with tesseract 4+ (demonstrates LSTM engine usage):

from tesserocr import PyTessBaseAPI, PSM, OEM

with PyTessBaseAPI(psm=PSM.OSD_ONLY, oem=OEM.LSTM_ONLY) as api:
    api.SetImageFile("/usr/src/tesseract/testing/eurotext.tif")

    os = api.DetectOrientationScript()
    print("Orientation: {orient_deg}\nOrientation confidence: {orient_conf}\n"
          "Script: {script_name}\nScript confidence: {script_conf}".format(**os))

Iterator over the classifier choices for a single symbol:

from __future__ import print_function

from tesserocr import PyTessBaseAPI, RIL, iterate_level

with PyTessBaseAPI() as api:
    api.SetImageFile('/usr/src/tesseract/testing/phototest.tif')
    api.SetVariable("save_blob_choices", "T")
    api.SetRectangle(37, 228, 548, 31)
    api.Recognize()

    ri = api.GetIterator()
    level = RIL.SYMBOL
    for r in iterate_level(ri, level):
        symbol = r.GetUTF8Text(level)  # r == ri
        conf = r.Confidence(level)
        if symbol:
            print(u'symbol {}, conf: {}'.format(symbol, conf), end='')
        indent = False
        ci = r.GetChoiceIterator()
        for c in ci:
            if indent:
                print('\t\t ', end='')
            print('\t- ', end='')
            choice = c.GetUTF8Text()  # c == ci
            print(u'{} conf: {}'.format(choice, c.Confidence()))
            indent = True
        print('---------------------------------------------')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tesserocr-2.7.1.tar.gz (71.8 kB view details)

Uploaded Source

Built Distributions

tesserocr-2.7.1-cp312-cp312-musllinux_1_1_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

tesserocr-2.7.1-cp312-cp312-manylinux_2_28_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

tesserocr-2.7.1-cp312-cp312-manylinux_2_28_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ ARM64

tesserocr-2.7.1-cp312-cp312-macosx_11_0_arm64.whl (221.5 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

tesserocr-2.7.1-cp312-cp312-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

tesserocr-2.7.1-cp311-cp311-musllinux_1_1_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

tesserocr-2.7.1-cp311-cp311-manylinux_2_28_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

tesserocr-2.7.1-cp311-cp311-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ ARM64

tesserocr-2.7.1-cp311-cp311-macosx_11_0_arm64.whl (221.2 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

tesserocr-2.7.1-cp311-cp311-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

tesserocr-2.7.1-cp310-cp310-musllinux_1_1_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

tesserocr-2.7.1-cp310-cp310-manylinux_2_28_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

tesserocr-2.7.1-cp310-cp310-manylinux_2_28_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ ARM64

tesserocr-2.7.1-cp310-cp310-macosx_11_0_arm64.whl (218.0 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

tesserocr-2.7.1-cp310-cp310-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

tesserocr-2.7.1-cp39-cp39-musllinux_1_1_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

tesserocr-2.7.1-cp39-cp39-manylinux_2_28_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

tesserocr-2.7.1-cp39-cp39-manylinux_2_28_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ ARM64

tesserocr-2.7.1-cp39-cp39-macosx_11_0_arm64.whl (218.2 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

tesserocr-2.7.1-cp39-cp39-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

tesserocr-2.7.1-cp38-cp38-musllinux_1_1_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

tesserocr-2.7.1-cp38-cp38-manylinux_2_28_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

tesserocr-2.7.1-cp38-cp38-manylinux_2_28_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ ARM64

tesserocr-2.7.1-cp38-cp38-macosx_11_0_arm64.whl (217.6 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

tesserocr-2.7.1-cp38-cp38-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file tesserocr-2.7.1.tar.gz.

File metadata

  • Download URL: tesserocr-2.7.1.tar.gz
  • Upload date:
  • Size: 71.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for tesserocr-2.7.1.tar.gz
Algorithm Hash digest
SHA256 3744c5c8bbabf18172849c7731be00dc2e5e44f8c556d37c850e788794ae0af4
MD5 cec9cd32334c4e3591fc74c22849f954
BLAKE2b-256 1c2621e95383b4316773dab9db892885e2eae74da05f14d520de7b66e5f9ddbb

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 4c5f59fb072c90bff8aa6a365fc82b747c2668b7b48233901728b155860d1ff9
MD5 93a7fd3930ad6d3aa5e6f775d1ff4f79
BLAKE2b-256 8b134069a2c9560bd9174334fe1f1f3b0276bbf5f886f2827eef46e8d6bae25d

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 65afdec0c5dc09a4a23a62e65524989cd940af41be1603e251a64ac10de9babf
MD5 69654a46d8e7678408e2b863d5a0cb61
BLAKE2b-256 52334b77784543a09f2a8da8194667d7a1f8d4c5ed3daf39fdbd6003901214c7

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6e13204b3b92fac76ece6e33f55eba6335b30e379f4a7b75e285c2ad05762027
MD5 b6210faf658bcf9ba3a892d0d97b7236
BLAKE2b-256 20208c0e1b140cb1dea1ef8e4c5223b373b8dc1f6b873a54d5131640fd6d555a

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42f009cde8479f3b339da12a8e419fd9559b64b13bc08a248bd0833c6ae94331
MD5 8ce11b4a9bb67cdbd49186ded40e51f9
BLAKE2b-256 c6e1fc5f38e66197cfa7ccab9ccb6cf5691cf17a06e23d78a6d7f5cf2931f55f

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1b6349d35d333d420d24acf1953ad6f1d5613ffcde462c62126b68bdfca12753
MD5 68eeafa2bc7ff7fd8eed819e6de8866f
BLAKE2b-256 3b3410270bd2660e153c324fd0612435655e0c7b1fe9a888357c65e23f03146d

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 37abde15c1c940d691305fd87836e4cad25a1434799729c324bbcd2277bcae44
MD5 9690431626220db03e870092df66f53f
BLAKE2b-256 efbf76de5eb0b81bf34f2767b33091ff3af669d989bf0be19ed7c6e082a9e51f

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e31a49d7784e7e52fe656719145c3a872856d67daa9bfb340c2990db00e023e9
MD5 ced1aaacb8c239ed4119cfa3777c103c
BLAKE2b-256 218093ff9fc65d76d1ede7fb21454959568fe354e905d8f8dd26d46190c42700

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 44e71b3e8da36b2567760309398689ea9785ee62db3ff21140a9ea6941a233c4
MD5 1cc3e058e9d0522e8cc8c50ae5be8a2c
BLAKE2b-256 ed2c40e19b255cc5f37426b87028b1bae81ec151767fa3294518699e5f22801e

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec52be3d82136430081427062ad0211a52fc38fa28fe58e216b89f840354f216
MD5 2803ee386ca39fa507fef3a3a411cf1a
BLAKE2b-256 44f480946ebce8f9549aefa53cf810cb3991823eb567bc217764bf9e97e7bbfb

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4c3187d14b95c866aa1d34cc374a53d583e2168742eefe33347e4790af70338e
MD5 36838dd993823b740ac0b737a505b26c
BLAKE2b-256 c55e35840da36e0a867b05993e7cb43a7295fc6bc378e5361d689c172a56ec59

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0a0895a4d9ff6a34f5a6f203fe0c9899f31d6f2378ae99be80605637b622687b
MD5 3809d3f683d2c840077a33667c30838e
BLAKE2b-256 4eaa44d493decf9a4959f772f3ae6b72782a996dd70ec956827f229dbeac039c

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ae794c5434373f4afa4c7f8b59f19fde810f8caf096d8bb701a4b2f3a6739460
MD5 a2a15786e888d3100aaf4ee35b4edc8e
BLAKE2b-256 d29f27228f8b1955df7f0f25957081bd3a159d2d7986a82e8a456275698a6c17

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3ff7f6d6b5c12dd31b80842eb0892b661a41ca3edf0e6cc1e54ec2c14552ceef
MD5 b92e9b61b8a82e9537bbc426899de1b7
BLAKE2b-256 a0ad584d829721da26f0de0679729e5938e4579e372986d3fe2df0da1a10750e

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3bb5d336ebf2cc47cd0d117cadc8b25b2e558f54fb9a2dedaa28a14cb5a6b437
MD5 039452af042a7cba698cf2ebb3329f21
BLAKE2b-256 5c5e2ecaad24fa0dc21edaecde54188bf0c361954ab3d184ec597f7771aa8489

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1b8c4828f970af7bcfca83a1fb228aa68a2587299387bc875d0dfad8b6baf8ed
MD5 c098f2265f2ee2e4fb5ad4e9e113f5fa
BLAKE2b-256 e61b75692340ebe441fbd714c8b1ccc33399969acb43a62578a8ec748b9b5c16

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 64f25763e56c4c29b808e59b485c930cac46b6a1ac8eadd994086dc40a29d3a1
MD5 630755c6643827608cfd4ae5d12b3d07
BLAKE2b-256 a0ebef4256e5f6877f04135f8593b0aec6df853736f86d261057dcbe0c985c15

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4a8888b765e26680a6e34b8ec09b7bb85a17e08cea76f0661eafe2a84254562a
MD5 5af272a697b96112fc06e07ad834c063
BLAKE2b-256 d7854f1c60ccff2cf41cddd60f79588410071df8342c70b979b428988adf5c86

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6e613213ea5b64db06f2cba0b93c3656b7e6aec2d9b2d2e929edf49da7143225
MD5 8ad19acf755c4e3c991dea3bf6e8b12b
BLAKE2b-256 76960bc89097513ed9e9de6ef907e9495063e3b61d50e18e25452178c593af55

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ef8a09a44c2e96bab0f40dbf0633767d063680d86b79365b43fc4e1234219694
MD5 45e90a85c21aa906328cc62caef9ca19
BLAKE2b-256 598e91dd449bf3037a5822f46e3982f4a651f7a7890554749b6a5490b908aed1

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b2d3d23223d0a448877fb91af83c46ce95ff0a497a82fa93e93068148c9712e5
MD5 56b312b20b3636fbbeb91df3386273b7
BLAKE2b-256 024c31a49c2867c5f799614b90ea19c94985cc674cdeea93fbb738cdfef7f0cc

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 f8069ae6cd9ea3c056b6a596bc99f501ee9f95d6fd2928fcaffb9777071c210d
MD5 eff830f7f700cf40580f74dc3b63f99b
BLAKE2b-256 ba0defdf49a8dbea95f895e91ac395e61b91f8bef6223634be9a01b62e582567

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d01ebd094103451ecb77b6510ade2f6bb064c51413ff35b135f649f3d6067a67
MD5 c44e95fee2ff099434d573460e92f2af
BLAKE2b-256 f80accf692d9d7146be7b8f1d4aff8c1e4927a4b7f77347b4d0dcb37ce6895e7

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2690cb2330fc9349d68ff027cbdac09693fdda36470836b196c04f16dcc99e9d
MD5 b0cdba412268a42914876f5ca7ea1c24
BLAKE2b-256 53b6cf74dec9251f0548738980dc427a9edc6fc13754ea0ece74f7918d960f60

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e80051812685bd521bc17cb70cf1480ffbb3e54ccc2883e90d5bcda15f8278ea
MD5 8a90dcbb55b41360c8ed4b1ac61446dc
BLAKE2b-256 aa6fe936612e8cbb63113dd1b7bbe2b9cef562bea5c7cb2ff05d5730345ee2f1

See more details on using hashes here.

File details

Details for the file tesserocr-2.7.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.7.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f62d662e3002868384e14e8cd620bdedf34ab9f9fc3ebbce527cfe032a7485ee
MD5 0217e169a90d9b2304d4f3b7ac6b6348
BLAKE2b-256 6add6782a31efff805392531a9aebdd121840b7eda8e06aceaf56e9a709ea4bc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page