表格结构识别 Skill
数据来源
本 Skill 支持多种表格输入格式,核心数据来源包括:
1. 表格文件类型
- PDF文档:PDF中的表格
- Word文档:Word文档中的表格
- Excel文档:Excel工作表
- 图片格式:扫描表格图片、截图表格
2. 表格类型
- 标准表格:规则的行列结构表格
- 复杂表格:合并单元格、多级表头表格
- 不规则表格:非标准格式表格
- 嵌套表格:表格中包含子表格
3. 表格特征
- 表格大小:小表格(<10行)、大表格(>1000行)
- 表格复杂度:简单表格、复杂格式表格
- 表格语言:中文表格、英文表格、多语言表格
- 表格质量:清晰度、分辨率、格式规范度
4. 数据格式要求
- 文件路径:本地文件路径或网络文件URL
- 文件编码:UTF-8、GBK、GB2312等
- 文件权限:需要读取权限
说明:本 Skill 不包含表格采集功能,需要用户提供表格文件。建议表格格式规范,以便进行准确的结构识别。
功能
本 Skill 提供全面的表格结构识别能力,涵盖多种识别功能:
1. 表格检测
- 表格定位:检测文档中的表格位置
- 表格边界识别:识别表格的边界和范围
- 表格数量统计:统计文档中的表格数量
- 表格类型判断:判断表格的类型和复杂度
2. 表头识别
- 表头行识别:识别表头行和表头层级
- 表头单元格识别:识别表头单元格和合并情况
- 多级表头识别:识别多级表头结构
- 表头文本提取:提取表头文本和标签
3. 行列结构识别
- 行识别:识别表格的行数和行结构
- 列识别:识别表格的列数和列结构
- 单元格识别:识别单元格的位置和边界
- 合并单元格识别:识别合并单元格的范围
4. 数据区域识别
- 数据行识别:识别数据行和表头行的分界
- 数据列识别:识别数据列的范围
- 数据区域提取:提取数据区域的内容
- 空行空列处理:识别和处理空行空列
5. 表格内容提取
- 单元格内容提取:提取单元格的文本内容
- 表格数据提取:提取表格的结构化数据
- 格式信息提取:提取单元格的格式信息
- 公式识别:识别单元格中的公式
6. 高级处理功能
- 表格结构重建:重建表格的完整结构
- 表格验证:验证表格结构的完整性
- 表格标准化:标准化表格格式
- 表格描述生成:生成表格结构的文字描述
使用示例
输出示例
{
"table_info": {
"table_id": 1,
"position": {
"page": 5,
"bbox": [100, 200, 500, 600]
},
"source_file": "document.pdf"
},
"structure": {
"row_count": 10,
"column_count": 5,
"header_rows": 2,
"data_rows": 8,
"has_merged_cells": true
},
"headers": {
"level_1": [
{
"cell_range": "A1:E1",
"text": "2024年财务数据",
"merged": true,
"colspan": 5
}
],
"level_2": [
{
"cell_range": "A2",
"text": "项目",
"merged": false
},
{
"cell_range": "B2",
"text": "Q1",
"merged": false
},
{
"cell_range": "C2",
"text": "Q2",
"merged": false
},
{
"cell_range": "D2",
"text": "Q3",
"merged": false
},
{
"cell_range": "E2",
"text": "Q4",
"merged": false
}
]
},
"merged_cells": [
{
"range": "A1:E1",
"rowspan": 1,
"colspan": 5,
"text": "2024年财务数据"
}
],
"data": [
{
"row": 3,
"cells": [
{"col": 1, "text": "营业收入", "rowspan": 1, "colspan": 1},
{"col": 2, "text": "1000", "rowspan": 1, "colspan": 1},
{"col": 3, "text": "1100", "rowspan": 1, "colspan": 1},
{"col": 4, "text": "1200", "rowspan": 1, "colspan": 1},
{"col": 5, "text": "1300", "rowspan": 1, "colspan": 1}
]
}
],
"extracted_table": {
"format": "csv",
"data": [
["项目", "Q1", "Q2", "Q3", "Q4"],
["营业收入", "1000", "1100", "1200", "1300"],
["营业成本", "600", "650", "700", "750"]
]
}
}
注意事项与限制
1. 表格格式要求
- 标准格式表格识别准确率较高
- 复杂格式表格可能影响识别
- 扫描表格需要OCR功能支持
2. 识别准确性
- 清晰表格识别准确率较高
- 模糊或低分辨率表格可能有限
- 手绘表格识别准确率较低
3. 合并单元格处理
- 简单合并单元格处理较好
- 复杂合并情况可能需要特殊处理
- 跨页表格合并可能有限
4. 表格复杂度
- 简单表格识别准确率较高
- 复杂表格可能需要人工复核
- 超大表格可能需要分段处理
5. 使用限制
- 本 Skill 不包含表格编辑功能
- 识别结果需要人工复核
- 非标准表格可能需要人工处理
参考资料
- 见 references/ 目录中的相关文档,包括:
- 表格结构识别方法手册
- OCR识别算法说明
- 表格结构分析指南
- 性能优化指南