HALCON-从入门到入门-最常用的算子-二值化

1.废话

图像处理中的二值化是一种将灰度图像转换为只有两种可能值(通常是0和255,分别代表黑色和白色)的过程。这个过程在数字图像处理中非常常见,因为它可以简化图像数据,突出图像的主要特征,并降低后续处理的复杂性。

二值化的关键步骤之一是选择一个阈值。这个阈值将用于确定图像中的每个像素是应该被赋予0(黑色)还是255(白色)。有许多方法可以用来确定这个阈值,包括全局阈值(对整个图像使用单一阈值)和局部阈值(根据图像的局部特性为每个像素或区域选择阈值)。

一旦确定了阈值,就可以对图像进行二值化操作了。对于每个像素,将其灰度值与阈值进行比较。如果灰度值大于或等于阈值,则将该像素设置为白色(或255);否则,将其设置为黑色(或0)。

二值化后,可能还需要进行一些后续处理来优化结果。例如,可以使用形态学操作(如腐蚀、膨胀、开操作和闭操作)来消除噪声、连接断裂的线条或断开重叠的线条。此外,还可以进行边缘检测、特征提取等操作来进一步分析图像。

2.实现效果

复制代码
threshold (GrayImage, Region, 128, 255)

halcon的二值化我觉得非常有意思。

因为它将二值化理解成了一个提取区域的一个操作。

在我图像上的 灰度值符合我要求的这些像素我全部提取出来,组成一个区域(region)

上图中这个红色的就是区域。

变量窗口中显示了这个区域的面积(以像素计算),中心点坐标啥的。

这是提取的整个图片上的白色部分,接着提取黑色部分来看看

正常运行,没有什么问题。

相关推荐
京东云开发者几秒前
Claude Code vs Codex 记忆体系深度对比
人工智能
不加辣椒1 小时前
第 4 章 什么是 Harness Engineering
人工智能
桃西西呀1 小时前
上下文窗口都卷到 100 万了,大模型为什么还在为"位置"发愁?
人工智能·llm·ai编程
阿拉斯攀登1 小时前
SpringBoot整合MQTT:后端订阅设备数据、解析传感器报文
人工智能
然我1 小时前
模型不是 Agent:从零实现一个最小 Agent Loop
前端·人工智能·agent
黄油面包1 小时前
Codex 额度三天见底后,我重新做了一周预算
前端·人工智能
AI效率君2 小时前
Deer‑Flow 2.0 + Go‑MCP‑Server(add加法工具)保姆级完整教程
人工智能·agent
阿拉斯攀登2 小时前
SpringCloud微服务MQTT架构:设备消息统一接入、业务分发设计
人工智能
Csvn2 小时前
第 12 章 并行化 Parallelization
人工智能·aigc·agent