Skip to main content

OCR/HTR engine for all the languages

Project description

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 only runs on Linux or Mac OS X. Windows is not supported.

The latest stable releases can be installed either from PyPi:

$ pip install kraken

or through conda:

$ conda install -c conda-forge -c mittagessen kraken

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]

or install pyvips manually with pip:

$ pip install pyvips

Conda environment files are provided for the seamless installation of the main branch as well:

$ git clone https://github.com/mittagessen/kraken.git
$ cd kraken
$ conda env create -f environment.yml

or:

$ git clone https://github.com/mittagessen/kraken.git
$ cd kraken
$ conda env create -f environment_cuda.yml

for CUDA acceleration with the appropriate hardware.

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

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 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+).

Project details


Release history Release notifications | RSS feed

This version

5.2.7

Download files

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

Source Distribution

kraken-5.2.7.tar.gz (12.8 MB view details)

Uploaded Source

Built Distribution

kraken-5.2.7-py3-none-any.whl (5.0 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: kraken-5.2.7.tar.gz
  • Upload date:
  • Size: 12.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for kraken-5.2.7.tar.gz
Algorithm Hash digest
SHA256 5d85bf1eb2da37cc6ae6b86574a3bba86d3b73b92eaad7d10485952e8acf45d5
MD5 3d785bc328cbcf6496fe174e3a822e0e
BLAKE2b-256 0822160f549185742216e0567a7d67b9bea3bb6b8efd877c3fde2ce1195629f0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: kraken-5.2.7-py3-none-any.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for kraken-5.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 9d86f99d4ef7d1491833d14834d75072c171edc2105aacd5cb652b4a2aad9183
MD5 68675f8d93c530be127031607e0efedb
BLAKE2b-256 59c4ee1a853002bcffecf3179b50157882480c0fc0c2648ad431acd1f62e01ed

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