diff --git a/deploy/cpp_infer/readme.md b/deploy/cpp_infer/readme.md
index 2974f3227aa6f9cdd967665addc905f7b902bac2..d176ff986295088a15f4e20b16a7986c3640387b 100644
--- a/deploy/cpp_infer/readme.md
+++ b/deploy/cpp_infer/readme.md
@@ -174,6 +174,9 @@ inference/
|-- table
| |--inference.pdiparams
| |--inference.pdmodel
+|-- layout
+| |--inference.pdiparams
+| |--inference.pdmodel
```
@@ -278,8 +281,30 @@ Specifically,
--cls=true \
```
+##### 7. layout+table
+```shell
+./build/ppocr --det_model_dir=inference/det_db \
+ --rec_model_dir=inference/rec_rcnn \
+ --table_model_dir=inference/table \
+ --image_dir=../../ppstructure/docs/table/table.jpg \
+ --layout_model_dir=inference/layout \
+ --type=structure \
+ --table=true \
+ --layout=true
+```
+
+##### 8. layout
+```shell
+./build/ppocr --layout_model_dir=inference/layout \
+ --image_dir=../../ppstructure/docs/table/1.png \
+ --type=structure \
+ --table=false \
+ --layout=true \
+ --det=false \
+ --rec=false
+```
-##### 7. table
+##### 9. table
```shell
./build/ppocr --det_model_dir=inference/det_db \
--rec_model_dir=inference/rec_rcnn \
@@ -343,6 +368,16 @@ More parameters are as follows,
|rec_img_h|int|48|image height of recognition|
|rec_img_w|int|320|image width of recognition|
+- Layout related parameters
+
+|parameter|data type|default|meaning|
+| :---: | :---: | :---: | :---: |
+|layout_model_dir|string|-| Address of layout inference model|
+|layout_dict_path|string|../../ppocr/utils/dict/layout_dict/layout_publaynet_dict.txt|dictionary file|
+|layout_score_threshold|float|0.5|Threshold of score.|
+|layout_nms_threshold|float|0.5|Threshold of nms.|
+
+
- Table recognition related parameters
|parameter|data type|default|meaning|
@@ -368,11 +403,51 @@ predict img: ../../doc/imgs/12.jpg
The detection visualized image saved in ./output//12.jpg
```
-- table
+- layout+table
```bash
-predict img: ../../ppstructure/docs/table/table.jpg
-0 type: table, region: [0,0,371,293], res:
Methods | R | P | F | FPS |
SegLink [26] | 70.0 | 86.0 | 77.0 | 8.9 |
PixelLink [4] | 73.2 | 83.0 | 77.8 | - |
TextSnake [18] | 73.9 | 83.2 | 78.3 | 1.1 |
TextField [37] | 75.9 | 87.4 | 81.3 | 5.2 |
MSR[38] | 76.7 | 87.4 | 81.7 | - |
FTSN [3] | 77.1 | 87.6 | 82.0 | - |
LSE[30] | 81.7 | 84.2 | 82.9 | - |
CRAFT [2] | 78.2 | 88.2 | 82.9 | 8.6 |
MCN [16] | 79 | 88 | 83 | - |
ATRR[35] | 82.1 | 85.2 | 83.6 | - |
PAN [34] | 83.8 | 84.4 | 84.1 | 30.2 |
DB[12] | 79.2 | 91.5 | 84.9 | 32.0 |
DRRG [41] | 82.30 | 88.05 | 85.08 | - |
Ours (SynText) | 80.68 | 85.40 | 82.97 | 12.68 |
Ours (MLT-17) | 84.54 | 86.62 | 85.57 | 12.31 |
+predict img: ../../ppstructure/docs/table/1.png
+0 type: text, region: [12,729,410,848], score: 0.781044, res: count of ocr result is : 7
+********** print ocr result **********
+0 det boxes: [[4,1],[79,1],[79,12],[4,12]] rec text: CTW1500. rec score: 0.769472
+...
+6 det boxes: [[4,99],[391,99],[391,112],[4,112]] rec text: sate-of-the-artmethods[12.34.36l.ourapproachachieves rec score: 0.90414
+********** end print ocr result **********
+1 type: text, region: [69,342,342,359], score: 0.703666, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[8,2],[269,2],[269,13],[8,13]] rec text: Table6.Experimentalresults on CTW-1500 rec score: 0.890454
+********** end print ocr result **********
+2 type: text, region: [70,316,706,332], score: 0.659738, res: count of ocr result is : 2
+********** print ocr result **********
+0 det boxes: [[373,2],[630,2],[630,11],[373,11]] rec text: oroposals.andthegreencontoursarefinal rec score: 0.919729
+1 det boxes: [[8,3],[357,3],[357,11],[8,11]] rec text: Visualexperimentalresultshebluecontoursareboundar rec score: 0.915963
+********** end print ocr result **********
+3 type: text, region: [489,342,789,359], score: 0.630538, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[8,2],[294,2],[294,14],[8,14]] rec text: Table7.Experimentalresults onMSRA-TD500 rec score: 0.942251
+********** end print ocr result **********
+4 type: text, region: [444,751,841,848], score: 0.607345, res: count of ocr result is : 5
+********** print ocr result **********
+0 det boxes: [[19,3],[389,3],[389,17],[19,17]] rec text: Inthispaper,weproposeanovel adaptivebound rec score: 0.941031
+1 det boxes: [[4,22],[390,22],[390,36],[4,36]] rec text: aryproposalnetworkforarbitraryshapetextdetection rec score: 0.960172
+2 det boxes: [[4,42],[392,42],[392,56],[4,56]] rec text: whichadoptanboundaryproposalmodeltogeneratecoarse rec score: 0.934647
+3 det boxes: [[4,61],[389,61],[389,75],[4,75]] rec text: ooundaryproposals,andthenadoptanadaptiveboundary rec score: 0.946296
+4 det boxes: [[5,80],[387,80],[387,93],[5,93]] rec text: leformationmodelcombinedwithGCNandRNNtoper rec score: 0.952401
+********** end print ocr result **********
+5 type: title, region: [444,705,564,724], score: 0.785429, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[6,2],[113,2],[113,14],[6,14]] rec text: 5.Conclusion rec score: 0.856903
+********** end print ocr result **********
+6 type: table, region: [14,360,402,711], score: 0.963643, res: Methods | Ext | R | P | F | FPS |
TextSnake [18] | Syn | 85.3 | 67.9 | 75.6 | |
CSE [17] | MiLT | 76.1 | 78.7 | 77.4 | 0.38 |
LOMO[40] | Syn | 76.5 | 85.7 | 80.8 | 4.4 |
ATRR[35] | Sy- | 80.2 | 80.1 | 80.1 | - |
SegLink++ [28] | Syn | 79.8 | 82.8 | 81.3 | - |
TextField [37] | Syn | 79.8 | 83.0 | 81.4 | 6.0 |
MSR[38] | Syn | 79.0 | 84.1 | 81.5 | 4.3 |
PSENet-1s [33] | MLT | 79.7 | 84.8 | 82.2 | 3.9 |
DB [12] | Syn | 80.2 | 86.9 | 83.4 | 22.0 |
CRAFT [2] | Syn | 81.1 | 86.0 | 83.5 | - |
TextDragon [5] | MLT+ | 82.8 | 84.5 | 83.6 | |
PAN [34] | Syn | 81.2 | 86.4 | 83.7 | 39.8 |
ContourNet [36] | | 84.1 | 83.7 | 83.9 | 4.5 |
DRRG [41] | MLT | 83.02 | 85.93 | 84.45 | - |
TextPerception[23] | Syn | 81.9 | 87.5 | 84.6 | |
Ours | Syn | 80.57 | 87.66 | 83.97 | 12.08 |
Ours | | 81.45 | 87.81 | 84.51 | 12.15 |
Ours | MLT | 83.60 | 86.45 | 85.00 | 12.21 |
+The table visualized image saved in ./output//6_1.png
+7 type: table, region: [462,359,820,657], score: 0.953917, res: Methods | R | P | F | FPS |
SegLink [26] | 70.0 | 86.0 | 77.0 | 8.9 |
PixelLink [4] | 73.2 | 83.0 | 77.8 | - |
TextSnake [18] | 73.9 | 83.2 | 78.3 | 1.1 |
TextField [37] | 75.9 | 87.4 | 81.3 | 5.2 |
MSR[38] | 76.7 | 87.4 | 81.7 | - |
FTSN[3] | 77.1 | 87.6 | 82.0 | : |
LSE[30] | 81.7 | 84.2 | 82.9 | |
CRAFT [2] | 78.2 | 88.2 | 82.9 | 8.6 |
MCN [16] | 79 | 88 | 83 | - |
ATRR[35] | 82.1 | 85.2 | 83.6 | - |
PAN [34] | 83.8 | 84.4 | 84.1 | 30.2 |
DB[12] | 79.2 | 91.5 | 84.9 | 32.0 |
DRRG [41] | 82.30 | 88.05 | 85.08 | - |
Ours (SynText) | 80.68 | 85.40 | 82.97 | 12.68 |
Ours (MLT-17) | 84.54 | 86.62 | 85.57 | 12.31 |
+The table visualized image saved in ./output//7_1.png
+8 type: figure, region: [14,3,836,310], score: 0.969443, res: count of ocr result is : 26
+********** print ocr result **********
+0 det boxes: [[506,14],[539,15],[539,22],[506,21]] rec text: E rec score: 0.318073
+...
+25 det boxes: [[680,290],[759,288],[759,303],[680,305]] rec text: (d) CTW1500 rec score: 0.95911
+********** end print ocr result **********
```
diff --git a/deploy/cpp_infer/readme_ch.md b/deploy/cpp_infer/readme_ch.md
index 03394efdc64788d924e155c989b1fac95f8432da..444567f193abade94029d0f048675eaf1cf03690 100644
--- a/deploy/cpp_infer/readme_ch.md
+++ b/deploy/cpp_infer/readme_ch.md
@@ -184,6 +184,9 @@ inference/
|-- table
| |--inference.pdiparams
| |--inference.pdmodel
+|-- layout
+| |--inference.pdiparams
+| |--inference.pdmodel
```
@@ -288,7 +291,30 @@ CUDNN_LIB_DIR=/your_cudnn_lib_dir
--cls=true \
```
-##### 7. 表格识别
+##### 7. 版面分析+表格识别
+```shell
+./build/ppocr --det_model_dir=inference/det_db \
+ --rec_model_dir=inference/rec_rcnn \
+ --table_model_dir=inference/table \
+ --image_dir=../../ppstructure/docs/table/table.jpg \
+ --layout_model_dir=inference/layout \
+ --type=structure \
+ --table=true \
+ --layout=true
+```
+
+##### 8. 版面分析
+```shell
+./build/ppocr --layout_model_dir=inference/layout \
+ --image_dir=../../ppstructure/docs/table/1.png \
+ --type=structure \
+ --table=false \
+ --layout=true \
+ --det=false \
+ --rec=false
+```
+
+##### 9. 表格识别
```shell
./build/ppocr --det_model_dir=inference/det_db \
--rec_model_dir=inference/rec_rcnn \
@@ -352,12 +378,22 @@ CUDNN_LIB_DIR=/your_cudnn_lib_dir
|rec_img_w|int|320|文字识别模型输入图像宽度|
+- 版面分析模型相关
+
+|参数名称|类型|默认参数|意义|
+| :---: | :---: | :---: | :---: |
+|layout_model_dir|string|-|版面分析模型inference model地址|
+|layout_dict_path|string|../../ppocr/utils/dict/layout_dict/layout_publaynet_dict.txt|字典文件|
+|layout_score_threshold|float|0.5|检测框的分数阈值|
+|layout_nms_threshold|float|0.5|nms的阈值|
+
+
- 表格识别模型相关
|参数名称|类型|默认参数|意义|
| :---: | :---: | :---: | :---: |
|table_model_dir|string|-|表格识别模型inference model地址|
-|table_char_dict_path|string|../../ppocr/utils/dict/table_structure_dict.txt|字典文件|
+|table_char_dict_path|string|../../ppocr/utils/dict/table_structure_dict_ch.txt|字典文件|
|table_max_len|int|488|表格识别模型输入图像长边大小,最终网络输入图像大小为(table_max_len,table_max_len)|
|merge_no_span_structure|bool|true|是否合并 和 | 为 | |
@@ -378,11 +414,51 @@ predict img: ../../doc/imgs/12.jpg
The detection visualized image saved in ./output//12.jpg
```
-- table
+- layout+table
```bash
-predict img: ../../ppstructure/docs/table/table.jpg
-0 type: table, region: [0,0,371,293], res: Methods | R | P | F | FPS |
SegLink [26] | 70.0 | 86.0 | 77.0 | 8.9 |
PixelLink [4] | 73.2 | 83.0 | 77.8 | - |
TextSnake [18] | 73.9 | 83.2 | 78.3 | 1.1 |
TextField [37] | 75.9 | 87.4 | 81.3 | 5.2 |
MSR[38] | 76.7 | 87.4 | 81.7 | - |
FTSN [3] | 77.1 | 87.6 | 82.0 | - |
LSE[30] | 81.7 | 84.2 | 82.9 | - |
CRAFT [2] | 78.2 | 88.2 | 82.9 | 8.6 |
MCN [16] | 79 | 88 | 83 | - |
ATRR[35] | 82.1 | 85.2 | 83.6 | - |
PAN [34] | 83.8 | 84.4 | 84.1 | 30.2 |
DB[12] | 79.2 | 91.5 | 84.9 | 32.0 |
DRRG [41] | 82.30 | 88.05 | 85.08 | - |
Ours (SynText) | 80.68 | 85.40 | 82.97 | 12.68 |
Ours (MLT-17) | 84.54 | 86.62 | 85.57 | 12.31 |
+predict img: ../../ppstructure/docs/table/1.png
+0 type: text, region: [12,729,410,848], score: 0.781044, res: count of ocr result is : 7
+********** print ocr result **********
+0 det boxes: [[4,1],[79,1],[79,12],[4,12]] rec text: CTW1500. rec score: 0.769472
+...
+6 det boxes: [[4,99],[391,99],[391,112],[4,112]] rec text: sate-of-the-artmethods[12.34.36l.ourapproachachieves rec score: 0.90414
+********** end print ocr result **********
+1 type: text, region: [69,342,342,359], score: 0.703666, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[8,2],[269,2],[269,13],[8,13]] rec text: Table6.Experimentalresults on CTW-1500 rec score: 0.890454
+********** end print ocr result **********
+2 type: text, region: [70,316,706,332], score: 0.659738, res: count of ocr result is : 2
+********** print ocr result **********
+0 det boxes: [[373,2],[630,2],[630,11],[373,11]] rec text: oroposals.andthegreencontoursarefinal rec score: 0.919729
+1 det boxes: [[8,3],[357,3],[357,11],[8,11]] rec text: Visualexperimentalresultshebluecontoursareboundar rec score: 0.915963
+********** end print ocr result **********
+3 type: text, region: [489,342,789,359], score: 0.630538, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[8,2],[294,2],[294,14],[8,14]] rec text: Table7.Experimentalresults onMSRA-TD500 rec score: 0.942251
+********** end print ocr result **********
+4 type: text, region: [444,751,841,848], score: 0.607345, res: count of ocr result is : 5
+********** print ocr result **********
+0 det boxes: [[19,3],[389,3],[389,17],[19,17]] rec text: Inthispaper,weproposeanovel adaptivebound rec score: 0.941031
+1 det boxes: [[4,22],[390,22],[390,36],[4,36]] rec text: aryproposalnetworkforarbitraryshapetextdetection rec score: 0.960172
+2 det boxes: [[4,42],[392,42],[392,56],[4,56]] rec text: whichadoptanboundaryproposalmodeltogeneratecoarse rec score: 0.934647
+3 det boxes: [[4,61],[389,61],[389,75],[4,75]] rec text: ooundaryproposals,andthenadoptanadaptiveboundary rec score: 0.946296
+4 det boxes: [[5,80],[387,80],[387,93],[5,93]] rec text: leformationmodelcombinedwithGCNandRNNtoper rec score: 0.952401
+********** end print ocr result **********
+5 type: title, region: [444,705,564,724], score: 0.785429, res: count of ocr result is : 1
+********** print ocr result **********
+0 det boxes: [[6,2],[113,2],[113,14],[6,14]] rec text: 5.Conclusion rec score: 0.856903
+********** end print ocr result **********
+6 type: table, region: [14,360,402,711], score: 0.963643, res: Methods | Ext | R | P | F | FPS |
TextSnake [18] | Syn | 85.3 | 67.9 | 75.6 | |
CSE [17] | MiLT | 76.1 | 78.7 | 77.4 | 0.38 |
LOMO[40] | Syn | 76.5 | 85.7 | 80.8 | 4.4 |
ATRR[35] | Sy- | 80.2 | 80.1 | 80.1 | - |
SegLink++ [28] | Syn | 79.8 | 82.8 | 81.3 | - |
TextField [37] | Syn | 79.8 | 83.0 | 81.4 | 6.0 |
MSR[38] | Syn | 79.0 | 84.1 | 81.5 | 4.3 |
PSENet-1s [33] | MLT | 79.7 | 84.8 | 82.2 | 3.9 |
DB [12] | Syn | 80.2 | 86.9 | 83.4 | 22.0 |
CRAFT [2] | Syn | 81.1 | 86.0 | 83.5 | - |
TextDragon [5] | MLT+ | 82.8 | 84.5 | 83.6 | |
PAN [34] | Syn | 81.2 | 86.4 | 83.7 | 39.8 |
ContourNet [36] | | 84.1 | 83.7 | 83.9 | 4.5 |
DRRG [41] | MLT | 83.02 | 85.93 | 84.45 | - |
TextPerception[23] | Syn | 81.9 | 87.5 | 84.6 | |
Ours | Syn | 80.57 | 87.66 | 83.97 | 12.08 |
Ours | | 81.45 | 87.81 | 84.51 | 12.15 |
Ours | MLT | 83.60 | 86.45 | 85.00 | 12.21 |
+The table visualized image saved in ./output//6_1.png
+7 type: table, region: [462,359,820,657], score: 0.953917, res: Methods | R | P | F | FPS |
SegLink [26] | 70.0 | 86.0 | 77.0 | 8.9 |
PixelLink [4] | 73.2 | 83.0 | 77.8 | - |
TextSnake [18] | 73.9 | 83.2 | 78.3 | 1.1 |
TextField [37] | 75.9 | 87.4 | 81.3 | 5.2 |
MSR[38] | 76.7 | 87.4 | 81.7 | - |
FTSN[3] | 77.1 | 87.6 | 82.0 | : |
LSE[30] | 81.7 | 84.2 | 82.9 | |
CRAFT [2] | 78.2 | 88.2 | 82.9 | 8.6 |
MCN [16] | 79 | 88 | 83 | - |
ATRR[35] | 82.1 | 85.2 | 83.6 | - |
PAN [34] | 83.8 | 84.4 | 84.1 | 30.2 |
DB[12] | 79.2 | 91.5 | 84.9 | 32.0 |
DRRG [41] | 82.30 | 88.05 | 85.08 | - |
Ours (SynText) | 80.68 | 85.40 | 82.97 | 12.68 |
Ours (MLT-17) | 84.54 | 86.62 | 85.57 | 12.31 |
+The table visualized image saved in ./output//7_1.png
+8 type: figure, region: [14,3,836,310], score: 0.969443, res: count of ocr result is : 26
+********** print ocr result **********
+0 det boxes: [[506,14],[539,15],[539,22],[506,21]] rec text: E rec score: 0.318073
+...
+25 det boxes: [[680,290],[759,288],[759,303],[680,305]] rec text: (d) CTW1500 rec score: 0.95911
+********** end print ocr result **********
```