Closed lyplay2 closed 9 months ago
方便的话,请给出可以复现的代码和附件。 单凭描述,没办法排查
import time from rapidocr_pdf import PDFExtracter
if name == 'main': start = time.time() pdf_extracter = PDFExtracter()
texts = pdf_extracter('scan_3.pdf')
merged = ''
for text in texts:
for line in text:
merged += line + '\n'
end = time.time()
print('总用时:', end - start)
with open('output3.txt', 'w', encoding='utf-8') as f:
f.write(merged)
f.close()
因扫描件有个人姓名等隐私信息。我发你QQ邮箱了,烦请抽空看一下。
1、同样的报告格式,描述出来的结果存放在文本文件中。出现的顺序会不一样 比如,按左右上下顺序 是 项目1、项目2、项目3、项目4 显示的结果 有时是 1234,有时是2341... 这种的话不便于处理提取关键信息。
该部分问题,我这里的确复现了,原因是虽是同样报告样式,但是检测文本框的坐标有轻微差别,就会导致输出时,排序不一。 如果想要提取关键信息,建议结合正则表达式和框坐标来提取。
2、表格中的值如果 是 一两位数字, 如 2,11等,会被忽略,识别不出来。
该问题是因为单字这种被文本检测算法漏检了,可以尝试调节参数。具体调节可参考RapidOCR 文档,后续会考虑优化这块。
用rapidocr_pdf识别体检报单,征信报告单速度较快,正确率还行。 不过遇到几个问题 1、同样的报告格式,描述出来的结果存放在文本文件中。出现的顺序会不一样 比如,按左右上下顺序 是 项目1、项目2、项目3、项目4 显示的结果 有时是 1234,有时是2341... 这种的话不便于处理提取关键信息。 2、表格中的值如果 是 一两位数字, 如 2,11等,会被忽略,识别不出来。