python-opencv-cv2.threshold()二值化函数详解
1.cv2.threshold()参数说明
cv2.threshold(src, thresh, maxval, type[, dst]) → retval, dst
常用值为0(cv2.THRESH_BINARY) 第四个是一个方法选择参数,常用的有: • cv2.THRESH_BINARY(黑白二值) • cv2.THRESH_BINARY_INV(黑白二值反转) • cv2.THRESH_TRUNC (得到的图像为多像素值) • cv2.THRESH_TOZERO • cv2.THRESH_TOZERO_INV 该函数有两个返回值,retVal:得到的阈值,dst:阈值化后的图像
公式中0代表黑,设置最大阈值maxval为255(白)就可以进行二值化处理
2.代码示例
import cv2 import numpy as np # 读取照片 img=cv2.imread(D:\Patrick_Star.jpg) # 图像缩放 img = cv2.resize(img,None,fx=0.1,fy=0.1) cv2.imshow(img,img)) # 灰度处理 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.imshow(gray,gray) # cv2.threshold()二值化 _,thres = cv2.threshold(gray, 180, 255, cv2.THRESH_BINARY_INV) cv2.imshow(thres,thres) # 展示图片 cv2.waitKey(0) cv2.destroyAllWindows()
