📅  最后修改于: 2023-12-03 15:18:07.466000             🧑  作者: Mango
OpenCV是一个用于计算机视觉的开放源代码库,它包含了许多能够进行图像和视频处理的函数和算法。其中一个重要的操作就是将灰度图像转为二进制图像,下面将会介绍如何使用OpenCV进行灰度到二进制的转换。
灰度图像是一种仅包含亮度信息的图像类型,它通常会用单个8位整数类型(0-255)来表示灰度级别,0表示黑色,255表示白色。在OpenCV中可以使用以下代码读入一张灰度图像:
import cv2
gray_image = cv2.imread('gray_image.jpg', cv2.IMREAD_GRAYSCALE)
二进制图像是一种只包含黑色和白色像素的图像类型,像素值只能是0或255。在OpenCV中可以使用以下代码将灰度图像转为二进制图像:
import cv2
gray_image = cv2.imread('gray_image.jpg', cv2.IMREAD_GRAYSCALE)
ret, binary_image = cv2.threshold(gray_image, 127, 255, cv2.THRESH_BINARY)
以上代码中cv2.threshold()
函数是用来进行二值化操作的,将图像中灰度值大于阈值127的像素点设置为255(白色),将灰度值小于等于阈值127的像素点设置为0(黑色),最终生成的二进制图像为binary_image
。
完整代码示例如下:
import cv2
gray_image = cv2.imread('gray_image.jpg', cv2.IMREAD_GRAYSCALE)
ret, binary_image = cv2.threshold(gray_image, 127, 255, cv2.THRESH_BINARY)
cv2.imshow('Binary Image', binary_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
输出结果为一个二进制图像窗口,如下图所示:
以上就是使用OpenCV进行灰度到二进制转换的介绍,希望能够对大家有所帮助。