From 18acc25f18bc846a22f5e894e536b89229e546d1 Mon Sep 17 00:00:00 2001 From: cuicheng01 Date: Wed, 7 Sep 2022 09:35:51 +0000 Subject: [PATCH] add table_attribute_code --- .../inference_table_attribute.yaml | 35 +++++ .../images/PULC/table_attribute/val_3610.jpg | Bin 0 -> 86685 bytes .../images/PULC/table_attribute/val_851.jpg | Bin 0 -> 55573 bytes deploy/python/postprocess.py | 39 +++++ deploy/python/predict_cls.py | 18 ++- paddleclas.py | 23 ++- .../PULC/table_attribute/PPLCNet_x1_0.yaml | 133 ++++++++++++++++++ ppcls/data/postprocess/__init__.py | 2 +- ppcls/data/postprocess/attr_rec.py | 44 ++++++ 9 files changed, 284 insertions(+), 10 deletions(-) create mode 100644 deploy/configs/PULC/table_attribute/inference_table_attribute.yaml create mode 100644 deploy/images/PULC/table_attribute/val_3610.jpg create mode 100644 deploy/images/PULC/table_attribute/val_851.jpg create mode 100644 ppcls/configs/PULC/table_attribute/PPLCNet_x1_0.yaml diff --git a/deploy/configs/PULC/table_attribute/inference_table_attribute.yaml b/deploy/configs/PULC/table_attribute/inference_table_attribute.yaml new file mode 100644 index 000000000..580ca18f2 --- /dev/null +++ b/deploy/configs/PULC/table_attribute/inference_table_attribute.yaml @@ -0,0 +1,35 @@ +Global: + infer_imgs: "images/PULC/table_attribute/val_3610.jpg" + inference_model_dir: "./models/table_attribute_infer" + batch_size: 1 + use_gpu: True + enable_mkldnn: True + cpu_num_threads: 10 + benchmark: False + use_fp16: False + ir_optim: True + use_tensorrt: False + gpu_mem: 8000 + enable_profile: False + +PreProcess: + transform_ops: + - ResizeImage: + size: [224, 224] + - NormalizeImage: + scale: 1.0/255.0 + mean: [0.485, 0.456, 0.406] + std: [0.229, 0.224, 0.225] + order: '' + channel_num: 3 + - ToCHWImage: + +PostProcess: + main_indicator: TableAttribute + TableAttribute: + source_threshold: 0.5 + number_threshold: 0.5 + color_threshold: 0.5 + clarity_threshold : 0.5 + obstruction_threshold: 0.5 + angle_threshold: 0.5 diff --git a/deploy/images/PULC/table_attribute/val_3610.jpg b/deploy/images/PULC/table_attribute/val_3610.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bb2772d095c2e151b404bf7e9e76f1de9c665129 GIT binary patch literal 86685 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 UkGXUaXrF>CaoGY&_;2d}0PGT>g#Z8m literal 0 HcmV?d00001 diff --git a/deploy/images/PULC/table_attribute/val_851.jpg b/deploy/images/PULC/table_attribute/val_851.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7da63f169146861e14c0d74301c01aa192806415 GIT binary patch literal 55573 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 self.source_threshold else 'Photo' + number = 'Little' if res[1] > self.number_threshold else 'Numerous' + color = 'Black-and-White' if res[2] > self.color_threshold else 'Multicolor' + clarity = 'Clear' if res[3] > self.clarity_threshold else 'Blurry' + obstruction = 'Without-Obstacles' if res[4] > self.number_threshold else 'With-Obstacles' + angle = 'Horizontal' if res[5] > self.number_threshold else 'Tilted' + + label_res = [source, number, color, clarity, obstruction, angle] + + threshold_list = [self.source_threshold, self.number_threshold, self.color_threshold, self.clarity_threshold, self.obstruction_threshold, self.angle_threshold] + pred_res = (np.array(res) > np.array(threshold_list) + ).astype(np.int8).tolist() + batch_res.append({"attributes": label_res, "output": pred_res}) + return batch_res diff --git a/deploy/python/predict_cls.py b/deploy/python/predict_cls.py index 6c312b423..a86c33005 100644 --- a/deploy/python/predict_cls.py +++ b/deploy/python/predict_cls.py @@ -11,17 +11,21 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - import os +import sys + +__dir__ = os.path.dirname(os.path.abspath(__file__)) +sys.path.append(os.path.abspath(os.path.join(__dir__, '../'))) import cv2 import numpy as np -from paddleclas.deploy.utils import logger, config -from paddleclas.deploy.utils.predictor import Predictor -from paddleclas.deploy.utils.get_image_list import get_image_list -from paddleclas.deploy.python.preprocess import create_operators -from paddleclas.deploy.python.postprocess import build_postprocess +from utils import logger +from utils import config +from utils.predictor import Predictor +from utils.get_image_list import get_image_list +from python.preprocess import create_operators +from python.postprocess import build_postprocess class ClsPredictor(Predictor): @@ -136,7 +140,7 @@ def main(config): for number, result_dict in enumerate(batch_results): if "PersonAttribute" in config[ "PostProcess"] or "VehicleAttribute" in config[ - "PostProcess"]: + "PostProcess"] or "TableAttribute" in config["PostProcess"]: filename = batch_names[number] print("{}:\t {}".format(filename, result_dict)) else: diff --git a/paddleclas.py b/paddleclas.py index 58094c8e3..f024915c2 100644 --- a/paddleclas.py +++ b/paddleclas.py @@ -191,7 +191,8 @@ PULC_MODEL_BASE_DOWNLOAD_URL = "https://paddleclas.bj.bcebos.com/models/PULC/inf PULC_MODELS = [ "car_exists", "language_classification", "person_attribute", "person_exists", "safety_helmet", "text_image_orientation", - "textline_orientation", "traffic_sign", "vehicle_attribute" + "textline_orientation", "traffic_sign", "vehicle_attribute", + "table_attribute" ] @@ -271,7 +272,25 @@ def init_config(model_type, model_name, inference_model_dir, **kwargs): if "type_threshold" in kwargs and kwargs["type_threshold"]: cfg.PostProcess.VehicleAttribute.type_threshold = kwargs[ "type_threshold"] - + if "TableAttribute" in cfg.PostProcess: + if "source_threshold" in kwargs and kwargs["source_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "source_threshold"] + if "number_threshold" in kwargs and kwargs["number_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "number_threshold"] + if "color_threshold" in kwargs and kwargs["color_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "color_threshold"] + if "clarity_threshold" in kwargs and kwargs["clarity_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "clarity_threshold"] + if "obstruction_threshold" in kwargs and kwargs["obstruction_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "obstruction_threshold"] + if "angle_threshold" in kwargs and kwargs["angle_threshold"]: + cfg.PostProcess.VehicleAttribute.color_threshold = kwargs[ + "angle_threshold"] if "save_dir" in kwargs and kwargs["save_dir"]: cfg.PostProcess.SavePreLabel.save_dir = kwargs["save_dir"] diff --git a/ppcls/configs/PULC/table_attribute/PPLCNet_x1_0.yaml b/ppcls/configs/PULC/table_attribute/PPLCNet_x1_0.yaml new file mode 100644 index 000000000..2c1e9b253 --- /dev/null +++ b/ppcls/configs/PULC/table_attribute/PPLCNet_x1_0.yaml @@ -0,0 +1,133 @@ +# global configs +Global: + checkpoints: null + pretrained_model: null + output_dir: "./output/" + device: "gpu" + save_interval: 1 + eval_during_train: True + eval_interval: 1 + epochs: 20 + print_batch_step: 10 + use_visualdl: False + # used for static mode and model export + image_shape: [3, 224, 224] + save_inference_dir: "./inference" + use_multilabel: True + +# model architecture +Arch: + name: "PPLCNet_x1_0" + pretrained: True + use_ssld: True + class_num: 6 + + +# loss function config for traing/eval process +Loss: + Train: + - MultiLabelLoss: + weight: 1.0 + weight_ratio: True + size_sum: True + Eval: + - MultiLabelLoss: + weight: 1.0 + weight_ratio: True + size_sum: True + +Optimizer: + name: Momentum + momentum: 0.9 + lr: + name: Cosine + learning_rate: 0.01 + warmup_epoch: 5 + regularizer: + name: 'L2' + coeff: 0.0005 + +# data loader for train and eval +DataLoader: + Train: + dataset: + name: MultiLabelDataset + image_root: "dataset/table_attribute/" + cls_label_path: "dataset/table_attribute/train_list.txt" + label_ratio: True + transform_ops: + - DecodeImage: + to_rgb: True + channel_first: False + - ResizeImage: + size: [224, 224] + - RandFlipImage: + flip_code: 1 + - NormalizeImage: + scale: 1.0/255.0 + mean: [0.485, 0.456, 0.406] + std: [0.229, 0.224, 0.225] + order: '' + sampler: + name: DistributedBatchSampler + batch_size: 64 + drop_last: True + shuffle: True + loader: + num_workers: 4 + use_shared_memory: True + Eval: + dataset: + name: MultiLabelDataset + image_root: "dataset/table_attribute/" + cls_label_path: "dataset/table_attribute/val_list.txt" + label_ratio: True + transform_ops: + - DecodeImage: + to_rgb: True + channel_first: False + - ResizeImage: + size: [224, 224] + - NormalizeImage: + scale: 1.0/255.0 + mean: [0.485, 0.456, 0.406] + std: [0.229, 0.224, 0.225] + order: '' + sampler: + name: DistributedBatchSampler + batch_size: 64 + drop_last: False + shuffle: False + loader: + num_workers: 4 + use_shared_memory: True + +Infer: + infer_imgs: deploy/images/PULC/table_attribute/val_3610.jpg + batch_size: 10 + transforms: + - DecodeImage: + to_rgb: True + channel_first: False + - ResizeImage: + size: [224, 224] + - NormalizeImage: + scale: 1.0/255.0 + mean: [0.485, 0.456, 0.406] + std: [0.229, 0.224, 0.225] + order: '' + - ToCHWImage: + PostProcess: + name: TableAttribute + source_threshold: 0.5 + number_threshold: 0.5 + color_threshold: 0.5 + clarity_threshold : 0.5 + obstruction_threshold: 0.5 + angle_threshold: 0.5 + +Metric: + Eval: + - ATTRMetric: + + diff --git a/ppcls/data/postprocess/__init__.py b/ppcls/data/postprocess/__init__.py index 6b8b7730b..6cc570fc2 100644 --- a/ppcls/data/postprocess/__init__.py +++ b/ppcls/data/postprocess/__init__.py @@ -18,7 +18,7 @@ from . import topk, threshoutput from .topk import Topk, MultiLabelTopk from .threshoutput import ThreshOutput -from .attr_rec import VehicleAttribute, PersonAttribute +from .attr_rec import VehicleAttribute, PersonAttribute, TableAttribute def build_postprocess(config): diff --git a/ppcls/data/postprocess/attr_rec.py b/ppcls/data/postprocess/attr_rec.py index a8d492501..25d54c7f2 100644 --- a/ppcls/data/postprocess/attr_rec.py +++ b/ppcls/data/postprocess/attr_rec.py @@ -171,3 +171,47 @@ class PersonAttribute(object): batch_res.append({"attributes": label_res, "output": pred_res}) return batch_res + +class TableAttribute(object): + def __init__(self, + source_threshold=0.5, + number_threshold=0.5, + color_threshold=0.5, + clarity_threshold=0.5, + obstruction_threshold=0.5, + angle_threshold=0.5, + ): + self.source_threshold = source_threshold + self.number_threshold = number_threshold + self.color_threshold = color_threshold + self.clarity_threshold = clarity_threshold + self.obstruction_threshold = obstruction_threshold + self.angle_threshold = angle_threshold + + def __call__(self, x, file_names=None): + if isinstance(x, dict): + x = x['logits'] + assert isinstance(x, paddle.Tensor) + if file_names is not None: + assert x.shape[0] == len(file_names) + x = F.sigmoid(x).numpy() + # postprocess output of predictor + batch_res = [] + for idx, res in enumerate(x): + res = res.tolist() + label_res = [] + source = 'Scanned' if res[0] > self.source_threshold else 'Photo' + number = 'Little' if res[1] > self.number_threshold else 'Numerous' + color = 'Black-and-White' if res[2] > self.color_threshold else 'Multicolor' + clarity = 'Clear' if res[3] > self.clarity_threshold else 'Blurry' + obstruction = 'Without-Obstacles' if res[4] > self.number_threshold else 'With-Obstacles' + angle = 'Horizontal' if res[5] > self.number_threshold else 'Tilted' + + label_res = [source, number, color, clarity, obstruction, angle] + + threshold_list = [self.source_threshold, self.number_threshold, self.color_threshold, self.clarity_threshold, self.obstruction_threshold, self.angle_threshold] + pred_res = (np.array(res) > np.array(threshold_list) + ).astype(np.int8).tolist() + batch_res.append({"attributes": label_res, "output": pred_res, "file_name": file_names[idx]}) + return batch_res +