halcon domain和region总结

1.domain是什么

在halcon中,ROI(Region Of Interest )被称为图像的域(domain) (参考《solution_guide_i.pdf》)。这个术语来自数学中的定义域 ,而图像就是函数 ,本函数负责将坐标映射到像素值,即f(x) = gray 这样子(=。=),那么这个domain就是x的范围,即定义了图像中感兴趣的部分区域(这样理解了吧)。

将region和图像结合的操作符是reduce_domain,即将原始图中定义域包含的部分保留下来。

2.domain操作

原图像为:printer_chip/printer_chip_01

2.1 get_domain

对原始图像进行操作,返回的domain(即定义域)是整幅图像:

bash 复制代码
read_image (Image, 'printer_chip/printer_chip_01')
get_domain (Image, Domain)

可以看到,此时的domain的类型为region:

2.2 reduce_domain

即将图像缩减到给定的定义域 中,这里创建一个ROI感兴趣区,然后将图像定义域缩减到感兴趣区内:

bash 复制代码
gen_rectangle1 (ROI_0, 372.795, 866.854, 763.002, 1020.81)
reduce_domain (Image, ROI_0, ImageReduced)

可以看到ImageReduced还是图像类型,大小和原始图像也一样,且能看到这个图像中包含了Region:

2.3 complement

求ROI即Region的补集,这个在某些情况下还是挺有用的:

bash 复制代码
complement (ROI_0, RegionComplement)

2.4 crop_domain

裁切图像,注意此处的图像大小变为了domain定义的最小外接矩形:

bash 复制代码
crop_domain (ImageReduced, ImagePart)

2.5 change_domain

修改图像的定义域,注意不要超出图像范围。

下面代码中ImageReduced已经是之前定义域的图像,可直接在此基础上直接修改定义域而不需要访问原图像。

bash 复制代码
gen_circle (ROI_0, 620.11, 459.981, 189.338)
change_domain (ImageReduced, ROI_0, ImageNew)

2.6 full_domain

扩展当前定义域到最大范围,不需要多解释。

bash 复制代码
full_domain (ImageNew,ImageFull)
get_domain (ExpandedImage, Domain1)

2.7 expand_domain_gray

扩展定义域的范围,且将边界像素的灰度值复制到域的外部。HALCON中的所有滤波器根据滤波器宽度使用域外像素的灰度值。这可能会在域的边界区域产生不良的副作用。例如,如果图像的前景(域)和背景在亮度上有很大差异,滤波器操作的结果可能会导致域的边界出现不希望的变暗或变亮。

bash 复制代码
expand_domain_gray (ImageReduced, ExpandedImage, 200)

2.8 difference

计算两个Region的不同,只保留交集

3.Region

实际上,Domain定义的区域就是Region,halcon中没有类型Domain,只有Region,Domain只在接口上和数学定义上出现。比如上面的ROI定义,通过get_domain后拿到的就是region。

3.1 threshold

分割图像即可得到Region,下面的操作中,ImageReduced2是只保留分割后Region的图像。

bash 复制代码
threshold (Image, Region, 128, 255)
reduce_domain (Image, Region, ImageReduced2)

3.2 get_region_points

这个接口很有用,可以拿到region中定义的坐标序列,在某些对像素进行批量操作时很好用。

bash 复制代码
get_region_points (Region, Rows, Columns)
相关推荐
开开心心就好2 分钟前
办公软件卸载不干净?专用工具一键清残留
java·前端·人工智能·智能手机·kafka·excel·memcache
机核研创社3 分钟前
接橡筋机做内裤腰头明橡筋:两段式工艺链的设备分工与参数窗口拆解
人工智能·自动化
海宇数据13 分钟前
零信任架构实战:基于海宇活体识别V步骤1构建自动化考前活体认证网关
运维·人工智能·架构·自动化
Duckdblab13 分钟前
我用 Cloudflare Worker 搭了个 AI 网关,白嫖 Agnes + DeepSeek 双模型,还能给 Hermes 用
人工智能
bullkingluo14 分钟前
从零到一搭建企业级智能问答系统:Ch12 · 结构化输出与工具调用
人工智能·架构·llm
桃西西呀16 分钟前
LangChain 之五:智能体与工具
人工智能·langchain·llm
bullkingluo17 分钟前
从零到一搭建企业级智能问答系统:Ch11 ·大模型调参与效果评测
人工智能·架构·llm
模拟器连接器曾工21 分钟前
一进多出M12分线盒4口8口12口可选 PNP和NPN通用传感器集线器
网络·人工智能·m12分线盒·npn通用传感器集线器·pnp通用传感器集线器
回眸&啤酒鸭22 分钟前
GLM 5.3 Flash 批量处理实战指南
大数据·人工智能
羲云24 分钟前
用 AceData Studio 做 AI 短片:从分镜、首帧到参考图编辑
人工智能