阈值可以被视作最简单的图像分割方法这样的图像分割方法基于图像中物体与背景之间的灰度差异,而且此分割属于像素级的分割。
固定阈值操作–threshold()函数–单通道数组
double threshold(inoutArray,outputArray,double thresh,double maxval,int type)
-
第一个参数,输入图像,单通道,8或32位浮点类型的Mat。
-
第二个参数,输出图像。
-
第三个参数,阈值的具体值。
-
第四个参数,当第五个参数阈值类型type取CV_THRESH_BINARY或CV_THRESH_BINARY_INV阈时阈值类型时的最大值。
-
第五个参数,阈值类型,int type
(1)0,CV_THRESH_BINARY:二值阈值化
(2)1,CV_THRESH_BINARY_INV:反向二值阈值化并反转
(3)2,CV_THRESH_TRUNC:截断阈值化
(4)3,CV_THRESH_TOZERO_INV:超过阈值被置为0
(5)4,CV_THRESH_TOZERO:低于阈值被置为0
自适应阈值操作–adaptiveThreshold()函数–矩阵
void adaptiveThreshold(inputArray,outputArray,double maxVal,int adaptiveMethod,int thresholdType,int blockSize,double C)
- 第一个参数,输入图像,8位单通道浮点型图像。
- 第二个参数,输出图像。
- 第三个参数,给像素赋的满足条件的非零值。
- 第四个参数,用于指定要使用的自适应阈值算法,ADAPTIVE_THRESH_MEAN_C或ADAPTIVE_THRESH_GAUSSIAN_C。
- 第五个参数,阈值类型,THRESH_BINARY,THRESH_BINARY_INV其中之一。
- 第六个参数,用于计算阈值大小的一个像素的邻域尺寸,取值为3、5、7等。
- 第七个参数,减去平均或加权平均值后的常数值,通常其为正数,但少数情况下也可以为零或负数。
#include<opencv2/imgproc/imgproc.hpp>
#include