欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

halcon小例:ORC识别

发布时间:2023/12/18 编程问答 48 豆豆
生活随笔 收集整理的这篇文章主要介绍了 halcon小例:ORC识别 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

ORC识别

原图

识别后

Halcon代码如下:

*关闭窗口 dev_close_window () *读取图片 read_image (Image, 'C:/Users/Pictures/13_81_bcb4442e5fb68e9.bmp') *通过均值滤波器,平滑图像 mean_image (Image, Img_m1, 3, 3) *通过均值滤波器,再次平滑图像 mean_image (Img_m1, Img_m2, 17, 17) *阈值处理,满足Img_mi>=Img_m2+5的像素点输出 dyn_threshold (Img_m1, Img_m2, Reg_th, 5, 'light') *连接阈值分割后的区域 connection (Reg_th, Reg_con) *根据特征选择连接后的区域(再次精确连接区域),限制宽高,识别出区域 select_shape (Reg_con, Reg_sel, ['height', 'width'], 'and', [50, 15], [70, 45]) *排序区域,从左到右,递增 sort_region (Reg_sel, Reg_sort, 'character', 'true', 'row') *膨胀 dilation_circle (Reg_sort, Reg_dil, 1.5) *反转图像 invert_image (Img_m1, Img_inv) *读取ORC分类器(halcon提供的训练库) read_ocr_class_mlp ('Pharma_0-9A-Z.omc', OCRHandle) *调用ORC分类器,识别字符 do_ocr_multi_class_mlp (Reg_dil, Img_inv, OCRHandle, Class, Confidence) *打开一个以给定的纵横比打开新的图形窗口 dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle) *显示灰度图 disp_image (Image, WindowHandle)*识别每个字符的最小矩形区域 smallest_rectangle1 (Reg_sort, R1, C1, R2, C2) *设置显示的字体 set_display_font (WindowHandle, 14, 'mono', 'true', 'false') *遍历016 for i:= 0 to |R1|-1 by 1 *在指定位置显示指定样式文本disp_message (WindowHandle, Class[i], 'window', R1[i]-20, C1[i], 'black', 'true') endfor *设置矩形区域填充方式 dev_set_draw ('margin') *画矩形 disp_rectangle1 (WindowHandle, R1, C1, R2, C2) *关闭窗口 *dev_close_window () *清理ORC分类器 *clear_ocr_class_mlp (OCRHandle)

相关系列

  • Halcon+MFC条形码识别
  • 一维条形码检测与识别原理

总结

以上是生活随笔为你收集整理的halcon小例:ORC识别的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。