7

问题

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

63 上有问题的分割图像

我试过的

错误检测

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

纠错:_

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

我还没有尝试过的

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

然后去哪儿?

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

4

2 回答 2

6

向后靠,半闭上眼睛。

63:-)

现在,如果计算机这么容易就好了!

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

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

于 2012-12-22T11:29:23.383 回答
3

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

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

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

于 2012-12-22T16:25:46.637 回答