Skip to main content

Description

https://github.com/mittagessen/kraken/actions/workflows/test.yml/badge.svg

kraken is a turn-key OCR system optimized for historical and non-Latin script material.

kraken’s main features are:

  • Fully trainable layout analysis, reading order, and character recognition

  • Right-to-Left, BiDi, and Top-to-Bottom script support

  • ALTO, PageXML, abbyyXML, and hOCR output

  • Word bounding boxes and character cuts

  • Multi-script recognition support

  • Public repository of model files

  • Variable recognition network architecture

Installation

Kraken can be run on Linux or Mac OS X (both x64 and ARM). Installation is through the on-board pip utility. To not pollute the global state of your distribution’s package manager it is recommended to use virtual environments. If you do not have a setup or do not wish to handle virtual environments yourself you can use pipx.

$ sudo apt install pipx
$ pipx install kraken

kraken works both on Linux and Mac OS X and with any python interpreter between 3.10 and 3.13. It is possible the installation fails because pipx defaults to an unsupported interpreter version. In that case you need to install a compatible interpreter version such as 3.11 and then specify this version explicitly:

$ sudo apt install python3.13-full
$ pipx install --python python3.13 kraken

Installation using pip

Create and activate a separate virtual environment using whatever tool you like.

$ pip install kraken

or by running pip in the git repository:

$ pip install .

If you want direct PDF and multi-image TIFF/JPEG2000 support it is necessary to install the pdf extras package for PyPi:

$ pip install kraken[pdf]

Finally you’ll have to scrounge up a model to do the actual recognition of characters. To download the default model for printed French text and place it in the kraken directory for the current user:

$ kraken get 10.5281/zenodo.10592716

A list of libre models available in the central repository can be retrieved by running:

$ kraken list

Tests can be run with pytest. This requires additional installations:

$ pip install ".[augment,test]"
$ pytest

Quickstart

Recognizing text on an image using the default parameters including the prerequisite steps of binarization and page segmentation:

$ kraken -i image.tif image.txt binarize segment ocr

To binarize a single image using the nlbin algorithm:

$ kraken -i image.tif bw.png binarize

To segment an image (binarized or not) with the new baseline segmenter:

$ kraken -i image.tif lines.json segment -bl

To segment and OCR an image using the default model(s):

$ kraken -i image.tif image.txt segment -bl ocr -m catmus-print-fondue-large.mlmodel

All subcommands and options are documented. Use the help option to get more information.

Documentation

Have a look at the docs.

Funding

kraken is developed at the École Pratique des Hautes Études, Université PSL.

Co-financed by the European Union

This project was funded in part by the European Union (ATRIUM, project number 101132163). This project was funded in part by the European Union (ERC, MiDRASH, project number 101071829). This project was partially funded through the RESILIENCE project, funded from the European Union’s Horizon 2020 Framework Programme for Research and Innovation.

Received funding from the Programme d’investissements d’Avenir

Ce travail a bénéficié d’une aide de l’État gérée par l’Agence Nationale de la Recherche au titre du Programme d’Investissements d’Avenir portant la référence ANR-21-ESRE-0005 (Biblissima+).

Download files

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

Source Distribution

kraken-7.1.1.tar.gz (5.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kraken-7.1.1-py3-none-any.whl (5.1 MB view details)

Uploaded Python 3

File details

Details for the file kraken-7.1.1.tar.gz.

File metadata

  • Download URL: kraken-7.1.1.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for kraken-7.1.1.tar.gz
Algorithm Hash digest
SHA256 489079856742ad308a069321a62f89c4eecb008ef4529798a19ff8799ae875d5
MD5 1c86421a2e907f73df45643126c5f56e
BLAKE2b-256 a99ca623b19650204e656f4c1ff5b71cabc15893e48496fe325a1a6f26a82228

See more details on using hashes here.

Provenance

The following attestation bundles were made for kraken-7.1.1.tar.gz:

Publisher: test.yml on mittagessen/kraken

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kraken-7.1.1-py3-none-any.whl.

File metadata

  • Download URL: kraken-7.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for kraken-7.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 82faba07d9fa4746cb822c669e822570f8a8c42a9ac1570ad187326cedbd48e4
MD5 955e8cda7dfb5dfa3c823c87a0ab1cef
BLAKE2b-256 69e00f1205e32788602a219017bb9ccf53ae705ec0588c510c76bc0d6a1af380

See more details on using hashes here.

Provenance

The following attestation bundles were made for kraken-7.1.1-py3-none-any.whl:

Publisher: test.yml on mittagessen/kraken

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

7.1.1 This release

2 files

7.1

2 files

7.0.3

2 files

7.0.2

2 files

7.0.1

2 files

7.0

2 files

6.0.3

2 files

6.0.2

2 files

6.0.0

2 files

5.3.0

2 files

5.2.9

2 files

5.2.8

2 files

5.2.7

2 files

5.2.6

2 files

5.2.5

2 files

5.2.4

2 files

5.2.3

2 files

5.2.2

2 files

5.2.1

2 files

5.2.0

2 files

5.0.0

2 files

4.3.13

2 files

4.3.12

2 files

4.3.11

2 files

4.3.10

2 files

4.3.9

2 files

4.3.7

2 files

4.3.6

2 files

4.3.5

2 files

4.3.4

2 files

4.3.3

2 files

4.3.2

2 files

4.3.1

2 files

4.3.0

2 files

4.2.0

2 files

4.1.2

2 files

4.1.1

2 files

4.1.0

2 files

4.0.0

2 files

3.0.13

2 files

3.0.9

2 files

3.0.8

2 files

3.0.7

2 files

3.0.6

2 files

3.0.4

2 files

3.0.2

2 files

3.0.1

2 files

2.0.8

2 files

2.0.5

2 files

2.0.4

2 files

2.0.3

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

1.0.1

2 files

1.0.0

2 files

0.9.16

2 files

0.9.15

2 files

0.9.14

2 files

0.9.13

2 files

0.9.12

2 files

0.9.11

2 files

0.9.10

2 files

0.9.9

2 files

0.9.8

2 files

0.9.7

2 files

0.9.6

2 files

0.9.4

2 files

0.9.3

2 files

0.9.2

2 files

0.9.0

2 files

0.7.6

2 files

0.7.5

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.3

2 files

0.6.2

2 files

0.6.2.dev1

0.5.0

2 files

0.4.7

2 files

0.4.6

2 files

0.4.5

2 files

0.4.4

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.3.4

2 files

0.3.3

2 files

0.3.1.post11

0.3.1.post10

0.3.1

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.1.0

2 files

0.1-dev

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page