如何将旧的扫描文档转换为黑白


25

我有一些旧文档已被扫描,我想将它们转换为黑白。内容应始终为黑色,背景应为白色:

在此处输入图片说明

我使用Photoshop。


在如此黑暗的背景下可能会非常困难。通常,您可以在Photoshop中进行色阶调整来解决这个问题
Adam Schuld

谢谢您的回答,对您有所帮助。转换为黑白后,我仍然遇到问题,因此我在水平上进行了一些尝试,并且仍在继续出现灰色。因此,我进行了调整和阴影/突出显示。效果非常好,最大程度地弄乱了它,将其带到文档侧面的一个暗影中,并使用了距其90%的魔术棒,并使用橡皮擦清理了边缘和文本。放大并绘画以修复几个字母。我爱Photoshop。

Answers:


18

如果您可以控制扫描,或者可以重新扫描它们,请增加扫描中的对比度设置,并将黑点设置为您可以找到的最暗的文本。这将使下面的步骤更加容易。如果没有,请继续阅读...

这是相当典型的旧文档扫描的一部分:

扫描旧文件

细节因文档而异(例如,对比度比示例高一些),但粗略轮廓相同。

  • 使用黑白调整层转换为灰度。使用调整图层面板中的“目标调整工具”(“ Scrubby”)来尽可能地使背景变浅(向右滑动)和使文本变暗(向左滑动)。

黑白调整层

请注意,黄色滑块位于最右侧,使淡黄色背景变亮。我只能使文本变暗一点。

  • 使用“色阶”调整层增加对比度。

水平调整

这可以让您95%地到达那里。扫描的文档通常具有直方图,直方图的右侧(纸张)较大,而左侧(文本)较小。您必须尝试使用​​文档才能找到正确的设置。

从这一点开始,您可以复制图像,展平复制的图像,并使用常规的Photoshop润饰工具清理其余部分。


谢谢你,我会尝试第三个变种,这就是我需要的:)
2013年

1
这是一个两步过程。使用两个步骤以获得最佳结果。
艾伦·吉尔伯森

非常好的totural daah想要做些运动来更改样式,以轻松完成任务
Richardard ndegese

11

您提到了Photoshop,但是如果您感兴趣的话,还有一个GIMP插件可以执行高级灰度清洗和处理:

  • 去除斑点
  • 填充黑色墨水上的白色毛孔
  • 删除特定的用户定义形状
  • 损坏的线稿再生
  • 拓扑分解

它称为Nuvola Tools,主要集中在扫描的艺术品上,但是您可能需要尝试一下。

之前:

在此处输入图片说明

后:

在此处输入图片说明

来源:GIMP插件注册表


9

使用GIMP:

  1. 打开一个文件。
  2. 将文档转换为灰度:图像→模式→灰度
  3. 选择背景色:选择→按颜色,用鼠标指针单击背景色。
  4. 反转所选颜色:选择→反转
  5. 复制选择:编辑→复制
  6. 创建一个新文件:File→New
  7. 在新文件的对话框中,在字段:高级选项中选择:填充为白色,然后单击确定。
  8. 在新打开的文档的窗口中单击任意位置,只需选择它即可。
  9. 粘贴剪贴板的内容:编辑→粘贴
  10. 添加新图层以增强黑色文本:图层→从可见新建,在图层面板的字段中:模式:选择
  11. 合并两层:层→合并
  12. 将结果另存为JPEG文件:文件→导出为,选择jpeg并将质量设置为至少60。

哇,这出奇的好!谢啦!
AlfredoHernández'15

发现这种方式比CS6解决方案更快。打印时,扫描图像后面仍然有可见的灰色背景。
user919426 '16

2

我尝试了各种提到的方法,包括。免费的FineThreshold http://www.mehdiplugins.com/english/finethreshold.htm插件。如果文档被均匀地照亮并且纸张本身也具有同质的质量,则该插件可以快速产生良好的效果。但是,这不是我的情况。我发现每个文档的上侧比下侧更轻。因此,每种方法及其部分设置仅适用于每个页面的一部分,而不适用于其余页面。

最终,我发现了“动态阈值”效果,它是Zoner Photo Studio v15的一部分。我猜它的评估版本在一段时间内是免费的。它似乎根据附近的亮度补偿了黑白阈值。它的应用只是一步过程。对我来说,参数“大,值+14”非常有效。在“编辑器”旁边,Zoner还包含“管理器”界面,您可以在其中处理所有选定图像的批处理。最后,我能够在非常老旧的300 dpi激光打印机上以出色的对比度打印结果。

现在,我正在找剩下的唯一任务是自动的作物以inteligent地切出多余的利润每一个形象。任何提示都是可以接受的,因为手动裁剪既烦人又费时。


1

GIMP插件注册表中有一个插件可以做到这一点。现在已在这里存档。

不久前,我将其翻译为Python,并且运行速度更快。

这是将其应用于原始问题中的图像的结果:

在此处输入图片说明

这是将其应用于Alan答案中的图像的结果:

在此处输入图片说明

无论如何,这是插件的代码:

from __future__ import division
import random
import gimp, gimpfu

pdb = gimp.pdb

sample_count = 100

def set_image_background_to_white(image, drawable):
  pdb.gimp_context_push()
  pdb.gimp_image_undo_group_start(image)
  pdb.gimp_progress_set_text('Correcting background')

  if drawable.is_gray:
    channel_count = 1
  elif drawable.is_rgb:
    channel_count = 3

  assert not drawable.is_indexed

  # get some random points in the image
  sum_by_channel = [0]*channel_count
  for sample_index in range(sample_count):
    px = pdb.gimp_drawable_get_pixel(drawable,
                                     random.randint(0, pdb.gimp_drawable_width (drawable)-1),
                                     random.randint(0, pdb.gimp_drawable_height(drawable)-1))[1]

    for i in range(channel_count):
      sum_by_channel[i] += px[i]

    pdb.gimp_progress_update(sample_index/sample_count)

  if drawable.is_gray:
    pdb.gimp_levels(drawable, gimpfu.HISTOGRAM_VALUE,
                    0, sum_by_channel[0]/sample_count,
                    1.,
                    0, 255)
  elif drawable.is_rgb:
    for i in range(channel_count):
      pdb.gimp_levels(drawable, 1+i,
                      0, sum_by_channel[i]/sample_count,
                      1.,
                      0, 255)

  pdb.gimp_levels(drawable, gimpfu.HISTOGRAM_VALUE,
                  0, 255,
                  0.6,
                  0, 255)

  pdb.gimp_image_undo_group_end(image)
  pdb.gimp_displays_flush()
  pdb.gimp_progress_update(1.)
  pdb.gimp_context_pop()

gimpfu.register('set_image_background_to_white',           # name
                'Set image background to white',           # blurb
                'No help info yet',                        # help
                'Robert Fleming',                          # author
                'Robert Fleming',                          # copyright
                '2015',                                    # date
                '<Image>/Filters/Set Background to White', # menupath
                'RGB*, GRAY*',                             # imagetypes
                [],                                        # params
                [],                                        # results
                set_image_background_to_white,             # function
                )

gimpfu.main()

-2

只需尝试使用Photoshop。灰度模式。


1
欢迎来到平面设计SE!我们正在寻找更完整的答案,而不仅仅是单线。您能解释一下如何使用灰度模式吗?
卢西亚诺
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.