Java+opencv3.2.0之二值化

原理:简单来说是指将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果。

 

Opencv3.2.0中提供了两种方法实现图像二值化:

(1)      Imgproc.threshold(Mat src, Matdst, double thresh, double maxval, int type)

参数说明:

   src:输入源图像

   dst:输出目标图像

   thresh:手动设置的阈值

   maxval:和type有关,如果type设置为Imgproc.THRESH_BINARY,则二值化图像像素大于阈值的为maxval。如果type设置为Imgproc.THRESH_BINARY_INV,则小于阈值的为maxval

   type:二值类型,决定了该方法的结果

(2)      Imgproc.adaptiveThreshold(Mat src, Mat dst, double maxValue, int adaptiveMethod, int thresholdType, intblockSize, double C)

参数说明:

   src:输入源图像

   dst:输出目标图像

   maxval:和thresholdType相关,如果这一参数为 THRESH_BINARY,那么二值化图像像素大于阈值为maxValue,反之参数为THRESH_BINARY_INV,则小于阈值的被赋值为maxValue

   adaptiveMethod:使用哪种自适应阈值算法

   thresholdType:二值类型

   blockSize:对于某个像素,计算其阈值所考虑的阈值范围

   C:从均值中减去的一个常数

 

 

你可能感兴趣的:(OpenCV3.2.0,java,opencv,二值化)