import streamlit as st from transformers import TrOCRProcessor, VisionEncoderDecoderModel from PIL import Image # Load pre-trained model & processor processor = TrOCRProcessor.from_pretrained("microsoft/trocr-base-handwritten") model = VisionEncoderDecoderModel.from_pretrained("microsoft/trocr-base-handwritten") st.title("✍ Handwritten Text Extractor (OCR)") st.write("Upload a handwritten image and extract text using AI") uploaded_file = st.file_uploader("Upload Handwritten Image", type=["jpg", "png", "jpeg"]) if uploaded_file: image = Image.open(uploaded_file).convert("RGB") st.image(image, caption="Uploaded Handwriting", use_column_width=True) # Run OCR pixel_values = processor(images=image, return_tensors="pt").pixel_values generated_ids = model.generate(pixel_values) text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0] st.subheader("Extracted Text:") st.success(text)