使用PP-Structure识别表格,使用save_structure_res保存结果,只生成res_0.txt,没有生成excel。

问题描述:

最近使用yolo识别表格,之后使用PP-structure进行表格的文本识别,并且通过save_structure_res来保存表格识别的excel信息,但是发现有些表格没有保存成excel,只生成了res_0.txt,打开res_0.txt发现type='figure'。

原因:

因为PP-Structure会进行版面分析,PP-Structure默认的版面分析模型会识别多种类型,人类所认为的表格机器不一定会识别成表格。

解决办法:

1、替换PP-Structure的版面分析模型为表格识别模型。

table_name = file.split(".")[0]
save_folder = table_folder_path
img = cv2.imread(table_path)
result = table_engine(img)
# 保存 OCR 结果
save_structure_res(result, save_folder, table_name)
table_engine = PPStructure(
    use_gpu=False,
    show_log=True,
    lang='ch',
    layout_model_dir='new_model/layout/picodet_lcnet_x1_0_fgd_layout_table_infer',
    layout_url='new_model/layout/layout_table_dict.txt',
)

替换layout_model_dir为picodet_lcnet_x1_0_fgd_layout_table_infer模型,下载路径为:

https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.7/ppstructure/docs/models_list.md

layout_url为layout_table_dict.txt,下载路径为:

https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.7/ppocr/utils/dict/layout_dict/layout_table_dict.txt
2、进行完上述步骤后发现所有表格都没有保存excel,还需要修改predict_system.py,我的是在以下路径:

修改第127行table为text

修改第201行table为text

这样就会发现所有的表格都保存了excel。我猜测可能会有些表格识别不出来,暂时未遇到(这是因为我提前使用了yolo进行了表格识别)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值