python - 如何使用 Keras 在二进制图像上使用卷积神经网络?
问题描述
我正在尝试使用 keras 为 ocr 训练一个 cnn 模型。我通过转换为灰度、去除噪声然后将其转换为二进制来对图像进行预处理,因为二进制图像在 ocr 中效果更好。但我遇到的问题是二进制图像有 2 个维度,没有通道维度,并且 keras 中的 conv2d(以及一般的任何 conv 层)需要 3 个维度。那么我应该怎么做才能添加维度但保持图像二进制?我正在使用 cv2 进行图像处理,所以请告诉解决方案最好使用它。还告诉我使用二进制图像数据集更适合 ocr 是否正确。
解决方案
我得到了我的解决方案。我使用 numpy 函数 numpy.expand_dims() 添加空维度。所以它变成了(宽度,高度,1)。这是我所做的:-
img = np.expand_dims(img,axis=2)
推荐阅读
- excel - 使用用户窗体输入工作簿作为参考时下标超出范围
- google-sheets - 为什么有时无法编辑 Google 表格公式行距?
- angular - 启用/禁用 ngFor 中的特定按钮
- ios - 在 onAppear 中更改状态会破坏 PageViewController
- kotlin - 如何反序列化 Android 中的公共/私有 P-384 密钥?
- javascript - 如何在对象中按插入顺序获取整数键
- bash - 使用 bash 和 wc -l 计算其中包含整数的行
- debugging - 如何让浏览器识别在 Kotlin/Js 的一些外部 Kotlin 库中设置的断点?
- c - 我对如何解决这个警告和错误有点困惑
- mismatch - 运行时错误“13”找不到问题的解决方案