当前位置: 首页 > news >正文

【机械视觉】Halcon—【八、形态学调整和生成棋盘格】

【机械视觉】Halcon—【八、形态学调整和生成棋盘格】

目录

【机械视觉】Halcon—【八、形态学调整和生成棋盘格】

介绍

操作运用

1. 读取图像

2. 形态学操作

3. 显示结果

4. 保存结果

棋盘格


介绍

在图像处理中,形态学操作是一种基于形状的分析方法,常用于图像的滤波、边缘检测、噪声移除等。在Halcon中,形态学操作可以通过使用形态学滤波器(如膨胀、腐蚀、开运算、闭运算等)来实现。下面将详细介绍如何在Halcon中使用形态学操作来调整灰度图像。

操作运用

1. 读取图像

首先,你需要读取一个灰度图像。可以使用read_image函数来读取图像。

read_image(Image, 'path_to_your_image')

2. 形态学操作

a. 膨胀(Dilation)

膨胀操作可以增加图像中的白色区域,减小黑色区域间的距离。(扩大亮区域,减小暗区域)

dilation_circle(Image, ImageDilated, 5)  // 使用半径为5的圆形结构元素进行膨胀

b. 腐蚀(Erosion)

腐蚀操作会减小图像中的白色区域,增加黑色区域间的距离。(缩小亮区域,扩大暗区域)

erosion_circle(Image, ImageEroded, 5)  // 使用半径为5的圆形结构元素进行腐蚀

c. 开运算(Opening)

开运算是先腐蚀后膨胀,用于去除小对象和小的孔洞。

opening_circle(Image, ImageOpened, 5)  // 使用半径为5的圆形结构元素进行开运算

d. 闭运算(Closing)

闭运算是先膨胀后腐蚀,用于填充小的孔洞和连接邻近的对象。

closing_circle(Image, ImageClosed, 5)  // 使用半径为5的圆形结构元素进行闭运算
3. 显示结果

使用dev_display函数来显示处理后的图像。

dev_display(ImageDilated)  // 显示膨胀后的图像
dev_display(ImageEroded)   // 显示腐蚀后的图像
dev_display(ImageOpened)   // 显示开运算后的图像
dev_display(ImageClosed)   // 显示闭运算后的图像
4. 保存结果

如果你想保存处理后的图像,可以使用write_image函数。

write_image(ImageDilated, 'png', 0, 'path_to_save_dilated_image')  // 保存膨胀后的图像为PNG格式

以上就是在Halcon中进行灰度形态学调整的基本步骤。你可以根据具体需求选择合适的形态学操作,并调整结构元素的大小以获得最佳效果。

棋盘格

* 获取系统参数的算子,使用neighborhood 返回的是系统支持的领域关系
* 4邻域: 只考虑上下左右相连的像素
* 5邻域: 考虑上下左右相连以及四个角的像素
get_system ('neighborhood', Information)dev_set_color ('white')
* 绘制一个64像素*64像素的棋盘格,在511*511区域里面绘制
*gen_checker_region (RegionChecker, 511, 511, 64, 64)
gen_checker_region (RegionChecker1, 511, 511, 15, 15)connection (RegionChecker1, ConnectedRegions)set_system ('neighborhood',4) // 设置4邻域dev_clear_window ()
dev_display (ConnectedRegions)

http://www.lqws.cn/news/190549.html

相关文章:

  • MDP的 Commands模块
  • MS31912TEA 多通道半桥驱动器 氛围灯 照明灯 示宽灯 转向灯驱动 后视镜方向调节 可替代DRV8912
  • 在 Caliper 中执行不同合约的方法
  • 应用分享 | 精准生成和时序控制!AWG在确定性三量子比特纠缠光子源中的应用
  • Java学习——正则表达式
  • 09.三数之和
  • vm虚拟机添加虚拟机无反应,获取所有权
  • 在WPF项目中集成Python:Python.NET深度实战指南
  • 无人机定位系统技术设计与难点突破!
  • 接口限频算法:漏桶算法、令牌桶算法、滑动窗口算法
  • 智能生成完整 Java 后端架构,告别手动编写 ControllerServiceDao
  • 如何实现安卓端与苹果端互通的多种方案
  • 好子集的数目概念及表达形式
  • 每次clone都会有:Enter passphrase for key ‘/Users/xxx/.ssh/id_rsa‘:
  • [蓝桥杯]迷宫与陷阱
  • 排序算法总结(C++)
  • ansible和saltstack安装和简单操作
  • Python训练营打卡DAY46
  • EtherNet/IP转DeviceNet协议网关详解
  • 悲观锁和乐观锁
  • 命令行以TLS/SSL显式加密方式访问FTP服务器
  • 【Linux】ps 命令详解及使用示例:查看当前运行进程状态
  • Linux配置yum 时间同步服务 关闭防火墙 关闭ESlinux
  • 《C语言·源初法典》---C语言基础(上)
  • python fbx sdk
  • C/C++ 中附加包含目录、附加库目录与附加依赖项详解
  • placeholder不显示and模板字符串无效
  • leetcode sql50题
  • clickhouse 学习总结
  • Charles 全流程指南:安装、设置、抓包与注意事项