C++ OpenCV 二值化 API 函数及参数详解
C++ 中二值化的 API 函数是 cv::threshold(),Opencv 中二值化的 API 函数是 cv::threshold() 和 cv::adaptiveThreshold()。
cv::threshold() 函数的参数介绍如下:
void cv::threshold(
cv::InputArray src, // 输入图像
cv::OutputArray dst, // 输出图像
double thresh, // 阈值
double maxval, // 最大值
int type // 二值化类型
);
其中,thresh 表示二值化的阈值,maxval 表示二值化后的最大值,type 表示二值化的类型,包括以下几种:
- cv::THRESH_BINARY:大于阈值的像素值设为 maxval,小于等于阈值的像素值设为 0。
- cv::THRESH_BINARY_INV:大于阈值的像素值设为 0,小于等于阈值的像素值设为 maxval。
- cv::THRESH_TRUNC:大于阈值的像素值设为阈值,小于等于阈值的像素值不变。
- cv::THRESH_TOZERO:大于阈值的像素值不变,小于等于阈值的像素值设为 0。
- cv::THRESH_TOZERO_INV:大于阈值的像素值设为 0,小于等于阈值的像素值不变。
cv::adaptiveThreshold() 函数的参数介绍如下:
void cv::adaptiveThreshold(
cv::InputArray src, // 输入图像
cv::OutputArray dst, // 输出图像
double maxValue, // 最大值
int adaptiveMethod, // 自适应方法
int thresholdType, // 二值化类型
int blockSize, // 块大小
double C // 常数项
);
其中,adaptiveMethod 表示自适应方法,包括以下几种:
- cv::ADAPTIVE_THRESH_MEAN_C:块内平均值作为阈值。
- cv::ADAPTIVE_THRESH_GAUSSIAN_C:块内高斯加权平均值作为阈值。
thresholdType 表示二值化类型,与 cv::threshold() 函数相同。blockSize 表示块大小,C 表示常数项。
原文地址: https://www.cveoy.top/t/topic/j7Xu 著作权归作者所有。请勿转载和采集!