Google Earth Engine Tutorial: Monitor Urban CO Levels and Energy Proxies
Credit: Youtube Channel “Terra Spatial, Guide on monitoring urban carbon monoxide levels and visualizing energy proxies using Sentinel-5P and VIIRS data.”
You can see all the tutorials from here: Techgeo Academy.
Introduction
Google Earth Engine (GEE) is a powerful platform for analyzing geospatial data at scale. This tutorial focuses on monitoring urban carbon monoxide (CO) levels and energy proxies to assess environmental impact and urbanization trends. By combining satellite data with energy usage indicators, you can gain insights into pollution patterns and infrastructure development.
Step 1: Accessing Google Earth Engine
To begin, create a free account on the Google Earth Engine platform and install the GEE JavaScript API. Once set up, you can write and execute scripts in the Code Editor to analyze data.
Include the GEE API in your script using:
var dataset = ee.ImageCollection("COPERNICUS/S5P/OFFL/L3_CO");
Step 2: Loading Urban CO Data
Use satellite datasets like the Copernicus Sentinel-5P to access CO concentration data. Filter the dataset to your region of interest and time range:
var urbanRegion = ee.Geometry.Rectangle([lng1, lat1, lng2, lat2]);
var coData = dataset.filterDate('2020-01-01', '2021-01-01')
.filterBounds(urbanRegion)
.select('CO_column_number');
Step 3: Incorporating Energy Proxies
Energy proxies can be derived from nighttime light data, such as the DMSP/OLS nightlights dataset. Normalize and combine it with CO data for visualization:
var energyData = ee.Image('NOAA/DMSP-OLS/NIGHTTIME_LIGHTS');
var mergedData = coData.merge(energyData);
Step 4: Processing and Analysis
Calculate mean CO levels for each urban area and visualize trends over time. For example:
var coMedian = coData.mean();
Map.setCenter(lng, lat, 10);
Map.addLayer(coMedian, {min: 0, max: 200, palette: ['blue', 'green', 'red']}, 'CO Levels');
Use ee.Reducer.mean() to extract average values and pair them with energy metrics.
Step 5: Visualization and Export
Generate maps and charts to compare CO levels with energy use. Export the results as GeoTIFF or CSV for further analysis:
Export.image.toDrive({
image: coMedian,
description: 'co_export',
folder: 'GEEExports',
scale: 1000,
region: urbanRegion
});
FAQ
- What datasets are best for CO monitoring in GEE? The Sentinel-5P product is ideal for CO concentrations, while DMSP/OLS provides energy proxies through nighttime lights.
- How accurate are energy proxies for urban areas? Nighttime lights correlate strongly with energy use but may not capture non-illuminated energy consumption (e.g., industrial activity).
- Can GEE handle large-scale urban data? Yes, GEE processes global datasets efficiently using its cloud-based infrastructure and parallel computing capabilities.
- What tools are used to visualize results? GEEβs Map and Chart widgets enable interactive visualization, while export functions support offline analysis.
- How to handle missing or noisy data? Use
mask()orfill()to clean datasets, or apply statistical reducers to mitigate outliers.






