Blog

Kashmiri OCR: Where Things Stand for Printed Text and Manuscripts

Faizan Ayoub · 8 October 2026 · 7 min read

  • OCR
  • Kashmiri script
  • Datasets
Two open birch-bark leaves covered in small handwritten script
A birch-bark manuscript from Kashmir of the Rupavatara, a Sanskrit grammar, copied in 1663.Wellcome Collection, CC BY 4.0, source

Key takeaways

  • As of October 2026 there is no mature, general-purpose OCR system for Kashmiri, and most public work dates from 2025–2026.
  • Training data is almost all synthetic, and where authors test on real scans results are clearly worse, such as 68% against 79.91% character accuracy.
  • Kashmiri vowel marks are a common weak point, handwriting and Sharada manuscripts are much less covered, and no shared real-world test set has scores from several systems yet.
Contents
  1. Why Nastaliq is hard for OCR
  2. What Kashmiri adds
  3. Public datasets and models, with their stated limits
  4. Transfer from Urdu and Arabic OCR
  5. Printed, handwritten and Sharada manuscripts
  6. Open problems
  7. Sources

As of October 2026 there is no mature, general-purpose OCR system for Kashmiri. Most public work is from 2025–2026: several large synthetic datasets for printed Perso-Arabic Kashmiri, and a handful of baseline models whose authors report error rates that are still high, especially on real scans. Handwriting and Sharada manuscripts are much less covered.

This post gathers what is public, with each result given as its authors state it. We have not re-tested any of these models. Several of the people named here are researchers we know and talk to; we describe their work the same way as everyone else's.

Why Nastaliq is hard for OCR

Most printed Kashmiri is in a Perso-Arabic script, usually typeset in Nastaliq, the same calligraphic style used for Urdu. Engines built for Latin text, and even for Arabic Naskh, struggle with it for three main reasons:

  • Sloping words. Letters in a Nastaliq word step down diagonally from right to left instead of sitting on one flat baseline, so a line has no single baseline to align to.
  • Ligatures and overlap. Letters join and change shape. An early Urdu paper by Sattar, Haque, Pathan and Gee notes that each character has 2–4 shapes depending on its position in the word, and that "inter-word and intra-word overlapping" makes recognition more complex (CORE record). Cutting a line into separate characters, as older OCR pipelines did, often fails.
  • Dots and small marks. Many letters differ only in the number or position of dots, and vowel marks are tiny strokes above or below the line. A speck of noise on a scan can turn one letter into another.

What Kashmiri adds

Kashmiri uses an extended Perso-Arabic alphabet. The model card for Koshur OCR v3 points out letters not found in standard Arabic or Urdu, such as ۆ, ۄ and ؠ, and the model's tokenizer covers all 47 letters of the Kashmiri alphabet. The same card notes vowel markings not found in standard Arabic or Urdu, so the "small marks" problem above matters more: dropping or misplacing a mark can change a word. Jahan and Padmavathi's 2025 survey of Kashmiri character recognition describes the script's "elaborate ligatures, cursive style, and complicated diacritical marks" as the main obstacles.

Text that went through legacy InPage files adds another layer: before OCR output can be compared with anything, the encodings have to agree. We cover that in a separate post on InPage to Unicode. For the background on Kashmiri's scripts, see our history of Kashmiri scripts.

Public datasets and models, with their stated limits

The table lists what we could verify, in rough order of publication. "Result" is the authors' own figure on the authors' own test data; results are not comparable across rows, because each uses a different test set and metric. Several Hugging Face resources are gated: you must log in and agree to share contact details before downloading.

ResourceAuthorsWhat it isReported result (as stated)Licence
Kashur Tesseract training dataHaq Nawaz Malik (Omarrran)About 10K ground-truth files (.tif, .box, .txt) for training TesseractNo results reportedNot stated
40K Kashmiri text-image datasetHaq Nawaz Malik (Omarrran)Kashmiri text images paired with transcriptionsNo results reportedApache-2.0
Deciphering Kashmiri ScriptZarak Jahan, Padmavathi S. (INDIACom 2025, IEEE)CNN, SVM and k-NN compared on Kashmiri words and individual lettersCNNs more accurate at character level; sentence-level recognition "still rendered quite difficult"Publisher terms
600K-KS-OCRHaq Nawaz MalikAbout 602,000 synthetic word images in three typefaces (Naskh, Nastaleeq, Nakash)Dataset paper; no model resultsCC-BY-4.0 (per paper); gated
SynthOCR-GenHaq Nawaz Malik, Kh Mohmad Shafi, Tanveer Ahmad ReshiOpen-source generator that turns a text corpus into synthetic OCR data, with 25+ augmentationsTool paper; used to build 600K-KS-OCRSee repository
Koshur PixelHaq Nawaz Malik, Faizan Iqbal, Nahfid Nissar613,078 synthetic image-text pairs, from words to full pagesDataset paper; no model results on the cardDataset CC BY-ND 4.0; gated
Koshur-OCR-SynthFaizan Iqbal285,864 synthetic text-line images in two Nastaliq and two Naskh fontsNo results reportedApache-2.0; gated
Koshur OCR v3Faizan IqbalTrOCR model initialised from an Arabic handwriting modelCER "~79%"; labelled a preliminary baseline, not for productionApache-2.0
Koshur OCR v2Kash Labs AISmall CNN + BiGRU + CTC model for single printed linesCER 21.24% on a 720-row held-out synthetic set; does not restore diacriticsNot stated on card
KoshurOCR-CRNN BaselineFaizan IqbalYOLOv8 word detector + ResNet-34/BiLSTM/CTC recogniserCER 18.45% on "Printed Book Evaluation", 49.80% on "Degraded Historical Documents"MIT; gated
Baseline OCR for printed Kashmiri NastaliqSheikh Amir Fayaz, Muzamil Majeed Khaja, Abdul Saboor Bhat, Danish Mansoor, Anu Thapa, Majid ZamanKraken engine, transferred from an Arabic model, fine-tuned on synthetic linesCharacter accuracy 79.91% on synthetic test data; 68% on real scanned pagesPublisher terms
Indic OCR BenchSarvam AIBenchmark of 6,909 text blocks from real document pages; 262 are KashmiriBenchmark only; no Kashmiri scores on the cardApache-2.0

