You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Mike Gerber fb538845d8
📄 Update license (Fixes #35)
Set copyright owner name. Also, going along the lines of "update the year when substantial revision of the work happenend", set the copyright years. The latter may be not be necessary, because "life of author + 70 years" or something.
5 years ago
.circleci 🐛 CircleCI: Try upgrading pip 5 years ago
.idea 🔧 Add PyCharm project files 5 years ago
ocrd_calamari v0.0.6 5 years ago
test Allow controlling of output hierarchy level, e.g. only line, not words+glyphs 5 years ago
.coveragerc Only do the coverage on our code 5 years ago
.gitignore 📝 README: Provide a complete example using real data and other processors 5 years ago
Dockerfile 🐳 Docker: Run pip3 check for good measure 5 years ago
LICENSE 📄 Update license (Fixes #35) 5 years ago
Makefile 📝 Document make targets 5 years ago
README-DEV.md 📝 README-DEV: Improve info about releasing 5 years ago
README.md 📝 README: Add a missing `cd` 5 years ago
ocrd-tool.json . 7 years ago
requirements-test.txt Use GT segmentation to test 5 years ago
requirements.txt Do word segmentation as expected by OCR-D PAGE specs 5 years ago
setup.py v0.0.6 5 years ago

README.md

ocrd_calamari

Recognize text using Calamari OCR.

image image image

Introduction

This offers a OCR-D compliant workspace processor for the functionality of Calamari OCR.

This processor only operates on the text line level and so needs a line segmentation (and by extension a binarized image) as its input.

In addition to the line text it may also output word and glyph segmentation including per-glyph confidence values and per-glyph alternative predictions as provided by the Calamari OCR engine, using a textequiv_level of word or glyph. Note that while Calamari does not provide word segmentation, this processor produces word segmentation inferred from text segmentation and the glyph positions. The provided glyph and word segmentation can be used for text extraction and highlighting, but is probably not useful for further image-based processing.

Installation

From PyPI

pip install ocrd_calamari

From Repo

pip install .

Install models

Download models trained on GT4HistOCR data:

make gt4histocr-calamari
ls gt4histocr-calamari

Example Usage

Before using ocrd-calamari-recognize get some example data and model, and prepare the document for OCR:

# Download model and example data
make gt4histocr-calamari
make actevedef_718448162

# Create binarized images and line segmentation using other OCR-D projects
cd actevedef_718448162
ocrd-olena-binarize -p '{ "impl": "sauvola-ms-split" }' -I OCR-D-IMG -O OCR-D-IMG-BINPAGE,OCR-D-IMG-BIN
ocrd-tesserocr-segment-region -I OCR-D-IMG-BINPAGE -O OCR-D-SEG-REGION
ocrd-tesserocr-segment-line -I OCR-D-SEG-REGION -O OCR-D-SEG-LINE

Finally recognize the text using ocrd_calamari and the downloaded model:

ocrd-calamari-recognize -p '{ "checkpoint": "../gt4histocr-calamari/*.ckpt.json" }' -I OCR-D-SEG-LINE -O OCR-D-OCR-CALAMARI

You may want to have a look at the ocrd-tool.json descriptions for additional parameters and default values.

Development & Testing

For information regarding development and testing, please see README-DEV.md.