QQ登录

只需一步,快速开始

halcon pouring函数介绍

[ 复制链接 ]
pouring(Image : Regions : Mode, MinGray, MaxGray : )
pouring将输入图像视为“山脉”。较大的灰色值对应山峰,较小的灰色值对应谷底。
将输入图像分成几个步骤进行分割。
首先提取局部极大值,即,无论是单独的像素,
还是以扩展平台的形式出现的像素,其灰度值都大于相邻像素(在4个邻域内)。
在接下来的步骤中,找到的最大值是一个扩展的起点,直到到达 “valley bottoms”。


只要存在像素链,其中的灰度值变得更小(就像水从最大值向四面八方流下),就可以进行扩展。
同样,使用4邻域,但条件较弱(较小或相等)。
这意味着谷底的点可能属于一个以上的最大值。
这些区域最初没有被分配到一个区域,而是在最后一步被划分到所有竞争的部分。
分割是通过对所有相关段的均匀展开来完成的,直到所有模糊的像素被分配。
参数Mode决定了哪些步骤,有:
all这是正常的操作方式。执行所有的分割步骤。将区域分配给maxima,并分割重叠区域。
maxima分割只提取输入图像的局部最大值。没有提取相应的区域。
regions分割提取输入图像的局部极大值及其对应区域,这些区域是唯一确定的。
分配给多个最大值的区域不会被分割。


为了防止算法分割出与图像其余部分不同的均匀背景,
参数MinGray和MaxGray确定了图像中作为背景的区域的灰度值阈值。
图像中灰度值小于MinGray或大于MaxGray的所有部分在提取最大值和分配区域时都被忽略。
对于完整的图像分割,应该选择MinGray = 0和MaxGray = 255。
必须观察MinGray < MaxGray。


参数:
Image 输入的图像
Regions输出的被分割的区域
Mode 分割的操作模式,有 'all', 'maxima', 'regions'
MinGray,所有小于此阈值的灰度值都被忽略。
MaxGray所有大于此阈值的灰度值都被忽略。


例程:
read_image(Image,'particle')
mean_image(Image,Mean,11,11)
pouring(Mean,Seg,'all',0,255)
dev_display(Mean)
dev_set_colored(12)
dev_display(Seg)
*分割图像,同时掩盖黑暗的背景
read_image(Image,'particle')
mean_image(Image,ImageMean,15,15)
pouring(Mean,Seg,'all',90,255)
dev_display(Mean)
dev_set_colored(12)
dev_display(Seg)



  

halcon从自学到接项目视频教程,另外再赠送全网最全资源  

  

欢迎围观我录制的一套halcon自学视频教程(进入)


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索