OCR 返回一段文字,只能说明请求结束了。内容是否完整、可读,还需要检查。
先确认是否真的需要 OCR
Word、数字 PDF 和带有正常文字层的页面,应先使用结构化解析。用户问图片里有什么时,视觉理解与文字转录也不是同一项任务。
图片进入知识库,需要可以检索的文字;截图问答则可能更关心图表关系或界面含义。混合文档应保留可读的原生正文,仅补充图片或失真区域。
模型需要看得清楚
页面渲染时要控制尺寸、色彩、方向和内存。小字、低对比内容与密集表格,对输入清晰度更敏感。
旋转、倾斜和噪声需要针对性处理。异常大图也不能直接无限提高分辨率,否则会增加内存和调用成本。
文字过密时,反复发送同一张图通常帮助不大。可以改善局部清晰度,或按区域识别后再合并。
长文档按页记录进度
将页面作为独立任务,分别记录排队、识别、质检、耗时和尝试次数。这样用户能知道哪些页完成了,哪些页需要处理。
并发量要结合服务和设备资源设置。处理失败时,保留已经通过检查的结果,只重试失败页,避免整份文档反复识别。
保存之前检查这几类错误
检查可读字符比例、正文长度和内容重复,也要注意输出是否被截断。
空白或缺失
原图有文字,结果却为空;或者表格、页脚和局部区域没有被识别。
坐标和控制标记
可清理的标记与错误输出要区别处理。有效正文充足时可以保留,标记淹没正文时应重新识别。
重复与截断
异常循环部分需要处理。前半段有效时可标记为部分成功,但不能把它当作整页完成。
不同失败,换不同办法
网络中断、限流和页面太模糊不是一类问题。前者可以等待后重试,后者需要改变输入。
传输失败
遵循服务的重试时间,采用有上限的退避,不持续密集请求。
质量不足
提高局部清晰度,必要时按 2×2 或 3×3 区域识别,再按照空间顺序合并。
无法读取的原件
损坏、加密或无有效内容时,说明具体原因,让用户更换材料。
检查清单
- 确认没有可直接读取的文字层。
- 核对页面方向、清晰度和文字密度。
- 记录每页状态、耗时和失败原因。
- 把网络失败与质量失败分开处理。
- 保存前检查重复、截断和关键数字;只重试有问题的页面。