import gradio as gr import torch from transformers import VisionEncoderDecoderModel, TrOCRProcessor # Load the model and processor processor = TrOCRProcessor.from_pretrained('microsoft/trocr-base-handwritten') model = VisionEncoderDecoderModel.from_pretrained('microsoft/trocr-base-handwritten') # Define a function to perform OCR def perform_ocr(image): pixel_values = processor(images=image, return_tensors="pt").pixel_values generated_ids = model.generate(pixel_values) generated_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0] return generated_text # Create a Gradio interface iface = gr.Interface( fn=perform_ocr, inputs="image", outputs="text", title="Image OCR", description="Upload an image to extract text" ) # Launch the interface iface.launch()