Piyush3142/trocr-sanskrit-ocr
153
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
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 outputConvert IAST to Devanagari
from indic_transliteration.sanscript import transliterate, IAST, DEVANAGARI
devanagari = transliterate(text, IAST, DEVANAGARI)
print(devanagari)Training Details
Limitations
- Trained on printed Vedic manuscripts
- Best performance on similar style texts
- May struggle with handwritten or degraded images
License
MIT
