Spaces:
Sleeping
Sleeping
import gradio as gr | |
import numpy as np | |
from ocr import Recognizer | |
with gr.Blocks() as app: | |
recog = Recognizer("model/model.xml", "model/char_list.txt") | |
with gr.Row(): | |
brush = gr.Brush(default_color="#000", default_size=15) | |
sketch = gr.Sketchpad("bg.png", type="numpy", brush=brush, layers=False) | |
result = gr.TextArea() | |
check = gr.Button() | |
def parse_item(item): | |
prob = item["prob"] | |
char = item["char"] | |
return f"{char}: {prob}" | |
def do_recog(img: dict[str, np.ndarray]): | |
_, nbest = recog(img["composite"]) | |
return "\n".join(parse_item(i) for item in nbest for i in item) | |
def clear(): | |
return "bg.png" | |
check.click(do_recog, sketch, result) | |
sketch.clear(clear, None, sketch) | |
app.launch() | |