河北省城乡住房和建设厅网站,七牛云cdn加速wordpress,上上上海网站设计,知识付费商城源码Halcon顶帽运算与底帽运算的应用 文章目录 Halcon顶帽运算与底帽运算的应用1. 提取小的物件2. 校正非均匀光照 正如上文所说的#xff0c;顶帽运算返回的像素部分是尺寸比结构元素小的#xff0c;并且比较亮的局部小区域#xff1b;底帽运算返回的像素部分是尺寸比结构元素小…Halcon顶帽运算与底帽运算的应用 文章目录 Halcon顶帽运算与底帽运算的应用1. 提取小的物件2. 校正非均匀光照 正如上文所说的顶帽运算返回的像素部分是尺寸比结构元素小的并且比较亮的局部小区域底帽运算返回的像素部分是尺寸比结构元素小的并且比较暗的局部小区域。因此根据这些特性可以得出顶帽运算与底帽运算适合一些前景目标比较小或者背景面积比较大的需要根据灰度进行分割的应用场景。 1. 提取小的物件
因为顶帽运算与底帽运算都是提取比结构元素小的局部区域因此对于一些暗背景的、目标尺寸又比较小的目标检测场景可以通过顶帽操作使用比较大的结构元素来提取目标。底帽运算与 顶帽运算常用于提取图中较亮的小区域但也适用于大面积的背景的提取。
2. 校正非均匀光照
对于一些背景光照不均匀的情况如果背景比较大检测物体比较小可以使用大的结构元素进行顶帽或者底帽操作以提取物体背景并将背景光照变得均匀。图a所示为原始的灰度图像图b为经底帽运算得到的较暗的目标区域图c将底帽运算的结果从原图中提取出来去除了光照不均匀的背景。 图中的底帽运算处理代码如下
*读取一幅光照不均匀的亮背景图像这里选取的是一幅彩色图像
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)在对图像进行阈值处理时需注意由于使用底帽运算提取的是比较暗的区域因此这里二值化操作选取的是比较亮的背景区域。圆形结构元素的坐标不受影响但其半径应根据暗的前景目标进行推算使其直径至少要能够覆盖待检测的较暗目标。 通过底帽运算将较暗区域从原图中提取出来以后可以看到不均匀的背景已被去除。 总体来说顶帽运算适合在较暗的背景下提取比较小且比较亮的前景目标而底帽运算则相反 适合在较亮的背景上提取出较暗的目标。两种方法提取的目标都需要小于结构元素的尺寸。