CoolFace
Modelpublic

Piyush3142/trocr-sanskrit-ocr

sourceHugging Facemitupdated 23d agoView on Hugging Face
1likes53downloads
Model Card

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

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

ParameterValue
Datasetyzk/veda-ocr-ms
Train samples10,560
Test samples1,174
Epochs2
Batch size4
Learning rate2e-5

Limitations

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

License

MIT