Halcon ORC字符识别

news2024/9/23 9:25:41

OCR(Optical Character Recognition,光学字符识别)是通过使用OCR工具实现的。Halcon提供了一些用于进行字符识别的函数和工具,可以帮助用户实现文本的自动识别和提取。

read_ocr_class_mlp:用于读取一个经过训练好的OCR多类别MLP(Multi-Layer Perceptron,多层感知器)分类器。
do_ocr_multi_class_mlp:用于在给定的图像上执行基于MLP的多类别OCR,并返回识别的类别和置信度。

dev_close_window ()
read_image (Image, 'D:/Halcon/images/PlugGauge.jpg')
get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width/5, Height/6, 'black', WindowHandle)
dev_display (Image)
* 转成灰度图
rgb1_to_gray (Image, GrayImage)
* 制作ROI
gen_rectangle1 (ROI_0, 1645.88, 1336.74, 1800.1, 2192.3)
gen_rectangle1 (ROI_1, 2340.5, 958.469, 2477.66, 1050.61)
* 合并区域
union2 (ROI_0, ROI_1, ROI_1)
gen_rectangle1 (ROI_2, 3143.16, 1670.06, 3286.34, 1836.29)
union2 (ROI_1, ROI_2, RegionUnion)
* 裁剪图像
reduce_domain (GrayImage, RegionUnion, ImageReduced)

* 均值平滑
mean_image (ImageReduced, ImageMean, 150, 150)
* 局部阈值
dyn_threshold (GrayImage, ImageMean, RegionDynThresh, 30, 'dark')
* 连通性
connection (RegionDynThresh, ConnectedRegions)
* 开运算(去除杂斑)
opening_circle (ConnectedRegions, RegionOpening, 2.5)
connection (RegionOpening, ConnectedRegions1)
* 筛选区域
select_shape (ConnectedRegions1, SelectedRegions, 'area', 'and', 230, 99999)
select_shape (ConnectedRegions1, SelectedRegions, 'height', 'and', 30, 99999)

union1 (SelectedRegions, RegionUnion1)
* 填充图像中的形状
fill_up_shape (RegionUnion1, RegionFillUp, 'area', 1, 100)
* 膨胀
dilation_circle (RegionFillUp, RegionDilation, 5)
connection (RegionDilation, ConnectedRegions2)
* 交集
intersection (ConnectedRegions2, RegionFillUp, RegionIntersection)
* 对区域进行排序
sort_region (RegionIntersection, SortedRegions, 'character', 'true', 'row')

* 字符进行识别,从文件中读取分类器
* 参数一:是指定的已训练好的OCR多类别MLP分类器文件。
* 参数二:存储所读取分类器的句柄。
read_ocr_class_mlp ('Industrial_0-9A-Z_Rej.omc', OCRHandle)
* 使用分类器对字符进行提取
* 参数一:排序完成的区域
* 参数二:灰度图像
* 参数三:分类器的句柄
* 参数四:输出参数,用于存储识别的类别
* 参数五:识别结果的置信度
do_ocr_multi_class_mlp (SortedRegions, GrayImage, OCRHandle, Class, Confidence)

dev_set_color('red')
dev_display (Image)
dev_display (SortedRegions)

set_display_font (WindowHandle, 20, 'mono', 'true', 'false')
* 求最小外接矩形,会返回矩形的左上角坐标和右下角坐标
* 参数一:已排序的区域
* 参数二、三:最小外接矩形的一个角的行和列坐标
* 参数四、五:最小外接矩形的另一个角的行和列坐标
smallest_rectangle1 (SortedRegions, Row1, Column1, Row2, Column2)

disp_message (WindowHandle, Class, 'image', Row2, Column2, 'black', 'false')

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1534673.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux系统资源管理

Linux系统资源命令 在Linux中查看系统资源常用命令有哪些 在Linux中,系统资源是指计算机硬件、软件和网络设备等可以利用的一切物质和能量。Linux中的系统资源包括: CPU(中央处理器):用于处理计算机中的指令和数据的…

Springboot+Vue前后端分离的在线图书商城(书城)系统

项目介绍 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本图书商城管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据…

这个简单的生活方式,为你带来满满的幸福感

在今天文章的开头,我想请你思考一个问题:影响幸福感的最大因素是什么? 不妨先想一想,再往下拉,继续阅读。 可能不少朋友的回答,会是财富、事业、理想、生活环境、社会地位…… 这些因素当然对幸福感都非常重…

MO尺度(大气边界层)

在大气表面层( atmospheric surface layer)中,MO参数是用来决定流动是中性或者非中性的一个重要参数。其定义是 z / L z/L z/L,其中 L L L为Obukhov长度,其含义是浮力产生的湍动能和剪切产生的湍动能之比(Hj h AIP 2023)(Monin IAS,1954),具体…

力扣200. 岛屿数量(DFS)

Problem: 200. 岛屿数量 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.遍历矩阵grid的每一个位置;若某个位置为’1’则将用于记录岛屿数量的变量count,并调用dfs函数; 2.dfs函数实现: 2.1.若当前grid位置为’0’…

