Logo Lanfrica

RvitorSgeo/Sentinel-2-Change-Analysis

Domaine:

geospatial

Type de record:

software
Créateur:
Rvi
Hôte:
Sentinel-2 RGB change-detection workflow for an open-pit mining site in Zambia. Implements raster preparation, RGB Change Vector Analysis, thresholding, polygon extraction, artifact filtering, GeoPackage storage, visualization, and technical interpretation. # Sentinel-2 RGB-CVA Mining Change Detection This repository contains a Python geospatial workflow for detecting and interpreting surface change at an open-pit mining site in Zambia using two dates of Sentinel-2 visible-band imagery. The workflow prepares Sentinel-2 Bands 2, 3, and 4, applies RGB Change Vector Analysis (RGB-CVA), generates continuous and binary change rasters, converts detected changes into vector polygons, filters a diagonal image artifact, stores results in a GeoPackage database, and creates figures for technical interpretation. ## Project objective The objective is to demonstrate an end-to-end geospatial data science workflow for mining-related change detection using simple, reproducible, and interpretable methods. The analysis focuses on detecting spectral change between: - **Before image:** 2023-08-12 - **After image:** 2023-09-02 - **Input bands:** Sentinel-2 B2, B3, and B4 - **Main method:** RGB Change Vector Analysis - **Selected binary threshold:** P98, representing the strongest 2% of RGB-CVA change-intensity pixels The outputs should be interpreted as **detected spectral change**, not as confirmed mining expansion or confirmed land-use change. ## Installation Create a Python environment and install the required packages. Using `conda` is recommended for geospatial dependencies: ```bash conda create -n solafune-change python=3.11 conda activate solafune-change conda install -c conda-forge geopandas rasterio rasterstats shapely fiona pyproj scikit-image matplotlib seaborn pandas numpy tabulate jupyter ``` Alternatively, use `pip`: ```bash pip install geopandas rasterio rasterstats shapely fiona pyproj scikit-image matplotlib seaborn pandas numpy tabulate jupyter ``` ## Usage 1. Clone this repository. 2. Place the provided input data under `inputs/data/`. 3. Place the AOI file at `inputs/aoi.geojson`. 4. Open the notebook: ```bash jupyter notebook sentinel2_rgb_cva_mining_change_detection.ipynb ``` ### Repository structure …