Halcon顶帽运算与底帽运算的应用

Halcon顶帽运算与底帽运算的应用

文章目录

正如上文所说的,顶帽运算返回的像素部分是尺寸比结构元素小的,并且比较亮的局部小区域;底帽运算返回的像素部分是尺寸比结构元素小的,并且比较暗的局部小区域。因此,根据这些特性可以得出,顶帽运算与底帽运算适合一些前景目标比较小或者背景面积比较大的,需要根据灰度进行分割的应用场景。

1. 提取小的物件

因为顶帽运算与底帽运算都是提取比结构元素小的局部区域,因此对于一些暗背景的、目标尺寸又比较小的目标检测场景,可以通过顶帽操作,使用比较大的结构元素来提取目标。底帽运算与

顶帽运算常用于提取图中较亮的小区域,但也适用于大面积的背景的提取。

2. 校正非均匀光照

对于一些背景光照不均匀的情况,如果背景比较大,检测物体比较小,可以使用大的结构元素进行顶帽或者底帽操作,以提取物体背景,并将背景光照变得均匀。图(a)所示为原始的灰度图像,图(b)为经底帽运算得到的较暗的目标区域,图(c)将底帽运算的结果从原图中提取出来,去除了光照不均匀的背景。

图中的底帽运算处理代码如下:

bash 复制代码
*读取一幅光照不均匀的亮背景图像,这里选取的是一幅彩色图像
read_image (Image,'data/shapes')
*变换之前转为灰度图像
rgbl_to_gray (Image, GrayImage)
*将图像通过阈值处理转化为二值化图像
threshold (GrayImage, Regions, 145, 255)
*创建一个结构元素,这里创建的是一个圆形
gen_circle(StructElement,10,10,100)
*清空窗口便于显示结果
dev_clear_window ()
*进行底帽操作,提取出较暗区域
bottom_hat (Regions, StructElement, RegionBottomHat)
*将较暗区域从原图中提取出来
reduce_domain (Image, RegionBottomHat, ImageReduced)
dev_clear_window ()
dev_display (ImageReduced)

在对图像进行阈值处理时需注意,由于使用底帽运算提取的是比较暗的区域,因此这里二值化操作选取的是比较亮的背景区域。圆形结构元素的坐标不受影响,但其半径应根据暗的前景目标进行推算,使其直径至少要能够覆盖待检测的较暗目标。

通过底帽运算将较暗区域从原图中提取出来以后,可以看到不均匀的背景已被去除。

总体来说,顶帽运算适合在较暗的背景下提取比较小且比较亮的前景目标,而底帽运算则相反,

适合在较亮的背景上提取出较暗的目标。两种方法提取的目标都需要小于结构元素的尺寸。

相关推荐
可触的未来,发芽的智生14 分钟前
新奇特:黑猫警长的纳米世界,忆阻器与神经网络的智慧
javascript·人工智能·python·神经网络·架构
WWZZ20251 小时前
快速上手大模型:机器学习2(一元线性回归、代价函数、梯度下降法)
人工智能·算法·机器学习·计算机视觉·机器人·大模型·slam
AKAMAI1 小时前
数据孤岛破局之战 :跨业务分析的难题攻坚
运维·人工智能·云计算
Chicheng_MA1 小时前
算能 CV184 智能相机整体方案介绍
人工智能·数码相机·算能
Element_南笙1 小时前
吴恩达新课程:Agentic AI(笔记2)
数据库·人工智能·笔记·python·深度学习·ui·自然语言处理
倔强青铜三1 小时前
苦练Python第69天:subprocess模块从入门到上瘾,手把手教你驯服系统命令!
人工智能·python·面试
Antonio9151 小时前
【图像处理】rgb和srgb
图像处理·人工智能·数码相机
倔强青铜三1 小时前
苦练 Python 第 68 天:并发狂飙!concurrent 模块让你 CPU 原地起飞
人工智能·python·面试
星期天要睡觉2 小时前
深度学习——循环神经网络(RNN)实战项目:基于PyTorch的文本情感分析
人工智能·python·rnn·深度学习·神经网络
2401_858869802 小时前
目标检测2
人工智能·目标检测·计算机视觉