Ewe Tesseract OCR

ewe.traineddata is an experimental Tesseract 5 recognition model for Ewe (ee / ISO 639-3 ewe). It was fine-tuned from the official high-accuracy Latin.traineddata model using deterministic, synthetically rendered Ewe text lines.

This is a v0.1 research preview. Its reported error rates measure recognition of held-out synthetic line images. They do not measure end-to-end performance on real scanned pages, page segmentation, layout analysis, reading order, tables, or handwriting.

Evaluation

The 40,000-line training collection was deterministically divided by the official tesstrain workflow into 36,000 optimization lines and 4,000 internal evaluation lines. The final model was re-evaluated with Tesseract 5.5.2 lstmeval:

BCER eval=1.119, BWER eval=3.009
Measurement Lines BCER BWER
Final training estimate 36,000 1.146% 3.175%
Held-out synthetic evaluation 4,000 1.119% 3.009%

BCER is Tesseract's character error rate and BWER is its word error rate. Lower is better. These values must not be presented as accuracy on real PDFs.

Reproduction command for the internal evaluation:

lstmeval \
  --verbosity=0 \
  --model ewe.traineddata \
  --eval_listfile list.eval

The list.eval file and line-image training data are not distributed in this model repository pending a source-data rights review. The exact result and environment are recorded in metrics/evaluation.json; the complete original console output is in metrics/training.log.

Training error curve

Training

  • Tesseract/lstmtraining: 5.5.2
  • Official tesstrain commit: 405346a3a67d8e4e049341d1da6a4b752e0b8351
  • Starting model: tessdata_best/script/Latin.traineddata
  • Starting-model SHA-256: cf7216998bf7f363f18e3def04cc6b28ae954d2a5a3bdad09f743c9d3538ef35
  • Iterations: 10,000
  • Deterministic seed: 20260806
  • Internal train/evaluation ratio: 90/10
  • Synthetic training lines: 40,000
  • Separate project validation lines: 5,000, not yet scored
  • Separate project test lines: 5,000, not yet scored
  • Normalization: Unicode NFC
  • Required Ewe character coverage: ɛ ɔ ŋ ɖ ƒ ʋ Ɛ Ɔ Ŋ Ɖ Ƒ Ʋ

The synthetic renderer used only fonts verified to contain every required Ewe character. Configurable degradation covered blur, skew, contrast, noise, JPEG compression, and faded print. See config/pipeline.json and config/tesstrain.mk.

Training command:

PATH="$(pwd)/.venv/bin:/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin" \
  gmake -f tesstrain.mk train ALLOW_LONG_TRAINING=YES \
  MAX_ITERATIONS=10000 RANDOM_SEED=20260806 JOBS=10

Installation

Download ewe.traineddata and place it in a dedicated tessdata directory:

mkdir -p ./tessdata
curl -L \
  https://huggingface.co/NissiKlaus/ewe-tesseract-ocr/resolve/main/ewe.traineddata \
  -o ./tessdata/ewe.traineddata

Recognize a single line image:

tesseract line.png stdout --tessdata-dir ./tessdata -l ewe --psm 13

Recognize a page whose layout is approximately one uniform block of text:

tesseract page.png stdout --tessdata-dir ./tessdata -l ewe --psm 6

For PDFs, render each page to PNG or TIFF first. Page segmentation mode must be selected for the document layout; --psm 3 is automatic page segmentation, --psm 6 assumes one text block, and --psm 13 treats the image as one line.

Intended uses

  • Research on printed Ewe OCR
  • Recognition of already-segmented Ewe text lines
  • Prototyping searchable text extraction from printed Ewe documents
  • Fine-tuning and evaluation by low-resource-language researchers

Limitations

  • No manually transcribed real-scan CER/WER benchmark has been completed.
  • The model was trained on synthetic line images, so its reported metrics are optimistic for real documents.
  • Page segmentation and reading order were not trained or measured by the line recognizer.
  • OCR output should be reviewed by an Ewe reader before use in consequential settings.
  • Tesseract confidence values are not accuracy percentages.

Files

  • ewe.traineddata: deployable Tesseract model
  • checkpoints/ewe_checkpoint: final continuation checkpoint
  • metrics/training.log: complete tesstrain log
  • metrics/training-curve.png: training-error curve
  • metrics/evaluation.json: machine-readable evaluation record
  • config/: deterministic preprocessing and training configuration
  • SHA256SUMS: artifact integrity checks

License and data notice

The starting Tesseract/tessdata model is distributed under Apache-2.0. The source corpus, PDFs, extracted text, and rendered training images are not included here. The license for this fine-tuned research-preview artifact is currently marked other pending a documented review of all training-corpus rights. See LICENSE.md before redistribution or commercial use.

Citation

A paper citation is not yet available. Until then, cite this repository, model version v0.1.0, and its immutable Hugging Face commit hash.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Evaluation results

  • Character error rate (percent) on Held-out synthetic Ewe line images
    self-reported
    1.119
  • Word error rate (percent) on Held-out synthetic Ewe line images
    self-reported
    3.009