Spaces:
Running
Running
File size: 929 Bytes
0445b72 3f03254 0445b72 3f03254 0445b72 db6d5bb 0445b72 c690508 0445b72 8f6282a 0445b72 3036475 0445b72 3036475 3f03254 d0f9675 3f03254 0445b72 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import gradio as gr
import pandas as pd
import easyocr
import torch
import PIL
from PIL import Image
from PIL import ImageDraw
def draw_boxes(image, bounds, color='blue', width=1):
draw = ImageDraw.Draw(image)
for bound in bounds:
p0, p1, p2, p3 = bound[0]
draw.line([*p0, *p1, *p2, *p3, *p0], fill=color, width=width)
return image
def detect(img, lang=['en']):
reader = easyocr.Reader(lang)
bounds = reader.readtext(img)
im = PIL.Image.open(img)
im_out=draw_boxes(im, bounds)
return im_out,pd.DataFrame(bounds).iloc[: 0, -1:],pd.DataFrame(bounds).iloc[: 0, -1:]
with gr.Blocks() as robot:
im=gr.Image(type="filepath")
go_btn=gr.Button()
out_im=gr.Image()
with gr.Row():
out_txt=gr.Textbox(lines=8)
data_f=gr.Dataframe(headers=['text', 'confidence'])
go_btn.click(detect,im,[out_im,out_txt,data_f])
robot.queue(concurrency_count=10).launch() |