def binarialization(arg_frame, arg_binaryMethod, arg_thresholdValue= 100):
if len(arg_frame.shape)==3:
tmp = cv2.cvtColor(arg_frame, cv2.COLOR_RGB2GRAY)
else:
tmp= arg_frame.copy()
# Otsu's thresholding after Gaussian filtering
blur = cv2.GaussianBlur(tmp,(5,5),0)
if arg_binaryMethod== 0:
ret, thresholdedImg= cv2.threshold(blur.copy() , arg_thresholdValue, 255 , 0)
elif arg_binaryMethod == 1:
ret,thresholdedImg = cv2.threshold(blur.copy(),0 ,255 ,cv2.THRESH_BINARY+cv2.THRESH_OTSU)
elif arg_binaryMethod== 2:
thresholdedImg = cv2.adaptiveThreshold(blur.copy(),255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,5,0)
return thresholdedImg
评论列表
文章目录