我使用Python处理图像。我习惯于裁剪、绘制和其他操作,但只能对一张图片进行操作。就像下面的脚本一样,我该如何在脚本中应用循环来处理多张图片?
import PIL
import Image
im=Image.open('test.tif')
box=(50, 50, 200, 200)
im_crop=im.crop(box)
im_crop.show()
我使用Python处理图像。我习惯于裁剪、绘制和其他操作,但只能对一张图片进行操作。就像下面的脚本一样,我该如何在脚本中应用循环来处理多张图片?
import PIL
import Image
im=Image.open('test.tif')
box=(50, 50, 200, 200)
im_crop=im.crop(box)
im_crop.show()
您需要使用 for
循环将其包装起来,并给该循环提供一个文件列表。
获取当前目录中所有TIF文件的列表非常简单,只需使用 glob
,如下所示:
import PIL
import Image
import glob
for filename in glob.glob("*.tif"):
im=Image.open(filename)
box=(50, 50, 200, 200)
im_crop=im.crop(box)
im_crop.show()
import PIL
import Image
filelist = ['test.tif','test2.tif']
for imagefile in filelist:
im=Image.open(imagefile)
box=(50, 50, 200, 200)
im_crop=im.crop(box)
im_crop.show()
只需将文件名添加到列表filelist
中。 for
循环遍历列表的每个元素,并将当前值赋给imagefile
。您可以在循环体中使用imagefile
来处理图像。
可能是这样的吧?
import PIL
import Image
images = ["test.tif", "test2.tif", "test3.tif"]
for imgName in images:
im=Image.open(imgName)
box=(50, 50, 200, 200)
im_crop=im.crop(box)
im_crop.show()
os.walk
дёӯдҪҝз”ЁglobиҝӣиЎҢйҖ’еҪ’жҗңзҙўеҗ—пјҹиҝҳжҳҜеҝ…йЎ»дҪҝз”Ёos.walk
е’Ңfilter(regex_search, list)
гҖӮжӣҙж–°пјҡжҲ‘еҸҜд»ҘдҪҝз”ЁеҮ д№ҺзӣёеҗҢзҡ„fnmatchгҖӮ - Umur Kontacı