如何在Python中读取多个输入后保存多个输出

时间:2017-11-19 10:16:17

标签: python image opencv

我正在从文件夹中读取.png图像并进行一些操作,我想按照Img1.png,Img2.png,Img3.png ....的顺序保存这些图像。我试图使用此代码:< / p>

cv2.imwrite("Img{}.png".format(i),Image)

但它会一直覆盖单张图像。

下面是代码:

def main(path):
    i=0
    image = cv2.imread(path)

    #do some operations on image

    cv2.imwrite('Img{}.png'.format(i),image)
    i=i+1
    cv2.waitKey(0)

该路径包含多个.png图像,因此当main执行时,它会重置“i”的值并覆盖输出。

2 个答案:

答案 0 :(得分:0)

我想这是因为格式化的类型。旧的python使用'%s %s' % ('one', 'two')格式,您是否尝试过这种格式化?

答案 1 :(得分:-1)

我认为路径 - 空间分开:

path = "im1.png  imre.png  lena.jpg"
接缝如此:

path_lst = path.split(' ')
for i, path_i in enumerate(path_lst):
    image = cv2.imread(path_i)
    #do some operations on image
    cv2.imwrite('Img{}.png'.format(i),image)

一切正常。 Idk - 他们为什么给我“ - ”= D