Python 使用OpenCV 进行二值化
在Python中使用OpenCV进行二值化,可以使用cv2.threshold()函数。下面是一个简单的示例,它将一张灰度图像二值化:
import cv2 # 读取灰度图像 img = cv2.imread("image.jpg", cv2.IMREAD_GRAYSCALE) # 对图像进行二值化 threshold_value = 128 # 阈值 max_value = 255 # 像素值的最大值 ret, thresh = cv2.threshold(img, threshold_value, max_value, cv2.THRESH_BINARY) # 显示原始图像和二值化后的图像 cv2.imshow("Original", img) cv2.imshow("Thresholded", thresh) cv2.waitKey(0) cv2.destroyAllWindows()
在上述代码中,我们首先使用cv2.imread()函数读取一张灰度图像。然后,我们使用cv2.threshold()函数对该图像进行二值化。cv2.threshold()函数的第一个参数是要二值化的图像,第二个参数是阈值,第三个参数是像素值的最大值,第四个参数是二值化类型。在本例中,我们使用cv2.THRESH_BINARY作为二值化类型,这意味着像素值大于阈值的像素将被设置为最大值,而像素值小于或等于阈值的像素将被设置为0。cv2.threshold()函数的返回值包括阈值和二值化后的图像。最后,我们使用cv2.imshow()函数显示原始图像和二值化后的图像,并使用cv2.waitKey()和cv2.destroyAllWindows()等待用户按下任意键以关闭窗口。
相关文章