import gradio as gr from ocr_tamil.ocr import OCR import torch ocr_detect = OCR(detect=True,enable_cuda=False) ocr_recognize = OCR(detect=False,enable_cuda=False) def predict(image_path,mode): if mode == "recognize": texts = ocr_recognize.predict(image_path) else: texts = ocr_detect.predict(image_path) texts = texts[0] return texts image_examples = ["11.jpg","4.jpg","0.jpg","1.jpg","2.jpg","3.jpg","5.jpg", "6.jpg","7.jpg","10.jpg","14.jpg"] mode_examples = ["recognize","recognize","detect","recognize","recognize","recognize" ,"recognize","recognize","recognize","recognize"] input_1 = gr.Image(type="numpy") input_2 = gr.Radio(["recognize", "detect"], label="mode", info="Only Text recognition or need both Text detection + recognition") examples = [[i,j] for i,j in zip(image_examples,mode_examples)] gr.Interface( predict, inputs=[input_1,input_2], outputs=gr.Textbox(label="Extracted Text",interactive=False, show_copy_button=True), title="OCR TAMIL", examples=examples ).launch()