如何将图像输入到神经网络?
computer-vision
image-processing
neural-network
11
0

我了解神经网络的工作原理,但是如果我想将其用于图像处理(例如实际的字符识别),则无法理解如何将图像数据输入到神经网络。

我对A字母印象非常深刻。也许我应该尝试从图像中获取一些信息/规格,然后使用该规格值的向量?它们将成为神经网络的输入吗?

谁已经做过这样的事情,您能解释一下如何做吗?

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

您要解决的问题的名称是“ 特征提取 ”。它绝对是不平凡的,并且是积极研究的主题。

幼稚的方法只是将图像的每个像素映射到相应的输入神经元。显然,这仅适用于所有大小相同的图像,并且通常效果有限。

除此之外,您还可以做很多事情... Gabor过滤器,类似Haar的功能,PCA和ICA,稀疏功能,仅举几个受欢迎的例子。我的建议是挑选一本有关神经网络和模式识别或光学字符识别的教科书。

收藏
评论

最简单的解决方案是将所有图像(用于训练和测试)标准化以具有相同的分辨率。此外,每个图像中的字符大小应大致相同。使用灰度图像也是一个好主意,因此每个像素只会给您一个数字。然后,您可以将每个像素值用作网络的一个输入。例如,如果您的图像尺寸为16x16像素,则您的网络将具有16 * 16 = 256个输入神经元。第一个神经元将在(0,0)看到像素的值,第二个神经元将在(0,1)看到像素的值,依此类推。基本上,您将图像值放在一个矢量中,然后将此矢量馈入网络。这应该已经可以了。

通过首先从图像中提取特征(例如边缘),然后在这些特征上使用网络,您也许可以提高学习速度,并使检测更加可靠。在这种情况下,您要做的是结合先验知识。对于字符识别,您知道某些相关功能。因此,通过将它们提取为预处理步骤,网络就不必学习那些功能。但是,如果您提供了错误(即不相关)的功能,则网络将无法学习图像->字符映射。

收藏
评论

关于将NN应用于图像的所有这些注意事项都在我们的2002年评论文章中涵盖了(基于特征,基于像素,尺度不变等)。

您最大的挑战是所谓的“维数诅咒”。

我将NN性能与支持向量机(使用哪个内核比较)进行比较。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号