Skip to content
ModelListedExternal
Download

Trocr Sanskrit Ocr

Fine-tuned TrOCR model for Sanskrit manuscript OCR (Optical Character Recognition).

KindCLIP visionVersionmodelBgrade

Model source

Kind
CLIP vision
File size
1.24 GB
Version
vmodel
Updated
Sep 18, 2026
Downloads
95
Source
Hugging Face

Source description

TrOCR Sanskrit OCR

Fine-tuned TrOCR model for Sanskrit manuscript OCR (Optical Character Recognition).

Model Description

This model extracts Sanskrit text from manuscript images. It outputs text in IAST (International Alphabet of Sanskrit Transliteration) format.

  • Base Model: microsoft/trocr-base-printed
  • Fine-tuned on: yzk/veda-ocr-ms (~11.7k Sanskrit manuscript images)
  • Training: 2 epochs on Apple M1 Pro (MPS)

Usage

from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image

# Load model
processor = TrOCRProcessor.from_pretrained("Piyush3142/trocr-sanskrit-ocr")
model = VisionEncoderDecoderModel.from_pretrained("Piyush3142/trocr-sanskrit-ocr")

# OCR inference
image = Image.open("sanskrit_manuscript.jpg").convert("RGB")
pixel_values = processor(image, return_tensors="pt").pixel_values
outputs = model.generate(pixel_values, max_length=256)
text = processor.batch_decode(outputs, skip_special_tokens=True)[0]

print(text)  # IAST output

Convert IAST to Devanagari

from indic_transliteration.sanscript import transliterate, IAST, DEVANAGARI

devanagari = transliterate(text, IAST, DEVANAGARI)
print(devanagari)

Training Details

ParameterValue
Datasetyzk/veda-ocr-ms
Train samples10,560
Test samples1,174
Epochs2
Batch size4
Learning rate2e-5
CER~68%
WER~80%

Limitations

  • Trained on printed Vedic manuscripts
  • Best performance on similar style texts
  • May struggle with handwritten or degraded images

License

MIT

Sources

1 source
Hugging FacePrimaryVersion 82967a95e9b542048109e4268f876dcbd99742ce
huggingface.co/Piyush3142/trocr-sanskrit-ocr/tree/82967a95e9b542048109e4268f876dcbd99742ce

Verified Sep 3

Model artifacts

1 artifact

model.safetensors

safetensors · 1.24 GB · SHA-256 6212d15aea32…efea · Hugging Face

Download file

Source excerpts

2 excerpts

--- license: mit language: - sa - en tags: - ocr - sanskrit - trocr - image-to-text - devanagari datasets: - yzk/veda-ocr-ms pipeline_tag: image-to-text --- # TrOCR Sanskrit OCR Fine-tuned TrOCR model for Sanskrit manuscript OCR (Optical Character Recognition). ## Model Description This model extracts Sanskrit text from manuscript images. It outputs text in IAST (International Alphabet of Sanskrit Transliteration) format. - **Base Model:** microsoft/trocr-base-printed - **Fine-tuned on:** yzk/veda-ocr-ms (~11.7k Sanskrit manuscript images) - **Training:** 2 epochs on Apple M1 Pro (MPS) ## Usage ```python from transformers import TrOCRProcessor, VisionEncoderDecoderModel from PIL import Image # Load model processor = TrOCRProcessor.from_pretrained("Piyush3142/trocr-sanskrit-ocr") model = VisionEncoderDecoderModel.from_pretrained("Piyush3142/trocr-sanskrit-ocr") # OCR inference image = Image.open("sanskrit_manuscript.jpg").convert("RGB") pixel_values = processor(image, return_tensors="pt").pixel_values outputs = model.generate(pixel_values, max_length=256) text = processor.batch_decode(outputs, skip_special_tokens=True)[0] print(text) # IAST output ``` ## Convert IAST to Devanagari ```python from indic_transliteration.sanscript import transliterate, IAST, DEVANAGARI devanagari = transliterate(text, IAST, DEVANAGARI) print(devanagari) ``` ## Training Details | Parameter | Value | |-----------|-------| | Dataset | yzk/veda-ocr-ms | | Train samples | 10,560 | | Test samples | 1,174 | | Epochs | 2 | | Batch size | 4 | | Learning rate | 2e-5 | | CER | ~68% | | WER | ~80% | ## Limitations - Trained on printed Vedic manuscripts - Best performance on similar style texts - May struggle with handwritten or degraded images ## License MIT

Source context: 95 downloads · 1 likes · Pipeline image-to-text · Repo Piyush3142/trocr-sanskrit-ocr