# -*-coding:utf-8 -*- import cv2 as cv #打开图片 img=cv.imread("08.png") #cv.imshow("la",img) #变灰 gray=cv.cvtColor(img, cv.COLOR_RGB2GRAY) #cv.imshow("gray",gray) #变黑白 for i in range(10): ret,dst=cv.threshold(gray,20*i,255,cv.THRESH_BINARY) cv.imshow("dst"+str(i),dst) #关闭 cv.waitKey(0) cv.destroyAllWindows()
处理结果如下:
其中threshold其他用法:
定义:cv2.threshold(img, threshold, maxval,type)
threshold, maxval是两个数字,等于是在[0,255]中间选取一个区间
cv2.THRESH_BINARY 大于阈值的部分被置为255,小于部分被置为0
cv2.THRESH_BINARY_INV 大于阈值部分被置为0,小于部分被置为255
cv2.THRESH_TRUNC 大于阈值部分被置为threshold,小于部分保持原样
cv2.THRESH_TOZERO 小于阈值部分被置为0,大于部分保持不变
cv2.THRESH_TOZERO_INV 大于阈值部分被置为0,小于部分保持不变
cv2.THRESH_OTSU 自动处理,图像自适应二值化,常用区间[0,255]
下图是最后一个函数的执行结果
参考链接1:https://blog.csdn.net/qq_37385726/article/details/82015545
参考链接2:https://blog.csdn.net/qq_37385726/article/details/82015545