To access the Canopy Height Google Earth Engine App, click here. For a detailed description of the procedure and to view the repository, you can visit the project on GitHub here. To export large CH-GEE maps, you can visit the code source here and watch the video tutorial here
The Canopy Height Mapper is a Google Earth Engine 🌎⛰️🌳🌲web application (CH-GEE) combining Global Ecosystem Dynamics Investigation (GEDI) data with Sentinel 1/2 and topographical data. The GEDI mission can monitor nearest Earth's forests through widespread laser shots of ~25 m of diameters (between 51.6° N and >51.6° S).
The vision of the CH-GEE web app is to be the leading platform for accessing high-resolution Canopy Height maps of Earth's forests. We aim to empower individuals, organisations, and researchers worldwide with the tools and data they need to make informed decisions, protect forests, and address critical environmental challenges.
Note: If the area of interest is larger than 10,000 grid dimensions and the GeoTIFF file exceeds 32MB, please follow this code.
// ***************** Run CH-GEE code ***********************
var aoi = yourAOI; // Define your area of interest
var library = require("users/calvites1990/CH-GEE:CH-GEE_main");
var CH_GEE = library.CanopyHeightMapper(
aoi, // Area of Interest (AOI)
2019, // YYYY - Sentinel collection year
"06-01", // MM-DD of start Sentinel collection
"08-31", // MM-DD of end Sentinel collection
"2019-01-01", // YYYY-MM-DD of start GEDI collection
"2020-01-01", // YYYY-MM-DD of end GEDI collection
70, // Cloud coverage percentage ("70")
"rh95", // GEDI metric, e.g., "rh95"
"RF", // Model type: "RF" (Random Forest), "GBM" (Gradient Boosting Machine), or "CART" (Classification and Regression Trees)
"FNF", // Forest mask: "FNF" or "DW"
"singleGEDI", // GEDI processing type: "SingleGEDI" or "meanGEDI"
500, // Number of trees in Random Forest model (NumTreesRF)
5, // Split ratio in Random Forest model (varSplitRF)
1, // Minimum leaf population in Random Forest model (minLeafPopuRF)
0.5, // Bagging fraction in Random Forest model (bagFracRF)
5, // Maximum number of nodes in Random Forest model (maxNodesRF)
"null", // Number of trees in GBM model (numTreesGBM)
"null", // Shrinkage rate in GBM model (shrGBM)
"null", // Learning rate in GBM model (samLingRateGBM)
"null", // Maximum number of nodes in GBM model (maxNodesGBM)
"null", // Loss function in GBM model (lossGBM)
"null", // Maximum number of nodes in CART model (maxNodesCART)
"null" // Minimum leaf population in CART model (minLeafPopCART)
);
// ***************** Zoom to CH-GEE map *****************
Map.centerObject(aoi, 14);
// ******************************************************
// ***************** Export CH-GEE map *******************
var CHMap = ee.Image(ee.List(CH_GEE).get(0));
Export.image.toDrive({
image: CHMap,
description: "CHMap", // Change "CHMap" to your desired map name
folder: "ee_drive", // Rename this to your desired folder in Google Drive
region: aoi,
scale: 10,
maxPixels: 1e13,
crs: 'EPSG:4326' // Reconfigure based on your personal EPSG
});
// *********************** End ***********************
Alvites, C.; O’Sullivan, H.; Francini, S.; Marchetti, M.; Santopuoli, G.; Chirici, G.; Lasserre, B.; Marignani, M.; Bazzato, E. High-Resolution Canopy Height Mapping: Integrating NASA’s Global Ecosystem Dynamics Investigation (GEDI) with Multi-Source Remote Sensing Data. Remote Sens. 2024, 16, 1281. https://doi.org/10.3390/rs16071281
Alvites, C., O’Sullivan, H., Saverio, F., Marco, M., Santopuoli, G., Chirici, G., ... & Bazzato, E. (2024). Canopy Height Mapper: a Google Earth Engine application for predicting global canopy heights combining GEDI with multi-source data. Environmental Modelling & Software, 106268. https://doi.org/10.1016/j.envsoft.2024.106268
- Alvites Cesar
- Bazzato Erika
- O'Sullivan Hannah
- Francini Saverio
This GEE application was initially conceived during the 2nd edition Google Earth Engine Summer School organized by the Laboratory of Forest Geomatics, University of florence (September 2022).
Area of Interest (AOI) definition: Users can define the AOI by either 1) drawing it manually or 2) uploading a polygon in format Shapefile. For projection details, users can refer to the official GEE guide.
Users can select one of the three options for forest masks available in the CH-GEE web app: 1.Forest mask available at "GOOGLE/DYNAMICWORLD/V1" and 2. Forest mask available at "JAXA/ALOS/PALSAR/YEARLY/FNF". In contrast, the "exclude forest mask" option will assume that the full AOI is covered by forest.
Users can select between 1) single GEDI Relative Height (Rh; m) metric ranging from 1% to 100%, or 2) The average GEDI Rh metric among 75%, 90%, 95%, and 100%.
Specify the start and end dates (Year/Month/Day) for GEDI collections to access data based on the specified period.
Specify the start and end dates (Year/Month/Day) for the Sentinel 1/2 collection to access data based on the specified period. The cloud coverage threshold for Sentinel-2 pixels is set at 70%, as this is widely recognized as a practical limit for ensuring accurate pixel-wise analyses
After setting the temporal extent for Sentinel-1 and 2, users can adjust the cloud coverage percentage for Sentinel-2 images using the "Cloud Threshold" slider. A 70% threshold is recommended for accurate analysis and is set as the default, but this may vary depending on local weather conditions.
Users can select one of the three ML option: 1) Random Forests (RF), 2) Gradient Tree Boosting (GB), and 3) Classification and Regression Trees (CART). Hyperparameters for RF include the number of decision trees (numberOfTrees), variables per split (variablesPerSplit), minimum training samples in each leaf node (minLeafPopulation), input fraction for bagging per tree (bagFraction), and maximum leaf nodes per tree (maxNodes). For GB, parameters encompass the number of decision trees (numberOfTrees), learning rate (shrinkage), sampling rate for stochastic tree boosting (samplingRate), maximum leaf nodes per tree (maxNodes), and loss function for regression (loss). CART parameters include maximum leaf nodes per tree (maxNodes) and minimum training samples in each leaf node (minLeafPopulation).
Users need to customize the desired folder and file name using the “Download Canopy Height Map” button in the CH-GEE app.
Run the CH-GEE web app using the selected parameters for the defined study area. Users can automatically generate a Canopy Height map, along with scatter plots and variable importance graphs. To visualize the R-squared values, users can hover over the function formula
Clear previously set parameters and study area configurations.