6

我有一张表格的图像(在我的情况下是 .gif),并且想要提取它的表格(理想情况下是 .ods)。

有什么办法吗?(手动操作会被丢弃,因为该表有 1000 多行和 6 列)

这是图像/表格的一部分: 在此处输入图像描述

4

3 回答 3

5

您将能够通过 OCR 获得大部分信息,但您需要手动验证数据并修复可能存在的一些不准确之处。绝对不会完美。

首先要做的是确保您拥有 OCR 软件的高质量图像:

这是我对您的示例 png 所做的(我使用的是 Windows):

  1. 我在The Gimp中打开了图像。
  2. 删除了橙色/蓝色背景:

    a) 选择 -> 按颜色并单击蓝色背景

    b)我按住Shift并单击橙色背景(这会将其添加到当前选择中)

    c) 编辑 -> 填充 BG 颜色(将其设置为白色)

    d) Ctrl- Shift-A取消选择

  3. 我删除了部分切断的“305”线:

    a) 使用调色板中的矩形选择工具按钮,并用 BG 颜色填充选区,如上

  4. 让我们删除表格边框:

    a) 单击调色板中的“模糊选择”工具按钮

    b) 单击表格边框上的某处(您应该看到“行进的蚂蚁”而不是边框​​)

    c) 编辑 -> 填充 BG 颜色

    d) Ctrl- Shift-A再次取消选择

  5. 我们需要增加数字使用的像素数量,以便 OCR 可以更好地检测它们的形状

    a) 图像 -> 缩放图像。我选择使用线性插值缩放 1000%(其他插值也不起作用)

  6. 从 GitHub下载并安装Tesseract

    a) 在命令提示符下键入(包括双引号以处理路径中的空格,并根据需要更改路径):"D:\Program Files (x86)\Tesseract-OCR\tesseract" "d:\temp \your_image.png" "d:\temp\your_txt_file_output"

  7. 输出是带有附加.txt扩展名的文本文件。它仍然会有一些伪影,但我们可以在 Notepad++(或类似的)中轻松纠正这些伪影:

    a)逗号被视为句号,所以我对“。”进行了查找和替换。带有“,”(我假设您的数据中没有任何小数点!)

    b)在几个逗号之前有一些空格,所以我用“,”查找和替换“,”(注意我在查找中的逗号之前包含了一个空格)

    c)数字中还有一些空格,所以我用“”查找和替换“”(替换为空的空格)

这给出了以下结果:

298
299
300
301
302
303
304

910,820,000
920,820,000
930,820,000
941,820,000
952,820,000
983,820,000
9?4,820,000

210,000
220,000
220,000
220,000
220,000
220,000
220,000

2,500
2,500
3,000
3,000
3,000
3,000
3,000

19,000
19,000
20,000
20,000
20,000
20,000
20,000

请注意第二个文本块中 7 的问号。这样的事情还是需要整理的。

最后,您将文本行复制并粘贴到电子表格等中。

于 2017-04-26T02:46:59.237 回答
2

我想发布另一个我终于在网上找到的选项。

https://convertio.co/es/ocr/

即使我认为 K Scandrett 的答案应该是正确的答案,因为它不依赖于可能会失败的 URL。

于 2017-04-26T06:34:00.290 回答
0

如果这是一次性/罕见的需求,并且您是 Windows 操作系统用户并且您安装了 Microsoft Excel,则该应用程序支持将图像数据提取到 Excel。按照此链接获取完整参考。

于 2020-04-10T12:38:30.570 回答