在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
的灰度图像,并对其应用自适应阈值操作,然后显示结果。