opencv 中的 OCR - 如何传递对象

OCR in opencv - how to pass objects

我想在 OpenCV 中编写 OCR。我需要识别单个字母。我想使用 K 最近邻。我想识别不同大小和字体的手写字母。

那么,我将准备要训练的图像。第一个问题是。我应该在 (1) 相同尺寸的图片还是 (2) 适合的图片中使用字母?

1)

2)

找到信件怎么样?我应该将它传递为 1(与火车图像大小相同)还是 2(刚好适合字母的矩形)???

"benchmark" MNIST dataset 按照您描述的场景 (1) 对字符进行规范化和居中。如果您只对分类感兴趣,那么您的操作方式可能会有所不同。

如果我没理解错的话,你的第二个问题与 ML 术语中所谓的 "preprocessing" 有关。如果您应用转换将每个原始图像转换为 (1) 或 (2) 类型之一,则称为预处理步骤——无论您选择哪个。无论您对训练集进行何种预处理,完全相同 预处理都必须在应用模型之前对数据进行。

为了简单起见,如果你有一个巨大的数据集,你想拆分成 "training" 和 "testing" 个示例,首先将其转换为 "preprocessed data" 集,然后拆分这个。这样你就可以确保训练和测试使用完全相同的转换参数。