OCR识别步骤
1.图像预处理
(1)图像镜像:mirror_image()
(2)仿射变换:text_line_orientation() 获得文本的旋转方向和角度
vector_angle_to_rigid() 仿射变换旋转角度
affine_trans_image() 将图像进行旋转并显示
(3)灰度反转:invert_image() 背景为暗,字符为亮
2.blob分析
(1)转换为灰度图 :rgb1_to_gray()
(2)转换为二值图: threshold()
(3)断成不同的连通域 :connection()
(4)形状选择:select_shape()
3.
膨胀:dilation_circle()
联合:union1()
形成连通域:connection()
4.
与二值图求交集:intersection()
5.
排序 sort_region ()
6.
读取字符分类器文件:read_ocr_class_mlp()
7.
识别字符:do_ocr_multi_class_mlp()
8.
计算obj数:count_obj()
9.
计算区域中心:area_center()
10.
显示:
for i:=1 to Number by 1
disp_message (WindowHandle, Class[i-1], ‘image’, Row[i-1], Column[i-1], ‘blue’, ‘false’)
endfor
11.
binary_threshold:快速二值化,当图像只有黑白色时,背景为白色,识别部分为黑色时,可用该算子直接提取出黑色要识别的部分。
一. 创建模型 model
- 生成训练文件trf
- 创建分类器
- 训练分类器
- 识别,字符分割,排序,识别
二值化后进行膨胀,将i和j等两个部分的字母膨胀形成一个字母,再用intersection()将膨胀后的图与原图作交集,识别出字符
ocr实战
读入图像,对字符进行选择,并用仿射变换将图像变正。
将字符分割成一个个的小矩形
读入分类器进行识别并显示
ocr助手识别
识别空调遥控的度数(实战)
识别
显示
环形字符识别
获取内外圆直径
识别时背景为亮,字符为暗。