NDVI Calculation & Vegetation Health Mapping
**NDVI (Normalized Difference Vegetation Index)** is one of the most widely used remote sensing indices. It measures vegetation health and density using satellite imagery, based on how plants reflect near-infrared and red light differently. ---
📋 Prerequisites
- QGIS Desktop 3.22+ installed on your computer.
- Basic understanding of GIS data concepts.
Step-by-Step Instructions
Understand the NDVI Formula
- **NIR (Near Infrared):** Healthy vegetation reflects this strongly - **Red:** Healthy vegetation absorbs this strongly (for photosynthesis) - The result always falls between **-1 and +1** | NDVI Range | Meaning | |---|---| | -1 to 0 | Water, snow, clouds | | 0 to 0.2 | Bare soil, rock, urban areas | | 0.2 to 0.5 | Sparse/moderate vegetation | | 0.5 to 0.9 | Dense, healthy vegetation | ---
NDVI = (NIR - Red) / (NIR + Red)Get the Right Satellite Data
You need a multispectral image with at least a Red and NIR band: - **Sentinel-2:** Band 4 (Red), Band 8 (NIR) — 10m resolution - **Landsat 8/9:** Band 4 (Red), Band 5 (NIR) — 30m resolution Download free imagery from **USGS EarthExplorer** or **Copernicus Open Access Hub**. ---
Calculate NDVI in QGIS
1. Load your Red and NIR bands as raster layers (or a multi-band image) 2. Go to **Raster → Raster Calculator** 3. In the expression box, enter: (Replace with your actual band layer names) 4. Set the output file name and click **OK** ---
("NIR@1" - "Red@1") / ("NIR@1" + "Red@1")Calculate NDVI in Google Earth Engine (Optional, Faster)
---
var image = ee.Image('COPERNICUS/S2_SR/YOUR_IMAGE_ID');
var ndvi = image.normalizedDifference(['B8', 'B4']).rename('NDVI');
Map.addLayer(ndvi, {min: -1, max: 1, palette: ['red', 'yellow', 'green']}, 'NDVI');Symbolize and Interpret the NDVI Output
1. Right-click your NDVI raster → **Properties → Symbology** 2. Choose **Singleband Pseudocolor** 3. Apply a color ramp like **RdYlGn** (Red-Yellow-Green) for intuitive interpretation 4. Set min value to -1, max to 1 Areas in **deep green** indicate dense, healthy vegetation; **red/brown** indicates bare soil, water, or stressed vegetation. ---
Real-World Applications
- **Agriculture:** Monitor crop health and detect stressed fields early - **Forestry:** Track deforestation over time - **Drought Monitoring:** Compare NDVI across seasons/years - **Urban Planning:** Measure green cover in cities ---
🧠 Quick Recap & Practice Questions
## Quick Recap
- NDVI = (NIR - Red) / (NIR + Red), range -1 to +1
- Higher NDVI = healthier, denser vegetation
- Sentinel-2 and Landsat both provide the bands needed
- Use Raster Calculator in QGIS or Earth Engine for computation
---
## Practice Questions
1. Why does healthy vegetation have high NDVI values?
2. Which Sentinel-2 bands are used to calculate NDVI?
3. What would an NDVI value of -0.3 most likely represent?
---
*Next Tutorial: Land Use / Land Cover (LULC) Classification*