def extract_raster_dataset(dataset, nodata=None):
""" Extract data, coordinates and projection information
Parameters
----------
dataset : gdal.Dataset
raster dataset
nodata : scalar
Value to which the dataset nodata values are mapped.
Returns
-------
data : :class:`numpy:numpy.ndarray`
Array of shape (rows, cols) or (bands, rows, cols) containing
the data values.
coords : :class:`numpy:numpy.ndarray`
Array of shape (rows, cols, 2) containing xy-coordinates.
projection : osr object
Spatial reference system of the used coordinates.
"""
# data values
data = read_gdal_values(dataset, nodata=nodata)
# coords
coords_pixel = pixel_coordinates(dataset.RasterXSize,
dataset.RasterYSize,
'edges')
coords = pixel_to_map(dataset.GetGeoTransform(),
coords_pixel)
projection = read_gdal_projection(dataset)
return data, coords, projection
评论列表
文章目录