Preprint

One OCR model reports fewer errors across 13 Indic scripts

Preprint: UniLipi combines synthetic manuscript lines with real handwritten data, but its accuracy varied sharply between scripts and transfer tests.

A preprint on handwriting recognition reports that a single OCR model trained jointly across 13 Indic scripts had an overall character error rate, or CER, of 6.9% on the study's manuscript evaluation. The monolingual comparison had a CER of 8.6%. CER measures the share of characters transcribed incorrectly, so a lower percentage means fewer character errors. The system's overall glyph-count error, reported as Count-MAE, was 1.1. Count-MAE is the average absolute difference between predicted and recorded glyph counts. These are reported point estimates: the analysis gives no confidence intervals or p-values.

One model, three jobs

UniLipi is built as one shared framework for the 13 scripts. Alongside transcription, it predicts the script identity and the number of native-script characters on each line, outputs intended for manuscript cataloging workflows. The transcription head uses CTC to turn each line image into a character sequence, a K-way cross-entropy classifier predicts which script is present, and an MAE regression head predicts the line's native-character count. The three losses are combined in an end-to-end joint objective, with empirical coefficients fixed across experiments.

A large synthetic starting point

The data setup pairs a large synthetic pretraining set with real manuscript material. The synthetic pipeline generated about 2.5 million line images per script, for 32.5 million across all 13 scripts. The real collection covers 13 scripts from five regional traditions, with 50 to 600 annotated pages per script. Text from the manuscript lines was converted to a shared Roman WX transcription target through a deterministic, lossless mapping. After synthetic pretraining, models were jointly fine-tuned on combined real training sets. Page-level splitting reserved 90% of the real data for training and 10% for testing, while a held-out synthetic validation set was used for early stopping.

The average hides a wide spread

On the real manuscript evaluation, performance varied sharply by script. Newar had a reported CER of 5.1% and Sharada 5.2%, while Modi reached 18.6% and Siddham 18.1%. Count-MAE was 0.6 for Newar, 0.7 for Sharada, 2.3 for Modi and 2.1 for Siddham. The paper reports per-script sample sizes only as ranges, adding uncertainty to direct comparisons between scripts.

The script-classification task reached a macro-F1 close to 0.99 across the classes. Macro-F1 is a summary that gives the script classes a balanced place in the average. This output was designed alongside transcription and glyph-count prediction for manuscript cataloging workflows, so the result shows that the model's auxiliary script label was highly accurate in this evaluation. It does not replace CER, which assesses the transcription itself.

Lower than the listed baselines

The overall result was lower than every listed comparison system. On UniLipi-13, the reported CER was 28.5% for Kraken, 24.3% for PyLaia, 19.6% for VLT, 32.4% for Tesseract, 14.8% for HTR VT, 12.9% for HTR-ConvText and 14.7% for TrOCR. UniLipi's 6.9% was the lowest point estimate in that comparison. No confidence intervals, p-values or formal significance analysis were reported for these differences.

Transfer came after fine-tuning

Outside the 13-script manuscript evaluation, the model was fine-tuned on external handwriting benchmarks. Where word segmentation was available, the study reported both CER and WER, or word error rate. The reported pairs were 0.4% and 2.1% for Chinese, 1.3% and 2.9% for Tibetan, 6.9% and 24.5% for IAM English, 7.2% and 28.1% for RIMES French, 8.1% and 27.1% for LAM Italian, and 8.6% and 26.4% for READ German. It also reported 9.5% and 33.2% for PhD-Indic Modern Indic, 10.5% and 35.1% for Muharaf Arabic, and 15.3% and 44.1% for SleukRith Khmer. Because each target benchmark supplied fine-tuning data, these results measure transfer after adaptation, not zero-shot recognition.

A narrower test of unseen scripts

An additional test compared a model pretrained on 10 scripts with one pretrained on all 13, using three target scripts that were excluded from the smaller pretraining set. After fine-tuning, Sharada CER was 5.5% versus 5.2%, Jaini was 6.1% in both versions, and Grantha was 12.6% versus 12.4%. The comparison is limited to those three scripts and to fine-tuning outcomes, so it does not establish zero-shot recognition of unseen scripts.

What the results leave open

The evaluation was limited to the 13-script collection and the listed external benchmarks; it did not establish performance across broader manuscript collections or writers. Recognition was tested on extracted line images, so end-to-end line detection on full pages was not evaluated. The contribution of synthetic pretraining was not isolated with a no-synthetic-pretraining ablation. The analysis also notes a discrepancy between the table and accompanying prose for Count-MAE in the cross-entropy ablation.

Paper data and sources

Original title: UniLipi: A Unified Multi-Script OCR for Historical Indic Manuscripts
Authors: Tathagata Ghosh, Sai Madhusudan Gunda, Simran Singh Sandral, Ravi Kiran Sarvadevabhatla
Journal/Repository: arXiv
Status: Preprint, not yet peer-reviewed
First online: 2026-08-28
DOI: Not available
Original paper · Full text

Versions and corrections

  1. Published automatically after legal-source, freshness, evidence, and independent-verification gates passed.