0

我正在尝试合并 landsat 8 波段。我的数据集有几个靠近的 B3 波段

import rasterio 
from rasterio.plot import show
from rasterio.merge import merge
from rasterio.warp import reproject

import os 
from matplotlib import pyplot


files_to_merge = []
for file in os.listdir():
    if file.endswith(".TIF") and ("GM" not in file):
        files_to_merge.append(rasterio.open(file))

test, out_trans = merge(files_to_merge)
show(test)

当我上面的代码我得到:

合并图像

要合并的文件列表具有以下对象:


 <open DatasetReader name='LE07_L1TP_017015_20210503_20210529_02_T1_B3.TIF' mode='r'>,
 <open DatasetReader name='LC08_L1TP_016015_20210504_20210517_02_T1_B3.TIF' mode='r'>,
 <open DatasetReader name='LE07_L1TP_017016_20210503_20210529_02_T1_B3.TIF' mode='r'>,
 <open DatasetReader name='LC08_L1TP_016014_20210504_20210517_02_T1_B3.TIF' mode='r'>,
 <open DatasetReader name='LE07_L1TP_017014_20210503_20210529_02_T1_B3.TIF' mode='r'>,

我有点困惑为什么其他光栅图像没有出现在合并图像中。当我删除第一个乐队时,我可以重新运行合并命令:

test, out_trans = merge([files_to_merge[1],files_to_merge[2], files_to_merge[3], files_to_merge[4]])
show(test,cmap='terrain')

合并图像 2

这似乎更好,但也不正确。我有点困惑发生了什么-如何正确合并所有图像?任何帮助都会得到帮助,我是 rasterio 的新手。

4

1 回答 1

0

万一有人遇到这个问题,就会有很多问题

基本上 Landsat 7 B1 与 Landsat 8 B1 不同,您想将 Landsat 7 B1 与 Landsat 8 B2 合并。

  • Landsat 8 传感器的比例与 Landsat 7 不同。重新调整 Landsat 8 以在 0 和 255 之间进行调整
于 2021-07-16T03:08:40.467 回答