ENVI批量计算平均反射率脚本
时间: 2023-05-27 11:01:54 浏览: 155
以下是一个 ENVI 批量计算平均反射率脚本的示例,它将遍历指定文件夹中的所有 ENVI 格式图像,并计算每个图像的平均反射率。
```IDL
; 设置文件夹路径
folder_path = 'C:\ENVI_Images'
; 获取文件夹中所有 ENVI 格式图像的文件名
file_list = file_search(folder_path + '\*.hdr')
; 遍历所有图像
for i = 0, N_ELEMENTS(file_list)-1 do begin
; 读取图像数据
img = envi_read_data(file_list[i], subset=[*,*,0])
; 计算平均反射率
avg_ref = mean(img, /FOLD)
; 显示结果
print, "Image " + file_basename(file_list[i]) + " average reflectance: " + string(avg_ref)
endfor
```
在脚本中,我们首先指定了包含 ENVI 格式图像的文件夹的路径。然后,我们使用 `file_search` 函数获取文件夹中所有以 `.hdr` 结尾的文件的文件名,并存储在 `file_list` 数组中。接下来,我们遍历所有图像,使用 `envi_read_data` 函数读取图像数据,并将其存储在 `img` 变量中。然后,我们使用 `mean` 函数计算图像的平均反射率,并将结果存储在 `avg_ref` 变量中。最后,我们使用 `print` 函数显示图像的文件名和平均反射率。
阅读全文