| Global: |
| debug: false |
| use_gpu: true |
| epoch_num: 200 |
| log_smooth_window: 20 |
| print_batch_step: 10 |
| save_model_dir: ./output/rec_ppocr_v4 |
| save_epoch_step: 10 |
| eval_batch_step: [0, 2000] |
| cal_metric_during_train: true |
| pretrained_model: |
| checkpoints: |
| save_inference_dir: |
| use_visualdl: false |
| infer_img: doc/imgs_words/ch/word_1.jpg |
| character_dict_path: pytorchocr/utils/ppocr_keys_v1.txt |
| max_text_length: &max_text_length 25 |
| infer_mode: true |
| use_space_char: true |
| distributed: true |
| save_res_path: ./output/rec/predicts_ppocrv3.txt |
|
|
|
|
| Optimizer: |
| name: Adam |
| beta1: 0.9 |
| beta2: 0.999 |
| lr: |
| name: Cosine |
| learning_rate: 0.001 |
| warmup_epoch: 5 |
| regularizer: |
| name: L2 |
| factor: 3.0e-05 |
|
|
|
|
| Architecture: |
| model_type: rec |
| algorithm: SVTR_LCNet |
| Transform: |
| Backbone: |
| name: PPLCNetV3 |
| scale: 0.95 |
| Head: |
| name: MultiHead |
| head_list: |
| - CTCHead: |
| Neck: |
| name: svtr |
| dims: 120 |
| depth: 2 |
| hidden_dims: 120 |
| kernel_size: [1, 3] |
| use_guide: True |
| Head: |
| fc_decay: 0.00001 |
| - NRTRHead: |
| nrtr_dim: 384 |
| max_text_length: *max_text_length |
|
|
| Loss: |
| name: MultiLoss |
| loss_config_list: |
| - CTCLoss: |
| - NRTRLoss: |
|
|
| PostProcess: |
| name: CTCLabelDecode |
|
|
| Metric: |
| name: RecMetric |
| main_indicator: acc |
|
|
| Train: |
| dataset: |
| name: MultiScaleDataSet |
| ds_width: false |
| data_dir: ./train_data/ |
| ext_op_transform_idx: 1 |
| label_file_list: |
| - ./train_data/train_list.txt |
| transforms: |
| - DecodeImage: |
| img_mode: BGR |
| channel_first: false |
| - RecConAug: |
| prob: 0.5 |
| ext_data_num: 2 |
| image_shape: [48, 320, 3] |
| max_text_length: *max_text_length |
| - RecAug: |
| - MultiLabelEncode: |
| gtc_encode: NRTRLabelEncode |
| - KeepKeys: |
| keep_keys: |
| - image |
| - label_ctc |
| - label_gtc |
| - length |
| - valid_ratio |
| sampler: |
| name: MultiScaleSampler |
| scales: [[320, 32], [320, 48], [320, 64]] |
| first_bs: &bs 192 |
| fix_bs: false |
| divided_factor: [8, 16] |
| is_training: True |
| loader: |
| shuffle: true |
| batch_size_per_card: *bs |
| drop_last: true |
| num_workers: 8 |
| Eval: |
| dataset: |
| name: SimpleDataSet |
| data_dir: ./train_data |
| label_file_list: |
| - ./train_data/val_list.txt |
| transforms: |
| - DecodeImage: |
| img_mode: BGR |
| channel_first: false |
| - MultiLabelEncode: |
| gtc_encode: NRTRLabelEncode |
| - RecResizeImg: |
| image_shape: [3, 48, 320] |
| - KeepKeys: |
| keep_keys: |
| - image |
| - label_ctc |
| - label_gtc |
| - length |
| - valid_ratio |
| loader: |
| shuffle: false |
| drop_last: false |
| batch_size_per_card: 128 |
| num_workers: 4 |
|
|