一般OCR套路是这样的1.先检测和提取Text .接着利用radon hough变换 等方法 进行文本校正。3.通过投影直方图分割出单行的文本的图片。最后是对单行的OCR对单行的OCR主要由两种思想第一种是需要分割字符的。分割字符的方法也比较多,用的最多的是基于投影直方图极值点作为候选分割点并使用分类器+beam search 搜索最佳分割点。搜索到分割点之后对于单个字符,传统的就是特征工程+分类器。 一般流程是 灰度 -> 二值化->矫正图像 -> 提取特征(方法多种多样例如pca lbp 等等) ->分类器(分类器大致有SVM ANN KNN等等 )。现在的 CNN(卷积神经网络)可以很大程度上免去特征工程。第二种是无需分割字符的还有一点就是端到端(end to end)的识别,但前提是你需要大量的标注好的数据集。 这种方法可以不分割图像直接以连续的输出字符序列。对于短长度的可以使用mutli-label classification 。比如像车牌,验证码。 这里我试过一个车牌的多标签分类。 车牌识别中的不分割字符的端到端(End-to-End)识别google做街景门牌号识别就是用的这种方法。