File size: 1,269 Bytes
03e24f2
 
 
 
 
 
457d482
 
1ec0ee4
2ce4d93
03e24f2
 
 
87773b1
07b042d
 
 
03e24f2
 
 
 
 
87773b1
2ce4d93
 
 
03e24f2
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
import tempfile
import os

import paddlehub as hub
from PIL import Image

#https://github.com/PaddlePaddle/PaddleHub/tree/b402610a6f0b382a978e82473b541ea1fc6cf09a/modules/image/text_recognition
#pp_ocrv3 = hub.Module(name="ch_pp-ocrv3")
module_name = "ch_pp-ocrv3" #"chinese_ocr_db_crnn_mobile"
pp_ocrv3 = hub.Module(name=module_name)

def inference_img(img):
    with tempfile.TemporaryDirectory() as tempdir_name:
        if module_name in ["ch_pp-ocrv3", "chinese_ocr_db_crnn_mobile"]:
            pp_ocrv3.recognize_text(images=[img], use_gpu=False, output_dir=tempdir_name, visualization=True)
        elif module_name == "multi_languages_ocr_db_crnn":
            pp_ocrv3.recognize_text(images=[img], output_dir=tempdir_name, visualization=True)
        result_names = os.listdir(tempdir_name)
        result_image = Image.open(os.path.join(tempdir_name, result_names[0]))
        return result_image
    
def inference_json(img):
        if module_name in ["ch_pp-ocrv3", "chinese_ocr_db_crnn_mobile"]:
            results = pp_ocrv3.recognize_text(images=[img], use_gpu=False, visualization=False)
        elif module_name == "multi_languages_ocr_db_crnn":
            results = pp_ocrv3.recognize_text(images=[img], visualization=False)
        return results