import gradio as gr from craft_hw_ocr import OCR ocr = OCR.load_models() def do_ocr(inp): img, results = OCR.detection(inp, ocr[2]) bboxes, text = OCR.recoginition(img, results, ocr[0], ocr[1]) return OCR.visualize(img, results), text inputs = gr.inputs.Image() o1 = gr.outputs.Image() o2 = gr.outputs.Textbox() title = "CRAFT-OCR" description = "OCR of both handwriting and printed text using CRAFT Text detector and TrOCR recognition, detection of lines and extraction of them are happening here because TrOCR pre-trained models are modelled on IAM lines dataset and the same needs to be implemented here." examples=[['example_1.png'],['example_2.jpg']] article = "

craft_hw_ocr

craft-text-detector

" gr.Interface(fn=do_ocr, inputs=inputs, outputs=[o1, o2], title=title, description=description, article=article, examples=examples, enable_queue=True).launch()