You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> Notes: If you [use MX Engine for Inference](#21-inference-with-mx-engine), the version of Python should be 3.9.
55
+
> Notes:
56
+
> - If you [use MX Engine for Inference](#21-inference-with-mx-engine), the version of Python should be 3.9.
57
+
> - If scikit_image cannot be imported, you can use the following command line to set environment variable `$LD_PRELOAD` referring to [here](https://github.com/opencv/opencv/issues/14884). Change `path/to` to your directory.
> More information of DBNet++ is coming soon. The only difference between _DBNet_ and _DBNet++_ is in the _Adaptive Scale Fusion_ module, which is controlled by the `use_asf` parameter in the `neck` module in yaml config file.
49
+
50
+
47
51
#### Notes
48
52
- Context: Training context denoted as {device}x{pieces}-{MS version}{MS mode}, where mindspore mode can be G - graph mode or F - pynative mode with ms function. For example, D910x8-G is for training on 8 pieces of Ascend 910 NPU using graph mode.
49
53
- Note that the training time of DBNet is highly affected by data processing and varies on different machines.
@@ -88,7 +92,7 @@ specifically the following parts. The `dataset_root` will be concatenated with `
- Context: Training context denoted as {device}x{pieces}-{MS mode}, where mindspore mode can be G-graph mode or F-pynative mode with ms function. For example, D910x8-MS1.8-G is for training on 8 pieces of Ascend 910 NPU using graph mode based on Minspore version 1.8.
50
50
- To reproduce the result on other contexts, please ensure the global batch size is the same.
51
51
- Both VGG and ResNet models are trained from scratch without any pre-training.
52
-
- The above models are trained with MJSynth (MJ) and SynthText (ST) datasets. For more data details, please refer to section 3.1.2 Dataset Preparation].
52
+
- The above models are trained with MJSynth (MJ) and SynthText (ST) datasets. For more data details, please refer to [Dataset Preparation](#312-dataset-preparation) section.
53
53
-**Evaluations are tested individually on each benchmark dataset, and Avg Accuracy is the average of accuracies across all sub-datasets.**
54
54
- For the PaddleOCR version of CRNN, the performance is reported on the trained model provided on their [github](https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.6/doc/doc_en/algorithm_rec_crnn_en.md).
55
55
@@ -62,15 +62,15 @@ Please refer to the [installation instruction](https://github.com/mindspore-lab/
62
62
63
63
#### 3.1.2 Dataset Preparation
64
64
Please download lmdb dataset for traininig and evaluation from [here](https://www.dropbox.com/sh/i39abvnefllx2si/AAAbAYRvxzRp3cIE5HzqUw3ra?dl=0) (ref: [deep-text-recognition-benchmark](https://github.com/clovaai/deep-text-recognition-benchmark#download-lmdb-dataset-for-traininig-and-evaluation-from-here)). There're several zip files:
65
-
-`data_lmdb_release.zip` contains the entire datasets including train, valid and evaluation.
66
-
-`validation.zip` is the union dataset for Validation
65
+
-`data_lmdb_release.zip` contains the **entire** datasets including training.zip, validation.zip and evaluation.zip.
66
+
-`validation.zip` is the union dataset for Validation.
67
67
-`evaluation.zip` contains several benchmarking datasets.
68
68
69
69
Unzip the data and after preparation, the data structure should be like
70
70
71
71
```text
72
72
.
73
-
├── train
73
+
├── training
74
74
│ ├── MJ
75
75
│ │ ├── data.mdb
76
76
│ │ ├── lock.mdb
@@ -91,8 +91,8 @@ Unzip the data and after preparation, the data structure should be like
91
91
```
92
92
93
93
#### 3.1.3 Check YAML Config Files
94
-
Please check the following important args: `system.distribute`, `system.val_while_train`, `common.batch_size`, `train.dataset.dataset_root`, `train.dataset.data_dir`, `train.dataset.label_file`,
95
-
`eval.dataset.dataset_root`, `eval.dataset.data_dir`, `eval.dataset.label_file`, `eval.loader.batch_size`. Explanations of these important args:
94
+
Please check the following important args: `system.distribute`, `system.val_while_train`, `common.batch_size`, `train.ckpt_save_dir`, `train.dataset.dataset_root`, `train.dataset.data_dir`, `train.dataset.label_file`,
95
+
`eval.ckpt_load_path`, `eval.dataset.dataset_root`, `eval.dataset.data_dir`, `eval.dataset.label_file`, `eval.loader.batch_size`. Explanations of these important args:
96
96
97
97
```yaml
98
98
system:
@@ -106,7 +106,7 @@ common:
106
106
batch_size: &batch_size 64 # Batch size for training
107
107
...
108
108
train:
109
-
ckpt_save_dir: './tmp_rec'
109
+
ckpt_save_dir: './tmp_rec'# The training result (including checkpoints, per-epoch performance and curves) saving directory
110
110
dataset_sink_mode: False
111
111
dataset:
112
112
type: LMDBDataset
@@ -115,7 +115,7 @@ train:
115
115
# label_file: # Path of training label file, concatenated with `dataset_root` to be the complete path of training label file, not required when using LMDBDataset
@@ -164,7 +164,7 @@ The training result (including checkpoints, per-epoch performance and curves) wi
164
164
To evaluate the accuracy of the trained model, you can use `eval.py`. Please set the checkpoint path to the arg `ckpt_load_path` in the `eval` section of yaml config file, set `distribute` to be False, and then run:
0 commit comments