|
|
@@ -0,0 +1,86 @@
|
|
|
+# 表格标注工具流程
|
|
|
+
|
|
|
+```mermaid
|
|
|
+flowchart TD
|
|
|
+ Start([开始标注]) --> SelectDataSource{选择数据源}
|
|
|
+
|
|
|
+ SelectDataSource -->|预定义数据源| PredefinedSource[加载预定义数据源配置<br/>table_line_generator/backend/config/data_sources/*.yaml]
|
|
|
+ SelectDataSource -->|临时选择数据源| ManualSource[手动配置数据源]
|
|
|
+
|
|
|
+ ManualSource --> SetImageDir[设置图片目录]
|
|
|
+ SetImageDir --> SetJsonDir[设置JSON目录<br/>包含表格bbox和单元格bbox]
|
|
|
+ SetJsonDir --> SetOutputDir[设置输出目录<br/>标注结果保存位置]
|
|
|
+
|
|
|
+ PredefinedSource --> LoadFiles[加载图片和JSON文件对]
|
|
|
+ SetOutputDir --> LoadFiles
|
|
|
+
|
|
|
+ LoadFiles --> SelectPage[选择要标注的页面]
|
|
|
+ SelectPage --> DetectTableRegion{OCR检测表格区域}
|
|
|
+
|
|
|
+ DetectTableRegion -->|检测正确| UseDetectedRegion[使用OCR检测的表格区域]
|
|
|
+ DetectTableRegion -->|检测有误| ManualDefineRegion[人工框定表格区域]
|
|
|
+
|
|
|
+ UseDetectedRegion --> CheckTemplate{是否有可用模板?}
|
|
|
+ ManualDefineRegion --> CheckTemplate
|
|
|
+
|
|
|
+ CheckTemplate -->|有模板| SelectTemplate[选择标注模板]
|
|
|
+ CheckTemplate -->|无模板| ManualAnnotation[手动标注表格线]
|
|
|
+
|
|
|
+ SelectTemplate --> AdaptTemplate[模板自适应]
|
|
|
+ AdaptTemplate --> AutoDrawLines[自动绘制表格线<br/>竖线: 相对坐标<br/>横线: OCR自适应计算]
|
|
|
+
|
|
|
+ AutoDrawLines --> ReviewLines{检查标注结果}
|
|
|
+ ManualAnnotation --> ReviewLines
|
|
|
+
|
|
|
+ ReviewLines -->|需要调整| EditLines[编辑表格线]
|
|
|
+ ReviewLines -->|标注完成| SaveAnnotation[保存标注结果]
|
|
|
+
|
|
|
+ EditLines --> EditOptions{编辑操作}
|
|
|
+ EditOptions -->|移动| MoveLines[移动横竖线]
|
|
|
+ EditOptions -->|增加| AddLines[添加横竖线]
|
|
|
+ EditOptions -->|删除| DeleteLines[删除横竖线]
|
|
|
+
|
|
|
+ MoveLines --> ReviewLines
|
|
|
+ AddLines --> ReviewLines
|
|
|
+ DeleteLines --> ReviewLines
|
|
|
+
|
|
|
+ SaveAnnotation --> SaveToOutput[保存到输出目录<br/>生成_structure.json文件]
|
|
|
+ SaveToOutput --> CreateTemplate{是否创建模板?}
|
|
|
+
|
|
|
+ CreateTemplate -->|是| SaveAsTemplate[保存为标注模板<br/>针对此类交易流水]
|
|
|
+ CreateTemplate -->|否| NextPage{继续标注其他页面?}
|
|
|
+
|
|
|
+ SaveAsTemplate --> NextPage
|
|
|
+ NextPage -->|是| SelectPage
|
|
|
+ NextPage -->|否| End([标注完成])
|
|
|
+
|
|
|
+ style Start fill:#e1f5ff
|
|
|
+ style End fill:#c8e6c9
|
|
|
+ style SelectDataSource fill:#fff3e0
|
|
|
+ style CheckTemplate fill:#fff3e0
|
|
|
+ style ReviewLines fill:#fff3e0
|
|
|
+ style CreateTemplate fill:#fff3e0
|
|
|
+ style NextPage fill:#fff3e0
|
|
|
+```
|
|
|
+
|
|
|
+## 流程说明
|
|
|
+
|
|
|
+### 1. 数据源选择
|
|
|
+- **预定义数据源**:从配置文件加载,包含图片目录、JSON目录和输出目录
|
|
|
+- **临时数据源**:手动设置三个目录路径
|
|
|
+
|
|
|
+### 2. 表格区域确定
|
|
|
+- 优先使用OCR检测的表格区域
|
|
|
+- 如果检测有误,可以人工框定表格区域
|
|
|
+
|
|
|
+### 3. 表格线标注
|
|
|
+- **无模板模式**:手动添加、移动、删除横竖线
|
|
|
+- **模板模式**:选择模板后自动适配,竖线使用相对坐标,横线根据OCR自适应计算
|
|
|
+
|
|
|
+### 4. 模板管理
|
|
|
+- 可以将当前标注结果保存为模板
|
|
|
+- 下次标注时可以选择模板自动完成标注
|
|
|
+
|
|
|
+### 5. 批量处理
|
|
|
+- 支持连续标注多个页面
|
|
|
+- 每个页面的标注结果独立保存
|