AI-generated Key Takeaways
-
Image.changeProj()
modifies the projection of an image by moving pixels to match coordinates in a new projection. -
It takes the original projection (
srcProj
) and the target projection (dstProj
) as inputs. -
You can define projections using WKT strings or EPSG codes.
-
The function returns a new Image object with the altered projection.
-
This is useful for visualizing or processing data in different coordinate systems.
Usage | Returns |
---|---|
Image.changeProj(srcProj, dstProj) | Image |
Argument | Type | Details |
---|---|---|
this: input | Image | |
srcProj | Projection | The original projection. |
dstProj | Projection | The new projection. |
Examples
Code Editor (JavaScript)
// A DEM image object. var img = ee.Image('MERIT/DEM/v1_0_3'); // Construct a projection object from a WKT string or EPSG code, for example, // the Robinson projection (https://epsg.io/54030). var proj = ee.Projection( 'PROJCS["World_Robinson",' + 'GEOGCS["GCS_WGS_1984",' + 'DATUM["WGS_1984",' + 'SPHEROID["WGS_1984",6378137,298.257223563]],' + 'PRIMEM["Greenwich",0],' + 'UNIT["Degree",0.017453292519943295]],' + 'PROJECTION["Robinson"],' + 'UNIT["Meter",1]]' ) // Optionally adjust projection scale; stretch layer larger in this case. .scale(0.9, 0.9); // "Paint" the image in the desired projection onto the projection of // the map canvas ('EPSG:3857'). var imgProj = img.changeProj(proj, 'EPSG:3857'); // Add an overlay image to the map to cover the default base layers. Map.setCenter(0, 0, 2); Map.addLayer(ee.Image(1), {palette: 'grey'}, 'Grey background', false); // Add the projection-tweaked image to the map. Map.addLayer(imgProj, {min: 0, max: 3000}, 'DEM in Robinson projection');
import ee import geemap.core as geemap
Colab (Python)
# A DEM image object. img = ee.Image('MERIT/DEM/v1_0_3') # Construct a projection object from a WKT string or EPSG code, for example, # the Robinson projection (https://epsg.io/54030). proj = ( ee.Projection( 'PROJCS["World_Robinson",' + 'GEOGCS["GCS_WGS_1984",' + 'DATUM["WGS_1984",' + 'SPHEROID["WGS_1984",6378137,298.257223563]],' + 'PRIMEM["Greenwich",0],' + 'UNIT["Degree",0.017453292519943295]],' + 'PROJECTION["Robinson"],' + 'UNIT["Meter",1]]' ) # Optionally adjust projection scale stretch layer larger in this case. .scale(0.9, 0.9) ) # "Paint" the image in the desired projection onto the projection of # the map canvas ('EPSG:3857'). img_proj = img.changeProj(proj, 'EPSG:3857') # Add an overlay image to the map to cover the default base layers. m = geemap.Map() m.set_center(0, 0, 2) m.add_layer(ee.Image(1), {'palette': 'grey'}, 'Grey background', False) # Add the projection-tweaked image to the map. m.add_layer( img_proj, {'min': 0, 'max': 3000}, 'DEM in Robinson projection', ) m