Hlacon 之Image ,Region,XLD
一 读取的3种方式:
read_image( image,'filename') //image 是输出对象,后面是输入文件的路径和名称
读取多图:
1,申明一个数组,分别保存路径
ImagePath:=[]
ImagePath[0]:='D:/1.bmp'
ImagePath[1]:='D:/2.bmp'
ImagePath[2]:='D:/3.bmp'
for i:=0 to 2 by 1
read_image(Image,ImagePath[i])
endfor
2,for 循环
for i:=1 to 3 by 1
read_image(Image,'D:/’+'i'+'.bmp')
endfor
3, 读取目录下所有文件
助手,打开图像,选择路径,插入代码
list_files(输入文件目录地址,选取的要求(files指定选取文件格式,recursive递归,深入所有,derectories选取文件夹,follow_links,max_depth 5...),输出的被选择的文件列表)
选择符合规则的tuple,其中\\.是转义符,等价于'-->'
tuple_regexp_select(文件名字,['\\.(bmp|tif)$','ignore_case忽略大小写'],输出)
fabric文件路径
二 图像变量Region
预处理:
| 消除噪声 | mean_image/ binomial_filter |
| 抑制小斑点或者细线 | median_image |
| 平滑 | smooth_image |
| 保存边缘的平滑 | anisotropic_diffusion |
变量Region:
Region 为某些附和要求性质的像素的子集,或者说一些被选择的图块区域s,region大小不受图像限制,有fill和margin两种表达方式,类似于游程编码,可用于压缩,eg:用a2b3c4代表aabbbcccc
region操作:
选择相应区域
select_shape(regions,output,'select type',..requirements)
计算相应区域的面积,中心坐标:
area_center(regions,area,row,column)
不规则区域的转换:
shape_trans(region,regiontrans,type)

convex hull凸包围(由外向内包围)
outer_circle 外圆(能够包括对象的半径最小的圆形)
inner_circle 内圆
rectangle1 正矩形
rectangle2 最小包围矩形
inner_rectangle1 最大内矩形
三 图型变量XLD(eXtended Line Descriptions)
XLD代表亚像素级别的轮廓或者多边形
threshold_sub_pix(inputimage, output,requirement)
gen_contour_region_xld(inputRegion,output,...)
XLD的选择操作(select_shape_xld/selet_contours_xld):
select_shape_xld(XLD:SelectedXLD:Features,Operation,Min,Max:)
select_contours_xld(Contours:SelectedContours:Feature,Min1,Max1,Min2,Max2:)
计算xld的面积以及中心位置:
area_center_xld(XLD:::Area,row,column,pointOrder)
xld的合并操作:
union_colliner_contours_xld: 合并同一直线的xld
union_cocircular_contours_xld: 合并同圆的xld
union_adjacent_contours_xld: 合并相邻的xld
xld的转换操作与region类似:
shape_trans_xld(XLD:XLDTrans:Type:)
有上面几个类型
Xld的分割操作(segment_contours_xld)
把初始xld分割成直线,直线和圆,直线和椭圆
segment_contours_xld(Contours: ContoursSplit: Mode,SmoothCont, MaxLineDist1, MaxLineDist2:)

Xld 的拟合操作(fit_***_contour_xld) 把不完整的形状拟合完整
fit_line_contour_xld
fit_circle_contour_xld
fit_ellipse_contour_xld
fit_rectangle2_contour_xld
总结:
图像和视频,文件的读取
Region和XLD的初步介绍
注意:
在使用edges_sub_pix提取出来的结果,往往不是完整的圆形,需要用union来整合出完整的圆形。
Hlacon 之Image ,Region,XLD的更多相关文章
- Halcon中缩放Region或XLD的方法研究
在Halcon中,Region和XLD之间可以彼此转换.但这种转换并不是“无损”的,XLD可以是不闭合的,但是Region一定是闭合的.因此,如果将不闭合的XLD转为Region,然后再转回XLD,那 ...
- 如何在Hdevelop加入自己的算子
halcon中允许用户编写自定义函数,同时也可以将此函数保存在其他工程中调用. 以halcon12讲解 创建自定义函数 本地程序函数:创建后仅能在当前工程使用 hdevelop函数文件 ...
- Halcon相关
1.Halcon的自我描述 Program Logic Ø Each program consists of a sequence of HALCON operators Ø The progra ...
- Halcon的数据类型
两大类: 1.图形参数Iconic (image, region, XLD) 2.与控制参数Control (string, integer, real, handle), 在Halcon算子的参数中 ...
- 一个ball例程带你进入 Halcon 世界
* 此例程来自halcon自带例程,请打开 halcon->ctrl+E 打开例程->搜索框中输入ball added by xiejl* ball.hdev: Inspection of ...
- halcon学习笔记——(11)Image,region,xld初步
一 读取的3种方式: 读取单张的图片: read_image( image,'filename') //image 是输出对象,后面是输入文件的路径和名称 读取多图: 1,申明一个数组,分别保存路径 ...
- region、xld有对应的字符串时,将region、xld按照行或列排序的算法实现
用Halcon解码时,如果一张图里面有多个码,它通常可以把这些码都解出来,并且生成对应的解码结果字符串元组(也就是下面的DecodedDataStrings),如果有多个码,那么该元组就有多个元素. ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数016,xld,xld轮廓
<zw版·Halcon-delphi系列原创教程> Halcon分类函数016,xld,xld轮廓 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“ ...
- Halcon中的坐标系特点及XLD的镜像转换
我们知道,Halcon中的坐标系的原点在左上角,而一般二维平面坐标系的原点在左下角.那么Halcon中坐标系和一般的二维坐标系有什么区别呢?我通过下面这个例子来分析. gen_image_const ...
随机推荐
- Android 如何判断指定服务是否在运行中 “Service”
如何判断一个服务是否正在运行中: /** * 判断某个服务是否正在运行的方法 * * @param mContext * @param serviceName 是包名+服务的类名 * @return ...
- HDU5511 : Minimum Cut-Cut
设$d[x]$表示端点位于$x$子树内部的非树边条数,那么有两种情况: $1.$割去的两条树边$(x,fa[x]),(y,fa[y])$中,$x$是$y$的祖先,那么此时需要割去的非树边数量为$d[x ...
- Yii2 数组助手类arrayHelper
数组助手类 ArrayHelper 1.什么是数组助手类 Yii 数组助手类提供了额外的静态方法,让你更高效的处理数组. a.获取值(getValue) class User { public $na ...
- 什么是redis?redis有什么用途?
1. Redis: 1.1. 什么是redis: redis是一个开源(BSD许可)的,内存中的数据结构存储系统 1.2. Redis的用途: 数据库.缓存和消息中间件 1.3. 数据类型: 字符串( ...
- python之函数第一篇
一.为什么用函数: 解决代码重用问题 统一维护 程序的组织结构清晰,可读性强二.定义函数 先定义后使用!! def funcname(arg1,arg2,...): """ ...
- vim查找格式
使用了VIM这么久,却一直无法牢记一些基本的操作指令.今天查找一个关键字时,想不起来怎么查找“下一个”,于是google之并解决,顺便把有用的都贴过来罢. 查找指令:/xxx 往下查找?xxx 往上 ...
- Hibernate(9)_双向n对n
1.概述 ①双向 n-n 关联需要两端都使用集合属性 ②双向n-n关联必须使用连接表 ③集合属性应增加 key 子元素用以映射外键列, 集合元素里还应增加many-to-many子元素关联实体类 ④在 ...
- cto职责
http://www.sohu.com/a/209574647_505825 https://mp.weixin.qq.com/s?src=3×tamp=1513066866& ...
- 开源流媒体服务器SRS学习笔记(1) - 安装、推流、拉流
SRS(Simple RTMP Server) 是国人写的一款非常优秀的开源流媒体服务器软件,可用于直播/录播/视频客服等多种场景,其定位是运营级的互联网直播服务器集群. 一.安装 官网提供了3种安 ...
- 20190131 经验总结:如何从rst文件编译出自己的sqlalchemy的文档
20190131 经验总结:如何编译sqlalchemy的文档 起因 www.sqlalchemy.org官网上不去了,不管是直接上,还是用代理都不行. sqlalchemy属于常用工具,看不到官方的 ...