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.8.0.tar.gz (72.6 kB view details)

Uploaded Source

Built Distributions

tesserocr-2.8.0-cp313-cp313-musllinux_1_2_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

tesserocr-2.8.0-cp313-cp313-manylinux_2_28_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

tesserocr-2.8.0-cp313-cp313-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

tesserocr-2.8.0-cp313-cp313-macosx_15_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

tesserocr-2.8.0-cp313-cp313-macosx_13_0_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

tesserocr-2.8.0-cp312-cp312-musllinux_1_2_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

tesserocr-2.8.0-cp312-cp312-manylinux_2_28_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

tesserocr-2.8.0-cp312-cp312-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

tesserocr-2.8.0-cp312-cp312-macosx_15_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

tesserocr-2.8.0-cp312-cp312-macosx_13_0_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

tesserocr-2.8.0-cp311-cp311-musllinux_1_2_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

tesserocr-2.8.0-cp311-cp311-manylinux_2_28_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

tesserocr-2.8.0-cp311-cp311-macosx_15_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

tesserocr-2.8.0-cp311-cp311-macosx_13_0_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

tesserocr-2.8.0-cp310-cp310-musllinux_1_2_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

tesserocr-2.8.0-cp310-cp310-manylinux_2_28_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

tesserocr-2.8.0-cp310-cp310-macosx_15_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

tesserocr-2.8.0-cp310-cp310-macosx_13_0_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

tesserocr-2.8.0-cp39-cp39-musllinux_1_2_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

tesserocr-2.8.0-cp39-cp39-manylinux_2_28_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

tesserocr-2.8.0-cp39-cp39-macosx_15_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.9macOS 15.0+ ARM64

tesserocr-2.8.0-cp39-cp39-macosx_13_0_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

File details

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

File metadata

  • Download URL: tesserocr-2.8.0.tar.gz
  • Upload date:
  • Size: 72.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for tesserocr-2.8.0.tar.gz
