threshold()
参数一:输入图像
参数二:输出图像
参数三:阈值
参数四:像素值
参数五:类型
THRESH_BINARY :小于阈值的都设置为你设定的像素值
THRESH_BINARY_INV :大于阈值的都设置为你设定的像素值
更多类型如下:
非常常用的并且有名的有:OTSU大津法
见代码示例:
#include<iostream>
#include<opencv2\opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat img = imread("D:\\photogallery\\人物\\image_11.jpg");
Mat dest , bin, ibin;
resize(img, img, Size(), 0.5, 0.5);
cvtColor(img, dest, COLOR_BGR2GRAY);
//二值化
threshold(dest, bin, 100, 255, THRESH_BINARY);
//反二值化
threshold(dest, ibin, 100, 255, THRESH_BINARY_INV);//inv : 反
imshow("img", img);
imshow("bin", bin);
imshow("ibin", ibin);
waitKey(0);
return 0;
}
运行结果如下: