Spaces:
Runtime error
Runtime error
from paddleocr import PaddleOCR | |
import requests | |
import numpy as np | |
from PIL import Image | |
from io import BytesIO | |
import json | |
import gradio as gr | |
import paddleocr | |
# ocr = PaddleOCR(use_angle_cls=True, lang='en', use_pdserving=False, cls_batch_num=8, det_batch_num=8, rec_batch_num=8) | |
ocr = PaddleOCR(use_angle_cls=True, lang='en') | |
def index(url): | |
response = requests.get(url) | |
img = Image.open(BytesIO(response.content)) | |
resize_factor = 1 | |
new_size = tuple(int(dim * resize_factor) for dim in img.size) | |
img = img.resize(new_size, Image.Resampling.LANCZOS) | |
img_array = np.array(img.convert('RGB')) | |
result = ocr.ocr(img_array) | |
boxes = [line[0] for line in result] | |
txts = [line[1][0] for line in result] | |
scores = [line[1][1] for line in result] | |
print(boxes) | |
print(txts) | |
output_dict = {"texts": txts, "boxes": boxes, "scores": scores} | |
output_json = json.dumps(output_dict) # Convert to JSON string | |
return output_json | |
inputs_image_url = [ | |
gr.Textbox(type="text", label="Image URL"), | |
] | |
outputs_result_json = [ | |
gr.Textbox(type="text", label="Result JSON"), | |
] | |
interface_image_url = gr.Interface( | |
fn=index, | |
inputs=inputs_image_url, | |
outputs=outputs_result_json, | |
title="Text Extraction", | |
cache_examples=False, | |
).queue().launch() | |