Algorithm Hash digest
SHA256 be518d1b1b5ff54c11aada1e0fd12942509ea70581e0a8b39a2a473a0b2dbd36
MD5 e2eab7f7dfbf3723c775e7b4ab271cad
BLAKE2b-256 4fd6145858a1aff0310cdf709b8c5895d43660680202296ce6e5980dd2412d53

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a7a36af39aaf29a152c629cf62457192944f8854fbdd28395ef92d283e800662
MD5 3ce39592b32680087bb011506ae5621f
BLAKE2b-256 0511cf253d8de880f72924084e2570bc9df54e9d0013094c602a85cd962a70ff

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9ce710a73308964f2ac53f94b4980d2791bb67a82863bb7ef0ca445c1b325aa4
MD5 b91c8b5d7e20e579d2e292794043e996
BLAKE2b-256 13e4bf4ab45d49459d0e9e727603d5ed077552afd252e6e7886259e57fc9f10d

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b0dd849ce77373f9ac4b54d345b4d7115414e525e57a158e948887d744c6f909
MD5 7a0f26ee4f4fc6d7a12c4164398a2b16
BLAKE2b-256 760bb445adba94ccbabfe59e5cd0247285ccc4263103bed8fd54b835a973c200

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 1edd2302f4a91b5491a4ce3f63e612441adf92fd81b339b85cbedb3b5b40f206
MD5 74db2be1cf2f2e48baab64ed0cb29220
BLAKE2b-256 d99d7b8a8e29050d90446b81ccc5a3cc3256d62cff145628e718f7286a64dd14

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 44b3396d52379155fd838931b78b044129c7c77a8f02a92574cde626cff9b4a8
MD5 550b1d8c9eb965e81bf69bacb5f93de1
BLAKE2b-256 b2431739cf5e2223bf0ea270c933b71763b8a7c4616064e309e660c8e43bec02

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9ad1a2900424994ca5caa2470be04bd1c6ee3f0674b0050a34b556f6ba7d2ed5
MD5 a783f36028b61308c7c22fa0d1f99540
BLAKE2b-256 3f608f202b59f729ddb509d00449e946f4f355bf72c7c4d2ef9663c60240153d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7cb74e1ce1bc038a5cc6db90e5a79cb55d6db1b7e6fe7a0d9eb30475fdfd9036
MD5 045a8950dcaca972a223b01d23cc99c7
BLAKE2b-256 587cee6e4992b08713a494ce55764cbfae27d7b54396acbd2b7041a3d51d3096

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 426dfff81bae757faa25477feaf783f6f5bcdb94ae6a95f4fe24eda97f4825c0
MD5 1bd5cd815d99ec467a92764f121184c7
BLAKE2b-256 706666cacf504a0b7694239f7f959fab2834c87270d548a1f083cfcddfadba4f

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 c9acde3d66d6ef40f95e4cef424b24acbf90e278396827fc064915c665c6548d
MD5 a9bafd112c467938e777955379e4a6a9
BLAKE2b-256 2cdfdb162d7c6a5ee29946a56598d69777e7fb0f58e91d80693a004c1ed6f2d8

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7a0b03d46a0ad2265b83f461ca305a6e5aaac2626853a82012c6198bb4105d66
MD5 aad922503496d00c743f715e8192b2e4
BLAKE2b-256 83351d09dd15e84a328d3582642f7d264440cb9368ae05b6910e74c8b56ec1a9

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9dbe02605da205ce253524c4ca681a519a55258906ff8ca585f9df7bb1e78616
MD5 074929ea645e7e70c64a3c407777d075
BLAKE2b-256 3ea68b9d7597d4d77e6d8b71b7a9d1e62f0c5d6286ec6cc544cb6cb1efe5edca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4636a86269e97d60731a1edd16d29cb2c79a28cc91594d7f0af31ee65f72f4ae
MD5 e5b0ec365f24db3a1588167df90228c0
BLAKE2b-256 b10e32faa33d8f9fae046ad747531e5c98ee2b7d4cc27de2eb165670456c6134

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e89b4928eefcea953ad70ed03fb344568d1a574347d1f0d18699d01a020a7c7e
MD5 11c1fd4b162f051efb6e5d5f77c35bf5
BLAKE2b-256 961f663cf5aa9c0047ab7cf7d139e3009c0b0a88ec52b30bd3bec5c06b4f6144

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 09d8c55838a0085662d2a07a40843a6bbbd6baf44b45eda01df307cdac17089c
MD5 60174d1f4d4a3c4705364ee8f4fa519f
BLAKE2b-256 db421436780fcfa71dc472d4eee121e0180af5d8398ee494e897dbc0b13bef3f

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 88876546ddadc9590800df5dec7f2acbd35a423f0803ca2f17a93567aabbd877
MD5 a4409aa266f553c319d9a7e9e90e25ae
BLAKE2b-256 43913359a2bc108491c678897c9ca48b96763c595fe479c41bddc233f2536e1c

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c47c69177e948f567f818dec308717a679bdd3941fd5d3fc6cd9ecf93fe165a4
MD5 13a501a0e509d38463e2c678cfcdc4a3
BLAKE2b-256 7c8c5f186c0adb17033d2ef3b8dd649627e7e6add6b68f46b38297fe6866e3f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4ac659c3207fd3c0e43081a51e486e3d42259abd20bbaed6cd2ee4cd332a78c0
MD5 ca99dbe048a42db1bb0cf033f0ff0fb9
BLAKE2b-256 d00ce0889445889b3c0c3cc79baf50fb4f7762788cb3b7ac07ce8ce6bd0e40ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ad52bb2b1d48b7db6fed379a6805c2437432374fab98b0ab5071ff3fc81efaf2
MD5 51cd9fd928e4f710620f25be12355f1a
BLAKE2b-256 f9497d3a25d35297e4dab82fa476b6f33545ebdf62d33c51640ba6cf2f683740

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 55d0e018d34054fa7f875cd126abaf423de4069fde49d638a399de530949055b
MD5 3279ee901d10644cdd1e97ebfc1bf1c5
BLAKE2b-256 bb6702264107a495b437438adc88ffbc79c7a2b71900a20c1b8561a96d308533

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b5d5dcabe688bf7bb76f87eef05783aa1d305c9566b7f6f6735a12f224ca379b
MD5 9a0235de58c81c42c9294317148b05ca
BLAKE2b-256 965228330ff9f9f9dcf0fbc1829da481a90c9327059b557aed458405ee515a59

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 317931096378a1dd056500d9c3a489aa0e4546e4d7792a6ffa1a31c0902ab365
MD5 30fa548f176d52911f69ab4e57ebd393
BLAKE2b-256 6667b1dec4be3cc4f6294c36f0efd7da4b02f618e99433e3e8cb10c8f0c60dc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b41a78eaa35c90d61facd07dca96443e7dc1f0604ae955843be916e2f9a225af
MD5 2c76f3c959d98ee83ac4de46a45b26df
BLAKE2b-256 18fb69e8730b09ae99c275fee57d1edb445f475cacf91de37737156cec77ae1d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 efef77ed8702d56a3dc7ba5dba37ce13beecd24128042ad41cbc20c50bb5e23e
MD5 0d4eb4a9b9a809cc8eddf3b0a116f4dc
BLAKE2b-256 1f21d8209980ceca9a6e92ea75a448140e42013b190cb5b7ce2840ba18097034

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp39-cp39-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp39-cp39-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 10fa0125d57c9edc93a7f35673f6b977e0fc0deb123d62b158c93fd8ca4c1c2c
MD5 991d7f9373922697eab94a2bfa275c3a
BLAKE2b-256 51e3ff9e5f5bfda1532f1767a669bbc883c9e7b3071aa3f0c09a29845ef8a85d

See more details on using hashes here.

File details

Details for the file tesserocr-2.8.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for tesserocr-2.8.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 f83344e350062d7db8625aa21695d34949a25e1f144788996a0e1e91dc53ca45
MD5 bddf52bbb643c91454a299810509d456
BLAKE2b-256 9dd9d16bc2428713ed9837d5ebaf3caeaf4601505d8e4c56ec0e926fb9414d6a

See more details on using hashes here.

Supported by

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