1简单的阈值化
cv2.threshold第一个参数是源图像,它应该是灰度图像. 第二个参数是用于对像素值进行分类的阈值, 第三个参数是maxVal,它表示如果像素值大于(有时小于)阈值则要给出的值. OpenCV提供不同类型的阈值,它由函数的第四个参数决定. 不同的类型是:
cv2.THRESH_BINARY
如果 src(x,y)>threshold ,dst(x,y) = max_value; 否则,dst(x,y)=0
cv.THRESH_BINARY_INV
如果 src(x,y)>threshold,dst(x,y) = 0; 否则,dst(x,y) = max_value
cv.THRESH_TRUNC
如果 src(x,y)>threshold,dst(x,y) = max_value; 否则dst(x,y) = src(x,y)
cv.THRESH_TOZERO
如果src(x,y)>threshold,dst(x,y) = src(x,y) ; 否则 dst(x,y) = 0
cv.THRESH_TOZERO_INV
如果 src(x,y)>threshold,dst(x,y) = 0 ; 否则dst(x,y) = src(x,y)
代码:
import cv2
import numpy as np
import matplotlib.pylab as plt
img = cv2.imread(img.jpg,0)
ret,thresh1 = cv2.threshold(img,127,255,cv2.THRESH_BINA