From 65042ff602eb8d191419ea7ec6b6bc5befc4ae06 Mon Sep 17 00:00:00 2001 From: "shaohua.zhang" Date: Sat, 25 Jul 2020 11:49:52 +0800 Subject: [PATCH] Common modules are executed repeatedly the function sample_iter_reader is executed repatedly,so the common modules do not need to be executed repeatedly --- ppocr/data/det/dataset_traversal.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ppocr/data/det/dataset_traversal.py b/ppocr/data/det/dataset_traversal.py index 737cbe2e..fc2241cf 100644 --- a/ppocr/data/det/dataset_traversal.py +++ b/ppocr/data/det/dataset_traversal.py @@ -37,8 +37,7 @@ class TrainReader(object): self.process = create_module(params['process_function'])(params) def __call__(self, process_id): - def sample_iter_reader(): - with open(self.label_file_path, "rb") as fin: + with open(self.label_file_path, "rb") as fin: label_infor_list = fin.readlines() img_num = len(label_infor_list) img_id_list = list(range(img_num)) @@ -47,6 +46,8 @@ class TrainReader(object): print("multiprocess is not fully compatible with Windows." "num_workers will be 1.") self.num_workers = 1 + + def sample_iter_reader(): for img_id in range(process_id, img_num, self.num_workers): label_infor = label_infor_list[img_id_list[img_id]] outs = self.process(label_infor) -- GitLab