使用神经网络进行手写分词

时间:2016-05-02 08:11:20

标签: matlab neural-network artificial-intelligence image-segmentation handwriting-recognition

所以我要做的是将草书手写英文单词分成单个字符。我已经应用了一种简单的启发式方法和人工智能来对这样的单词进行基本的过度分割:

Image with over segmentation

我在Matlab中对此进行编码。该方法涉及预处理,倾斜校正大小归一化等,然后将笔划细化为1个像素宽度,并使用图像的像素列和来识别图像中存在的连字。像素和小于阈值的每列是可能的分割点。问题是像'u','v,'m''n'和'w'这样的开放字符,它们的像素列总和也很低,并且会被分段。 我使用的方法是本文提出的修改版本:

cursive script segmentation using neural networks.

现在要改进这种安排,我必须使用神经网络来纠正这些分段点,并将它们识别为坏分段。我会为此编写一个'newff'函数,并将这些段标记为good和bas手动但我无法理解该神经网络的输入应该是什么?

我的猜测是我们必须提供一些图像数据以及可能分段的列数(每个训练样本一个分割点。给定的图像有大约40个分割点,因此它将导致40个训练样本)并将其标记为培训的好坏部分。

只有一个输出神经元告诉我们分割点是好还是坏。

我可以将所有列的列总和作为输入提供给输入层吗?如何判断此训练实例的分段点是什么?我们不得不将实际的列号分类为好的或坏的段,这是在这个n维输入的海中淹没的最重要的值吗? (n是像素的宽度)

1 个答案:

答案 0 :(得分:0)

由于最后一次被问到,我现在正在使用启发式算法返回的每个分段列附近的图像特征。这些特征(如列和像素密度接近分段列)是我对具有单个输出神经元的神经网络的输入。对于良好的分割点,目标向量为1,对于较差的分割点,目标向量为0。