HALCON示例:BOTTLE.HDEV 光学字符识别(分割OCR)
*
* bottle.hdev: Segment and read numbers on a beer bottle 分割读取啤酒瓶上的数字
*
* Step 0: Preparations
* Specify the name of the font to use for reading the date on the bottle.
* It is easiest to use the pre-trained font Industrial_0-9_NoRej. If you
* have run the program bottlet.hdev in this directory, you can activate
* the second line to use the font trained with this program.
*这个示例指定读取啤酒瓶上数字字体的名称。
*用事先训练好的Industrial_0-9_NoRej很容易识别字体。
*如果在同一目录下运行了bottlet.hdev示例,可以在这个程序中激活第二行使用。
* FontName := 'Industrial_0-9_NoRej'
FontName := 'bottle'
*
* Step 1: Segmentation
dev_update_window ('off')
read_image (Bottle, 'bottle2')
get_image_size (Bottle, Width, Height)
dev_close_window ()
dev_open_window (0, 0, 2 * Width, 2 * Height, 'black', WindowID)
set_display_font (WindowID, 16, 'mono', 'true', 'false')
dev_display (Bottle)
disp_continue_message (WindowID, 'black', 'true')
stop ()
*
* Create Automatic Text Reader and set some parameters
*OCR字符识别————Segmentation分割 创建文本读取模型
create_text_model_reader ('auto', FontName, TextModel)
* The printed date has a significantly higher stroke width 打印日期具有显著更高的笔划宽度。
*OCR字符识别————Segmentation分割 设置文本模型的参数
set_text_model_param (TextModel, 'min_stroke_width', 5)
* The "best before" date has a particular and known structure 读不懂
*OCR字符识别————Segmentation分割 设置文本模型的参数
set_text_model_param (TextModel, 'text_line_structure', '2 2 2')
*
* Read the "best before" date
*OCR字符识别————Segmentation分割 利用TextModel指定的文本模型对图像中的文本进行分割,并返回分割结果
find_text (Bottle, TextModel, TextResultID)
*
* Display the segmentation results
*OCR字符识别————Segmentation分割 获取由算子find_text返回的文本
get_text_object (Characters, TextResultID, 'all_lines')
dev_display (Bottle)
dev_display (Characters)
stop ()
* Display the reading results
*OCR字符识别————Segmentation分割
*get_text_result( : : TextResultID, ResultName : ResultValue)
*获取由算子find_text返回的文本结果的控制结果,TextResultID输入的文本结果,Classes输出结果
get_text_result (TextResultID, 'class', Classes)
area_center (Characters, Area, Row, Column)
for Index := 0 to |Classes| - 1 by 1
disp_message (WindowID, Classes[Index], 'image', 80, Column[Index] - 3, 'green', 'false')
endfor
*
* Free memory
*清除由句柄TextResultID指定的文本结果
clear_text_result (TextResultID)
*清除由句柄TextModel指定的文本模型
clear_text_model (TextModel)
HALCON示例:BOTTLE.HDEV 光学字符识别(分割OCR)的更多相关文章
- Halcon示例:bottlet.hdev 光学字符识别(创建OCR)
* * Training of the OCR* The font is used in "bottle.hdev"* * * Step 0: PreparationsFontNa ...
- 【OCR技术系列一】光学字符识别技术介绍
注:此篇内容主要是综合整理了光学字符识别 和OCR技术系列之一]字符识别技术总览,详情见文末参考文献 什么是 OCR? OCR(Optical Character Recognition,光学字符识别 ...
- Tesseract:简单的Java光学字符识别
1.1 介绍 开发具有一定价值的符号是人类特有的特征.对于人们来说识别这些符号和理解图片上的文字是非常正常的事情.与计算机那样去抓取文字不同,我们完全是基于视觉的本能去阅读它们. 另一方面,计算机的工 ...
- 非黑即白--谷歌OCR光学字符识别
# coding=utf-8 #非黑即白--谷歌OCR光学字符识别 # 颜色的世界里,非黑即白.computer表示深信不疑. # 今天研究一下OCR光学识别庞大领域中的众多分支里的一个开源项目的一个 ...
- OCR技术(光学字符识别)
什么是OCR? OCR英文全称是optical character recognition,中文叫光学字符识别.它是利用光学技术和计算机技术把印在或者写在纸上的 文字读取出来,并转换成一种计算机能够接 ...
- Ocrad.js – JS 实现 OCR 光学字符识别
Ocrad.js 相当于是 Ocrad 项目的纯 JavaScript 版本,使用 Emscripten 自动转换.这是一个简单的 OCR (光学字符识别)程序,可以扫描图像中的文字回文本. 不像 G ...
- 6 个优秀的开源 OCR 光学字符识别工具
转自:http://sigvc.org/bbs/thread-870-1-1.html 纸张在许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显 ...
- 光学字符识别OCR
1.功能: 光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程 2.典型应用: 名片扫描 3 ...
- 开源OCR光学字符识别
纸张在 许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显着的转变.在计算机软件的帮助 下,包含大量重要管理数据和资讯的文档可以更方便的以电子形 ...
随机推荐
- GANs的回顾
GANs第一篇比较熟悉,不介绍.看看变种. 1) LAPGANs:金字塔,逐步优化生成图片(Deep Generative Image Models using Lapalacian Pyramid ...
- CSS样式补充第二天
#p1{/* border-width: 1px;*/ /*边框实线*/ /*border-style: solid;*/ /*边框虚线*/ ...
- if 循环
age_of_princal = 56guess_age = int(input(">>:")) if guess_age == age_of_princal: pri ...
- Dynamics 365 CRM Free up storage 清理Dynamics 365 CRM的空间
Dynamics 365 CRM 的空间是要买的. 但是很多情况下用户可以去清理CRM从而达到给空间减重的方法 两大使用DB空间大的功能 1. Audit log 审计记录 审计记录是用来记录各个fi ...
- Docker概念(二)
说明: 一直想学Docker,容器.镜像.仓库什么的好难理解就没怎么看了,最近下定决心好好看看,google.Baidu发现这篇好文章,看完差不多有个大概的理解.里面的内容基本上来以下 ...
- 2.1 Visio画图后,粘贴到word白边太宽
如下图所示:Visio2007画图后,图白边距很宽. 右击打开>将鼠标移动到画布边缘,按下Ctrl后鼠标变为双箭头,然后拖拽方格画布,拖拽合适的宽度保存即可.
- PHP批量保存图片到服务器再上传阿里云
/* * 批量传输产品主图到阿里云 */ public function transferImage(){ $num = 50; $p = isset($this->request->ge ...
- hbase hbck命令
hbase hbck 只做检查 hbase hbck -fixMeta 根据region目录中的.regioninfo,生成meta表` hbase hbck -fixAssignments 把met ...
- selenium基础用法(爬虫)
初识selenium selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏 ...
- Ubuntu 16.04 安装 JDK 1.8
系统环境 Ubuntu 16.04; JDK 1.8 配置安装 1.首先从oracle下载jdk 1.8,我下载的版本是jdk-8u131-linux-x64.tar.gz,运行tar zvxf jd ...