diff --git a/python/README.md b/python/README.md index 13026e8..de47f38 100755 --- a/python/README.md +++ b/python/README.md @@ -4,6 +4,18 @@

+
+目录 + +- [Python版RapidOCR](#python版rapidocr) + - [简介和说明](#简介和说明) + - [使用步骤](#使用步骤) + - [`config.yaml`中常用参数介绍](#configyaml中常用参数介绍) + - [onnxruntime-gpu版推理配置](#onnxruntime-gpu版推理配置) +
+ + +### 简介和说明 - **各个版本的ONNX模型下载地址:**[百度网盘](https://pan.baidu.com/s/1PTcgXG2zEgQU6A_A3kGJ3Q?pwd=jhai) | [Google Drive](https://drive.google.com/drive/folders/1x_a9KpCo_1blxH1xFOfgKVkw1HYRVywY?usp=sharing) - 所有常用的参数配置都在`config.yaml`下,一目了然,更加便捷 - 每个独立的模块下均有独立的`config.yaml`配置文件,可以单独使用 @@ -27,6 +39,7 @@ ``` - 值得说明的是,基于openvino推理部分中`ch_ppocr_v2_cls`部分仍然是基于onnxruntime的,原因是openvino有bug,详情见[openvino/issue](https://github.com/openvinotoolkit/openvino/issues/11501) + ### 使用步骤 1. 下载当前下的`rapidocr_onnxruntime`/`rapidocr_openvino`目录到本地 2. 下载链接下的`resources`目录(包含模型和显示的字体文件) @@ -128,20 +141,44 @@ ``` ### [`config.yaml`](./config.yaml)中常用参数介绍 +- `Global`部分 + | 参数名称 | 取值范围 | 默认值 | 作用 | + |------------: | :----------: | :-----: | :----------------------------------------------| + | `text_score` | [0, 1] | 0.5 | 文本识别结果置信度,值越大,把握越大 | + | `use_angle_cls` | `bool` | `true` | 是否使用文本行的方向分类 | + | `print_verbose` | `bool` | `true` | 是否打印各个部分耗时信息 | + | `min_height` | `int` | 30 | 图像最小高度(单位是像素)
低于这个值,会跳过文本检测阶段,直接进行后续识别 | -|所在模块| 参数名称 | 取值范围 | 默认值 | 作用 | -|:---:| :------------: | :----------: | :-----: | :----------------------------------------------:| -|Global| `text_score` | [0, 1] | 0.5 | 文本识别结果置信度,值越大,把握越大 | -|Global| `use_angle_cls` | `bool` | `true` | 是否使用文本行的方向分类 | -|Global| `print_verbose` | `bool` | `true` | 是否打印各个部分耗时信息 | -|Global| `min_heigh` | `int` | 30 | 图像最小高度(单位是像素),低于这个值,会跳过文本检测阶段,直接进行后续识别 | -|||||| -|Det| `box_thresh` | [0, 1] | 0.5 | 文本检测所得框是否保留的阈值,值越大,召回率越低 | -|Det| `unclip_ratio` | [1.6, 2.0] | 1.6 | 控制文本检测框的大小,值越大,检测框整体越大 | -|Det/Cls/Rec| `use_cuda` | | `false` | 是否使用CUDA,加速推理 | -- `min_height`这个参数是用来卡那些只有一行文本的图像,例如下图,这类图像不会进入文本检测模块,直接进入后续过程即可。 + - `min_height`是用来过滤只有一行文本的图像(如下图),这类图像不会进入文本检测模块,直接进入后续过程。 - ![](./test_images/single_line_text.jpg) + ![](./test_images/single_line_text.jpg) + +- `Det`部分 + | 参数名称 | 取值范围 | 默认值 | 作用 | + | ------------: | :----------: | :-----: | :----------------------------------------------| + | `use_cuda` | `bool` | `false` | 是否使用CUDA,加速推理 | + |`limit_side_len`| - | 736 | 限制图像边的长度的像素值 | + |`limit_type`| `[min, max]` | `min` | 限制图像的最小边长度还是最大边为`limit_side_len`
示例解释:当`limit_type=min`和`limit_side_len=736`时,图像最小边小于736时,
会将图像最小边拉伸到736,另一边则按图像原始比例等比缩放。 | + | `thresh` | [0, 1] | 0.3 | 图像中文字部分和背景部分分割阈值
值越大,文字部分会越小 | + | `box_thresh` | [0, 1] | 0.5 | 文本检测所得框是否保留的阈值,值越大,召回率越低 | + |`max_candidates`| - | 1000 | 图像中最大可检测到的文本框数目,一般够用| + | `unclip_ratio` | [1.6, 2.0] | 1.6 | 控制文本检测框的大小,值越大,检测框整体越大 | + |`use_dilation`| `bool` | `true` | 是否使用形态学中的膨胀操作,一般采用默认值即可 | + +- `Cls`部分 + | 参数名称 | 取值范围 | 默认值 | 作用 | + | ------------: | :----------: | :-----: | :----------------------------------------------| + |`cls_img_shape`| - |`[3, 48, 192]`| 输入方向分类模型的图像Shape(CHW) | + |`cls_batch_num`| - | 6 | 批次推理的batch大小,一般采用默认值即可,太大并没有明显提速,效果还可能会差 | + |`cls_thresh`|`[0, 1]`|0.9| 方向分类结果的置信度| + |`label_list`| - | [0, 180] | 方向分类的标签,0°或者180°,**该参数不能动** | + +- `Rec`部分 + | 参数名称 | 取值范围 | 默认值 | 作用 | + | ------------: | :----------: | :-----: | :----------------------------------------------| + |`rec_img_shape`| - |`[3, 32, 320]`| 输入文本识别模型的图像Shape(CHW) | + |`rec_batch_num`| - | 6 | 批次推理的batch大小,一般采用默认值即可,太大并没有明显提速,效果还可能会差 | + |`keys_path`| - | - | 文本识别模型推理所使用字典文件,始识别哪种类型文本而定(中英、日文等) | ### onnxruntime-gpu版推理配置