cv2.threshold 是一个用于图像二值化的函数。具体来说,它会将图像中的每一个像素的灰度值与一个阈值进行比较,大于该阈值的像素会被赋值为最大灰度值(即 255),小于该阈值的像素会被赋值为最小灰度值(即 0)。这样就可以将图像中的所有像素分为两类:黑色和白色。
cv2.threshold 的具体用法如下:
cv2.threshold(src, thresh, maxval, type[, dst]) -> retval, dst
参数分析:
- src: 待处理的图像,必须是单通道的灰度图像。
- thresh: 阈值,即与图像中每一个像素的灰度值进行比较的值。
- maxval: 当像素灰度值大于阈值时的最大灰度值。
- type: 二值化的方法,可以是以下几种:
- cv2.THRESH_BINARY
- cv2.THRESH_BINARY_INV
- cv2.THRESH_TRUNC
- cv2.THRESH_TOZERO
- cv2.THRESH_TOZERO_INV
- dst: 存储处理结果的图像,可以为空。
cv2.threshold 函数会返回两个值:
- retval: 阈值,如果 type 为 cv2.THRESH_OTSU 或 cv2.THRESH_TRIANGLE,则该值为自动计算出的最优阈值。
- dst: 处理后的图像