python对图像进行二值化,结果图片输出到B文件夹下
时间: 2024-05-01 22:21:28 浏览: 111
可以使用Python中的OpenCV库来对图像进行二值化,并将结果保存到B文件夹下。以下是一个示例代码:
```python
import cv2
import os
# 读取原始图像
img = cv2.imread('A/image.jpg', cv2.IMREAD_GRAYSCALE)
# 对图像进行二值化处理
thresh, binary = cv2.threshold(img, 128, 255, cv2.THRESH_BINARY)
# 创建目标文件夹B
if not os.path.exists('B'):
os.makedirs('B')
# 将二值化后的图像保存到B文件夹下
cv2.imwrite('B/binary_image.jpg', binary)
```
在上述代码中,首先使用cv2.imread()函数读取原始图像,并将其转换为灰度图像。然后使用cv2.threshold()函数对图像进行二值化处理。接下来使用os.makedirs()函数创建目标文件夹B。最后使用cv2.imwrite()函数将二值化后的图像保存到B文件夹下。
相关问题
python图像二值化并保存到指定文件夹
以下是Python中使用OpenCV库进行图像二值化并保存到指定文件夹的示例代码:
```python
import cv2
import os
# 读取图像
img = cv2.imread('example.jpg', cv2.IMREAD_GRAYSCALE)
# 进行二值化处理
ret, thresh = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
# 创建保存文件夹
if not os.path.exists('binarized_images'):
os.makedirs('binarized_images')
# 保存二值化后的图像
cv2.imwrite('binarized_images/example_binarized.jpg', thresh)
```
上述代码中,首先使用`cv2.imread`函数读取一张灰度图像,然后使用`cv2.threshold`函数对图像进行二值化处理。接着,使用`os.makedirs`函数创建一个名为`binarized_images`的文件夹,如果该文件夹已经存在,则不进行任何操作。最后,使用`cv2.imwrite`函数将二值化后的图像保存到`binarized_images`文件夹下并命名为`example_binarized.jpg`。
用OpenCV批量对文件夹中的图像进行二值化处理
以下是Python代码示例:
```python
import cv2
import os
# 定义二值化函数
def binarize(image):
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
_, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
return binary
# 定义输入和输出文件夹
input_folder = "path/to/input/folder"
output_folder = "path/to/output/folder"
# 获取文件夹中所有的图片文件
files = os.listdir(input_folder)
image_files = [file for file in files if file.endswith(".jpg") or file.endswith(".png")]
# 循环对每张图片进行二值化处理并保存到输出文件夹
for file in image_files:
# 读取图片
image = cv2.imread(os.path.join(input_folder, file))
# 进行二值化处理
binary = binarize(image)
# 保存图片
cv2.imwrite(os.path.join(output_folder, file), binary)
```
此代码会将输入文件夹中所有的jpg和png图片进行二值化处理,并将结果保存到输出文件夹中。可以根据具体需求修改输入输出路径和二值化函数的参数。