PP-StructureV3文档结构识别
调用PP-StructureV3文档结构识别接口,实现文档版面分析、表格识别、公式识别等功能,返回结构化的Markdown内容和可视化结果。
权限说明
调用本文API,需使用API Key鉴权方式。使用API Key鉴权调用API流程,具体调用流程,请查看认证鉴权。
请求参数
模型标识,指定使用的文档结构识别模型。
文件路径或URL,待识别的文档文件地址。
文件类型,指定输入文件的格式类型。
是否启用文档方向分类,用于识别文档的旋转角度并自动校正。
是否启用文档展平,用于矫正文档中的扭曲变形。
是否启用文本行方向检测,用于检测并校正文本行的方向。
是否启用印章识别,用于检测和识别文档中的印章区域。
是否启用表格识别,用于识别文档中的表格结构和内容。
是否启用公式识别,用于识别文档中的数学公式。
是否启用图表识别,用于识别文档中的图表内容。
是否启用区域检测,用于检测文档中的不同功能区域。
版面检测阈值,控制版面区域检测的置信度阈值。
是否启用版面检测的非极大值抑制(NMS),用于去除重叠的检测框。
版面检测框扩展比例,用于扩展检测到的版面区域边界。
文本检测限制边长,控制文本检测时图像缩放的目标边长。
文本检测限制类型,指定限制边长的应用方式。
可选值:min - 限制最小边长max - 限制最大边长
文本检测二值化阈值,控制文本区域的二值化阈值。
文本检测框阈值,控制文本检测框的置信度阈值。
文本检测框扩展比例,用于扩展检测到的文本区域边界。
文本识别得分阈值,控制文本识别结果的置信度阈值。
印章检测限制边长,控制印章检测时图像缩放的目标边长。
印章检测限制类型,指定限制边长的应用方式。
可选值:min - 限制最小边长max - 限制最大边长
印章检测二值化阈值,控制印章区域的二值化阈值。
印章检测框阈值,控制印章检测框的置信度阈值。
印章检测框扩展比例,用于扩展检测到的印章区域边界。
印章识别得分阈值,控制印章识别结果的置信度阈值。
是否将有线表格单元格转换为HTML格式,用于输出HTML格式的有线表格。
是否将无线表格单元格转换为HTML格式,用于输出HTML格式的无线表格。
是否启用表格方向分类,用于识别表格的旋转角度。
是否在表格单元格中使用OCR结果,用于增强表格内容识别准确性。
是否使用端到端有线表格识别模型,用于直接识别有线表格结构和内容。
是否使用端到端无线表格识别模型,用于直接识别无线表格结构和内容。
是否生成可视化结果,用于输出版面检测、阅读顺序等可视化图像。
POST /v2/ocr/paddleocr HTTP/1.1
HOST: qianfan.baidubce.com
Authorization: Bearer <API Key>
Content-Type: application/json
{
"model": "pp-structurev3",
"file": "https://example.com/document.pdf",
"fileType": 0,
"useDocOrientationClassify": false,
"useDocUnwarping": false,
"useTextlineOrientation": false,
"useSealRecognition": false,
"useTableRecognition": true,
"useFormulaRecognition": true,
"useChartRecognition": false,
"useRegionDetection": true,
"layoutThreshold": 0.5,
"layoutNms": true,
"layoutUnclipRatio": 1.5,
"textDetLimitSideLen": 960,
"textDetLimitType": "max",
"textDetThresh": 0.3,
"textDetBoxThresh": 0.6,
"textDetUnclipRatio": 1.5,
"textRecScoreThresh": 0.5,
"sealDetLimitSideLen": 960,
"sealDetLimitType": "max",
"sealDetThresh": 0.3,
"sealDetBoxThresh": 0.6,
"sealDetUnclipRatio": 1.5,
"sealRecScoreThresh": 0.5,
"useWiredTableCellsTransToHtml": false,
"useWirelessTableCellsTransToHtml": false,
"useTableOrientationClassify": false,
"useOcrResultsWithTableCells": false,
"useE2eWiredTableRecModel": false,
"useE2eWirelessTableRecModel": false,
"visualize": true
}
示例代码
使用curl命令调用PP-StructureV3文档结构识别接口的基本示例
curl -X POST "https://qianfan.baidubce.com/v2/ocr/paddleocr" \
-H "Authorization: Bearer bce-v3/ALTAK-******ZftZDTn7/125eeb1c5e9ddc8cf3edf18ef6d03f1517ec9408" \
-H "Content-Type: application/json" \
-d '{
"model": "pp-structurev3",
"file": "https://example.com/document.pdf",
"fileType": 0,
"useTableRecognition": true,
"useFormulaRecognition": true,
"useRegionDetection": true,
"visualize": true
}'
返回响应
多选一且必需“只能”符合其中一个
显示子属性
隐藏子属性
成功响应,接口调用成功时的响应格式。
显示子属性
隐藏子属性
请求唯一标识,本次请求的唯一标识,可用于排查问题。
识别结果,文档结构识别的输出结果。
显示子属性
隐藏子属性
版面解析结果,版面解析结果。数组长度为1(对于图像输入)或实际处理的文档页数(对于PDF输入)。对于PDF输入,数组中的每个元素依次表示PDF文件中实际处理的每一页的结果。
显示子属性
隐藏子属性
显示子属性
隐藏子属性
处理后结果,对象的predict方法生成结果的JSON表示中res字段的简化版本,其中去除了input_path和page_index字段。
显示子属性
隐藏子属性
模型参数配置,配置 PaddleOCR-VL 所需的模型参数。
显示子属性
隐藏子属性
是否启用文档预处理子产线,控制是否启用文档预处理子产线。
是否启用版面检测模块,控制是否启用版面检测模块。
是否开启图表识别功能,控制是否开启图表识别功能。
是否保存格式化内容,控制是否在JSON中保存格式化后的markdown内容。
解析结果列表,解析结果的列表,每个元素为一个字典,列表顺序为解析后的阅读顺序。
显示子属性
隐藏子属性
显示子属性
隐藏子属性
版面区域标签,版面区域的标签,例如text、table等。
版面区域内容,版面区域内的内容。
版面区域边界框,版面区域的边界框坐标。
显示子属性
隐藏子属性
版面区域索引,版面区域的索引,用于显示版面排序结果。
版面区域顺序,版面区域的顺序,用于显示版面阅读顺序,对于非排序部分,默认值为null。
版面检测结果,版面区域检测排序结果。
显示子属性
隐藏子属性
检测框列表,预测的目标框信息,每个字典代表一个检出的目标。
显示子属性
隐藏子属性
显示子属性
隐藏子属性
类别ID,预测目标的类别ID。
类别名称,预测目标的类别名称。
置信度,目标框的置信度分数。
坐标信息,目标框坐标,格式为[xmin, ymin, xmax, ymax]。
显示子属性
隐藏子属性
输入路径,输入的待预测图像的路径。
页面索引,如果输入是PDF文件,则表示当前是PDF的第几页。
Markdown结果,识别结果的Markdown表示。
显示子属性
隐藏子属性
Markdown文本,识别结果的Markdown格式文本。
图片映射,Markdown图片相对路径和图片链接的键值对,图片链接为JPEG格式,有效期30天。
显示子属性
隐藏子属性
是否段开始,当前页面第一个元素是否为段开始。
是否段结束,当前页面最后一个元素是否为段结束。
输出图片链接,输出图片链接,为JPEG格式,有效期30天。返回的预测结果是一个dict类型的数据,其中键分别为layout_det_res、layout_order_res和preprocessed_img,对应的值是Image.Image对象。layout_det_res - 用于显示版面区域检测的可视化图像layout_order_res - 用于显示版面阅读顺序结果的可视化图像preprocessed_img - 用于展示图像预处理的可视化图像
显示子属性
隐藏子属性
输入图片链接,输入图片链接,为JPEG格式,有效期30天。
输入数据信息,输入数据的详细信息。
显示子属性
隐藏子属性
输入文件类型,输入文件类型,可为image或pdf。
文件页数,文件页数,当type=pdf时返回。
页面详细信息,每页详细信息,包括宽高,当type=pdf时返回。
显示子属性
隐藏子属性
显示子属性
隐藏子属性
页面宽度,PDF页面的宽度。
页面高度,PDF页面的高度。
图片宽度,图片宽度,当type=image时返回。
图片高度,图片高度,当type=image时返回。
错误响应,接口调用失败时的响应格式,包括参数错误(400)、鉴权失败(401/403)、内部错误(500)等情况。
显示子属性
隐藏子属性
错误类型,错误的类型标识。
错误码,具体的错误代码。
错误消息,错误的详细描述信息。
接口调用成功时的响应示例
{
"id": "request-12345",
"result": {
"layoutParsingResults": [
{
"prunedResult": {
"model_settings": {
"use_doc_preprocessor": true,
"use_layout_detection": true,
"use_chart_recognition": false,
"format_block_content": true
},
"parsing_res_list": [
{
"block_label": "text",
"block_content": "这是识别出的文本内容",
"block_bbox": [
100,
200,
300,
400
],
"block_id": 1,
"block_order": 1
}
],
"layout_det_res": {
"boxes": [
{
"cls_id": 1,
"label": "text",
"score": 0.95,
"coordinate": [
10.5,
20.5,
100.5,
50.5
]
}
]
}
},
"markdown": {
"text": "# 标题\\n\\n这是正文内容",
"images": {
"image1": "https://example.com/image1.jpg"
},
"isStart": true,
"isEnd": false
},
"outputImages": {
"layout_det_res": "https://example.com/layout_det.jpg",
"layout_order_res": "https://example.com/layout_order.jpg",
"preprocessed_img": "https://example.com/preprocessed.jpg"
},
"inputImage": "https://example.com/input.jpg"
}
],
"dataInfo": {
"type": "pdf",
"numPages": 5,
"pages": [
{
"width": 595,
"height": 842
}
]
}
}
}
参数错误时的响应示例(HTTP 400)
{
"type": "invalid_request_error",
"code": "invalid_argument",
"message": "参数报错"
}
错误码说明
| HTTP状态码 | 错误类型 | 说明 |
|---|---|---|
| 400 | invalid_request_error | 参数错误 |
| 401/403 | authentication_error | 鉴权失败 |
| 500 | internal_error | 内部错误 |
注意事项
- 输出图片链接(包括输入图片、Markdown中的图片、可视化结果图片)为JPEG格式,有效期为30天
- 对于PDF输入,
layoutParsingResults数组的长度等于实际处理的文档页数 - 对于图像输入,
layoutParsingResults数组长度为1 - 版面区域的
block_order字段,对于非排序部分默认值为null
