Blob分析之bottle.hdev
* 分割读取啤酒瓶子上的数字
* bottle.hdev: Segment and read numbers on a beer bottle
* 第0步
* Step 0: Preparations
*定义字体名称,用来读取瓶子上的数据/或者可以这么理解,定义瓶子上数据的字体
* Specify the name of the font to use for reading the date on the bottle.
*用训练好的0-9通用字体是最简单的。如果已经运行过这个程序,你可以第二行名称,是用这个项目训练的字体
* It is easiest to use the pre-trained font Universal_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.
FontName := 'Universal_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)
*显示'Press F5 to continiue'这个信息
disp_continue_message (WindowID, 'black', 'true')
stop ()
* 创建自动文字读取器以及设置一些参数
* Create Automatic Text Reader and set some parameters
*创建文字读取器
create_text_model_reader ('auto', FontName, TextModel)
* The printed date has a significantly higher stroke width
*设置文字读取参数的最小宽度
set_text_model_param (TextModel, 'min_stroke_width', 6)
*最佳日期(表示多级之前引用是最佳的)有一个特殊和已知的结构
* The "best before" date has a particular and known structure
*设置文字组成格式,'2 2 2'便是由三段数字构成,中间由空白或者分隔符分开 '19'表示没有分隔符或者空白
set_text_model_param (TextModel, 'text_line_structure', '2 2 2')
* 读取最佳日期
* Read the "best before" date
find_text (Bottle, TextModel, TextResultID)
* 获取最佳日期文字并显示
* Display the segmentation results
get_text_object (Characters, TextResultID, 'all_lines')
*显示瓶子图像
dev_display (Bottle)
*显示读取到的字符
dev_display (Characters)
stop ()
*显示读取到的结果
* Display the reading results
*获取文字结果
get_text_result (TextResultID, 'class', Classes)
*求区域面积和中心坐标
area_center (Characters, Area, Row, Column)
*显示读取到的文字信息
disp_message (WindowID, Classes, 'image', 80, Column - 3, 'green', 'false')
* 释放内存
* Free memory
*清楚文字结果
clear_text_result (TextResultID)
*清楚Text模型
clear_text_model (TextModel)
Blob分析之bottle.hdev的更多相关文章
- Blob分析之board.hdev
* board.hdev: Detection of missing solder* 获取当前系统参数get_system ('clip_region', Information)*设置当前系统参数s ...
- Blob分析之ball_seq.hdev
* ball_seq.hdev: Inspection of Ball Bonding * 关闭更新dev_update_off ()*图像集合ImageNames := 'die/' + ['die ...
- Blob分析之 ball.hdev
* ball.hdev: Inspection of Ball Bonding * 关闭窗体更新 dev_update_window ('off')*关闭窗体dev_close_window ()*打 ...
- 常用机器视觉工具----图像分析工具(blob分析)
http://blog.sina.com.cn/s/blog_67cc4eb70100ivnt.html Blob分析:Blob分析目的在于对图像中的2-D形状进行检测和分析,得到诸如目标位置.形状. ...
- opencv 在工业中的应用:blob分析
在工业中经常要检测一副图像中物体的数量,位置,大小,面积等信息,这就要用到BLOB分析,我用OPENCV做了个BLOB分析的DEMO. (1)打开一幅图像 (2)进行参数设置,设定二值化阙值,并选择是 ...
- Blob分析--粘连颗粒检测 基于距离变换的分水岭区域分割 盆地与原连通域求交集
文章转自微信公众号:机器视觉那些事 *******************************************************************公众号:机器视觉那些事儿*** ...
- HALCON示例:BOTTLE.HDEV 光学字符识别(分割OCR)
* * bottle.hdev: Segment and read numbers on a beer bottle 分割读取啤酒瓶上的数字* * Step 0: Preparations* Spec ...
- Halcon 笔记2 Blob分析
1. 数组操作 2. 可视化-更新窗口 (1)单步模式-总是:则可以自动显示图像: (2)单步模式-从不:需要调用显示函数才能显示图像. (3)单步模式-清空显示:将原图清除,再显示新图 3. 图像处 ...
- Halcon blob分析基本处理步骤
Halcon,blob分析 应用场景,二值化后的灰度图像对比度清晰 基本处理流程 1 读取图片 read_image(变量名,'路径') //halcon字符串使用单引号'' 2 预处理 2.1 RO ...
随机推荐
- 「MoreThanJava」Day 3:构建程序逻辑的方法
「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...
- 移动端1px像素解决方式,从1px像素问题剖析像素及viewport
在移动端web开发过程中,如果你对边框设置border:1px,会发现,边框在某些手机机型上面显示的1px比实际感觉会变粗,这也就是1像素问题.如下图是对桌面浏览器和移动端border设置1px的比较 ...
- P2607[ZJOI2008] 骑士 题解
题目 Z 国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬. 最近发生了一件可怕的事情,邪恶的 Y 国发动了一场针对 Z 国的侵略战争.战火绵延五 ...
- POJ2362贪心
题意:我们的化学生物学家发明了一种新的叫stripies非常神奇的生命.如果一个质量为m1和m2的stripies相撞,生成的stripies体重是2*sqrt(m1*m2) 现在,科学家们想知道,如 ...
- Vue中computed的本质及与methods的区别
一.computed的本质? computed为什么不像methods一样加小括号使用? 正常使用computed方式 运行结果 至于为什么computed为什么不像methods一样使用小括号调用, ...
- docker入门、LXC、windows container 和 Hyper知识基础、实用情况
虚拟机与容器 很明显可以看出两者在操作系统级别上的隔离和进程上的隔离的区别,VM因为隔离级别更高明显更重. linux容器主要技术特点: 文件系统隔离:每个容器都有自己的root文件系统 进程隔离:每 ...
- Scala 基础(二):sbt介绍与构建Scala项目
一.sbt简介 sbt是类似ANT.MAVEN的构建工具,全称为Simple build tool,是Scala事实上的标准构建工具. 主要特性: 原生支持编译Scala代码和与诸多Scala测试框架 ...
- 数据可视化之powerBI基础(十八)Power BI度量值的格式如何修改?这里有三种方式
https://zhuanlan.zhihu.com/p/99818030 在知识星球遇到的问题中,有不少朋友问如何修改数值型度量值的格式,比如,新建的度量值如何显示为百分比或者千分位等等,这篇文章 ...
- Kafka常用指令
工作中经常会用到的指令 # 查询topic为test的partition数量 ./kafka-topics.sh --zookeeper localhost:2181/kafka --topic ...
- Spring Boot Redis 实现分布式锁,真香!!
之前看很多人手写分布式锁,其实 Spring Boot 现在已经做的足够好了,开箱即用,支持主流的 Redis.Zookeeper 中间件,另外还支持 JDBC. 本篇栈长以 Redis 为例(这也是 ...