【问题标题】:Character recognition (OCR algorithm) [closed]字符识别(OCR 算法)[关闭]
【发布时间】:2013-02-17 17:55:38
【问题描述】:

我正在开发一个项目,我必须开发 OCR 算法(我必须从图像中读取文本,然后将其转换为不同的语言)。所以我的第一个任务是从图像中获取文本。

完成第一项任务的步骤。

  1. 从给定源加载任何图像格式(bmp、jpg、png)。然后将图像转换为灰度并使用阈值进行二值化(Otsu 算法)。 //完成(如何去除输出图像中的噪点???)

结果

  1. 检测分辨率和反转等图像特征。这样我们就可以最终将其转换为拉直的图像以进行进一步处理。 (完成了图像旋转的代码,但无法检测到我们必须旋转图像的图像角度,所以还在做角度检测部分)

  2. 行检测和删除。这一步是为了改进页面布局分析,获得更好的下划线文本识别质量,检测表格等(决定完成该部分在最后)

  3. 页面布局分析。在这一步中,我试图识别图像中存在的文本区域。这样只有该部分用于识别,其余区域被排除在外。

  4. 检测文本行和单词。这里我们还需要注意不同的字体大小和单词之间的小间距。

  5. 字符识别。这是OCR的主要算法;每个字符的图像都必须转换为适当的字符代码。有时该算法会为不确定的图像生成几个字符代码。例如,识别“I”字符的图像可以产生“I”、“|” “1”、“l”代码和最终字符代码将在稍后选择。

  6. 将结果保存为选定的输出格式,例如可搜索的 PDF、DOC、RTF、TXT。保存原始页面布局很重要:列、字体、颜色、图片、背景等。

所以我在第 6 部分需要帮助。我已经完成了行检测部分(从包含 n 行的段落中获取 n 个图像)但在下一部分获取单词和字符识别时卡住了。如果您知道与 OCR 和字符识别部分相关的良好链接那么请在这里发帖。

对于字符识别,我正在考虑使用 asprise(Java 库)http://asprise.com/product/ocr/index.php?lang=java

【问题讨论】:

标签: ocr


【解决方案1】:

要检测旋转角度,请使用Hough transformation

对于降噪,将没有相邻像素(北、东、南或西)的任何像素替换为相同颜色(相似颜色,使用容差阈值),邻居的平均值。

布局检测搜索垂直空白。沿垂直间隙切片。对于每个切片,现在搜索水平间隙并切片。如果切片具有相同(相似)的高度,则您处于线级。否则重复垂直/水平切片,直到只剩下线条。最后一步是垂直切片,为您提供单个字符(或在某些情况下为连字)。长而窄或短而宽的切片是线条。

将字符切片与字符库进行比较。如果性能不是主要问题,请尝试在不同的字体库中查找字符,直到您可以识别所使用的字体。然后坚持使用该字体进行字符识别

在原始图像中,将每个字符替换为背景色,这是通过对字符的每个像素插入不属于字符的像素来确定的。这将为您提供背景图片(如果有)。

【讨论】:

  • 我想要一些好的去噪方法。“替换任何没有邻居(北、东、南或西)具有相同颜色的像素”效果不够好。跨度>
  • 如果你有关于字符笔画宽度的信息,你可以寻找更大的簇。您还可以使用 Hough 来检测间隙,因此噪音不会造成太大的干扰。
  • 我在字符匹配部分的准确率只有 60% 我该如何改进? ,对于字符匹配我使用我自己的方法来匹配字符图像。
  • 如何检测字符之间的间距,从图像中获取字符后我们已经做了句子,为此我们必须放置空格。
  • 你必须计算出角色的位置
【解决方案2】:

您应该使用自适应阈值而不是 Otsu 方法。我认为这会有所帮助http://www.csse.uwa.edu.au/~shafait/papers/Shafait-efficient-binarization-SPIE08.pdf 此方法会自动去除噪音。

【讨论】:

    【解决方案3】:

    您可能需要查看Tesseract 的字符识别部分。

    【讨论】:

    • Google Vision API 也值得研究,他们执行 OCR,虽然我没有尝试过
    【解决方案4】:

    您可以使用 potrace 来降低噪音 它将给定的图像(bmp)矢量化并将其转换为 svg、pdf 和一些其他格式

    http://potrace.sourceforge.net/potrace.html

    【讨论】:

      猜你喜欢
      • 2010-12-15
      • 1970-01-01
      • 2014-04-25
      • 2017-08-27
      • 1970-01-01
      • 1970-01-01
      • 2013-11-01
      • 1970-01-01
      • 2012-08-05
      相关资源
      最近更新 更多