原理:
阈值操作的对象是灰度图像,而阈值是一个灰度值,作用相当于一个分界线,当一个像素值大于阈值时,这个像素值会指定成一个值;当小于阈值时,又会指定成另一个值。阈值操作有五种类型,如下:
- Threshold Binary:即二值化,将大于阈值的灰度值设为最大灰度值,小于阈值的值设为0。
- Threshold Binary, Inverted:将大于阈值的灰度值设为0,大于阈值的值设为最大灰度值。
- Truncate:将大于阈值的灰度值设为阈值,小于阈值的值保持不变。
- Threshold to Zero:将小于阈值的灰度值设为0,大于阈值的值保持不变。
- Threshold to Zero, Inverted:将大于阈值的灰度值设为0,小于阈值的值保持不变。
使用opencv函数:cv::threshold
函数原型为:
double cv::threshold(Mat src, Mat dst, double thresh, double maxval, int type)
thresh是阈值,type是阈值操作的类型,maxval是与THRESH_BINARY和THRESH_BINARY_INV阈值类型一起使用的最大值。