Python中如何实现基于队列的图片处理
基于队列的图片处理主要涉及两个方面:一是将待处理的图片加入队列中,二是从队列中取出图片进行处理。
下面是一个简单的示例代码,实现对一组图片进行大小尺寸调整和灰度处理:
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循环来不断从队列中取出图片进行处理。具体的处理包括调整图片大小和灰度处理,然后将处理后的图片保存到另外一个文件夹中。
需要注意的是,在实际应用中,可能需要将处理后的图片保存到数据库或者其他媒介中,这里只是简单演示了如何使用队列进行图片处理。
相关文章