Warp Raster¶
This example demonstrates how to warp and transform rasters between different spatial reference systems.
In [1]:
Copied!
# extract value at a given location by interpolating
import pathlib
import geokit.core.raster
import geokit.core.srs
from geokit.core.get_test_data import get_test_data
# extract value at a given location by interpolating
import pathlib
import geokit.core.raster
import geokit.core.srs
from geokit.core.get_test_data import get_test_data
In [2]:
Copied!
path_to_sample_raster_data = get_test_data(file_name="clc-aachen_clipped.tif")
raster_info = geokit.core.raster.rasterInfo(path_to_sample_raster_data)
print(raster_info)
raster_info.srs.ExportToPrettyWkt()
path_to_sample_raster_data = get_test_data(file_name="clc-aachen_clipped.tif")
raster_info = geokit.core.raster.rasterInfo(path_to_sample_raster_data)
print(raster_info)
raster_info.srs.ExportToPrettyWkt()
RasterInfo(srs=<osgeo.osr.SpatialReference; proxy of <Swig Object of type 'OSRSpatialReferenceShadow *' at 0x7feb984985d0> >, dtype=1, flipY=True, yAtTop=True, bounds=(4012100.0, 3031800.0, 4094600.0, 3111000.0), xMin=4012100.0, yMin=3031800.0, xMax=4094600.0, yMax=3111000.0, dx=100.0, dy=100.0, pixelWidth=100.0, pixelHeight=100.0, noData=0.0, xWinSize=825, yWinSize=792, meta={'AREA_OR_POINT': 'Area'}, source='/home/docs/checkouts/readthedocs.org/user_builds/geokit/checkouts/latest/geokit/data/clc-aachen_clipped.tif', scale=None, offset=None, data_type_name_str='Byte', minimum_value=None, maximum_value=None)
Out[2]:
'PROJCS["ETRS89-extended / LAEA Europe",\n GEOGCS["ETRS89",\n DATUM["European_Terrestrial_Reference_System_1989",\n SPHEROID["GRS 1980",6378137,298.257222101,\n AUTHORITY["EPSG","7019"]],\n AUTHORITY["EPSG","6258"]],\n PRIMEM["Greenwich",0,\n AUTHORITY["EPSG","8901"]],\n UNIT["degree",0.0174532925199433,\n AUTHORITY["EPSG","9122"]],\n AUTHORITY["EPSG","4258"]],\n PROJECTION["Lambert_Azimuthal_Equal_Area"],\n PARAMETER["latitude_of_center",52],\n PARAMETER["longitude_of_center",10],\n PARAMETER["false_easting",4321000],\n PARAMETER["false_northing",3210000],\n UNIT["metre",1,\n AUTHORITY["EPSG","9001"]],\n AXIS["Northing",NORTH],\n AXIS["Easting",EAST],\n AUTHORITY["EPSG","3035"]]'
In [3]:
Copied!
# Warp
path_to_sample_raster_data = get_test_data(file_name="clc-aachen_clipped.tif")
geokit.core.raster.drawRaster(
source=path_to_sample_raster_data,
figsize=(6, 6),
)
warped_raster = geokit.core.raster.warp(
path_to_sample_raster_data,
srs=geokit.core.srs.EPSG4326,
resampleAlg="near",
)
axes_handle = geokit.core.raster.drawRaster(warped_raster, figsize=(6, 4))
# Warp
path_to_sample_raster_data = get_test_data(file_name="clc-aachen_clipped.tif")
geokit.core.raster.drawRaster(
source=path_to_sample_raster_data,
figsize=(6, 6),
)
warped_raster = geokit.core.raster.warp(
path_to_sample_raster_data,
srs=geokit.core.srs.EPSG4326,
resampleAlg="near",
)
axes_handle = geokit.core.raster.drawRaster(warped_raster, figsize=(6, 4))