Halcon 算子 min_max_gray

219 阅读1分钟

 作用:确定区域内的最小和最大灰度值;

参数翻译(对应以上参数顺序):

输入需要计算的区域、

输入灰度图像、

输入 低于(以上)绝对最高(最低)百分比 取值范围:0 <= Percent && Percent <= 50、

输出最小灰度值、

输出最大灰度值、

输出灰度值范围;

 

描述:

算子min_max_gray创建输入图像(Image)在计算区域内(Regions)灰度值的绝对频率直方图,并计算与输入图像的面积相对应的像素百分比数,然后它在直方图的两边向内移动这个像素数,并确定最小和最大的灰度值;

percent含义:区域面积乘以percent得到一个数a,然后用这个数a分别从最小灰度值和最大灰度值处向里截取a个像素点,然后在剩下的像素点中取最小最大灰度值。

例如.:     例如Regions的面积是Area = 60, 百分比是percent = 5, 所以根据以上所述a=3;

     直方图为: Histogram = [2,8,0,7,13,0,0,...,0,10,10,5,3,1,1]      最大灰度值是:Maximum = 255,

     最小灰度值是:Minimum = 0,

     范围是:Range = 255(最大值减最小值)

   使用 min_max_gray 算子会返回: Maximum = 253, Minimum = 1, Range = 252;

 

注意:

对于int4、int8和real类型的图像,上述计算不是通过直方图进行的,而是使用排序选择算法。如果Percent设置为50,Min = Max = Median。如果Percent为0,则不会计算直方图以加快运行时间。