diff --git a/deploy/hubserving/ocr_det/module.py b/deploy/hubserving/ocr_det/module.py index be74306dacf4a3648e3227f11227e6399e6ed2eb..7c11d1faa32240b0a03f996b15631f9a64aa71b2 100644 --- a/deploy/hubserving/ocr_det/module.py +++ b/deploy/hubserving/ocr_det/module.py @@ -3,11 +3,16 @@ from __future__ import absolute_import from __future__ import division from __future__ import print_function +import os +import sys +__dir__ = os.path.dirname(os.path.abspath(__file__)) +sys.path.append(__dir__) +sys.path.append(os.path.abspath(os.path.join(__dir__, '../../../'))) + import argparse import ast import copy import math -import os import time from paddle.fluid.core import AnalysisConfig, create_paddle_predictor, PaddleTensor @@ -67,9 +72,7 @@ class OCRDet(hub.Module): images.append(img) return images - def predict(self, - images=[], - paths=[]): + def predict(self, images=[], paths=[]): """ Get the text box in the predicted images. Args: @@ -87,7 +90,7 @@ class OCRDet(hub.Module): raise TypeError("The input data is inconsistent with expectations.") assert predicted_data != [], "There is not any image to be predicted. Please check the input data." - + all_results = [] for img in predicted_data: if img is None: @@ -99,11 +102,9 @@ class OCRDet(hub.Module): rec_res_final = [] for dno in range(len(dt_boxes)): - rec_res_final.append( - { - 'text_region': dt_boxes[dno].astype(np.int).tolist() - } - ) + rec_res_final.append({ + 'text_region': dt_boxes[dno].astype(np.int).tolist() + }) all_results.append(rec_res_final) return all_results @@ -116,7 +117,7 @@ class OCRDet(hub.Module): results = self.predict(images_decode, **kwargs) return results - + if __name__ == '__main__': ocr = OCRDet() image_path = [ @@ -124,4 +125,4 @@ if __name__ == '__main__': './doc/imgs/12.jpg', ] res = ocr.predict(paths=image_path) - print(res) \ No newline at end of file + print(res) diff --git a/deploy/hubserving/ocr_rec/module.py b/deploy/hubserving/ocr_rec/module.py index 846f5437fe3b0a5136bff6c902481f888558d594..781214f9c9c6470ae6034f76d7c670c9ab65dcb4 100644 --- a/deploy/hubserving/ocr_rec/module.py +++ b/deploy/hubserving/ocr_rec/module.py @@ -3,11 +3,16 @@ from __future__ import absolute_import from __future__ import division from __future__ import print_function +import os +import sys +__dir__ = os.path.dirname(os.path.abspath(__file__)) +sys.path.append(__dir__) +sys.path.append(os.path.abspath(os.path.join(__dir__, '../../../'))) + import argparse import ast import copy import math -import os import time from paddle.fluid.core import AnalysisConfig, create_paddle_predictor, PaddleTensor @@ -67,9 +72,7 @@ class OCRRec(hub.Module): images.append(img) return images - def predict(self, - images=[], - paths=[]): + def predict(self, images=[], paths=[]): """ Get the text box in the predicted images. Args: @@ -87,31 +90,28 @@ class OCRRec(hub.Module): raise TypeError("The input data is inconsistent with expectations.") assert predicted_data != [], "There is not any image to be predicted. Please check the input data." - + img_list = [] for img in predicted_data: if img is None: continue img_list.append(img) - + rec_res_final = [] try: rec_res, predict_time = self.text_recognizer(img_list) for dno in range(len(rec_res)): text, score = rec_res[dno] - rec_res_final.append( - { - 'text': text, - 'confidence': float(score), - } - ) + rec_res_final.append({ + 'text': text, + 'confidence': float(score), + }) except Exception as e: print(e) return [[]] return [rec_res_final] - @serving def serving_method(self, images, **kwargs): """ @@ -121,7 +121,7 @@ class OCRRec(hub.Module): results = self.predict(images_decode, **kwargs) return results - + if __name__ == '__main__': ocr = OCRRec() image_path = [ @@ -130,4 +130,4 @@ if __name__ == '__main__': './doc/imgs_words/ch/word_3.jpg', ] res = ocr.predict(paths=image_path) - print(res) \ No newline at end of file + print(res) diff --git a/deploy/hubserving/ocr_system/module.py b/deploy/hubserving/ocr_system/module.py index cb526e1185d8eb623af84ba2451ff38523bbf642..f2a4ed996d754508a81df5710af951d9613b05eb 100644 --- a/deploy/hubserving/ocr_system/module.py +++ b/deploy/hubserving/ocr_system/module.py @@ -3,11 +3,17 @@ from __future__ import absolute_import from __future__ import division from __future__ import print_function +import os +import sys + +__dir__ = os.path.dirname(os.path.abspath(__file__)) +sys.path.append(__dir__) +sys.path.append(os.path.abspath(os.path.join(__dir__, '../../../'))) + import argparse import ast import copy import math -import os import time from paddle.fluid.core import AnalysisConfig, create_paddle_predictor, PaddleTensor @@ -52,7 +58,7 @@ class OCRSystem(hub.Module): ) cfg.ir_optim = True cfg.enable_mkldnn = enable_mkldnn - + self.text_sys = TextSystem(cfg) def read_images(self, paths=[]): @@ -67,9 +73,7 @@ class OCRSystem(hub.Module): images.append(img) return images - def predict(self, - images=[], - paths=[]): + def predict(self, images=[], paths=[]): """ Get the chinese texts in the predicted images. Args: @@ -104,13 +108,11 @@ class OCRSystem(hub.Module): for dno in range(dt_num): text, score = rec_res[dno] - rec_res_final.append( - { - 'text': text, - 'confidence': float(score), - 'text_region': dt_boxes[dno].astype(np.int).tolist() - } - ) + rec_res_final.append({ + 'text': text, + 'confidence': float(score), + 'text_region': dt_boxes[dno].astype(np.int).tolist() + }) all_results.append(rec_res_final) return all_results @@ -123,7 +125,7 @@ class OCRSystem(hub.Module): results = self.predict(images_decode, **kwargs) return results - + if __name__ == '__main__': ocr = OCRSystem() image_path = [ @@ -131,4 +133,4 @@ if __name__ == '__main__': './doc/imgs/12.jpg', ] res = ocr.predict(paths=image_path) - print(res) \ No newline at end of file + print(res)