rasterio 在配置文件中传递自定义属性

rasterio pass custom properties in profile

我正在尝试构建光栅文件,从一个包含多个波段的 numpy 数组和一个配置文件开始:

meta = {
        'driver': 'GTiff',
        'dtype': rasterio.float32,
        'nodata': None,
        'width': 100, 
        'height': 100,
        'count': 16,
        'crs': CRS.from_epsg(4326),
        'transform': rasterio.Affine(1, 0, 0, 0, 1, 0),
        'custom_ids': {'p1', 'p2'}  # Custom property
    }
    mem_file = rasterio.MemoryFile()
    with mem_file.open(**meta) as dataset:
        dataset.write(raster_data)

memfile 已创建,但未传递配置文件自定义 属性。有没有办法实现这个 - 我想在文件中传递一些额外的元数据,以便在我将它保存在磁盘上并再次打开它之后,我得到 'custom_ids' 属性 回来。

我研究过扩展配置文件 class 并将自定义 属性 添加到默认值,但这也没有用。

我应该更仔细地阅读 rasterio 文档。在栅格中传递自定义属性的机制称为标记。

dataset.update_tags(a='1', b='2')

详情here