Python中如何实现基于队列的图片处理

2023-04-11 00:00:00 队列 如何实现 图片处理

基于队列的图片处理主要涉及两个方面:一是将待处理的图片加入队列中,二是从队列中取出图片进行处理。

下面是一个简单的示例代码,实现对一组图片进行大小尺寸调整和灰度处理:

from PIL import Image
from queue import Queue
import os

# 待处理的图片列表
img_list = ['img1.jpg', 'img2.jpg', 'img3.jpg', 'img4.jpg']

# 创建处理队列
q = Queue()

# 将图片加入队列
for img_name in img_list:
    img_path = os.path.join('./imgs', img_name)  # 图片路径
    q.put(img_path)

# 处理队列中的图片
while not q.empty():
    img_path = q.get()  # 从队列中取出一个图片
    img = Image.open(img_path)

    # 调整大小
    img = img.resize((200, 200))

    # 灰度处理
    img = img.convert('L')

    # 保存处理后的图片
    out_path = os.path.join('./out', os.path.splitext(img_name)[0] + '_out.jpg')
    img.save(out_path)

在这个例子中,我们首先将待处理的图片加入队列中,然后使用一个while循环来不断从队列中取出图片进行处理。具体的处理包括调整图片大小和灰度处理,然后将处理后的图片保存到另外一个文件夹中。

需要注意的是,在实际应用中,可能需要将处理后的图片保存到数据库或者其他媒介中,这里只是简单演示了如何使用队列进行图片处理。

相关文章