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)
| File | Size | Uploaded | |
|---|---|---|---|
| arjuna_ocr-1.2.2.tar.gz | 52.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|