README_ch.md 2.9 KB
Newer Older
W
WenmuZhou 已提交
1 2
# 表格结构和内容预测

W
WenmuZhou 已提交
3
## 1. pipeline
W
WenmuZhou 已提交
4 5 6 7 8 9 10 11 12
表格的ocr主要包含三个模型
1. 单行文本检测-DB
2. 单行文本识别-CRNN
3. 表格结构和cell坐标预测-RARE

具体流程图如下

![tableocr_pipeline](../../doc/table/tableocr_pipeline.png)

W
WenmuZhou 已提交
13 14
1. 图片由单行文字检测检测模型到单行文字的坐标,然后送入识别模型拿到识别结果。
2. 图片由表格结构和cell坐标预测模型拿到表格的结构信息和单元格的坐标信息。
W
WenmuZhou 已提交
15 16 17
3. 由单行文字的坐标、识别结果和单元格的坐标一起组合出单元格的识别结果。
4. 单元格的识别结果和表格结构一起构造表格的html字符串。

W
WenmuZhou 已提交
18
## 2. 使用
W
WenmuZhou 已提交
19 20


W
WenmuZhou 已提交
21
### 2.1 训练
W
WenmuZhou 已提交
22 23
TBD

W
WenmuZhou 已提交
24
### 2.2 评估
W
WenmuZhou 已提交
25 26 27 28 29 30
先cd到PaddleOCR/ppstructure目录下

表格使用 TEDS(Tree-Edit-Distance-based Similarity) 作为模型的评估指标。在进行模型评估之前,需要将pipeline中的三个模型分别导出为inference模型(我们已经提供好),还需要准备评估的gt, gt示例如下:
```json
{"PMC4289340_004_00.png": [["<html>", "<body>", "<table>", "<thead>", "<tr>", "<td>", "</td>", "<td>", "</td>", "<td>", "</td>", "</tr>", "</thead>", "<tbody>", "<tr>", "<td>", "</td>", "<td>", "</td>", "<td>", "</td>", "</tr>",  "</tbody>", "</table>", "</body>", "</html>"], [[1, 4, 29, 13], [137, 4, 161, 13], [215, 4, 236, 13], [1, 17, 30, 27], [137, 17, 147, 27], [215, 17, 225, 27]], [["<b>", "F", "e", "a", "t", "u", "r", "e", "</b>"], ["<b>", "G", "b", "3", " ", "+", "</b>"], ["<b>", "G", "b", "3", " ", "-", "</b>"], ["<b>", "P", "a", "t", "i", "e", "n", "t", "s", "</b>"], ["6", "2"], ["4", "5"]]]}
```
W
WenmuZhou 已提交
31 32 33 34 35
json 中,key为图片名,value为对于的gt,gt是一个由四个item组成的list,每个item分别为
1. 表格结构的html字符串list
2. 每个cell的坐标 (不包括cell里文字为空的)
3. 每个cell里的文字信息 (不包括cell里文字为空的)
4. 每个cell里的文字信息 (包括cell里文字为空的)
W
WenmuZhou 已提交
36 37 38

准备完成后使用如下命令进行评估,评估完成后会输出teds指标。
```python
W
WenmuZhou 已提交
39
python3 table/eval_table.py --det_model_dir=path/to/det_model_dir --rec_model_dir=path/to/rec_model_dir --table_model_dir=path/to/table_model_dir --image_dir=../doc/table/1.png --rec_char_dict_path=../ppocr/utils/dict/table_dict.txt --table_char_dict_path=../ppocr/utils/dict/table_structure_dict.txt --rec_char_type=EN --det_limit_side_len=736 --det_limit_type=min --gt_path=path/to/gt.json
W
WenmuZhou 已提交
40 41 42
```


W
WenmuZhou 已提交
43
### 2.3 预测
W
WenmuZhou 已提交
44 45 46
先cd到PaddleOCR/ppstructure目录下

```python
W
WenmuZhou 已提交
47
python3 table/predict_table.py --det_model_dir=path/to/det_model_dir --rec_model_dir=path/to/rec_model_dir --table_model_dir=path/to/table_model_dir --image_dir=../doc/table/1.png --rec_char_dict_path=../ppocr/utils/dict/table_dict.txt --table_char_dict_path=../ppocr/utils/dict/table_structure_dict.txt --rec_char_type=EN --det_limit_side_len=736 --det_limit_type=min --output ../output/table
W
WenmuZhou 已提交
48
```
W
opt doc  
WenmuZhou 已提交
49
运行完成后,每张图片的excel表格会保存到output字段指定的目录下