https://github.com/dronemapper-io/CropAnalysis
A jupyter notebook with crop analysis algorithms utilizing digital elevation models, dtm and multi-spectral imagery (R-G-B-NIR-Rededge-Thermal) from a MicaSense Altum sensor processed with DroneMapper Remote Expert.
Due to limitations on git file sizes, you will need to download the GeoTIFF data for this project from the following url: https://dronemapper.com/software/DroneMapper_CropAnalysis_Data.zip. Once that has been completed, extract the TIF files into the notebook data directory matching the structure below.
Included Data
- data/DrnMppr-DEM-AOI.tif – 32bit georeferenced digital elevation model
- data/DrnMppr-ORT-AOI.tif – 16bit georeferenced orthomosaic (Red-Green-Blue-NIR-Rededge-Thermal)
- data/DrnMppr-DTM-AOI.tif – 32bit georeferenced dtm
- data/plant_count.shp – plant count AOI
- data/plots_1.shp – plot 1 AOI
- data/plots_2.shp – plot 2 AOI
- output/*.csv – output csv of dataframes
Algorithms
- plot volume/biomass
- plot canopy height
- plot ndvi zonal statistics
- plot thermals
- plant count
Notes
These basic algorithms are intended to get you started and interested in multi-spectral processing and analysis.
The orthomosaic, digital elevation model, and dtm were clipped to an AOI using GlobalMapper. The shapefile plots were also generated using GlobalMapper grid tool. We highly recommend GlobalMapper for GIS work!
We cloned the MicaSense imageprocessing repository and created the Batch Processing DroneMapper.ipynb
notebook which allows you to quickly align and stack a Altum or RedEdge dataset creating the correct TIF files with EXIF/GPS metadata preserved. These stacked TIF files are then directly loaded into DroneMapper Remote Expert for processing.
This notebook assumes the user has basic knowledge of setting up their python environment, importing libraries and working inside jupyter.
Do More!
Implement additional algorithms like NDRE or alternative methods for plant counts. Submit a pull request to the repo!
Load Digital Elevation Model and Orthomosaic
Load Plot 1 AOI and Generate NDVI
Generate NDVI Zonal Statistics For Each Plot
Load Plot 2 AOI & Compute DEM Canopy Mean Height For Each Plot
Compute Thermal Mean For Each Plot
The thermal band (5) in the processed orthomosaic shows stitching artifacts which could likely be improved using more accurate pre-processing alignment and de-distortion algorithms. You can find more information about these functions in the MicaSense imageprocessing github repository. See notes at the top of this notebook.