采用图像处理和深度学习技术实现【合同扫描件】中表格内容的识别。合同扫描件以PDF格式提供,每页PDF对应纸质合同相应页的扫描图片。模型主体架构分为两部分:基于图像处理的表格识别、基于CRNN+CTC的OCR。
- PDF2img
- 筛选含有表格的页 (TODO)
- 图片预处理
- 倾斜校正
- 表格识别
- 二值化
- 开操作:提取垂直线和水平线
- 依据垂直线和水平线标记所有子表格
- 分割提取表格中所有单元格区域
- 字符识别
- 单元格图像预处理 (TODO)
- 去印章、水印
- 图像增强
- OCR算法
- Densenet + BLSTM + CTC模型
- train
- predict
- 单元格图像预处理 (TODO)
- 表格导出(TODO)
python3,tennsorflow,opencv
- 筛选PDF中含有表格的页面。
- 标记和定位单元格,以便可以按照原表格的组织结构将识别出的内容排列,进而导出电子表格。
- 去印章、水印等。
- 由于扫描件的原始图像质量较差,PDF转为图片后质量进一步损失,需要做图像增强提高字符可分辨性。
- 训练OCR模型。对现有数据集的图像做模糊、遮挡等处理,以提高模型对本项目应用场景的适应性。
- 字符定位和单元格内分行情况的适配。
- 改进表格线的提取算法,增强鲁棒性。
- 基于NLP的OCR识别结果修正,提高识别准确率。
[1] https://www.jianshu.com/p/0f1bf8e057be
[2] https://github.com/xiaomaxiao/keras_ocr