Axe*_*lle 1 python loops sentinel2
在连接 10 条相同图像后,我想将它们转换为反射率,因此将它们除以 10,000。尽管如此,我的文件夹中有两种类型的文件,除了我只想将我的代码应用于 my.img 文件而不是.hdr...你知道我如何继续使用 os.listdir 进行选择吗?
我的代码如下:
import os
import spectral as sp
import spectral.io.envi as envi
src_directory = "/d/afavro/Bureau/3_stack/"
dossier = os.listdir (src_directory)
print(dossier)
for fichier in dossier:
print (fichier)
ssrc_directory = "/d/afavro/Bureau/3_stack/" + fichier
rasters = os.listdir (ssrc_directory)
print(rasters)
OUTPUT_FOLDER = "/d/afavro/Bureau/4_reflectance/" + 'reflectance_' + fichier
print(OUTPUT_FOLDER)
if not os.path.exists(OUTPUT_FOLDER):
os.makedirs(OUTPUT_FOLDER)
for image in rasters:
print (image)
img = sp.open_image(image)
print("%s opened successfully" %os.path.basename(image))
im_HS = img[:,:,:]/10000
header = envi.read_envi_header('/d/afavro/Bureau/3_stack/'+ image)
#Save index image
sp.envi.save_image(OUTPUT_FOLDER + '/reflectance_' + image, im_HS, metadate = header, force = True, interleave = 'bsq')
Run Code Online (Sandbox Code Playgroud)
我认为制作红豆杉循环是个好主意,但我不知道该怎么做......想法?
使用os.path.splitext查找文件的扩展名
for f in os.listdir('<path>'):
name, ext = os.path.splitext(f)
if ext == '.img':
#do stuff
Run Code Online (Sandbox Code Playgroud)