Explainable multispectral crop-stress detection
An explainable image-analysis pipeline for detecting selected crop-stress patterns from public multispectral satellite imagery and prepared reference labels.
Project definition
Problem statement
Crop stress can change reflectance before the effect is obvious in ordinary images, but cloud cover, soil background, crop stage, and limited field labels make reliable detection difficult.
The engineering problem is to create a reproducible multispectral pipeline that compares interpretable spectral baselines with a learned model while preventing spatial data leakage and showing uncertainty in every prediction.
Project objectives
- Prepare cloud-filtered and spatially aligned multispectral image samples for selected crops and regions.
- Compare vegetation-index and statistical baselines with a machine-learning model.
- Separate training and test areas geographically to measure generalisation more honestly.
- Generate explanation maps and confidence values for predicted stress patterns.
- Measure classification, localisation, calibration, and processing performance.
System design
System modules
Imagery manager
Imports public multispectral scenes, records band and acquisition metadata, and applies cloud and quality masks.
Preprocessing pipeline
Aligns bands, clips study areas, normalises values, creates tiles, and links prepared reference labels.
Spectral analysis
Calculates selected vegetation and moisture indices and produces transparent rule-based baselines.
Model trainer
Trains selected classifiers with fixed spatial splits, augmentation controls, and saved experiment configurations.
Explanation module
Produces band importance, feature contribution, or saliency outputs with prediction confidence.
Map and evaluation interface
Displays imagery, labels, predictions, explanations, errors, and metrics by region and acquisition date.
Methodology
System workflow
- 01Select study data
The user chooses a prepared region, crop period, imagery collection, and permitted reference labels.
- 02Prepare imagery
The pipeline masks invalid pixels, aligns bands, creates spectral features, and assigns tiles to spatial dataset splits.
- 03Train and compare
Baseline methods and the selected learned model run on the same prepared data and configuration.
- 04Generate maps
Predictions, confidence values, and explanations are joined to their geographic locations.
- 05Evaluate
The system reports class metrics, calibration, spatial errors, and performance across acquisition conditions.
Demonstration scenario
A user opens a prepared agricultural study area and compares a vegetation-index baseline with the trained model. The map shows predicted stress classes, confidence, and band-level explanations. Selecting a field displays its time sequence and the model error analysis for that spatial test area.
Engineering
Technical architecture
- Web application
- Nuxt and Vue for study selection, layer controls, map comparison, prediction review, and experiment summaries.
- Geospatial API
- FastAPI for imagery jobs, tile metadata, predictions, explanations, and evaluation results.
- Spatial data layer
- PostgreSQL and PostGIS for study areas, image footprints, labels, tiles, predictions, and experiment metadata.
- Image pipeline
- Python and Rasterio for band handling, masking, alignment, tiling, spectral features, and geospatial exports.
- Model pipeline
- PyTorch or a selected machine-learning library for training, inference, calibration, and explanation generation.
- Delivery
- Docker-based setup with prepared sample data, fixed spatial splits, saved model configurations, and reproducible experiments.
Testing
Evaluation
Evaluation measures
- Precision, recall, F1 score, and area under the precision-recall curve
- Performance on geographically separated test areas
- Calibration error and reliability of prediction confidence
- Agreement between explanation outputs and expected spectral behaviour
- Robustness across cloud levels, crop stages, and acquisition dates
- Preprocessing and inference time for the prepared study areas
System boundaries
- The prototype detects only the selected labelled stress categories in the prepared study area.
- A prediction is an image-based indicator and not a diagnosis of disease, nutrient deficiency, or irrigation need.
- The system does not replace field inspection or advice from an agricultural specialist.
- Only public or explicitly permitted imagery and reference labels are included.
Included
- 01Multispectral image preparation and field-selection tools
- 02Spectral-index, baseline, and machine-learning pipelines
- 03Map-based predictions, explanations, and uncertainty display
- 04Prepared imagery, labels, experiments, and evaluation results
- 05Complete source code in a private GitHub repository
- 06Complete project documentation with synopsis, abstract, methodology, system diagrams, model results, maps, screenshots, and conclusion
- 07Setup and usage guide
Project record
No buyer information is collected on this page.
- Permanent project ID
- GP-DA-0IQOMRW
- Catalogued
- 21 Aug 2026
- Completed
- Pending
- Verified
- Pending
- Demonstration
- Added when ready
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.