Skip to main content

Expandable and scalable OCR pipeline

Project description

Overview

Nidaba is the central controller for the entire OGL OCR pipeline. It oversees and automates the process of converting raw images into citable collections of digitized texts.

It offers the following functionality:

As it is designed to use a common storage medium on network attached storage and the [celery](http://celeryproject.org) distributed task queue it scales nicely to multi-machine clusters.

Build

To build Nidaba run

` $ pip install . `

in the root directory or install using pypi:

` $ pip install nibada `

Some useful tasks have external dependencies. A good start is:

` # apt-get install tesseract-ocr-grc libtesseract3 libleptonica-dev ``

Tests

Per default no dictionaries and OCR models necessary to runs the tests are installed. To download the necessary files run:

` $ python setup.py download `

` $ python setup.py test `

Tests for modules that call external programs, at the time only tesseract and ocropus, will be skipped if these aren’t installed.

Running

First edit (the installed) nidaba.yaml and celery.yaml to fit your needs. Have a look at the [docs](https:///mittagessen.github.io/nidaba) if you haven’t set up a celery-based application before.

Then start up the celery daemon with something like:

` $ celery -A nidaba worker `

Next jobs can be added to the pipeline using the nidaba executable:

` $ nidaba batch --binarize "sauvola:whsize=10;whsize=20;whsize=30;whsize=40,factor=0.6" --ocr tesseract:eng -- ./input.tiff Preparing filestore....done. Building batch...done. 25d79a54-9d4a-4939-acb6-8e168d6dbc7c `

Using the return code the current state of the job can be retrieved:

` $ nidaba status 25d79a54-9d4a-4939-acb6-8e168d6dbc7c PENDING `

When the job has been processed the status command will return a list of paths containing the final output:

` $ nidaba status 25d79a54-9d4a-4939-acb6-8e168d6dbc7c SUCCESS input.tiff -> /home/mittagessen/OCR/97150c41-82a9-4935-8063-9295a2eb2a7f/input_img.rgb_to_gray_binarize.sauvola_10_0.35_ocr.tesseract_eng.tiff.hocr input.tiff -> /home/mittagessen/OCR/97150c41-82a9-4935-8063-9295a2eb2a7f/input_img.rgb_to_gray_binarize.sauvola_20_0.35_ocr.tesseract_eng.tiff.hocr input.tiff -> /home/mittagessen/OCR/97150c41-82a9-4935-8063-9295a2eb2a7f/input_img.rgb_to_gray_binarize.sauvola_30_0.35_ocr.tesseract_eng.tiff.hocr input.tiff -> /home/mittagessen/OCR/97150c41-82a9-4935-8063-9295a2eb2a7f/input_img.rgb_to_gray_binarize.sauvola_40_0.6_ocr.tesseract_eng.tiff.hocr `

Documentation

Want to learn more? [Read the Docs](https:///openphilology.github.io/nidaba/)

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

nidaba-0.3.5.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

nidaba-0.3.5-py2-none-any.whl (40.8 kB view details)

Uploaded Python 2

File details

Details for the file nidaba-0.3.5.tar.gz.

File metadata

  • Download URL: nidaba-0.3.5.tar.gz
  • Upload date:
  • Size: 61.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for nidaba-0.3.5.tar.gz
Algorithm Hash digest
SHA256 1eeb4690753214f8177ff8a9c915ff730c377aa733e27a671d2c38c5d79b67f4
MD5 d36b740071a5906884f16652494e7543
BLAKE2b-256 7a3824b2c6a23ae3a5087e72566aea06b259e4cc4205895e1eea0904c4fbc55b

See more details on using hashes here.

File details

Details for the file nidaba-0.3.5-py2-none-any.whl.

File metadata

File hashes

Hashes for nidaba-0.3.5-py2-none-any.whl
Algorithm Hash digest
SHA256 77da18f0a07e1441950be21860ea92a928a714e3f0c14457602f78d75a20fe12
MD5 c8861136cf608d6437dd50b528a91a47
BLAKE2b-256 2c608bcf18c17e0053904555423250df1491ab8e5286cb2ac06b7e9a3585e0a7

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