Python/Opencv 将多张图片保存到不同名称的文件夹
Python/Opencv save multiple images to folder with different names
我正在做图像处理,我有一个文件夹,里面有所有需要处理的图像,我想把所有处理过的图像保存到另一个文件夹中。我该怎么做?
for img in glob.glob("Img/*.png"):
path = '/result'
image = cv2.imread(img)
angle, rotated = correct_skew(image)
print(angle)
cv2.imwrite(os.path.join(path , 'img.png'), rotated)
cv2.waitKey(1)
此代码可以读取图像并对其进行处理,但我不知道如何用不同的名称保存所有图像,就像我希望它是 img1.png、img2.png、等等
或者我是否可以将图像保存到与以前同名的另一个文件夹中?
为了以串行方式保存处理后的图像,您可以使用enumerate
。当使用枚举启动循环时,也会启动计数器。每次迭代都会产生一个整数。
在下面的例子中,i
是每次迭代递增的整数值。 i
作为文件名的一部分用来保存处理后的图片
path = '/result'
for i, img in enumerate(glob.glob("Img/*.png"), 1):
image = cv2.imread(img)
angle, rotated = correct_skew(image)
print(angle)
cv2.imwrite(os.path.join(output_path, 'img_{}.png'.format(i)), rotated)
我正在做图像处理,我有一个文件夹,里面有所有需要处理的图像,我想把所有处理过的图像保存到另一个文件夹中。我该怎么做?
for img in glob.glob("Img/*.png"):
path = '/result'
image = cv2.imread(img)
angle, rotated = correct_skew(image)
print(angle)
cv2.imwrite(os.path.join(path , 'img.png'), rotated)
cv2.waitKey(1)
此代码可以读取图像并对其进行处理,但我不知道如何用不同的名称保存所有图像,就像我希望它是 img1.png、img2.png、等等
或者我是否可以将图像保存到与以前同名的另一个文件夹中?
为了以串行方式保存处理后的图像,您可以使用enumerate
。当使用枚举启动循环时,也会启动计数器。每次迭代都会产生一个整数。
在下面的例子中,i
是每次迭代递增的整数值。 i
作为文件名的一部分用来保存处理后的图片
path = '/result'
for i, img in enumerate(glob.glob("Img/*.png"), 1):
image = cv2.imread(img)
angle, rotated = correct_skew(image)
print(angle)
cv2.imwrite(os.path.join(output_path, 'img_{}.png'.format(i)), rotated)