diff --git a/modelcenter/PP-OCRv2/APP/app.py b/modelcenter/PP-OCRv2/APP/app.py index 28dcc84301079b0280e9fbcd9eb9b84daf21750f..7de73c1d8b547e446a51b62942867b252facc569 100644 --- a/modelcenter/PP-OCRv2/APP/app.py +++ b/modelcenter/PP-OCRv2/APP/app.py @@ -3,10 +3,8 @@ import base64 from io import BytesIO from PIL import Image -import paddleocr -from paddleocr import PaddleOCR, draw_ocr - -ocr = PaddleOCR(ocr_version='PP-OCRv2', use_angle_cls=True, lang="ch") +from paddlecv import PaddleCV +ocr = PaddleCV(task_name="PP-OCRv2") def image_to_base64(image): @@ -20,20 +18,16 @@ def image_to_base64(image): # UGC: Define the inference fn() for your models def model_inference(image): - result = ocr.ocr(image, cls=True) - - # 显示结果 - if paddleocr.__version__ >= "2.6.0.2": - result = result[0] - boxes = [line[0] for line in result] - txts = [line[1][0] for line in result] - scores = [line[1][1] for line in result] - im_show = draw_ocr(image, boxes, txts=None, scores=None) - im_show = Image.fromarray(im_show) + result = ocr(image)[0] + im_show = Image.open('output/tmp.jpg') res = [] - for i in range(len(boxes)): - res.append(dict(boxes=boxes[i], txt=txts[i], score=scores[i])) + for i in range(len(result['dt_polys'])): + res.append( + dict( + boxes=result['dt_polys'][i], + txt=result['rec_text'][i], + score=result['rec_score'][i])) json_out = {"base64": image_to_base64(im_show), "result": res} return im_show, json_out diff --git a/modelcenter/PP-OCRv3/APP/app.py b/modelcenter/PP-OCRv3/APP/app.py index 04b7f8bee7e92824055453a33a62bb5bc6ff6fa4..9fe9b6ffa7b1a06123896400a909ac2dfa7b5c3f 100644 --- a/modelcenter/PP-OCRv3/APP/app.py +++ b/modelcenter/PP-OCRv3/APP/app.py @@ -3,10 +3,8 @@ import base64 from io import BytesIO from PIL import Image -import paddleocr -from paddleocr import PaddleOCR, draw_ocr - -ocr = PaddleOCR(use_angle_cls=True, lang="ch") +from paddlecv import PaddleCV +ocr = PaddleCV(task_name="PP-OCRv3") def image_to_base64(image): @@ -20,20 +18,16 @@ def image_to_base64(image): # UGC: Define the inference fn() for your models def model_inference(image): - result = ocr.ocr(image, cls=True) - - # 显示结果 - if paddleocr.__version__ >= "2.6.0.2": - result = result[0] - boxes = [line[0] for line in result] - txts = [line[1][0] for line in result] - scores = [line[1][1] for line in result] - im_show = draw_ocr(image, boxes, txts=None, scores=None) - im_show = Image.fromarray(im_show) + result = ocr(image)[0] + im_show = Image.open('output/tmp.jpg') res = [] - for i in range(len(boxes)): - res.append(dict(boxes=boxes[i], txt=txts[i], score=scores[i])) + for i in range(len(result['dt_polys'])): + res.append( + dict( + boxes=result['dt_polys'][i], + txt=result['rec_text'][i], + score=result['rec_score'][i])) json_out = {"base64": image_to_base64(im_show), "result": res} return im_show, json_out diff --git a/modelcenter/PP-StructureV2/APP/app.py b/modelcenter/PP-StructureV2/APP/app.py index 3637161a77141b4c82841f14ac61366afac7a212..c88998f813bc69493d33e3eba39f830ead78df5c 100644 --- a/modelcenter/PP-StructureV2/APP/app.py +++ b/modelcenter/PP-StructureV2/APP/app.py @@ -3,9 +3,8 @@ import base64 from io import BytesIO from PIL import Image -from paddleocr import PPStructure - -table_engine = PPStructure(layout=False, show_log=True) +from paddlecv import PaddleCV +table_engine = PaddleCV(task_name="PP-StructureV2-table") def image_to_base64(image): @@ -19,8 +18,8 @@ def image_to_base64(image): # UGC: Define the inference fn() for your models def model_inference(image): - result = table_engine(image) - res = result[0]['res']['html'] + result = table_engine(image)[0] + res = result['html'] json_out = {"result": res} return res, json_out