kie.md 2.6 KB
Newer Older
L
LDOUBLEV 已提交
1 2


qq_25193841's avatar
qq_25193841 已提交
3
# Key Information Extraction(KIE)
L
LDOUBLEV 已提交
4

qq_25193841's avatar
qq_25193841 已提交
5
This section provides a tutorial example on how to quickly use, train, and evaluate a key information extraction(KIE) model, [SDMGR](https://arxiv.org/abs/2103.14470), in PaddleOCR.
L
LDOUBLEV 已提交
6

qq_25193841's avatar
qq_25193841 已提交
7
[SDMGR(Spatial Dual-Modality Graph Reasoning)](https://arxiv.org/abs/2103.14470) is a KIE algorithm that classifies each detected text region into predefined categories, such as order ID, invoice number, amount, and etc.
L
LDOUBLEV 已提交
8 9


qq_25193841's avatar
qq_25193841 已提交
10 11 12
* [1. Quick Use](#1-----)
* [2. Model Training](#2-----)
* [3. Model Evaluation](#3-----)
L
LDOUBLEV 已提交
13 14 15

<a name="1-----"></a>

qq_25193841's avatar
qq_25193841 已提交
16
## 1. Quick Use
L
LDOUBLEV 已提交
17

qq_25193841's avatar
qq_25193841 已提交
18 19 20
[Wildreceipt dataset](https://paperswithcode.com/dataset/wildreceipt) is used for this tutorial. It contains 1765 photos, with 25 classes, and 50000 text boxes, which can be downloaded by wget:

```shell
L
LDOUBLEV 已提交
21 22 23
wget https://paddleocr.bj.bcebos.com/dygraph_v2.1/kie/wildreceipt.tar && tar xf wildreceipt.tar
```

qq_25193841's avatar
qq_25193841 已提交
24
Download the pretrained model and predict the result:
L
LDOUBLEV 已提交
25

qq_25193841's avatar
qq_25193841 已提交
26
```shell
L
LDOUBLEV 已提交
27 28 29 30 31
cd PaddleOCR/
wget https://paddleocr.bj.bcebos.com/dygraph_v2.1/kie/kie_vgg16.tar && tar xf kie_vgg16.tar
python3.7 tools/infer_kie.py -c configs/kie/kie_unet_sdmgr.yml -o Global.checkpoints=kie_vgg16/best_accuracy  Global.infer_img=../wildreceipt/1.txt
```

qq_25193841's avatar
qq_25193841 已提交
32
The prediction result is saved as `./output/sdmgr_kie/predicts_kie.txt`, and the visualization results are saved in the folder`/output/sdmgr_kie/kie_results/`.
L
LDOUBLEV 已提交
33

qq_25193841's avatar
qq_25193841 已提交
34
The visualization results are shown in the figure below:
D
fix doc  
Double_V 已提交
35 36 37 38

<div align="center">
    <img src="./imgs/0.png" width="800">
</div>
L
LDOUBLEV 已提交
39 40

<a name="2-----"></a>
qq_25193841's avatar
qq_25193841 已提交
41
## 2. Model Training
L
LDOUBLEV 已提交
42

qq_25193841's avatar
qq_25193841 已提交
43 44
Create a softlink to the folder, `PaddleOCR/train_data`:
```shell
L
LDOUBLEV 已提交
45 46 47 48 49
cd PaddleOCR/ && mkdir train_data && cd train_data

ln -s ../../wildreceipt ./
```

qq_25193841's avatar
qq_25193841 已提交
50 51
The configuration file used for training is `configs/kie/kie_unet_sdmgr.yml`. The default training data path in the configuration file is `train_data/wildreceipt`. After preparing the data, you can execute the model training with the following command:
```shell
L
LDOUBLEV 已提交
52 53 54 55
python3.7 tools/train.py -c configs/kie/kie_unet_sdmgr.yml -o Global.save_model_dir=./output/kie/
```
<a name="3-----"></a>

qq_25193841's avatar
qq_25193841 已提交
56 57 58 59 60
## 3. Model Evaluation

After training, you can execute the model evaluation with the following command:

```shell
L
LDOUBLEV 已提交
61 62 63
python3.7 tools/eval.py -c configs/kie/kie_unet_sdmgr.yml -o Global.checkpoints=./output/kie/best_accuracy
```

qq_25193841's avatar
qq_25193841 已提交
64
**Reference:**
L
LDOUBLEV 已提交
65 66 67 68 69 70 71 72 73 74 75 76 77

<!-- [ALGORITHM] -->

```bibtex
@misc{sun2021spatial,
      title={Spatial Dual-Modality Graph Reasoning for Key Information Extraction},
      author={Hongbin Sun and Zhanghui Kuang and Xiaoyu Yue and Chenhao Lin and Wayne Zhang},
      year={2021},
      eprint={2103.14470},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}
```