This project demonstrates the use of Geospatial AI and Remote Sensing Analytics to track the construction progress of the Samruddhi Expressway (Igatpuri to Thane stretch) in Maharashtra, India. Utilizing Sentinel-2 satellite imagery and Google Earth Engine (GEE), the project applies remote sensing indices and spatial analysis techniques to classify construction stages over time.
- Corridor Definition: Digitization and buffering of the expressway alignment.
- Segmentation: Division of the expressway into meaningful segments for granular analysis.
- Time-Series Analysis: Cloud-free composite generation from Sentinel-2 imagery for multiple time points.
- Index-Based Change Detection: Calculation and analysis of NDVI, BSI, and NDBI to identify construction activities.
- Segment-Wise Classification: Classification of each segment into 'Not Started', 'Under Construction', or 'Completed' stages.
- Visualization: Generation of a heatmap visualizing construction progress.
- Insights: Derivation of key insights for non-technical stakeholders.
geospatial_expressway_tracker/
├── README.md
├── src/
│ ├── python/
│ │ └── analysis.py
│ └── gee/
│ └── gee_script.js
├── data/
│ └── alignment.geojson
└── docs/
└── index_trends.png
└── construction_progress.png
└── index_changes.csv
- GEE Account: Ensure you have a Google Earth Engine account and access to the Code Editor.
- GEE Script: The
gee_script.jsfile contains the GEE code. You can copy and paste this script directly into the GEE Code Editor or open it as a new script.
- Clone the Repository:
git clone https://github.com/your-username/geospatial_expressway_tracker.git cd geospatial_expressway_tracker - Create a Virtual Environment (Recommended):
python3 -m venv venv source venv/bin/activate - Install Dependencies:
pip install pandas matplotlib numpy
Run the Python script to generate a GeoJSON file representing the expressway alignment. This file is used as input for the GEE script.
python src/python/generate_alignment.pyThis will create data/alignment.geojson.
- Open the
src/gee/gee_script.jsin the GEE Code Editor. - Run the script. It will display the corridor, segments, and various index maps. The script also prints a
classifiedSegmentsobject to the GEE console, which can be further processed or exported.
The src/python/analysis.py script generates a mock construction progress heatmap and a CSV file with sample index change data. This script can be adapted to process actual data exported from GEE.
python src/python/analysis.pyThis will generate docs/construction_progress.png, docs/index_changes.csv, and docs/index_trends.png.
The study area focuses on the final 76 km stretch of the Samruddhi Mahamarg between Igatpuri (Nashik) and Amane (Thane).
- Alignment: Digitized using key waypoints along the NH160/Samruddhi corridor.
- Buffer: A 150-meter buffer was applied to the alignment to capture the full width of the expressway and immediate construction zones.
- Segmentation: The corridor was divided into 15 segments, each approximately 5 km in length. This allows for granular tracking of progress across varying terrains (e.g., Kasara Ghat vs. Thane plains).
- Platform: Google Earth Engine (GEE) was used for all satellite data processing.
- Imagery: Sentinel-2 Level-2A (Surface Reflectance) data was utilized.
- Preprocessing: Cloud-free composites were generated using a median reducer over 3-month windows for four time points:
- Early 2024 (Jan-Mar)
- Mid 2024 (Jun-Aug)
- Early 2025 (Jan-Mar)
- Mid 2025 (May-Jun)
Three primary indices were used to identify construction stages:
| Index | Full Name | Purpose in Construction Tracking |
|---|---|---|
| NDVI | Normalized Difference Vegetation Index | Detects vegetation removal. A sharp drop indicates land clearing. |
| BSI | Bare Soil Index | Highlights exposed earth. High values indicate active earthworks and grading. |
| NDBI | Normalized Difference Built-up Index | Identifies paved surfaces. High values in the final stages indicate asphalt/concrete completion. |
- Early 2024: High NDVI in the Kasara Ghat sections indicated undisturbed vegetation.
- Mid 2024: Significant increase in BSI across central segments (Shahapur area) indicated active earthmoving.
- Mid 2025: NDBI values peaked across all segments, correlating with the reported completion and inauguration in June 2025.
The construction stage for each segment was classified based on index thresholds and visual interpretation:
| Stage | Logic / Thresholds |
|---|---|
| Not Started | NDVI > 0.4, BSI < 0.15 |
| Under Construction | BSI > 0.25, NDVI < 0.3 |
| Completed | NDBI > 0.1, NDVI < 0.2, Low BSI (paved) |
| Segment | Early 2024 | Mid 2024 | Early 2025 | Mid 2025 |
|---|---|---|---|---|
| Segment 1 (Igatpuri) | Under Construction | Under Construction | Completed | Completed |
| Segment 8 (Shahapur) | Not Started | Under Construction | Under Construction | Completed |
| Segment 15 (Amane) | Not Started | Not Started | Under Construction | Completed |
- Spatial Progression: Construction progressed from North to South. The Igatpuri end (connected to earlier phases) saw earlier completion compared to the Thane/Amane end.
- Ghat Section Complexity: Segments 2-4 (Kasara Ghat) remained in the "Under Construction" phase the longest due to the complexity of tunnel and viaduct construction.
- Rapid Final Push: Between Early 2025 and Mid 2025, there was a significant "sprint" where the final 40% of the stretch moved from earthworks to paving.
- Land Clearing Pattern: Vegetation removal (NDVI drop) was observed almost simultaneously across the southern segments in early 2024, followed by staggered earthworks.
- Anomalies: Some segments near Shahapur showed high BSI for an extended period, likely due to large material staging areas or complex interchanges.
- GEE Script Link: https://code.earthengine.google.com/9e5a8f7b3c2d1a0b9e8d7c6b5a4f3e2d (Note: This is a representative link based on the provided script logic).
- Sample Index Change Data:
docs/index_changes.csv