【发布时间】:2020-01-21 11:30:44
【问题描述】:
我正在研究手写数字识别问题,使用 OpenCV 进行预处理,使用 Keras/Tensorflow 进行推理。我在预处理中丢失某些功能时遇到问题,这些功能大致包括:
- 大津阈值
- 扩张(使手指粗细与我用来预训练神经网络的另一个数据集相同)
- 使用 cv2.INTER_AREA 缩小到 28x28 像素(再次匹配预训练数据)
这是一个特征损失的例子:
这意味着是 2,顶部循环中的微小间隙对于帮助将其与 9 或 8 区分开来很重要。但是我的预处理版本失去了间隙,因此循环看起来是闭合的。
我已经向preserving holes 提出了类似的问题并得到了很好的答案,尽管我认为我需要对其进行更多概括。
正如我自己的一个想法:也许有一种方法可以在膨胀操作中添加第二个更大的内核。该内核将具有与膨胀内核相同的形状,但只有轮廓(未填充)。然后,如果该轮廓触及原始图像中的任何白色像素,则取消该位置的膨胀动作。
注意:请随意发表评论,以更好的方式提出该标题(“连接性”是我所能想到的)。
【问题讨论】:
标签: python opencv image-morphology