在OpenCV中,可以使用cv2.adaptiveThreshold()
函数来实现自适应阈值操作。该函数的语法如下:
cv2.adaptiveThreshold(src, maxValue, adaptiveMethod, thresholdType, blockSize, C)
参数说明:
src
:输入图像,应为灰度图像。maxValue
:像素值超过阈值时设置的新像素值。adaptiveMethod
:自适应阈值算法类型,可以选择cv2.ADAPTIVE_THRESH_MEAN_C
或cv2.ADAPTIVE_THRESH_GAUSSIAN_C
。thresholdType
:阈值类型,可以选择cv2.THRESH_BINARY
或cv2.THRESH_BINARY_INV
。blockSize
:邻域大小,用来计算阈值的像素领域大小。C
:从计算出的平均值或加权平均值中减去的常数,用于微调阈值。
示例代码:
import cv2 # 读取输入图像 img = cv2.imread('input.jpg', 0) # 自适应阈值操作 adaptive_threshold = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 11, 2) # 显示结果 cv2.imshow('Adaptive Threshold', adaptive_threshold) cv2.waitKey(0) cv2.destroyAllWindows()
以上代码将读取名为input.jpg
的灰度图像,并对其应用自适应阈值操作,然后显示结果。