Skip to main content

Arjuna-OCR [Kn&En]

Layout-aware Kannada + English document OCR: a layout model, a text detector and a CTC recognizer in ONNX, with tables, reading order, per-line confidence and review flags. No language model, no GPU required.

pip install arjuna-ocr          # CPU, works anywhere


arjuna doctor                   # what this machine can do and what the pipeline will use
arjuna ocr page.pdf -o out/     # files, folders, globs or PDFs -> JSON / Markdown / hOCR / ALTO / TSV
arjuna serve --port 8080        # HTTP server
from kanen_infer import KanEnOCR
ocr = KanEnOCR()            # detects hardware, configures itself
doc = ocr.page("page.png")  # kanen-ocr/1.0 JSON
print(ocr.render(doc, "md"))

The models (~170 MB) download once from anandkaman/arjuna-ocr-kn-en-inference at the revision this package was tested against (models v1.2.1) and are cached. The Python package version can move ahead of the model version for packaging fixes; the version stamped into every document is always the model's. Point ARJUNA_MODELS at a local copy for air-gapped installs.

Speed and accuracy. 12.8 pages/s on an RTX 5060 Ti with TensorRT, ~4.6 on the CUDA provider, seconds per page on CPU. On a frozen 40-page private-document set: word F1 0.967, page CER 3.1 %; 96.3 % word accuracy on Mozhi, 93.7 % on MILE. TensorRT engines are built in the background on first use — the pipeline serves immediately on CUDA and swaps each engine in only after it reproduces the output of the session it replaces.

Full documentation, hosted-inference instructions and the evaluation record: the model repositories linked above. Licences: code, recognizer and detector Apache-2.0; the layout model is AGPL-3.0 (see its NOTICE).

Release files for arjuna-ocr 1.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for arjuna-ocr 1.2.2
File Size Uploaded
arjuna_ocr-1.2.2.tar.gz 52.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arjuna-ocr 1.2.2
File Interpreter ABI Platform
arjuna_ocr-1.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 107.8 kB

Release files / arjuna_ocr-1.2.2.tar.gz

Download URL arjuna_ocr-1.2.2.tar.gz
Size 52.4 kB
Tags Source
SHA-256 checksum
How to use checksums
f986e397fc7a1c7ef5dd55da007523ed2b1915bf7204b4036a189d6b9c45e9f4
BLAKE2b-256 checksum
How to use checksums
c9a1eb39cf5c3e1857c43e1bdcc1f0b6d265b050edad816629a5c2953cddf3a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / arjuna_ocr-1.2.2-py3-none-any.whl

Download URL arjuna_ocr-1.2.2-py3-none-any.whl
Size 55.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cbabd7fa754fddc9cb6f8a5e9a627c6f81519c0533cb54a0025a8f6a4ff7798a
BLAKE2b-256 checksum
How to use checksums
50a5bc8ae8a7349c14ef9551a8d28338804ce38232068fc26ccb149ba81c9f62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.2.2 This release

2 release files

1.2.1

2 release files

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