重采样

有关更改坐标参考系的详细信息,请参见 Reprojection .

上下采样

重采样 指由于栅格单元网格中的更改而更改单元值。这可能发生在回注过程中。即使投影没有改变,我们也可能希望改变现有数据集的有效单元大小。

增采样 指的是我们转换成更高分辨率/更小单元的情况。 缩减取样 正在重新采样以降低分辨率/增大单元格大小。

通过从栅格源读取到不同大小的输出数组或通过指定 out_shape 对于不同的大小,您可以有效地重新对数据进行采样。

下面是一个使用双线性重采样方法以系数2递增采样的示例。

import rasterio
from rasterio.enums import Resampling

with rasterio.open("example.tif") as dataset:
    data = dataset.read(
        out_shape=(dataset.height * 2, dataset.width * 2, dataset.count),
        resampling=resampling.bilinear
    )

下面是一个使用平均重采样方法将采样率降低2的示例。

with rasterio.open("example.tif") as dataset:
    data = dataset.read(
        out_shape=(dataset.height / 2, dataset.width / 2, dataset.count),
        resampling=resampling.average
    )

注解

在这些分辨率更改操作之后,数据集的分辨率及其仿射的分辨率组件 转型 属性不再应用于新数组。

重采样方法

更改栅格单元网格时,必须重新计算像素值。没有“正确”的方法可以做到这一点,因为所有的方法都涉及一些插值。

当前的重新采样方法可以在 rasterio.enums 来源。

值得注意的是,违约 Resampling.nearest 方法可能不适用于连续数据。在这些情况下, Resampling.bilinearResampling.cubic 更适合。存在一些专门的统计重采样方法,例如 Resampling.average 当保留数据的某些数值特性时,这可能有用。