A few patterns stand out:

  • Training data is almost all synthetic. Text is rendered in a few fonts and then blurred, rotated or noised. This is a sensible way to start, and every dataset card above says so plainly, but the authors also note that rendered text does not capture the variety of real printing, paper and scanning.
  • The gap to real documents is large. Where authors test on both, real pages score clearly worse: 79.91% against 68% character accuracy in the Kraken paper, and 18.45% against 49.80% CER between printed books and degraded historical documents on the CRNN card.
  • Vowel marks are the weak point. The Kraken paper reports difficulty with Kashmiri-specific diacritics, the v3 card says the model struggles to place small vowel marks, and Koshur OCR v2 leaves them out of its training targets altogether.
  • There is no shared real-world test set for Kashmiri yet with published scores from several systems. The Indic OCR Bench includes Kashmiri pages and could serve that role.

We list these and other OCR resources, with links and licences, in our resource catalogue.

Transfer from Urdu and Arabic OCR

Because Kashmiri shares most of its script with Urdu, starting from an Urdu or Arabic model is the usual shortcut. Tesseract, the widely used open-source engine, publishes trained models for Urdu (urd), Arabic (ara) and an Arabic-script model, but none for Kashmiri, as its language data list shows as of October 2026. Running the Urdu model on Kashmiri gives you a starting point; it will not know the Kashmiri-only letters and vowel signs. The Kashur Tesseract training files above were published so that a Kashmiri model can be trained.

Urdu OCR research is further along. UTRNet (Abdur Rahman, Arjun Ghosh, Chetan Arora; ICDAR 2023) introduced a real-world printed Urdu set of over 11,000 annotated lines and a synthetic set of 20,000 lines, and released its code, data and models (arXiv:2306.15782). That kind of annotated real-world set is what Kashmiri still lacks. The Kashmiri models listed above already use transfer in practice: Koshur OCR v3 starts from an Arabic handwriting TrOCR model, and the Kraken baseline from a pre-trained Arabic model. Jahan and Padmavathi also see promise in transfer from Urdu OCR, but conclude that good results need large annotated Kashmiri collections and methods built for its ligatures and marks.

Printed, handwritten and Sharada manuscripts

Printed Perso-Arabic

Nearly all the work above targets printed text, and modern books and newspapers are the most realistic near-term goal. Current models expect clean, tightly cropped, upright single lines; the Koshur OCR v2 card, for example, asks for photos to be rotated, deskewed and split into lines first, and says predictions need review before publication or archival use.

Handwriting

We found no public, annotated dataset of handwritten Kashmiri text of useful size. Some synthetic sets use fonts with handwritten qualities, and the v3 card notes the model sometimes skips handwritten words. Handwriting recognition for Kashmiri is effectively still open.

Sharada manuscripts

Older Kashmiri and Sanskrit texts from the valley were often written in Sharada, a Brahmic script with its own Unicode block. Tesseract has no Sharada model. One project we found, by Nimrita Koul, Sudhanva M Athreya and PVS Kumar, curated 900 manuscript pages and reports 87.7% accuracy when trained on 11,000 image-text pairs, presented at the LDC-IL Benchmarking Conference. The page does not give a year or say how accuracy was measured. Manuscripts add torn and faded pages and variable hands to everything above. Our site's manuscript transcription tool is planned only and not built yet.

Open problems

  • A real-world test set: scanned pages from books, newspapers and older prints, with checked Unicode transcriptions and a clear licence, so that systems can be compared on the same data.
  • Vowel marks: models that keep Kashmiri vowel signs, and error rates that report them separately, since a CER over all characters can hide them.
  • Page layout: finding lines, columns and reading order on real Nastaliq pages before recognition.
  • Handwriting and Sharada: annotated data, ideally with communities and archives that hold the originals and with their consent.
  • Spelling normalisation: OCR output inherits the variation in Kashmiri spelling, which affects any search, translation or language model built on it.

Sources

Speak Kashmiri?

Help us find where computer translation still fails Kashmiri. Mark 25 sentences, three translations each; your answers save as you go.

← All posts