使用Python+OpenCV,以灰度图作为输入,以100为灰度阈值生成图像二值化处理结果图,并将图片保存
时间: 2024-10-19 11:10:30 浏览: 45
python+opencv图像二值化处理
在Python中,我们可以利用OpenCV库来进行图像处理,包括灰度化和二值化。以下是简单的步骤:
首先,你需要安装`opencv-python`库,如果还没有安装,可以使用pip安装:
```bash
pip install opencv-python
```
接下来,你可以通过以下代码实现从灰度图到二值化的过程:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('input_gray_image.jpg', cv2.IMREAD_GRAYSCALE)
# 确保图像是一个numpy数组,如果不是,转换一下
if not isinstance(img, np.ndarray):
img = np.array(img)
# 设置灰度阈值为100
threshold_value = 100
_, binary_img = cv2.threshold(img, threshold_value, 255, cv2.THRESH_BINARY) # THRESH_BINARY是二值化的一种方法
# 显示原图和二值化后的图像
cv2.imshow("Original Image", img)
cv2.imshow("Binary Image", binary_img)
# 保存二值化后的图像
cv2.imwrite('output_binary_image.jpg', binary_img)
# 等待用户按键,然后关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,我们首先读入一个灰度图像,然后使用`cv2.threshold()`函数设定阈值,高于阈值的像素设置为白色(255),低于或等于阈值的像素设置为黑色。最后,使用`cv2.imwrite()`保存处理后的图像。
阅读全文