请看一下我扫描的以下收据片段:
通常,当我扫描收据时,我会设法使用诸如颜色范围选择工具、选择扩展、羽化、反转选择并将背景涂成白色之类的工具来分离文本和背景。然后我可以玩弄图像的层次而不必担心过分强调背景。我用 Gimp 做所有这些事情(Photoshop 也可以做这些事情)。
但是当我的扫描图像被揉皱时,扫描结果会出现高亮和阴影,这往往会混淆基于颜色值的选择。不过,字母的形状确实足够突出,可以做出合理的区分。
我的问题是:我该怎么做才能强调这些图像中的灰色文本,同时又不强调页面上的皱纹/阴影?
笔记:
- 颜色是后退收据上没有水印,但也可能有一个水印。
- 这可能是热敏纸但该问题也与非热敏纸有关。
- 我不需要对任何东西进行 OCR。
- 对我来说,重要的是不要丢失字母的片段,即使是以保留一些非文本文件为代价。
- 这段文字是希伯来语,但这并不重要。
- 这个示例已经经过了一些级别调整。
答案1
您的技术听起来是正确的,但您可能需要隔离颜色和阴影差异的区域并对其进行不同的处理。这需要大量工作。我尝试过不采用这种方式,即使背景嘈杂,效果也还不错。
颜色通常是清理的关键。查看不同颜色空间中的各个颜色通道。找到印刷品和背景之间对比度最大的通道,并使用伽马、颜色曲线或对比度来改善它。您可以微调曲线以在需要增强辨别力的范围内创建最大的延伸。实际上,如果您正在处理孤立区域,任何可用于改善印刷品和背景之间辨别力的工具或工具组合都会有所帮助。您通常可以通过连续传递和交替颜色空间来改进它。
如果某些颜色通道的对比度很低,则它们可能会产生噪音。如果您无法通过颜色曲线区分印刷品和背景,则可以通过减少或消除通道来改善它。
以这种方式调整颜色曲线会产生奇怪的颜色。将结果转换为灰度或使用亮度通道。然后,使用类似的颜色曲线工具来优化对比度。
您可能需要使用橡皮擦工具,或选择背景区域并删除,以手动去除太像印刷品的噪音。
如果您需要采取激进措施来消除浓重的背景,例如在示例图像中,您可能会得到干净的打印效果,但字符部分与背景太相似会产生间隙。使用按颜色选择工具并将容差数字设置得非常高(颜色范围很广;此时,任何颜色与打印效果稍微相似的内容都应该打印)。选择打印。使用羽化工具将边界增加几个像素,这将增加很多间隙。
将其用作原始图像的遮罩以提取印刷品。然后,您还可以混合两个版本(我通常使用亮度),这将结合每个版本的优点。
但首先要尽可能去除褶皱,以获得最清晰的图像。如果您要尝试熨烫收据,请先在远离任何印刷品的地方尝试。如果是热敏纸,您会把它变暗。顺便说一句,胶带或冷层压膜也会使热敏纸变暗。甚至某些类型的非热敏纸也会因受热而变暗。
我没有对单个字符进行任何清理。我只是使用了颜色通道和曲线,然后切掉了一些大的深色背景污点。然后我从结果中制作了一个蒙版,用它来提取原始印刷品,并混合了两个版本,产生了以下效果:
当字符的某些部分与背景非常接近时(在颜色和暗度相似的背景上印有浅色印刷品),没有一种实用的方法可以在不带走部分浅色印刷品的情况下去除背景(这时,隔离不同区域可以让您以无法对整个图像进行相同处理的方式微调清理)。但是,请注意,您还将面临视觉错觉。
当印刷字符出现在色调相似的背景上时,尤其是当您熟悉这些字符时,您的大脑会填补这些缺陷。如果您放大图像,您会看到字符之间存在小间隙,背景颜色会透过这些间隙显现出来。当您查看单个颜色通道时,这些间隙会更加明显。
在正常观看距离下查看原件,字符看起来比实际更完整。如果您很好地去除了所有背景,这样您就会得到看起来像白纸上的黑色印刷品,字符中的缺陷将更加明显。
如果需要,您可以通过手动填充放大图像上的明显空隙来“修饰”结果。
答案2
全局调整对比度(使用伊凡视界(见下文)生成的图像在我看来更清晰。虽然这些设置可能无法满足您的需求,但您可以调整对比度并实时查看变化。此外,消除红色和绿色通道可能会消除蓝色折痕。顺便说一句,IrfanView 在 Wine 和 Windows 下运行良好,尽管它的图像编辑器不如 GIMP 强大。