OCR字符识别使用什么算法?
一般的OCR例程是这样的
1.首先检测并提取文本区域。
2.然后我们使用radon hough变换来校正文本。
3.用投影直方图分割单行文字图片。
最后是单行的OCR。
单行OCR主要有两个思路。
首先是需要拆分字符。
分割字符的方法有很多。最常用的方法是使用投影直方图的极值点作为候选分割点,使用分类器+波束搜索来搜索最佳分割点。
找到分割点后,传统的方法是对单个字符进行特征工程+分类器。一般过程是->灰度;二值化->;校正图像->;特征提取(各种方法如pca lbp等。)->;量词(量词一般是SVM·安ANN等等)。
现在CNN(卷积神经网络)可以很大程度上避免特征工程。
第二是不需要拆分字符。
还有一点就是端到端的识别,但前提是你需要大量的标注数据集。这种方法可以在不分割图像的情况下连续输出字符序列。
多标签分类可用于短长度。比如车牌,验证码。在这里,我尝试了车牌的多标签分类。车牌识别中未分割字符的端到端识别。
这是谷歌用来识别街景门牌号的方法。