diff --git a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/README.md b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/README.md index 08533849bf00a8dbb11db70af7cf051db0ebf6ed..b7dba8ceda67875bfce020c2dac52e6c7bdb0d8b 100644 --- a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/README.md +++ b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/README.md @@ -19,6 +19,16 @@ $ hub run chinese_ocr_db_crnn_mobile --input_path "/PATH/TO/IMAGE" ## API +### \_\_init\_\_(text_detector_module=None, enable_mkldnn=False) + +构造ChineseOCRDBCRNN对象 + +**参数** + +* text_detector_module(str): 文字检测PaddleHub Module名字,如设置为None,则默认使用[chinese_text_detection_db_mobile Module](https://www.paddlepaddle.org.cn/hubdetail?name=chinese_text_detection_db_mobile&en_category=TextRecognition)。其作用为检测图片当中的文本。 +* enable_mkldnn(bool): 是否开启mkldnn加速CPU计算。该参数仅在CPU运行下设置有效。默认为False。 + + ```python def recognize_text(images=[], paths=[], diff --git a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/module.py b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/module.py index 490bba80765e5c15099001ce5abe65f8e504ab1a..a3e4bd5bd366ccc89666ed8b6acb63b830359202 100644 --- a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/module.py +++ b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_mobile/module.py @@ -25,14 +25,14 @@ from chinese_ocr_db_crnn_mobile.utils import base64_to_cv2, draw_ocr, get_image_ @moduleinfo( name="chinese_ocr_db_crnn_mobile", - version="1.0.3", + version="1.0.4", summary= "The module can recognize the chinese texts in an image. Firstly, it will detect the text box positions based on the differentiable_binarization_chn module. Then it recognizes the chinese texts. ", author="paddle-dev", author_email="paddle-dev@baidu.com", type="cv/text_recognition") class ChineseOCRDBCRNN(hub.Module): - def _initialize(self, text_detector_module=None): + def _initialize(self, text_detector_module=None, enable_mkldnn=False): """ initialize with the necessary elements """ @@ -49,6 +49,7 @@ class ChineseOCRDBCRNN(hub.Module): self.font_file = os.path.join(self.directory, 'assets', 'simfang.ttf') self.pretrained_model_path = os.path.join(self.directory, 'inference_model') + self.enable_mkldnn = enable_mkldnn self._set_config() def _set_config(self): @@ -70,6 +71,8 @@ class ChineseOCRDBCRNN(hub.Module): config.enable_use_gpu(8000, 0) else: config.disable_gpu() + if self.enable_mkldnn: + config.enable_mkldnn() config.disable_glog_info() @@ -92,7 +95,9 @@ class ChineseOCRDBCRNN(hub.Module): """ if not self._text_detector_module: self._text_detector_module = hub.Module( - name='chinese_text_detection_db_mobile') + name='chinese_text_detection_db_mobile', + enable_mkldnn=self.enable_mkldnn, + version='1.0.2') return self._text_detector_module def read_images(self, paths=[]): diff --git a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/README.md b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/README.md index 389dbb71ba4cd31fe78ef6abef0505329a7be5c9..2b0aa7d7a4a9ecf26fde0e1e197699c0f6b33e50 100644 --- a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/README.md +++ b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/README.md @@ -19,6 +19,15 @@ $ hub run chinese_ocr_db_crnn_server --input_path "/PATH/TO/IMAGE" ## API +### \_\_init\_\_(text_detector_module=None, enable_mkldnn=False) + +构造ChineseOCRDBCRNNServer对象 + +**参数** + +* text_detector_module(str): 文字检测PaddleHub Module名字,如设置为None,则默认使用[chinese_text_detection_db_server Module](https://www.paddlepaddle.org.cn/hubdetail?name=chinese_text_detection_db_server&en_category=TextRecognition)。其作用为检测图片当中的文本。 +* enable_mkldnn(bool): 是否开启mkldnn加速CPU计算。该参数仅在CPU运行下设置有效。默认为False。 + ```python def recognize_text(images=[], paths=[], diff --git a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/module.py b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/module.py index 2c82cdba4976209b1726a17df8687ed875e9b830..88422344bbd05f1e88d64c3af73f6246c69806e0 100644 --- a/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/module.py +++ b/hub_module/modules/image/text_recognition/chinese_ocr_db_crnn_server/module.py @@ -25,14 +25,14 @@ from chinese_ocr_db_crnn_server.utils import base64_to_cv2, draw_ocr, get_image_ @moduleinfo( name="chinese_ocr_db_crnn_server", - version="1.0.2", + version="1.0.3", summary= "The module can recognize the chinese texts in an image. Firstly, it will detect the text box positions based on the differentiable_binarization_chn module. Then it recognizes the chinese texts. ", author="paddle-dev", author_email="paddle-dev@baidu.com", type="cv/text_recognition") class ChineseOCRDBCRNNServer(hub.Module): - def _initialize(self, text_detector_module=None): + def _initialize(self, text_detector_module=None, enable_mkldnn=False): """ initialize with the necessary elements """ @@ -49,6 +49,8 @@ class ChineseOCRDBCRNNServer(hub.Module): self.font_file = os.path.join(self.directory, 'assets', 'simfang.ttf') self.pretrained_model_path = os.path.join(self.directory, 'assets', 'ch_rec_r34_vd_crnn') + self.enable_mkldnn = enable_mkldnn + self._set_config() def _set_config(self): @@ -70,6 +72,8 @@ class ChineseOCRDBCRNNServer(hub.Module): config.enable_use_gpu(8000, 0) else: config.disable_gpu() + if self.enable_mkldnn: + config.enable_mkldnn() config.disable_glog_info() @@ -92,7 +96,9 @@ class ChineseOCRDBCRNNServer(hub.Module): """ if not self._text_detector_module: self._text_detector_module = hub.Module( - name='chinese_text_detection_db_server') + name='chinese_text_detection_db_server', + enable_mkldnn=self.enable_mkldnn, + version='1.0.1') return self._text_detector_module def read_images(self, paths=[]): @@ -423,7 +429,7 @@ class ChineseOCRDBCRNNServer(hub.Module): if __name__ == '__main__': - ocr = ChineseOCRDBCRNNServer() + ocr = ChineseOCRDBCRNNServer(enable_mkldnn=True) print(ocr.name) image_path = [ '/mnt/zhangxuefei/PaddleOCR/doc/imgs/11.jpg', diff --git a/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/README.md b/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/README.md index 8dd066c5c1733a77e1257a1e8190ffa31209dc35..6c43493ff553bd1366f35530e916170a9841cab2 100644 --- a/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/README.md +++ b/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/README.md @@ -19,6 +19,17 @@ $ hub run chinese_text_detection_db_mobile --input_path "/PATH/TO/IMAGE" ## API +## API + +### \_\_init\_\_(enable_mkldnn=False) + +构造ChineseTextDetectionDB对象 + +**参数** + +* enable_mkldnn(bool): 是否开启mkldnn加速CPU计算。该参数仅在CPU运行下设置有效。默认为False。 + + ```python def detect_text(paths=[], images=[], @@ -51,7 +62,7 @@ def detect_text(paths=[], import paddlehub as hub import cv2 -text_detector = hub.Module(name="chinese_text_detection_db_mobile") +text_detector = hub.Module(name="chinese_text_detection_db_mobile", enable_mk) result = text_detector.detect_text(images=[cv2.imread('/PATH/TO/IMAGE')]) # or diff --git a/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/module.py b/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/module.py index 0ee5756f5bece95c08ecca2cd9bcdfe8f5ac53b0..be00f7e2a0621df619f96f9e671a2061f171b925 100644 --- a/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/module.py +++ b/hub_module/modules/image/text_recognition/chinese_text_detection_db_mobile/module.py @@ -29,19 +29,21 @@ def base64_to_cv2(b64str): @moduleinfo( name="chinese_text_detection_db_mobile", - version="1.0.1", + version="1.0.2", summary= "The module aims to detect chinese text position in the image, which is based on differentiable_binarization algorithm.", author="paddle-dev", author_email="paddle-dev@baidu.com", type="cv/text_recognition") class ChineseTextDetectionDB(hub.Module): - def _initialize(self): + def _initialize(self, enable_mkldnn=False): """ initialize with the necessary elements """ self.pretrained_model_path = os.path.join(self.directory, 'inference_model') + self.enable_mkldnn = enable_mkldnn + self._set_config() def check_requirements(self): @@ -71,6 +73,8 @@ class ChineseTextDetectionDB(hub.Module): config.enable_use_gpu(8000, 0) else: config.disable_gpu() + if self.enable_mkldnn: + config.enable_mkldnn() config.disable_glog_info() diff --git a/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/README.md b/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/README.md index 37a70e19de5e0fdba4a9a1f1b185748e0ff629a5..393eec37534ed75c49f09fd24394617b8f728f23 100644 --- a/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/README.md +++ b/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/README.md @@ -19,6 +19,14 @@ $ hub run chinese_text_detection_db_server --input_path "/PATH/TO/IMAGE" ## API +### \_\_init\_\_(enable_mkldnn=False) + +构造ChineseTextDetectionDBServer对象 + +**参数** + +* enable_mkldnn(bool): 是否开启mkldnn加速CPU计算。该参数仅在CPU运行下设置有效。默认为False。 + ```python def detect_text(paths=[], images=[], diff --git a/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/module.py b/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/module.py index 6c07144b790c4b4e136e40147a201cc2ee926b82..7baec43d9acba27c711546360e3e280f07cce4e4 100644 --- a/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/module.py +++ b/hub_module/modules/image/text_recognition/chinese_text_detection_db_server/module.py @@ -29,19 +29,21 @@ def base64_to_cv2(b64str): @moduleinfo( name="chinese_text_detection_db_server", - version="1.0.0", + version="1.0.1", summary= "The module aims to detect chinese text position in the image, which is based on differentiable_binarization algorithm.", author="paddle-dev", author_email="paddle-dev@baidu.com", type="cv/text_recognition") class ChineseTextDetectionDBServer(hub.Module): - def _initialize(self): + def _initialize(self, enable_mkldnn=False): """ initialize with the necessary elements """ self.pretrained_model_path = os.path.join(self.directory, 'ch_det_r50_vd_db') + self.enable_mkldnn = enable_mkldnn + self._set_config() def check_requirements(self): @@ -71,6 +73,8 @@ class ChineseTextDetectionDBServer(hub.Module): config.enable_use_gpu(8000, 0) else: config.disable_gpu() + if self.enable_mkldnn: + config.enable_mkldnn() config.disable_glog_info()