Bootstrap

opencv批量修改图片分辨率

如何使用Python的OpenCV批量修改图片分辨率

在图像处理和计算机视觉中,经常需要处理大量的图像数据,其中一个常见需求是修改图像的分辨率。Python的OpenCV库提供了一些方便的功能,可以帮助我们批量修改图像的分辨率。本文将介绍如何使用Python的OpenCV库来实现这一功能。

1. 安装OpenCV库

首先,确保你已经安装了Python和OpenCV库。如果尚未安装OpenCV库,可以通过以下命令来安装:

pip install opencv-python

2. 导入OpenCV库和其他必要的库

接下来,在代码的开头,我们需要导入OpenCV库和其他必要的库:

import cv2
import os

3. 设置输入和输出目录

在开始批量修改图像分辨率之前,我们需要设置输入和输出目录。输入目录是包含待处理图像的文件夹路径,输出目录是保存处理后图像的文件夹路径。我们可以使用os库来创建目录:

input_folder = 'input/'
output_folder = 'output/'

os.makedirs(output_folder, exist_ok=True)

4. 批量修改图像分辨率

现在,我们可以进行批量修改图像分辨率的操作了。我们可以使用cv2.resize()方法来修改图像的分辨率。这个方法需要传入图像、目标宽度和目标高度。下面是一个示例代码:

for filename in os.listdir(input_folder):
    if filename.endswith('.jpg') or filename.endswith('.png'):
        image = cv2.imread(os.path.join(input_folder, filename))
        resized_image = cv2.resize(image, (640, 480))
        cv2.imwrite(os.path.join(output_folder, filename), resized_image)

上述代码遍历输入目录中的所有图像文件,判断是否以’.jpg’或’.png’结尾,然后使用cv2.resize()方法修改图像的分辨率,并保存到输出目录中。

5. 结束语

通过使用Python的OpenCV库,我们可以很方便地实现批量修改图像分辨率的功能。只需设置输入和输出目录,并调用相应的函数,就能快速地批量处理图像数据。希望本文能帮助你更好地理解和使用Python的OpenCV库。

以下是一个小示例

import cv2
import os

path = r"C:\Users\lenovo\Desktop\gg"  # 存放原图片的文件夹路径
list = os.listdir(path)
for index, i in enumerate(list):
    path = r"C:\Users\lenovo\Desktop\gg\{}".format(i)
    img = cv2.imread(path)
    img = cv2.resize(img, (480, 640))  # 修改为480*640
    path = r"C:\Users\lenovo\Desktop\kk\{}.jpg".format(index) # 处理后的图片文件夹路径
    cv2.imwrite(path, img)

了解一些os的简单操作,可参考此帖

;