二值化(灰度直方图):得到变量结果是一个区域
算子:binary_threshold() 当对比度来开后,可使用这个算子进行快速二值化,根据情况提取light OR hark特征
binary_threshold (ImageScaled, Region, 'max_separability', 'light', UsedThreshold)
算子:connection()可断开所选择的区域,可突出各个区域的特征 -> 特征选择对话框 – 根据需要进行特征选择。
算子:union1() 将被分割的指定的一个区域合并成一个区域 -> 算子:shape_trans()
算子:union2() 将两个不同的分割区域合并成一个区域
算子:shape_trans()将所选区域转换形状,
rectangle2表示带方向角度的矩形
convex表示凸性转换。
算子:threshold() -> 灰度直方图工具 -> 阈值 -> 调整 -> 插入代码。可提取所需要的区域块,这个一般二值化算子。很少使用如下算子。
一般拉开对比度之后直接使用binary_threshold (ImageScaled, Region, 'max_separability', 'light', UsedThreshold)
算子:dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : )
这个是一个动态阈值二值化算子,它可以提取特定的亮像素点或者暗像素点,通常和均值滤波算子mean_image()算子配合使用。动态二值化,适合提取 局部亮点和局部暗点,经常和 中值率 和均值滤波配合使用。
*均值滤波,让图像中的像素灰度值变得更均匀一些相当于降低像素灰度值
mean_image (Image, ImageMean, 49, 49)
*这个二值化算子经常和均值滤波算子一起使用,也就是如果均值之后ImageMean的像素灰度值+5 还大于原图像*Image的灰度值时,则认为这一点像素是黑色,则被提取。
dyn_threshold (Image, ImageMean, RegionDynThresh, 5, 'dark')
算子:min_max_gray (Bond, Bond, 0, Min, Max, Range) 配合
threshold (Bond, Bright, Max - 80, 255)
expand_gray (IntermediateBalls, Bond, Forbidden, RegionExpand, 4, 'image', 6) 根据灰度值填充间隙
auto_threshold(Image : Regions : Sigma : ) 输出多个区域Sigma 可调节输出区域数量
bin_threshold(Image : Region : : ) 只能图区暗的区域
binary_threshold(Image : Region : Method, LightDark : UsedThreshold)
char_threshold(Image, HistoRegion : Characters : Sigma, Percent : Threshold) 只能提取字符的二值化
dual_threshold(Image : RegionCrossings : MinSize, MinGray, Threshold : ) 也可以设置二值化区域大小
fast_threshold(Image : Region : MinGray, MaxGray, MinSize : ) 快速二值化,只是可以限制最小像素单位MinSize
local_threshold(Image : Region : Method, LightDark, GenParamName, GenParamValue : ) 局部阈值
var_threshold(Image : Region : MaskWidth, MaskHeight, StdDevScale, AbsThreshold, LightDark : ) 根据局部的均值和标准差求二值化图像
watersheds_threshold(Image : Basins : Threshold : ) 缺陷检测使用
var_threshold (ImageB, Region, 7, 7, 0.2, 2, 'dark')
其它一些算法
difference/interaction/shapetrans