Spaces:
Sleeping
Sleeping
import gradio as gr | |
from transformers import pipeline | |
import easyocr | |
from PIL import Image | |
# Load the NLP model for text simplification | |
simplify_model = pipeline("summarization", model="t5-small") | |
# Initialize EasyOCR reader | |
reader = easyocr.Reader(["en"]) | |
def process_image(image): | |
""" | |
Extract text from an uploaded image using EasyOCR and simplify it. | |
""" | |
# Convert image to text using EasyOCR | |
results = reader.readtext(image, detail=0) | |
text = " ".join(results) | |
if not text.strip(): | |
return "No text detected in the image. Please upload a clear image of the text." | |
# Simplify the extracted text | |
simplified_text = simplify_model(text, max_length=50, min_length=10, do_sample=False)[0]["summary_text"] | |
return simplified_text | |
# Create a Gradio interface | |
interface = gr.Interface( | |
fn=process_image, | |
inputs="image", | |
outputs="text", | |
title="Simplify Book Content", | |
description="Upload a photo of a book page to get a simplified explanation in simple English.", | |
) | |
# Launch the app | |
if __name__ == "__main__": | |
interface.launch() | |