geoutils.Raster#
- class geoutils.Raster(filename_or_dataset, bands=None, load_data=False, downsample=1, nodata=None)[source]#
The georeferenced raster.
- Main attributes:
- data:
np.ndarray
Data array of the raster, with dimensions corresponding to (count, height, width).
- transform:
affine.Affine
Geotransform of the raster.
- crs:
pyproj.crs.CRS
Coordinate reference system of the raster.
- nodata:
int
orfloat
Nodata value of the raster.
- data:
All other attributes are derivatives of those attributes, or read from the file on disk. See the API for more details.
- __init__(filename_or_dataset, bands=None, load_data=False, downsample=1, nodata=None)[source]#
Instantiate a raster from a filename or rasterio dataset.
- Parameters:
filename_or_dataset (
Union
[str
,Path
,TypeVar
(RasterType
, bound= Raster),DatasetReader
,MemoryFile
,dict
[str
,Any
]]) – Path to file or Rasterio dataset.bands (
int
|list
[int
] |None
) – Band(s) to load into the object. Default loads all bands.load_data (
bool
) – Whether to load the array during instantiation. Default is False.downsample (
Union
[int
,float
,integer
[Any
],floating
[Any
]]) – Downsample the array once loaded by a round factor. Default is no downsampling.nodata (
int
|float
|None
) – Nodata value to be used (overwrites the metadata). Default reads from metadata.
Methods
__init__
(filename_or_dataset[, bands, ...])Instantiate a raster from a filename or rasterio dataset.
astype
(dtype[, convert_nodata, inplace])Convert data type of the raster.
coords
([grid, shift_area_or_point, force_offset])Get coordinates (x,y) of all pixels in the raster.
copy
([new_array, cast_nodata])Copy the raster in-memory.
crop
(crop_geom[, mode, inplace])Crop the raster to a given extent.
from_array
(data, transform, crs[, nodata, ...])Create a raster from a numpy array and the georeferencing information.
from_xarray
(ds[, dtype])Create raster from a xarray.DataArray.
georeferenced_grid_equal
(raster)Check that raster shape, geotransform and CRS are equal.
get_bounds_projected
(out_crs[, densify_points])Get raster bounds projected in a specified CRS.
get_footprint_projected
(out_crs[, ...])Get raster footprint projected in a specified CRS.
get_mask
()Get mask of invalid values from the raster.
get_metric_crs
([local_crs_type, method])Get local metric coordinate reference system for the raster (UTM, UPS, or custom Mercator or Polar).
get_nanarray
([return_mask])Get NaN array from the raster.
ij2xy
(i, j[, shift_area_or_point, force_offset])Get coordinates (x,y) of indexes (row,column).
info
([stats, verbose])Print summary information about the raster.
interp_points
(points[, method, band, ...])Interpolate raster values at a set of points.
intersection
(raster[, match_ref])Returns the bounding box of intersection between this image and another.
load
([bands])Load the raster array from disk.
outside_image
(xi, yj[, index])Check whether a given point falls outside the raster.
plot
([bands, cmap, vmin, vmax, alpha, ...])Plot the raster, with axes in projection of image.
polygonize
([target_values])Polygonize the raster into a vector.
proximity
([vector, target_values, ...])Compute proximity distances to the raster target pixels, or to a vector geometry on the raster grid.
raster_equal
(other[, strict_masked, ...])Check if two rasters are equal.
reproject
([ref, crs, res, grid_size, ...])Reproject raster to a different geotransform (resolution, bounds) and/or coordinate reference system (CRS).
save
(filename[, driver, dtype, nodata, ...])Write the raster to file.
set_area_or_point
(new_area_or_point[, ...])Set new pixel interpretation of the raster.
set_mask
(mask)Set a mask on the raster array.
set_nodata
(new_nodata[, update_array, ...])Set a new nodata value for all bands.
shift
(xoff, yoff[, distance_unit, inplace])Shift a raster by a (x,y) offset.
split_bands
([copy, bands])Split the bands into separate rasters.
subsample
(subsample[, return_indices, ...])Randomly sample the raster.
to_pointcloud
([data_column_name, data_band, ...])Convert raster to point cloud.
to_points
(**kwargs)Export to a Rasterio in-memory dataset.
to_xarray
([name])Convert raster to a xarray.DataArray.
value_at_coords
(x, y[, latlon, band, ...])Extract raster values at the nearest pixels from the specified coordinates, or reduced (e.g., mean of pixels) from a window around the specified coordinates.
xy2ij
(x, y[, op, precision, shift_area_or_point])Get indexes (row,column) of coordinates (x,y).
Attributes
area_or_point
Pixel interpretation of the raster.
Band indexes loaded in memory if they are, otherwise on disk.
Band indexes on disk if a file exists.
Bounding coordinates of the raster.
Count of bands loaded in memory if they are, otherwise the one on disk.
Count of bands on disk if it exists.
Coordinate reference system of the raster.
Array of the raster.
Driver used to read a file on disk.
Data type of the raster (string representation).
Height of the raster in pixels.
indexes
Band indexes (duplicate of .bands attribute, mirroring Rasterio naming "indexes").
Whether the raster array is loaded.
Whether the array has been modified since it was loaded from disk.
Name of the file on disk, if it exists.
Nodata value of the raster.
Resolution (X, Y) of the raster in georeferenced units.
Shape (i.e., height, width) of the raster in pixels.
Geotransform of the raster.
Width of the raster in pixels.