模型 | 模型下载链接 | Top-1 Acc(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
PP-LCNet_x1_0_doc_ori | 推理模型/训练模型 | 99.06 | 2.31 / 0.43 | 3.37 / 1.27 | 7 | 基于PP-LCNet_x1_0的文档图像分类模型,含有四个类别,即0度,90度,180度,270度 |
模型 | 模型下载链接 | 检测Hmean(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
PP-OCRv4_server_det | 推理模型/训练模型 | 82.56 | 83.34 / 80.91 | 442.58 / 442.58 | 109 | PP-OCRv4 的服务端文本检测模型,精度更高,适合在性能较好的服务器上部署 |
PP-OCRv4_mobile_det | 推理模型/训练模型 | 77.35 | 8.79 / 3.13 | 51.00 / 28.58 | 4.7 | PP-OCRv4 的移动端文本检测模型,效率更高,适合在端侧设备部署 |
PP-OCRv3_mobile_det | 推理模型/训练模型 | 78.68 | 8.44 / 2.91 | 27.87 / 27.87 | 2.1 | PP-OCRv3 的移动端文本检测模型,效率更高,适合在端侧设备部署 |
PP-OCRv3_server_det | 推理模型/训练模型 | 80.11 | 65.41 / 13.67 | 305.07 / 305.07 | 102.1 | PP-OCRv3 的服务端文本检测模型,精度更高,适合在性能较好的服务器上部署 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
PP-OCRv5_server_rec | 推理模型/训练模型 | 86.38 | - | - | 205 M | PP-OCRv5_server_rec 是新一代文本识别模型。该模型致力于以单一模型高效、精准地支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字等复杂文本场景的识别。在保持识别效果的同时,兼顾推理速度和模型鲁棒性,为各种场景下的文档理解提供高效、精准的技术支撑。 |
PP-OCRv5_mobile_rec | 推理模型/训练模型 | 81.29 | - | - | 136 M | PP-OCRv5_mobile_rec 是新一代文本识别模型。该模型致力于以单一模型高效、精准地支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字等复杂文本场景的识别。在保持识别效果的同时,兼顾推理速度和模型鲁棒性,为各种场景下的文档理解提供高效、精准的技术支撑。 |
PP-OCRv4_server_rec_doc | 推理模型/训练模型 | 86.58 | 6.65 / 2.38 | 32.92 / 32.92 | 91 M | PP-OCRv4_server_rec_doc是在PP-OCRv4_server_rec的基础上,在更多中文文档数据和PP-OCR训练数据的混合数据训练而成,增加了部分繁体字、日文、特殊字符的识别能力,可支持识别的字符为1.5万+,除文档相关的文字识别能力提升外,也同时提升了通用文字的识别能力 |
PP-OCRv4_mobile_rec | 推理模型/训练模型 | 83.28 | 4.82 / 1.20 | 16.74 / 4.64 | 11 M | PP-OCRv4的轻量级识别模型,推理效率高,可以部署在包含端侧设备的多种硬件设备中 |
PP-OCRv4_server_rec | 推理模型/训练模型 | 85.19 | 6.58 / 2.43 | 33.17 / 33.17 | 87 M | PP-OCRv4的服务器端模型,推理精度高,可以部署在多种不同的服务器上 |
en_PP-OCRv4_mobile_rec | 推理模型/训练模型 | 70.39 | 4.81 / 0.75 | 16.10 / 5.31 | 7.3 M | 基于PP-OCRv4识别模型训练得到的超轻量英文识别模型,支持英文、数字识别 |
模型 | 模型下载链接 | 中文识别 Avg Accuracy(%) | 英文识别 Avg Accuracy(%) | 繁体中文识别 Avg Accuracy(%) | 日文识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|---|---|---|
PP-OCRv5_server_rec | 推理模型/训练模型 | 86.38 | 64.70 | 93.29 | 60.35 | - | - | 205 M | PP-OCRv5_server_rec 是新一代文本识别模型。该模型致力于以单一模型高效、精准地支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字等复杂文本场景的识别。在保持识别效果的同时,兼顾推理速度和模型鲁棒性,为各种场景下的文档理解提供高效、精准的技术支撑。 |
PP-OCRv5_mobile_rec | 推理模型/训练模型 | 81.29 | 66.00 | 83.55 | 54.65 | - | - | 136 M | PP-OCRv5_mobile_rec 是新一代文本识别模型。该模型致力于以单一模型高效、精准地支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字等复杂文本场景的识别。在保持识别效果的同时,兼顾推理速度和模型鲁棒性,为各种场景下的文档理解提供高效、精准的技术支撑。 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
PP-OCRv4_server_rec_doc | 推理模型/训练模型 | 86.58 | 6.65 / 2.38 | 32.92 / 32.92 | 91 M | PP-OCRv4_server_rec_doc是在PP-OCRv4_server_rec的基础上,在更多中文文档数据和PP-OCR训练数据的混合数据训练而成,增加了部分繁体字、日文、特殊字符的识别能力,可支持识别的字符为1.5万+,除文档相关的文字识别能力提升外,也同时提升了通用文字的识别能力 |
PP-OCRv4_mobile_rec | 推理模型/训练模型 | 83.28 | 4.82 / 1.20 | 16.74 / 4.64 | 11 M | PP-OCRv4的轻量级识别模型,推理效率高,可以部署在包含端侧设备的多种硬件设备中 |
PP-OCRv4_server_rec | 推理模型/训练模型 | 85.19 | 6.58 / 2.43 | 33.17 / 33.17 | 87 M | PP-OCRv4的服务器端模型,推理精度高,可以部署在多种不同的服务器上 |
PP-OCRv3_mobile_rec | 推理模型/训练模型 | 75.43 | 5.87 / 1.19 | 9.07 / 4.28 | 11 M | PP-OCRv3的轻量级识别模型,推理效率高,可以部署在包含端侧设备的多种硬件设备中 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
ch_SVTRv2_rec | 推理模型/训练模型 | 68.81 | 8.08 / 2.74 | 50.17 / 42.50 | 73.9 M | SVTRv2 是一种由复旦大学视觉与学习实验室(FVL)的OpenOCR团队研发的服务端文本识别模型,其在PaddleOCR算法模型挑战赛 - 赛题一:OCR端到端识别任务中荣获一等奖,A榜端到端识别精度相比PP-OCRv4提升6%。 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
ch_RepSVTR_rec | 推理模型/训练模型 | 65.07 | 5.93 / 1.62 | 20.73 / 7.32 | 22.1 M | RepSVTR 文本识别模型是一种基于SVTRv2 的移动端文本识别模型,其在PaddleOCR算法模型挑战赛 - 赛题一:OCR端到端识别任务中荣获一等奖,B榜端到端识别精度相比PP-OCRv4提升2.5%,推理速度持平。 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
en_PP-OCRv4_mobile_rec | 推理模型/训练模型 | 70.39 | 4.81 / 0.75 | 16.10 / 5.31 | 6.8 M | 基于PP-OCRv4识别模型训练得到的超轻量英文识别模型,支持英文、数字识别 |
en_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 70.69 | 5.44 / 0.75 | 8.65 / 5.57 | 7.8 M | 基于PP-OCRv3识别模型训练得到的超轻量英文识别模型,支持英文、数字识别 |
模型 | 模型下载链接 | 识别 Avg Accuracy(%) | GPU推理耗时(ms) [常规模式 / 高性能模式] |
CPU推理耗时(ms) [常规模式 / 高性能模式] |
模型存储大小(M) | 介绍 |
---|---|---|---|---|---|---|
korean_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 60.21 | 5.40 / 0.97 | 9.11 / 4.05 | 8.6 M | 基于PP-OCRv3识别模型训练得到的超轻量韩文识别模型,支持韩文、数字识别 |
japan_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 45.69 | 5.70 / 1.02 | 8.48 / 4.07 | 8.8 M | 基于PP-OCRv3识别模型训练得到的超轻量日文识别模型,支持日文、数字识别 |
chinese_cht_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 82.06 | 5.90 / 1.28 | 9.28 / 4.34 | 9.7 M | 基于PP-OCRv3识别模型训练得到的超轻量繁体中文识别模型,支持繁体中文、数字识别 |
te_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 95.88 | 5.42 / 0.82 | 8.10 / 6.91 | 7.8 M | 基于PP-OCRv3识别模型训练得到的超轻量泰卢固文识别模型,支持泰卢固文、数字识别 |
ka_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 96.96 | 5.25 / 0.79 | 9.09 / 3.86 | 8.0 M | 基于PP-OCRv3识别模型训练得到的超轻量卡纳达文识别模型,支持卡纳达文、数字识别 |
ta_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 76.83 | 5.23 / 0.75 | 10.13 / 4.30 | 8.0 M | 基于PP-OCRv3识别模型训练得到的超轻量泰米尔文识别模型,支持泰米尔文、数字识别 |
latin_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 76.93 | 5.20 / 0.79 | 8.83 / 7.15 | 7.8 M | 基于PP-OCRv3识别模型训练得到的超轻量拉丁文识别模型,支持拉丁文、数字识别 |
arabic_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 73.55 | 5.35 / 0.79 | 8.80 / 4.56 | 7.8 M | 基于PP-OCRv3识别模型训练得到的超轻量阿拉伯字母识别模型,支持阿拉伯字母、数字识别 |
cyrillic_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 94.28 | 5.23 / 0.76 | 8.89 / 3.88 | 7.9 M | 基于PP-OCRv3识别模型训练得到的超轻量斯拉夫字母识别模型,支持斯拉夫字母、数字识别 |
devanagari_PP-OCRv3_mobile_rec | 推理模型/训练模型 | 96.44 | 5.22 / 0.79 | 8.56 / 4.06 | 7.9 M | 基于PP-OCRv3识别模型训练得到的超轻量梵文字母识别模型,支持梵文字母、数字识别 |
模式 | GPU配置 | CPU配置 | 加速技术组合 |
---|---|---|---|
常规模式 | FP32精度 / 无TRT加速 | FP32精度 / 8线程 | PaddleInference |
高性能模式 | 选择先验精度类型和加速策略的最优组合 | FP32精度 / 8线程 | 选择先验最优后端(Paddle/OpenVINO/TRT等) |
参数 | 参数说明 | 参数类型 | 默认值 |
---|---|---|---|
doc_orientation_classify_model_name |
文档方向分类模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
doc_orientation_classify_model_dir |
文档方向分类模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
doc_unwarping_model_name |
文本图像矫正模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
doc_unwarping_model_dir |
文本图像矫正模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_detection_model_name |
文本检测模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_detection_model_dir |
文本检测模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_line_orientation_model_name |
文本行方向模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_line_orientation_model_dir |
文本行方向模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_line_orientation_batch_size |
文本行方向模型的批处理大小。如果设置为None , 将默认设置批处理大小为1 。 |
int |
None |
text_recognition_model_name |
文本识别模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_recognition_model_dir |
文本识别模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_recognition_batch_size |
文本识别模型的批处理大小。如果设置为None , 将默认设置批处理大小为1 。 |
int |
None |
use_doc_orientation_classify |
是否使用文档方向分类功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
use_doc_unwarping |
是否使用文本图像矫正功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
use_textline_orientation |
是否使用文本行方向功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
text_det_limit_side_len |
文本检测的最大边长度限制。
|
int |
None |
text_det_limit_type |
文本检测的边长度限制类型。
|
str |
None |
text_det_thresh |
文本检测像素阈值,输出的概率图中,得分大于该阈值的像素点才会被认为是文字像素点。
|
float |
None |
text_det_box_thresh |
文本检测框阈值,检测结果边框内,所有像素点的平均得分大于该阈值时,该结果会被认为是文字区域。
|
float |
None |
text_det_unclip_ratio |
文本检测扩张系数,使用该方法对文字区域进行扩张,该值越大,扩张的面积越大。
|
float |
None |
text_det_input_shape |
文本检测的输入形状。 | tuple |
None |
text_rec_score_thresh |
文本识别阈值,得分大于该阈值的文本结果会被保留。
|
float |
None |
text_rec_input_shape |
文本识别的输入形状。 | tuple |
None |
lang |
使用指定语言的 OCR 模型。
|
str |
None |
ocr_version |
OCR 版本。
|
str |
None |
input |
待预测数据,支持多种输入类型,必填。
|
Python Var|str|list |
None |
save_path |
指定推理结果文件保存的路径。如果设置为None , 推理结果将不会保存到本地。 |
str |
None |
device |
用于推理的设备。支持指定具体卡号。
|
str |
None |
enable_hpi |
是否启用高性能推理。 | bool |
False |
use_tensorrt |
是否使用 TensorRT 进行推理加速。 | bool |
False |
min_subgraph_size |
最小子图大小,用于优化模型子图的计算。 | int |
3 |
precision |
计算精度,如 fp32、fp16。 | str |
fp32 |
enable_mkldnn |
是否启用 MKL-DNN 加速库。如果设置为None , 将默认启用。
|
bool |
None |
cpu_threads |
在 CPU 上进行推理时使用的线程数。 | int |
8 |
PaddleOCR()
实例化 OCR 产线对象,具体参数说明如下:参数 | 参数说明 | 参数类型 | 默认值 |
---|---|---|---|
doc_orientation_classify_model_name |
文档方向分类模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
doc_orientation_classify_model_dir |
文档方向分类模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
doc_unwarping_model_name |
文本图像矫正模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
doc_unwarping_model_dir |
文本图像矫正模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_detection_model_name |
文本检测模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_detection_model_dir |
文本检测模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_line_orientation_model_name |
文本行方向模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_line_orientation_model_dir |
文本行方向模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_line_orientation_batch_size |
文本行方向模型的批处理大小。如果设置为None , 将默认设置批处理大小为1 。 |
int |
None |
text_recognition_model_name |
文本识别模型的名称。如果设置为None , 将会使用产线默认模型。 |
str |
None |
text_recognition_model_dir |
文本识别模型的目录路径。如果设置为None , 将会下载官方模型。 |
str |
None |
text_recognition_batch_size |
文本识别模型的批处理大小。如果设置为None , 将默认设置批处理大小为1 。 |
int |
None |
use_doc_orientation_classify |
是否使用文档方向分类功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
use_doc_unwarping |
是否使用文本图像矫正功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
use_textline_orientation |
是否使用文本行方向功能。如果设置为None , 将默认使用产线初始化的该参数值,初始化为True 。 |
bool |
None |
text_det_limit_side_len |
文本检测的最大边长度限制。
|
int |
None |
text_det_limit_type |
文本检测的边长度限制类型。
|
str |
None |
text_det_thresh |
文本检测像素阈值,输出的概率图中,得分大于该阈值的像素点才会被认为是文字像素点。
|
float |
None |
text_det_box_thresh |
文本检测框阈值,检测结果边框内,所有像素点的平均得分大于该阈值时,该结果会被认为是文字区域。
|
float |
None |
text_det_unclip_ratio |
文本检测扩张系数,使用该方法对文字区域进行扩张,该值越大,扩张的面积越大。
|
float |
None |
text_det_input_shape |
文本检测的输入形状。 | tuple |
None |
text_rec_score_thresh |
文本识别阈值,得分大于该阈值的文本结果会被保留。
|
float |
None |
text_rec_input_shape |
文本识别的输入形状。 | tuple |
None |
lang |
使用指定语言的 OCR 模型。
|
str |
None |
ocr_version |
OCR 版本。
|
str |
None |
device |
用于推理的设备。支持指定具体卡号。
|
str |
None |
enable_hpi |
是否启用高性能推理。 | bool |
False |
use_tensorrt |
是否使用 TensorRT 进行推理加速。 | bool |
False |
min_subgraph_size |
最小子图大小,用于优化模型子图的计算。 | int |
3 |
precision |
计算精度,如 fp32、fp16。 | str |
fp32 |
enable_mkldnn |
是否启用 MKL-DNN 加速库。如果设置为None , 将默认启用。
|
bool |
None |
cpu_threads |
在 CPU 上进行推理时使用的线程数。 | int |
8 |
predict()
方法进行推理预测,该方法会返回一个结果列表。另外,产线还提供了 predict_iter()
方法。两者在参数接受和结果返回方面是完全一致的,区别在于 predict_iter()
返回的是一个 generator
,能够逐步处理和获取预测结果,适合处理大型数据集或希望节省内存的场景。可以根据实际需求选择使用这两种方法中的任意一种。以下是 predict()
方法的参数及其说明:参数 | 参数说明 | 参数类型 | 默认值 |
---|---|---|---|
input |
待预测数据,支持多种输入类型,必填。
|
Python Var|str|list |
None |
device |
与实例化时的参数相同。 | str |
None |
use_doc_orientation_classify |
是否在推理时使用文档方向分类模块。 | bool |
None |
use_doc_unwarping |
是否在推理时使用文本图像矫正模块。 | bool |
None |
use_textline_orientation |
是否在推理时使用文本行方向分类模块。 | bool |
None |
text_det_limit_side_len |
与实例化时的参数相同。 | int |
None |
text_det_limit_type |
与实例化时的参数相同。 | str |
None |
text_det_thresh |
与实例化时的参数相同。 | float |
None |
text_det_box_thresh |
与实例化时的参数相同。 | float |
None |
text_det_unclip_ratio |
与实例化时的参数相同。 | float |
None |
text_rec_score_thresh |
与实例化时的参数相同。 | float |
None |
json
文件的操作:方法 | 方法说明 | 参数 | 参数类型 | 参数说明 | 默认值 |
---|---|---|---|---|---|
print() |
打印结果到终端 | format_json |
bool |
是否对输出内容进行使用 JSON 缩进格式化 |
True |
indent |
int |
指定缩进级别,以美化输出的 JSON 数据,使其更具可读性,仅当 format_json 为 True 时有效 |
4 | ||
ensure_ascii |
bool |
控制是否将非 ASCII 字符转义为 Unicode 。设置为 True 时,所有非 ASCII 字符将被转义;False 则保留原始字符,仅当format_json 为True 时有效 |
False |
||
save_to_json() |
将结果保存为json格式的文件 | save_path |
str |
保存的文件路径,当为目录时,保存文件命名与输入文件类型命名一致 | 无 |
indent |
int |
指定缩进级别,以美化输出的 JSON 数据,使其更具可读性,仅当 format_json 为 True 时有效 |
4 | ||
ensure_ascii |
bool |
控制是否将非 ASCII 字符转义为 Unicode 。设置为 True 时,所有非 ASCII 字符将被转义;False 则保留原始字符,仅当format_json 为True 时有效 |
False |
||
save_to_img() |
将结果保存为图像格式的文件 | save_path |
str |
保存的文件路径,支持目录或文件路径 | 无 |
属性 | 属性说明 |
---|---|
json |
获取预测的 json 格式的结果 |
img |
获取格式为 dict 的可视化图像 |
对于服务提供的主要操作:
200
,响应体的属性如下:名称 | 类型 | 含义 |
---|---|---|
logId |
string |
请求的UUID。 |
errorCode |
integer |
错误码。固定为0 。 |
errorMsg |
string |
错误说明。固定为"Success" 。 |
result |
object |
操作结果。 |
名称 | 类型 | 含义 |
---|---|---|
logId |
string |
请求的UUID。 |
errorCode |
integer |
错误码。与响应状态码相同。 |
errorMsg |
string |
错误说明。 |
服务提供的主要操作如下:
infer
获取图像OCR结果。
POST /ocr
名称 | 类型 | 含义 | 是否必填 |
---|---|---|---|
file |
string |
服务器可访问的图像文件或PDF文件的URL,或上述类型文件内容的Base64编码结果。默认对于超过10页的PDF文件,只有前10页的内容会被处理。 要解除页数限制,请在产线配置文件中添加以下配置:
|
是 |
fileType |
integer | null |
文件类型。0 表示PDF文件,1 表示图像文件。若请求体无此属性,则将根据URL推断文件类型。 |
否 |
useDocOrientationClassify |
boolean | null |
请参阅产线对象中 predict 方法的 use_doc_orientation_classify 参数相关说明。 |
否 |
useDocUnwarping |
boolean | null |
请参阅产线对象中 predict 方法的 use_doc_unwarping 参数相关说明。 |
否 |
useTextlineOrientation |
boolean | null |
请参阅产线对象中 predict 方法的 use_textline_orientation 参数相关说明。 |
否 |
textDetLimitSideLen |
integer | null |
请参阅产线对象中 predict 方法的 text_det_limit_side_len 参数相关说明。 |
否 |
textDetLimitType |
string | null |
请参阅产线对象中 predict 方法的 text_det_limit_type 参数相关说明。 |
否 |
textDetThresh |
number | null |
请参阅产线对象中 predict 方法的 text_det_thresh 参数相关说明。 |
否 |
textDetBoxThresh |
number | null |
请参阅产线对象中 predict 方法的 text_det_box_thresh 参数相关说明。 |
否 |
textDetUnclipRatio |
number | null |
请参阅产线对象中 predict 方法的 text_det_unclip_ratio 参数相关说明。 |
否 |
textRecScoreThresh |
number | null |
请参阅产线对象中 predict 方法的 text_rec_score_thresh 参数相关说明。 |
否 |
result
具有如下属性:名称 | 类型 | 含义 |
---|---|---|
ocrResults |
object |
OCR结果。数组长度为1(对于图像输入)或实际处理的文档页数(对于PDF输入)。对于PDF输入,数组中的每个元素依次表示PDF文件中实际处理的每一页的结果。 |
dataInfo |
object |
输入数据信息。 |
ocrResults
中的每个元素为一个object
,具有如下属性:
名称 | 类型 | 含义 |
---|---|---|
prunedResult |
object |
产线对象的 predict 方法生成结果的 JSON 表示中 res 字段的简化版本,其中去除了 input_path 和 page_index 字段。 |
ocrImage |
string | null |
OCR结果图,其中标注检测到的文本位置。图像为JPEG格式,使用Base64编码。 |
docPreprocessingImage |
string | null |
可视化结果图像。图像为JPEG格式,使用Base64编码。 |
inputImage |
string | null |
输入图像。图像为JPEG格式,使用Base64编码。 |
import base64
import requests
API_URL = "http://localhost:8080/ocr"
file_path = "./demo.jpg"
with open(file_path, "rb") as file:
file_bytes = file.read()
file_data = base64.b64encode(file_bytes).decode("ascii")
payload = {"file": file_data, "fileType": 1}
response = requests.post(API_URL, json=payload)
assert response.status_code == 200
result = response.json()["result"]
for i, res in enumerate(result["ocrResults"]):
print(res["prunedResult"])
ocr_img_path = f"ocr_{i}.jpg"
with open(ocr_img_path, "wb") as f:
f.write(base64.b64decode(res["ocrImage"]))
print(f"Output image saved at {ocr_img_path}")