繁体   English   中英

Matlab神经网络的字符识别

[英]Characters Recognition for Matlab Neural Network

我正在研究我的最终项目。 我选择实现NN进行字符识别。

我的计划是拍摄26张包含26个英文字母的图像作为训练数据,但我不知道如何将这些图像转换为神经网络的输入。

假设我有一个具有2层的反向传播神经网络 - 隐藏层和输出层。 输出层有26个神经元,可产生26个字母。 我自己创建了26个图像(大小为24 * bmp格式的100 * 100像素),每个图像都包含一个英文字母。 我不需要进行图像分割,因为我是图像处理的新手,所以你们可以给我一些关于如何在Matlab中将图像转换为输入向量的建议(或者我是否需要做边缘,形态或其他图像预处理的东西?)。

非常感谢。

仅当字母相同(像素的位置固定)时,NN才会起作用。 您需要将图像转换为灰度并将其像素化。 换句话说,使用在正方形上分割图像的网格。 正方形必须小到足以得到字母细节,但足够大,所以你不要使用太多的神经元。 每个像素(灰度)是NN的输入。 剩下的就是确定连接神经元的方式,例如NN拓扑。 两层NN就足够了。 很可能你应该将每个输入“像素”连接到第一层的每个神经元,将第一层的每个神经元连接到第二层的每个神经元

这并不直接回答您提出的问题,但可能有用:

1)您需要更多的训练数据。 更重要的是,如果我理解正确(每个字母只有一个样本?)

2)这是一个非常常见的项目,如果允许,您可能想尝试在互联网上查找已处理的数据集,以便您可以专注于NN组件。

由于您将进行字符识别,我建议您使用不需要任何训练数据的SOM神经网络; 每个字母你将有26个输入神经元,一个神经元。 对于图像处理位,Ross有一个有用的建议来隔离每个字母。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM