在文件夹中读取并保存多个图像:Python

时间:2017-02-21 07:09:28

标签: python image python-2.7

我是python的初学者。我试图从一个文件夹中读取所有ascii文件,并在将它们转换为Image后,我希望将它们全部保存到同一目录中的不同文件夹中。代码正在运行,但我没有得到任何输出,也没有显示错误。

没有循环的代码,单个图像工作正常。

请帮忙。

import os
import glob
import numpy as np
from PIL import Image

path = r'D:\user\ASCII'
outpath = 'D:\user\ASCII\TIFF'

filenames = glob.glob(path + "/*.asc") #read all files in the path mentioned

for x in filenames:
    myarray = np.loadtxt(x, skiprows=9)
    im = Image.fromarray(myarray)
    im.save(outpath + '/*.tif')

1 个答案:

答案 0 :(得分:3)

save()函数中有一个星号,没有任何意义,它没有任何内容可供选择。它不会自动替换glob函数中的*匹配。我想你想做的事情

src_fname, ext = os.path.splitext(x)  # split filename and extension
# construct output filename, basename to remove input directory
save_fname = os.path.join(outpath, os.path.basename(src_fname)+'.tif')
im.save(save_fname)

请记住使用os.path模块函数,而不是使用斜杠连接文件名,因为它们可以在每个平台上正确处理边缘情况。