在OpenCV中,threshold用来进行对图像(二维数组)的二值化阈值处理
通过查找OpenCV在线文档,发现存在很多函数:
其函数原型如下:
1. C版本的:
函数原型:
void cvThreshold( const CvArr* src, CvArr* dst, double threshold,double max_value, int threshold_type );
src,dst: 不必多说,其要求类型一致性;
threshold:需要设置的阈值,当像素值大于某个数字时,设定一个值,否则为另外一个值。(二值化~)
max_value:最大值;
threshold_type:可以指定阈值化的类型;
具体如下所示:
threshold_type=CV_THRESH_BINARY:
dst(x,y) = max_value, if src(x,y)>threshold
0, otherwise
threshold_type=CV_THRESH_BINARY_INV:
dst(x,y) = 0, if src(x,y)>threshold
max_value, otherwise
threshold_type=CV_THRESH_TRUNC:
dst(x,y) = threshold, if src(x,y)>threshold
src(x,y), otherwise
threshold_type=CV_THRESH_TOZERO:
dst(x,y) = src(x,y), if (x,y)>threshold
0, otherwise
threshold_type=CV_THRESH_TOZERO_INV:
dst(x,y) = 0, if src(x,y)>threshold
src(x,y), otherwise