【问题标题】:OCR: segmentation of small textOCR:小文本的分割
【发布时间】:2012-12-09 14:54:37
【问题描述】:

问题

我一直在构建一个(非常)简单的 OCR 引擎。 由于我试图对非常小的(像素大小)字符进行分类,因此在分割时遇到了一些困难。下面是一个示例,经过尽力而为的图像范围阈值处理:

:

我尝试过的

错误检测

  • 段的水平尺寸过大。它主要是有效的,但失败了(误报) 对于一些较大的字符。
  • 分类,并拒绝低分。这似乎有点浪费。

错误更正

  • 垂直添加像素(垂直直方图),找到最小值。在许多样本中,它在错误的位置切割了许多片段。

我还没有尝试过的东西

  • 尝试对所有可能的分割点(像素)进行分类。这将非常浪费,并且难以扩展为 3 个合并字符的片段。
  • 我一直在阅读 morphology approaches 以将字符转换为数学曲线,但我真的不知道从哪里开始,或者是否值得努力

从这里到哪里去?

我不知道。因此这个问题:)

【问题讨论】:

    标签: opencv image-processing language-agnostic ocr image-segmentation


    【解决方案1】:

    向后靠,半闭眼睛。

    63 :-)

    现在,如果电脑这么简单就好了!

    它非常接近双图案在硅掩模中的作用(或取消作用?)。

    我建议进行过采样(将每个轴上的像素数加倍或四倍)、过滤(可能是低通 - 或可能是带通,其中通带 = 线的空间频率),重新设置阈值直到它们分开。昂贵,所以只适用于有问题的领域。

    【讨论】:

      【解决方案2】:

      重新发明您的问题,因此您不需要细分。

      真的,对于这个规模,我认为您最好投资于其他方法。例如,如果您对文本进行 OCR(是吗?),您可以使用行的信息(字符高度)。可用于小(但可读)字符的字体并不多。我的方法是一种算法,在扫描线中扫描线(从左到右,从上到下取像素)并尝试找到训练文本和扫描线之间的相关性(n,n-1...n-x)

      您可能还需要灰度级别的信息,因此最好不要对图像进行阈值处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多