Halcon之灰度直方图和特征直方图的使用

Halcon之灰度直方图和特征直方图的使用

1、灰度直方图

在进行阈值分割的时候往往要确定一定的灰度范围,把自己想要的部分分割出来,这时就需要借助灰度直方图(如下图所示)。

Halcon之灰度直方图和特征直方图的使用_第1张图片

 拖拉图中1处确定最小灰度值,拖拉图中2处确定最大灰度值,区间内的范围就是在图像上显示的部分,图中4处可选择显示部分的颜色(即感兴趣区域的颜色),5处确定的是显示部分是否填充(fill:代表区域内填充,margin:代表区域轮廓)。当选出感兴趣区域后可点击3处插入代码即可生成阈值分割函数。

灰度直方图还有另一个功能:图像对比度的调整

Halcon之灰度直方图和特征直方图的使用_第2张图片

要想调整图像对比度,打开灰度直方图后,在图中3处选择缩放,然后拖动1处和2处。和阈值分割类似,图中1和2处确定灰度范围,根据此范围调整图像对比度。在完成对比度调试后,点击4处插入代码即可生成scale_image函数。

效果图:

Halcon之灰度直方图和特征直方图的使用_第3张图片Halcon之灰度直方图和特征直方图的使用_第4张图片

2、特征直方图

在阈值分割完成后,有些区域不是想要的,还需要进一步的处理,选择自己感兴趣的区域,这时可能就需要用到特征直方图。需要注意的是,在使用特征直方图前要用connection算子计算图像中的连接区域(这里我理解的就是将整体区域中未连通的部分分割成独立的区域以供选择)。

Halcon之灰度直方图和特征直方图的使用_第5张图片

图中1和2处控制特征的选择范围(1是最小值,2是最大值);3处可选择要选取的特征(图中选择的是根据面积、高度、列坐标来进行选择);4处的作用是在选取区域时,选择出的区域必须同时满足特征条件,还是只满足特征条件之一即可(“与”表示要全部满足,“或”表示满足条件之一);5处的作用是在选择完成后是否将各个区域合并成一个区域。在选择完毕后点击插入代码,插入select_shape函数。

注:关于可选特征的解释可参考此篇博客文章:

https://blog.csdn.net/huachizi/article/details/88016415

你可能感兴趣的:(HALCON)