3.18作业

一、网络属性(getsockopt、setsockopt) 1> 由于在网络通信过程中,套接字是服务于各个层的,但是,每一层中对套接字选项都有一定的权限控制,例如,应用层中对端口号快速重用的限制 2> 如何…

如何在edge上安装拓展weTab

1.点解管理拓展 2.点击获取拓展 3.搜索框输入"wetab"并搜索 4.点击获取按钮 5.点击之后跳出弹窗,点击"添加拓展" 6.回到拓展页面,找到wetab拓展,点击右侧启动拓展 7.打开新的界面,wetab已经启动 8.自定义界面 1. 右键图标可以进行删除操作 2.左下角有个设…

MT2492 16V输入 600KHz 2A DCDC同步降压转换器 航天民芯一级代理

深圳市润泽芯电子有限公司为航天民芯一级代理 描述 MT2492是一款完全集成的高效率产品2A同步整流降压变换器。MT2492在一段时间内高效运行宽输出电流负载范围。该设备提供两种工作模式,即PWM控制和PFM模式切换控制在更宽的工作范围内实现高效率加载。MT2492需要…

IEEE Transactions on Medical Imaging(TMI)论文推荐:2024年01月(2)

Structural Priors Guided Network for the Corneal Endothelial Cell Segmentation 摘要: 角膜内皮显微镜图像中模糊的细胞边界分割具有挑战性,影响临床参数估计的准确性。现有的深度学习方法仅考虑像素分类精度,缺乏对细胞结构知识的利用。因此&#x…

冲刺跑转长跑过程中,新茶饮品牌如何觅增量?

如今,新茶饮行业的发展日趋成熟,并通过资本动作、市场扩张等释放出相关信号。 比如,在资本动作上,IPO已成为新茶饮品牌发展的重要议程。可以看到,截至2023年2月,正在推进港交所IPO的新茶饮企业就有茶百道、…

Spring6--基础概念

1. 概述 1.1. Spring是什么 Spring 是一套广泛应用于 Java 企业级应用开发领域的轻量级开源框架,由 Rod Johnson 创立,旨在显著降低 Java 企业应用的复杂性,缩短开发周期,并提升开发效率。Spring 不仅适用于服务器端开发&#x…

广西开放大学的电大搜题:为学子提供便捷高效的学习辅助

尊敬的读者朋友们,您了解过广西开放大学的电大搜题吗?作为一名现代学者,我有幸为您揭示这个令广大学子受益匪浅的学习利器。电大搜题是广西开放大学为学子们提供的一项便捷高效的学习辅助服务,旨在帮助学子们更好地应对学习难题&a…

PCIe基础:Root Complex 、Host Bridge、PCIe Bridge、Switch基本概念

PCIe基本概念理解 1. 南北桥体系架构2. PCIe体系结构3. Root Complex(RC)4. PCIe总线(Bus)5. PCIe Device5.1 BDF(Bus Number, Device Number, Function Number)5.2 RCIE(Root Complex Integrat…

不要再这样做计划了

不论这一年大家过得怎么样,新的一年,都是一个新的起点。所有的不快、遗憾和失望,都让它们留在2023年,让我们轻装上阵,迎接全新的开始。 我想,应该许多朋友会在年初,制定自己关于新一年的年度计划…

3.1k stars的特斯拉数据伴侣神器

微信公众号:[开源日记],分享10kStart的优质开源项目。 TeslaMate 适用于你的 Tesla 的功能强大的自托管数据记录器。 用 Elixir 编写数据存储在 Postgres 数据库使用 Grafana 进行可视化和数据分析车辆数据发布到本地 MQTT Broker GitHub数据 3.1k stars121 watching458 forks…

传输介质介绍,数据链路层,MAC地址的构成和作用

简单网络 1.网卡 2.物理介质 3.协议栈 双绞线: UTP 非屏蔽双绞线 屏蔽式双绞线 水晶头 串口电缆:连接运营商 广域网一个用户接入到广域网,早期来讲,光纤 物理层:本质是通信,数据传输,介质产…

Docker之大鲸鱼

什么是Docker? Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 Docker常见命令? docker run -d \--name mys…

在conda下的sklearn库安装

比较坑的是它这个库在conda下不叫这个名字,所以直接conda install sklearn是不行的,输入下面的指令就能直接安装啦。 conda install scikit-learn

Kubernetes集群搭建 kubernetes集群安装

Kubeadm kubeadm 是 Kubernetes 社区提供的集群构建工具,它能够以最佳实践的方式部署一个最小化的可用 Kubernetes 集群。 但是 kubeadm 在设计上并未安装网络解决方案,所以需要用户自行安装第三方符合 CNI 的网络解决方案,如 flanal&#…

【消息队列开发】 实现Router类——交换机的转发规则

文章目录 🍃前言🍀判断routingKey是否合法🎄判断bindingKey是否合法🌴判断bindingKey 与 routingKey 是否匹配🌲测试匹配方法⭕总结 🍃前言 本次开发任务 实现Router类, 使用这个类, 来实现交…