OCR 与图像

扫描页灰蒙蒙,增强对比度为什么不一定更准

扫描页灰蒙蒙,把对比度拉高确实更醒目,但浅色印章和细线也可能一起消失。预处理不是让图片看着更“硬”,而是为特定识别任务保留有用信息。没有对照结果时,不应把更黑更白直接称为更准确。

阅读文本 / Reading text
本文使用合成样本演示处理方法。代码已通过隔离环境中的示例检查;这不代表对所有真实文件或产品效果的保证。处理重要文件前,请保留原件,并按文中的边界与验收项复核。 扫描页灰蒙蒙,把对比度拉高确实更醒目,但浅色印章和细线也可能一起消失。预处理不是让图片看着更“硬”,而是为特定识别任务保留有用信息。没有对照结果时,不应把更黑更白直接称为更准确。 增强参数不是质量分数 Pillow 的 ImageEnhance.Contrast 根据参数调整对比度。参数为一表示保持原图,其他值产生不同候选。建议保留原图和少量候选,用相同 OCR 配置比较,而不是连续处理上一轮结果,最后失去可复现起点。 验证候选确实来自同一原图 from PIL import Image, ImageEnhance source = Image.new("L", (3, 1)) source.putdata([100, 128, 150]) original = source.tobytes() identity = ImageEnhance.Contrast(source).enhance(1.0) candidate = ImageEnhance.Contrast(source).enhance(1.5) assert identity.tobytes() == original assert candidate.size == source.size assert candidate.mode == source.mode assert source.tobytes() == original assert candidate.tobytes() != original 这组灰度值是合成输入,断言只检查变换与非破坏性行为。它没有文字标签、OCR 输出或准确率统计。参数一点五只是演示值,不是适合所有扫描仪的推荐设置。 重点看容易受损的内容 区域 对比时观察 失败后的选择 浅色章 细节是否消失 使用原图或较温和候选 表格线 是否断裂或粘连 分离表格结构与文字评估 小字号 笔画是否合并 不只看整页缩略图 背景污渍 是否被强化 调整局部策略而非盲加对比 想谈效果就准备标注样本 选择包含正文、数字、表格和印章的代表页,保存人工核对文本,再比较候选识别差异。即使某几页变好,也不能直接外推到所有文件。若没有标注,只能说视觉检查的观察,不能报告识别准确率提升。 翻译工作流需要完整性,不只是清爽画面 使用 OmniDoc(产品入口) 的 OCR 翻译时,淡色批注可能和正文同样重要。预处理后先确认这些信息还在,再评价双语输出。对交付而言,保留一个关键否定词或印章说明,比获得更漂亮的白底更重要。 参考: Pillow ImageEnhance 。 - 1 -
更新于 2026-10-08