[opencv-python常用函数] cv2.threshold()

cv2.threshold()函数
下面是官方文档中给的解释

Python: cv2.threshold(src, thresh, maxval, type[, dst]) → retval, dst
  • src:表示的是图片源
  • thresh:表示的是阈值(起始值)
  • maxval:表示的是最大值
  • type:表示的是这里划分的时候使用的是什么类型的算法,常用值为0(cv2.THRESH_BINARY)

在这里插入图片描述

例:

import cv2
import matplotlib.pyplot as plt

img = cv2.imread('C:\\Users\\mck\\image\\ll.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
ret,thresh1 = cv2.threshold(gray,127,255,cv2.THRESH_BINARY)#将灰度图gray中灰度值小于175的点置0,灰度值大于175的点置255
ret,thresh2 = cv2.threshold(gray,127,255,cv2.THRESH_BINARY_INV)#将灰度图gray中灰度值小于175的点置255,灰度值大于175的点置0
ret,thresh3 = cv2.threshold(gray,127,255,cv2.THRESH_TRUNC)
ret,thresh4 = cv2.threshold(gray,127,255,cv2.THRESH_TOZERO)
ret,thresh5 = cv2.threshold(gray,127,255,cv2.THRESH_TOZERO_INV)
titles = ['img','BINARY','BINARY_INV','TRUNC','TOZERO','TOZERO_INV']
images = [img,thresh1,thresh2,thresh3,thresh4,thresh5]
for i in range(6):
    plt.subplot(2,3,i+1),plt.imshow(images[i],'gray')
    plt.title(titles[i])
    plt.xticks([]),plt.yticks([])
plt.show()

效果:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xiaokai1999/article/details/105907198