我正在用神经网络对字母和数字进行简单识别。到目前为止,我使用字母图像的每个像素作为网络的输入。毋庸置疑,这种方法会产生非常大的网络。所以我想从我的图像中提取特征并将它们用作神经网络的输入。我的第一个问题是这些字母的属性对于识别它们是有好处的。第二个问题是如何将这些特征表示为神经网络的输入。例如,我可能已经检测到字母中的所有角并将它们作为(x,y)点的矢量。如何将这个向量转换成适合于NN的东西(因为不同的字母的向量大小可能不同)。神经网络特征提取
Q
神经网络特征提取
7
A
回答
3
很多人已经采取了多种OCR功能。最简单的是,直接传递像素值。
从UCI数据集中提取的OpenCV样本中有一个字母识别数据。它采用了大约16种不同的功能。检查这个SOF:How to create data fom image like "Letter Image Recognition Dataset" from UCI
你也可以在其中的一个答案中看到这篇文章解释这个。你可以通过谷歌搜索。您可能还会喜欢this PPT。它给出了对现在使用的不同特征提取技术的简要解释。
4
这篇文章Introduction to Artificial Intelligence. OCR using Artificial Neural Networks by Kluever (2008)给出了一个关于使用神经网络的OCR的4种特征提取技术的调查。他描述了以下方法:
- 运行长度编码(RLE):您需要一个二进制图像(即只有白色或黑色)。二进制字符串可以被编码成更小的表示。
- 边缘检测:找到边缘。由于这个原因,你可能会非常粗糙,所以不用返回精确的(x,y)坐标,只需在减少的位置出现这样的边缘就可以减少矩阵(即,在20%,40%,60%,80%,80% %的图像)。
- Count'True Pixels':这将图像矩阵的
width * height
的维度降低到width + height
。您使用width
矢量和height
矢量作为单独的输入。 - 基本矩阵输入:您已经尝试过;输入整个矩阵会给出好的结果,但正如您注意到的那样可能会导致高维度和训练时间。您可以尝试缩小图像的大小(例如,从200x200到50x50)。
1
如果您有一个非常高维的输入向量,那么我建议您应用主成分分析(PCA)去除冗余特征并减少特征向量的维数。
相关问题
- 1. 使用卷积神经网络进行特征提取?
- 2. 在特征提取中实现卷积神经网络
- 3. 缺失特征的神经网络
- 4. 卷积神经网络 - 如何获取特征地图?
- 5. 从卷积神经网络(CNN)中提取特征,并将此特征用于其他分类算法
- 6. 具有相关特征的神经网络
- 7. 使用的词语/特征袋及神经网络
- 8. 用于检测音频中多个特征的神经网络
- 9. 为神经网络(回归)重新标定输入特征
- 10. mfcc特征大小如何影响recurent神经网络
- 11. 具有6个特征的人工神经网络训练
- 12. 神经网络中“特征”的定义是什么?
- 13. 用于时间相关特征的卷积神经网络
- 14. 神经网络
- 15. 神经网络
- 16. 神经网络[ocr]
- 17. 神经网络,python
- 18. MATLAB神经网络
- 19. 神经网络backpropogation
- 20. 神经网络:“InverseLayer”
- 21. 的神经网络
- 22. SOM - 神经网络
- 23. sigmoid神经网络
- 24. Spiking神经网络
- 25. H2O.deeplearning神经网络
- 26. 神经网络MNIST
- 27. Hopfield神经网络
- 28. RBF神经网络
- 29. 提高Tensorflow神经网络 - 蟒蛇
- 30. 使用神经网络提供建议