一.图像阈值化作用:
1.对图像中的像素做一个取舍,剔除一些高于或低于阈值的像素,可实现噪声滤波处理。
2.阈值作为最简单的图像分割方法,是基于图像中物体与背景的灰度差异;通过阈值与图像中的每一个像素值相比较,一旦找到要分割的物体,可以将物体与背景设置成一些特定值来增强图像的对比度效果。(比如将物体像素设置成0,背景设置成255)
二. 固定阈值化操作----相当于计算整体(阈值)
threshlod()函数对单通道图像进行处理,典型应用是对灰度图处理得到二值图或进行噪声滤波,去掉较大,较小的像素值。
double threshold( InputArray src, OutputArray dst,
double thresh, double maxval, int type );
参数src:原图可以是单通道或者多通道,深度为8位或32位浮点数
参数dst:目标图像要和原图有相同的大小和类型
参数thresh:设定的阈值
参数maxval:当type为"THRESH_BINARY"或者"THRESH_BINARY_INV"时,原图中的像素值
大于或小于阈值时,将像素值设置为maxval
参数type:
三.自适应阈值操作----相当于计算局部(阈值)
自动计算阈值,每一个像素对应的阈值大小根据自定义方法计算出
void adaptiveThreshold( InputArray src, OutputArray dst,
double maxValue, int adaptiveMethod,
int thresholdType, int blockSize, double C );
参数src:必须为单通道8位
参数dst:和原图有相同的大小和类型
参数maxval:给像素赋的满足条件的非0值
参数adaptiveMethod:
①ADAPTIVE_THRESH_MEAN_C 计算对应均值窗口的像素值后再减去C
②ADAPTIVE_THRESH_GUASSIAN_C 计算对应高斯窗口的像素值后再减去C
参数thresholdType:只能是THRESH_BINARY或THRESH_BINARY_INV
参数blockSize:计算阈值大小的一个像素的邻域尺寸
参数C:常量,用于adaptiveMethod的计算