閾值分割 - opencv
threshold()
retval,dst=cv2.threshold(src,thresh,maxval,type)
- retval,閾值
- dst,處理結果
- src,原圖像
- thresh,閾值
- maxval,最大值
- type,類型
閾值方法
• cv2.THRESH_BINARY
• cv2.THRESH_BINARY_INV
• cv2.THRESH_TRUNC
• cv2.THRESH_TOZERO
• cv2.THRESH_TOZERO_INV
閾值方法實例
import cv2
a=cv2.imread("C:\\Users\\Chester\\Downloads\\opencv-python_simpletest\\image\\lena512.bmp",cv2.IMREAD_UNCHANGED)
#注意原始圖像的類型,必須是8位單通道圖像,彩色圖像無意義
r,b1=cv2.threshold(a,127,255,cv2.THRESH_BINARY)
r,b2=cv2.threshold(a,127,255,cv2.THRESH_BINARY_INV)
r,b3=cv2.threshold(a,127,255,cv2.THRESH_TRUNC )
r,b4=cv2.threshold(a,127,255,cv2.THRESH_TOZERO )
r,b5=cv2.threshold(a,127,255,cv2.THRESH_TOZERO_INV)
cv2.imshow("original",a)
cv2.imshow("THRESH_BINARY",b1)
cv2.imshow("THRESH_BINARY_INV",b1)
cv2.imshow("THRESH_TRUNC",b1)
cv2.imshow("THRESH_TOZERO",b1)
cv2.imshow("THRESH_TOZERO_INV",b1)
print(r)
cv2.waitKey()
cv2.destroyAllWindows()