用OpenCV批量对文件夹中的图像进行二值化处理
时间: 2023-05-25 10:02:32 浏览: 97
以下是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图片进行二值化处理,并将结果保存到输出文件夹中。可以根据具体需求修改输入输出路径和二值化函数的参数。
阅读全文