cv2.threshold()
时间: 2023-10-14 21:09:28 浏览: 97
cvThreshold()对图像进行阀值化处理源程序
5星 · 资源好评率100%
cv2.threshold() 是 OpenCV 中的一个图像处理函数,用于对图像进行二值化处理。它可以将输入的灰度图像转换为黑白图像,将图像上的像素点分为两种颜色,一种是黑色,一种是白色。函数的基本语法为:
```
cv2.threshold(src, thresh, maxval, type[, dst]) → retval, dst
```
其中,src 是输入的图像,thresh 是用于二值化的阈值,maxval 是像素点的最大值,type 是二值化的类型,dst 是输出的图像。retval 表示阈值。
type 参数有以下几种选择:
- cv2.THRESH_BINARY:将像素点小于等于阈值的部分设置为 0,大于阈值的部分设置为 maxval。
- cv2.THRESH_BINARY_INV:将像素点小于等于阈值的部分设置为 maxval,大于阈值的部分设置为 0。
- cv2.THRESH_TRUNC:将像素点大于阈值的部分设置为阈值,小于等于阈值的部分不变。
- cv2.THRESH_TOZERO:将像素点小于阈值的部分设置为 0,大于等于阈值的部分不变。
- cv2.THRESH_TOZERO_INV:将像素点大于阈值的部分设置为 0,小于等于阈值的部分不变。
举个例子,假设我们有一张灰度图像 img,我们想将图像上所有像素值大于 127 的部分设置为 255,小于等于 127 的部分设置为 0,可以使用以下代码实现:
```
ret, thresh = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
```
其中,ret 表示计算得到的阈值,thresh 是输出的二值化图像。
阅读全文