如何使用Keras在二值图像上使用卷积神经网络?

时间:2018-11-09 09:51:20

标签: python opencv image-processing keras conv-neural-network

我正在尝试使用keras训练ocr的CNN模型。我对图像进行了预处理,方法是将其转换为灰度,去除噪声然后将其转换为二进制,因为二进制图像在ocr中效果更好。但是我得到的问题是二进制图像具有2维,没有通道维,而keras中的conv2d(一般来说,任何conv层)都需要3维。那么,我应该怎么做才能添加尺寸但保持图像二进制?我正在使用cv2进行图像处理,因此请最好告诉使用该解决方案。还告诉我是否正确,使用二进制图像数据集更适合ocr。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我使用numpy函数numpy.expand_dims()添加空尺寸。因此它变成(width,height,1)。这是我所做的:-

img = np.expand_dims(img,axis=2)