图像二值化python代码
时间: 2023-07-22 08:43:21 浏览: 48
以下是Python中使用OpenCV库进行图像二值化的示例代码:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg')
# 灰度化
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 二值化
ret, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 显示图像
cv2.imshow("binary image", binary)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`cv2.threshold()`函数用于进行二值化操作,参数说明如下:
- 第一个参数:输入图像,灰度图像
- 第二个参数:阈值,超过这个值的像素点被置为高亮(255),低于这个值的像素点被置为暗色(0)
- 第三个参数:高亮像素点的取值(通常为255)
- 第四个参数:二值化方法,这里选择了`cv2.THRESH_BINARY`,表示简单的二值化操作
通过调整阈值的大小,可以得到不同的二值化效果。
相关问题
图像二值化代码python
以下是一个简单的图像二值化代码的Python实现:
```
import cv2
# 读取原始图像
img = cv2.imread('image.jpg', 0)
# 图像二值化处理
ret, binary = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
# 显示二值化后的图像
cv2.imshow('Binary Image', binary)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
该代码使用的是OpenCV库,将原始图像读取后,调用cv2.threshold()函数进行二值化处理。如果像素值大于阈值127,则将像素值设置为255,否则设置为0。最后显示二值化后的图像。
图像二值化python
在Python中,可以使用OpenCV库来实现图像的二值化。下面是一个简单的示例代码:
```python
import cv2
# 读取图像
image = cv2.imread('image.jpg',0) # 以灰度图像读取
# 进行全局阈值二值化
_, binary_image = cv2.threshold(image, 127, 255, cv2.THRESH_BINARY)
# 显示原图和二值化结果
cv2.imshow('Original Image', image)
cv2.imshow('Binary Image', binary_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,首先使用`cv2.imread()`函数读取图像,其中参数`0`表示以灰度图像的方式读取。然后使用`cv2.threshold()`函数进行全局阈值二值化,该函数的参数依次为输入图像、阈值、最大像素值和阈值类型。返回值中的下划线表示阈值,而`binary_image`则是二值化后的图像。
最后使用`cv2.imshow()`函数显示原图和二值化结果,并通过`cv2.waitKey(0)`等待键盘输入来关闭窗口。
需要注意的是,上述代码中的阈值为127,当像素值大于127时设为255(白色),小于等于127时设为0(黑色)。你可以根据具体需求调整阈值来得到不同的二值化效果。