Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
7f604d01
P
PaddleOCR
项目概览
weixin_41840029
/
PaddleOCR
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleOCR
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
7f604d01
编写于
4月 18, 2022
作者:
M
MissPenguin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update
上级
818908a7
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
124 addition
and
144 deletion
+124
-144
README_ch.md
README_ch.md
+7
-2
doc/doc_ch/quickstart.md
doc/doc_ch/quickstart.md
+3
-61
doc/ppstructure/imgs/0.png
doc/ppstructure/imgs/0.png
+0
-0
doc/ppstructure/inference.md
doc/ppstructure/inference.md
+50
-0
doc/ppstructure/installation.md
doc/ppstructure/installation.md
+0
-0
doc/ppstructure/kie.md
doc/ppstructure/kie.md
+0
-0
doc/ppstructure/kie_en.md
doc/ppstructure/kie_en.md
+0
-0
doc/ppstructure/models_list.md
doc/ppstructure/models_list.md
+14
-9
doc/ppstructure/quickstart.md
doc/ppstructure/quickstart.md
+50
-72
未找到文件。
README_ch.md
浏览文件 @
7f604d01
...
...
@@ -75,12 +75,15 @@ PaddleOCR旨在打造一套丰富、领先、且实用的OCR工具库,助力
| ------- | ------- | ------- | -------- | --------- | -------- |
| | | | | | |
更多模型下载(包括多语言),可以参考
[
PP-Structure 系列模型下载
](
./doc/ppstructure/models_list.md
)
## 文档教程
-
[
运行环境准备
](
./doc/doc_ch/environment.md
)
-
[
快速开始(中英文/多语言/文档分析)
](
./doc/doc_ch/quickstart.md
)
-
[
PP-OCR文本检测识别🔥
](
./doc/doc_ch/ppocr_introduction.md
)
-
[
快速开始
](
./doc/doc_ch/quickstart.md
)
-
[
模型库
](
./doc/doc_ch/models_list.md
)
-
[
模型训练
](
./doc/doc_ch/training.md
)
-
[
文本检测
](
./doc/doc_ch/detection.md
)
...
...
@@ -98,14 +101,16 @@ PaddleOCR旨在打造一套丰富、领先、且实用的OCR工具库,助力
-
[
Paddle2ONNX模型转化与预测
](
./deploy/paddle2onnx/readme.md
)
-
[
Benchmark
](
./doc/doc_ch/benchmark.md
)
-
[
PP-Structure文档分析🔥
](
./ppstructure/README_ch.md
)
-
[
模型库
](
./doc/doc_ch/models_list_structrure.md
)
-
[
快速开始
](
./doc/ppstructure/quickstart.md
)
-
[
模型库
](
./doc/ppstructure/models_list.md
)
-
[
模型训练
](
./doc/doc_ch/training.md
)
-
[
版面分析
](
./ppstructure/layout/README_ch.md
)
-
[
表格识别
](
./ppstructure/table/README_ch.md
)
-
[
关键信息提取
](
./
ppstructure/docs
/kie.md
)
-
[
关键信息提取
](
./
doc/ppstructure
/kie.md
)
-
[
DocVQA
](
./ppstructure/docs/kie.md
)
-
[
推理部署
](
./deploy/readme_ch.md
)
-
[
基于Python预测引擎推理
](
./doc/doc_ch/inference_ppstructure.md
)
-
[
基于C++预测引擎推理
](
./doc/doc_ch/inference_ppstructure.md
)
-
[
服务化部署
](
./deploy/pdserving/README_CN.md
)
-
[
前沿算法与模型🚀
](
./doc/doc_ch/algorithm.md
)
-
[
文本检测算法
](
./doc/doc_ch/algorithm_overview.md#11-%E6%96%87%E6%9C%AC%E6%A3%80%E6%B5%8B%E7%AE%97%E6%B3%95
)
...
...
doc/doc_ch/quickstart.md
浏览文件 @
7f604d01
# PaddleOCR快速开始
# PaddleOCR
快速开始
-
[
1. 安装
](
#1
)
-
[
1.1 安装PaddlePaddle
](
#11
)
...
...
@@ -45,15 +45,7 @@
pip
install
"paddleocr>=2.0.1"
# 推荐使用2.0.1+版本
```
-
对于Windows环境用户:
直接通过pip安装的shapely库可能出现
`[winRrror 126] 找不到指定模块的问题`
。建议从
[
这里
](
https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely
)
下载shapely安装包完成安装,
-
使用
**版面分析**
功能时,运行以下命令
**安装 Layout-Parser**
```
bash
pip3
install
-U
https://paddleocr.bj.bcebos.com/whl/layoutparser-0.0.0-py3-none-any.whl
```
-
对于Windows环境用户:直接通过pip安装的shapely库可能出现
`[winRrror 126] 找不到指定模块的问题`
。建议从
[
这里
](
https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely
)
下载shapely安装包完成安装。
<a
name=
"2"
></a>
...
...
@@ -155,57 +147,7 @@ paddleocr --image_dir ./imgs_en/254.jpg --lang=en
全部语种及其对应的缩写列表可查看
[
多语言模型教程
](
./multi_languages.md
)
<a
name=
"213"
></a>
#### 2.1.3 版面分析
版面分析是指对文档图片中的文字、标题、列表、图片和表格5类区域进行划分。对于前三类区域,直接使用OCR模型完成对应区域文字检测与识别,并将结果保存在txt中。对于表格类区域,经过表格结构化处理后,表格图片转换为相同表格样式的Excel文件。图片区域会被单独裁剪成图像。
使用PaddleOCR的版面分析功能,需要指定
`--type=structure`
```
bash
paddleocr
--image_dir
=
./table/1.png
--type
=
structure
```
-
**返回结果说明**
PP-Structure的返回结果为一个dict组成的list,示例如下
```
shell
[{
'type'
:
'Text'
,
'bbox'
:
[
34, 432, 345, 462],
'res'
:
([[
36.0, 437.0, 341.0, 437.0, 341.0, 446.0, 36.0, 447.0],
[
41.0, 454.0, 125.0, 453.0, 125.0, 459.0, 41.0, 460.0]],
[(
'Tigure-6. The performance of CNN and IPT models using difforen'
, 0.90060663
)
,
(
'Tent '
, 0.465441
)])
}
]
```
其中各个字段说明如下
| 字段 | 说明 |
| ---- | ------------------------------------------------------------ |
| type | 图片区域的类型 |
| bbox | 图片区域的在原图的坐标,分别[左上角x,左上角y,右下角x,右下角y] |
| res | 图片区域的OCR或表格识别结果。
<br>
表格: 表格的HTML字符串;
<br>
OCR: 一个包含各个单行文字的检测坐标和识别结果的元组 |
运行完成后,每张图片会在
`output`
字段指定的目录下有一个同名目录,图片里的每个表格会存储为一个excel,图片区域会被裁剪之后保存下来,excel文件和图片名为表格在图片里的坐标。
```
/output/table/1/
└─ res.txt
└─ [454, 360, 824, 658].xlsx 表格识别结果
└─ [16, 2, 828, 305].jpg 被裁剪出的图片区域
└─ [17, 361, 404, 711].xlsx 表格识别结果
```
-
**参数说明**
| 字段 | 说明 | 默认值 |
| --------------- | ---------------------------------------- | -------------------------------------------- |
| output | excel和识别结果保存的地址 | ./output/table |
| table_max_len | 表格结构模型预测时,图像的长边resize尺度 | 488 |
| table_model_dir | 表格结构模型 inference 模型地址 | None |
| table_char_type | 表格结构模型所用字典地址 | ../ppocr/utils/dict/table_structure_dict.txt |
大部分参数和paddleocr whl包保持一致,见
[
whl包文档
](
./whl.md
)
...
...
@@ -291,4 +233,4 @@ im_show.save('result.jpg')
通过本节内容,相信您已经熟练掌握PaddleOCR whl包的使用方法并获得了初步效果。
PaddleOCR是一套丰富领先实用的OCR工具库,打通数据、模型训练、压缩和推理部署全流程,
因此在
[
下一节
](
./paddleOCR_overview.md
)
中我们将首先为您介绍PaddleOCR的全景图,然后克隆PaddleOCR项目
,正式开启PaddleOCR的应用之旅。
PaddleOCR是一套丰富领先实用的OCR工具库,打通数据、模型训练、压缩和推理部署全流程,
您可以参考
[
文档教程
](
../../README_ch.md#文档教程
)
,正式开启PaddleOCR的应用之旅。
ppstructure/docs
/imgs/0.png
→
doc/ppstructure
/imgs/0.png
浏览文件 @
7f604d01
文件已移动
doc/ppstructure/inference.md
0 → 100644
浏览文件 @
7f604d01
# 基于Python预测引擎推理
-
[
版面分析+表格识别
](
#1
)
-
[
DocVQA
](
#2
)
<a
name=
"1"
></a>
## 1. 版面分析+表格识别
```
bash
cd
ppstructure
# 下载模型
mkdir
inference
&&
cd
inference
# 下载PP-OCRv2文本检测模型并解压
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_det_slim_quant_infer.tar
&&
tar
xf ch_PP-OCRv2_det_slim_quant_infer.tar
# 下载PP-OCRv2文本识别模型并解压
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_rec_slim_quant_infer.tar
&&
tar
xf ch_PP-OCRv2_rec_slim_quant_infer.tar
# 下载超轻量级英文表格预测模型并解压
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/table/en_ppocr_mobile_v2.0_table_structure_infer.tar
&&
tar
xf en_ppocr_mobile_v2.0_table_structure_infer.tar
cd
..
python3 predict_system.py
--det_model_dir
=
inference/ch_PP-OCRv2_det_slim_quant_infer
\
--rec_model_dir
=
inference/ch_PP-OCRv2_rec_slim_quant_infer
\
--table_model_dir
=
inference/en_ppocr_mobile_v2.0_table_structure_infer
\
--image_dir
=
../doc/table/1.png
\
--rec_char_dict_path
=
../ppocr/utils/ppocr_keys_v1.txt
\
--table_char_dict_path
=
../ppocr/utils/dict/table_structure_dict.txt
\
--output
=
../output/table
\
--vis_font_path
=
../doc/fonts/simfang.ttf
```
运行完成后,每张图片会在
`output`
字段指定的目录下的
`talbe`
目录下有一个同名目录,图片里的每个表格会存储为一个excel,图片区域会被裁剪之后保存下来,excel文件和图片名名为表格在图片里的坐标。
<a
name=
"2"
></a>
## 2. DocVQA
```
bash
cd
ppstructure
# 下载模型
mkdir
inference
&&
cd
inference
# 下载SER xfun 模型并解压
wget https://paddleocr.bj.bcebos.com/pplayout/PP-Layout_v1.0_ser_pretrained.tar
&&
tar
xf PP-Layout_v1.0_ser_pretrained.tar
cd
..
python3 predict_system.py
--model_name_or_path
=
vqa/PP-Layout_v1.0_ser_pretrained/
\
--mode
=
vqa
\
--image_dir
=
vqa/images/input/zh_val_0.jpg
\
--vis_font_path
=
../doc/fonts/simfang.ttf
```
运行完成后,每张图片会在
`output`
字段指定的目录下的
`vqa`
目录下存放可视化之后的图片,图片名和输入图片名一致。
\ No newline at end of file
ppstructure/docs
/installation.md
→
doc/ppstructure
/installation.md
浏览文件 @
7f604d01
文件已移动
ppstructure/docs
/kie.md
→
doc/ppstructure
/kie.md
浏览文件 @
7f604d01
文件已移动
ppstructure/docs
/kie_en.md
→
doc/ppstructure
/kie_en.md
浏览文件 @
7f604d01
文件已移动
ppstructure/docs
/models_list.md
→
doc/ppstructure
/models_list.md
浏览文件 @
7f604d01
-
[
PP-Structure 系列模型列表
](
#pp-structure-系列模型列表
)
-
[
1. LayoutParser 模型
](
#1-layoutparser-模型
)
-
[
2. OCR和表格识别模型
](
#2-ocr和表格识别模型
)
-
[
2.1 OCR
](
#21-ocr
)
-
[
2.2 表格识别模型
](
#22-表格识别模型
)
-
[
3. VQA模型
](
#3-vqa模型
)
-
[
4. KIE模型
](
#4-kie模型
)
# PP-Structure 系列模型列表
-
[
1. 版面分析模型
](
#1
)
-
[
2. OCR和表格识别模型
](
#2
)
-
[
2.1 OCR
](
#21
)
-
[
2.2 表格识别模型
](
#22
)
-
[
3. VQA模型
](
#3
)
-
[
4. KIE模型
](
#4
)
## 1. LayoutParser 模型
<a
name=
"1"
></a>
## 1. 版面分析模型
|模型名称|模型简介|下载地址|label_map|
| --- | --- | --- | --- |
...
...
@@ -17,8 +17,10 @@
| ppyolov2_r50vd_dcn_365e_tableBank_word | TableBank Word 数据集训练的版面分析模型,只能检测表格 |
[
推理模型
](
https://paddle-model-ecology.bj.bcebos.com/model/layout-parser/ppyolov2_r50vd_dcn_365e_tableBank_word.tar
)
| {0:"Table"}|
| ppyolov2_r50vd_dcn_365e_tableBank_latex | TableBank Latex 数据集训练的版面分析模型,只能检测表格 |
[
推理模型
](
https://paddle-model-ecology.bj.bcebos.com/model/layout-parser/ppyolov2_r50vd_dcn_365e_tableBank_latex.tar
)
| {0:"Table"}|
<a
name=
"2"
></a>
## 2. OCR和表格识别模型
<a
name=
"21"
></a>
### 2.1 OCR
|模型名称|模型简介|推理模型大小|下载地址|
...
...
@@ -28,12 +30,14 @@
如需要使用其他OCR模型,可以在
[
PP-OCR model_list
](
../../doc/doc_ch/models_list.md
)
下载模型或者使用自己训练好的模型配置到
`det_model_dir`
,
`rec_model_dir`
两个字段即可。
<a
name=
"22"
></a>
### 2.2 表格识别模型
|模型名称|模型简介|推理模型大小|下载地址|
| --- | --- | --- | --- |
|en_ppocr_mobile_v2.0_table_structure|PubLayNet数据集训练的英文表格场景的表格结构预测|18.6M|
[
推理模型
](
https://paddleocr.bj.bcebos.com/dygraph_v2.0/table/en_ppocr_mobile_v2.0_table_structure_infer.tar
)
/
[
训练模型
](
https://paddleocr.bj.bcebos.com/dygraph_v2.1/table/en_ppocr_mobile_v2.0_table_structure_train.tar
)
|
<a
name=
"3"
></a>
## 3. VQA模型
|模型名称|模型简介|推理模型大小|下载地址|
...
...
@@ -44,6 +48,7 @@
|re_LayoutLMv2_xfun_zh|基于LayoutLMv2在xfun中文数据集上训练的RE模型|765M|
[
推理模型 coming soon
](
)
/
[
训练模型
](
https://paddleocr.bj.bcebos.com/pplayout/re_LayoutLMv2_xfun_zh.tar
)
|
|ser_LayoutLM_xfun_zh|基于LayoutLM在xfun中文数据集上训练的SER模型|430M|
[
推理模型 coming soon
](
)
/
[
训练模型
](
https://paddleocr.bj.bcebos.com/pplayout/ser_LayoutLM_xfun_zh.tar
)
|
<a
name=
"4"
></a>
## 4. KIE模型
|模型名称|模型简介|模型大小|下载地址|
...
...
ppstructure/docs
/quickstart.md
→
doc/ppstructure
/quickstart.md
浏览文件 @
7f604d01
# PP-Structure 快速开始
-
[
PP-Structure 快速开始
](
#pp-structure-快速开始
)
-
[
1. 安装依赖包
](
#1-安装依赖包
)
-
[
2. 便捷使用
](
#2-便捷使用
)
-
[
2.1 命令行使用
](
#21-命令行使用
)
-
[
2.2 Python脚本使用
](
#22-python脚本使用
)
-
[
2.3 返回结果说明
](
#23-返回结果说明
)
-
[
2.4 参数说明
](
#24-参数说明
)
-
[
3. Python脚本使用
](
#3-python脚本使用
)
-
[
1. 安装依赖包
](
#1
)
-
[
2. 便捷使用
](
#2
)
-
[
2.1 命令行使用
](
#21
)
-
[
2.1.1 版面分析+表格识别
](
#211
)
-
[
2.1.2 DocVQA
](
#212
)
-
[
2.2 Python脚本使用
](
#22
)
-
[
2.2.1 版面分析+表格识别
](
#221
)
-
[
2.2.2 DocVQA
](
#222
)
-
[
2.3 返回结果说明
](
#23
)
-
[
2.3.1 版面分析+表格识别
](
#231
)
-
[
2.3.2 DocVQA
](
#232
)
-
[
2.4 参数说明
](
#24
)
<a
name=
"1"
></a>
## 1. 安装依赖包
```
bash
pip
install
"paddleocr>=2.3.0.2"
# 推荐使用2.3.0.2+版本
pip3
install
-U
https://paddleocr.bj.bcebos.com/whl/layoutparser-0.0.0-py3-none-any.whl
# 安装 PaddleNLP
git clone https://github.com/PaddlePaddle/PaddleNLP
-b
develop
cd
PaddleNLP
pip3
install
-e
.
# 安装 paddleocr,推荐使用2.3.0.2+版本
pip3
install
"paddleocr>=2.3.0.2"
# 安装 版面分析依赖包layoutparser(如不需要版面分析功能,可跳过)
pip3
install
-U
https://paddleocr.bj.bcebos.com/whl/layoutparser-0.0.0-py3-none-any.whl
# 安装 DocVQA依赖包paddlenlp(如不需要DocVQA功能,可跳过)
pip
install
paddlenlp
```
<a
name=
"2"
></a>
## 2. 便捷使用
### 2.1 命令行使用
*
版面分析+表格识别
<a
name=
"21"
></a>
### 2.1 命令行使用
<a
name=
"211"
></a>
#### 2.1.1 版面分析+表格识别
```
bash
paddleocr
--image_dir
=
../doc/table/1.png
--type
=
structure
```
*
VQA
<a
name=
"212"
></a>
#### 2.1.2 DocVQA
请参考:
[
文档视觉问答
](
../vqa/README.md
)
。
<a
name=
"22"
></a>
### 2.2 Python脚本使用
*
版面分析+表格识别
<a
name=
"221"
></a>
#### 2.2.1 版面分析+表格识别
```
python
import
os
import
cv2
...
...
@@ -64,14 +76,17 @@ im_show = Image.fromarray(im_show)
im_show
.
save
(
'result.jpg'
)
```
*
VQA
<a
name=
"222"
></a>
#### 2.2.2 DocVQA
请参考:
[
文档视觉问答
](
../vqa/README.md
)
。
<a
name=
"23"
></a>
### 2.3 返回结果说明
PP-Structure的返回结果为一个dict组成的list,示例如下
*
版面分析+表格识别
<a
name=
"231"
></a>
#### 2.3.1 版面分析+表格识别
```
shell
[
{
'type'
:
'Text'
,
...
...
@@ -89,7 +104,18 @@ dict 里各个字段说明如下
|bbox|图片区域的在原图的坐标,分别[左上角x,左上角y,右下角x,右下角y]|
|res|图片区域的OCR或表格识别结果。
<br>
表格: 表格的HTML字符串;
<br>
OCR: 一个包含各个单行文字的检测坐标和识别结果的元组|
*
VQA
运行完成后,每张图片会在
`output`
字段指定的目录下有一个同名目录,图片里的每个表格会存储为一个excel,图片区域会被裁剪之后保存下来,excel文件和图片名为表格在图片里的坐标。
```
/output/table/1/
└─ res.txt
└─ [454, 360, 824, 658].xlsx 表格识别结果
└─ [16, 2, 828, 305].jpg 被裁剪出的图片区域
└─ [17, 361, 404, 711].xlsx 表格识别结果
```
<a
name=
"232"
></a>
#### 2.3.2 DocVQA
请参考:
[
文档视觉问答
](
../vqa/README.md
)
。
...
...
@@ -109,51 +135,3 @@ dict 里各个字段说明如下
| mode | pipeline预测模式,structure: 版面分析+表格识别; VQA: SER文档信息抽取 | structure |
大部分参数和PaddleOCR whl包保持一致,见
[
whl包文档
](
../../doc/doc_ch/whl.md
)
运行完成后,每张图片会在
`output`
字段指定的目录下有一个同名目录,图片里的每个表格会存储为一个excel,图片区域会被裁剪之后保存下来,excel文件和图片名名为表格在图片里的坐标。
## 3. Python脚本使用
*
版面分析+表格识别
```
bash
cd
ppstructure
# 下载模型
mkdir
inference
&&
cd
inference
# 下载PP-OCRv2文本检测模型并解压
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_det_slim_quant_infer.tar
&&
tar
xf ch_PP-OCRv2_det_slim_quant_infer.tar
# 下载PP-OCRv2文本识别模型并解压
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_rec_slim_quant_infer.tar
&&
tar
xf ch_PP-OCRv2_rec_slim_quant_infer.tar
# 下载超轻量级英文表格预测模型并解压
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/table/en_ppocr_mobile_v2.0_table_structure_infer.tar
&&
tar
xf en_ppocr_mobile_v2.0_table_structure_infer.tar
cd
..
python3 predict_system.py
--det_model_dir
=
inference/ch_PP-OCRv2_det_slim_quant_infer
\
--rec_model_dir
=
inference/ch_PP-OCRv2_rec_slim_quant_infer
\
--table_model_dir
=
inference/en_ppocr_mobile_v2.0_table_structure_infer
\
--image_dir
=
../doc/table/1.png
\
--rec_char_dict_path
=
../ppocr/utils/ppocr_keys_v1.txt
\
--table_char_dict_path
=
../ppocr/utils/dict/table_structure_dict.txt
\
--output
=
../output/table
\
--vis_font_path
=
../doc/fonts/simfang.ttf
```
运行完成后,每张图片会在
`output`
字段指定的目录下的
`talbe`
目录下有一个同名目录,图片里的每个表格会存储为一个excel,图片区域会被裁剪之后保存下来,excel文件和图片名名为表格在图片里的坐标。
*
VQA
```
bash
cd
ppstructure
# 下载模型
mkdir
inference
&&
cd
inference
# 下载SER xfun 模型并解压
wget https://paddleocr.bj.bcebos.com/pplayout/PP-Layout_v1.0_ser_pretrained.tar
&&
tar
xf PP-Layout_v1.0_ser_pretrained.tar
cd
..
python3 predict_system.py
--model_name_or_path
=
vqa/PP-Layout_v1.0_ser_pretrained/
\
--mode
=
vqa
\
--image_dir
=
vqa/images/input/zh_val_0.jpg
\
--vis_font_path
=
../doc/fonts/simfang.ttf
```
运行完成后,每张图片会在
`output`
字段指定的目录下的
`vqa`
目录下存放可视化之后的图片,图片名和输入图片名一致。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录