假设我有一个小的位图,其中包含一个手写的数字(0..9)。
是否可以使用(两层)感知机来检测该数字?
除了使用神经网络之外,还有其他从位图中检测单个数字的可能性吗?
回答:
直接将位图的每个像素输入到神经网络需要大量的训练,并且在处理图像的缩放或旋转时效果不佳。
为了帮助神经网络进行良好的分类,你需要执行一些预处理步骤。
- 规范化图像:
- 调整对比度和亮度,使图像的直方图与参考图像匹配。
- 模糊图像以消除噪声。
- 使用某个阈值将其转换为黑白图像。
- 找到形状的边界框,缩放到预定义的大小。
- 计算图像的各种特征,这些特征可用于区分不同的数字:
主成分也可以用于规范化形状的旋转,使最长的轴垂直。
你输入到神经网络进行分类的是特征,而不是像素。