Objectives
At the end of this course the student will be capable of:
Manage vector and raster spatial data with Python
Plot spatial data with Matplotlib and perform filtering
Apply different tools of Scikit Learn for geospatial objects
Work with a Python class for crop recognition
Have a overview of Python coding to develop custom solutions
Content
The course is divided into 6 sessions. These are topics considered for each session:
Session 1: Vector spatial data exploration with Fiona and Python
Installation of Python, Fiona, Rasterio under a Conda environment.
Open a shapefile / vector data with Fiona
Get spatial object features
Explore spatial objects metadata and geometry
Spatial data representation with matplotlib
Analysis of the supported spatial vector data types
Creation of point, line and polygon shapefiles
Spatial data filtering by attributes
Session 2: Raster data management with Rasterio and Python
Read monoband and panchromatic Tiff images.
Explore raster dataset info and attributes.
Analyze spatial information.
Read raster band data.
Raster plotting options with Rasterio and Matplotlib.
Clip rasters with shapefile in Python.
Raster algebra example: NDVI vegetation index calculation.
Session 3: Tree Counting Classification with Scikit Image and Python
Explore single crop and multiple crop templates.
Perform match template for a single and multiple crop.
Analyze the match template array.
Define filter criteria and count crops.
Representation of identified crops over raster image.
Session 4: Geospatial crop counting of palm trees
Open raster and vector files with Python
Coupled representation of spatial data with Matplotlib and Rasterio
Template extraction for spatial point data
Auxiliary template generation for different angles
Match template for a group of templates
Representation of the interpreted points
Cluster analysis with Birch algorithm
Representation of clustered points
Export points as csv
Session 5: Crop line detection for corn crops
Import raster ad read raster bands
Perform Canny filter for edge detection
Identification of lines with Hough line transform
Convert results to geospatial data
Save resulting line to shapefile
Representation of interpreted crop rows
Session 6: Spatial Python class for crop recognition
Overview of the Python class coding
Define crop orthophoto and point plant location
Define parameter for the match template and raster band
Perform single match templates
Match template for all points
Cluster analysis and save results as shapefile
Final Exam
Methodology
Here are some details of each methodology:
- Manuals and files for the exercises will be delivered.
- The course will be developed by videos on private web platform.
- There is online support for questions regarding the exercises developed in the course.
- Digital certificate available at the end of the course.
- Video of the classes will be available for 2 months.
- To receive the digital certificate you must submit the exams after 1 month.
- Teacher: Saul Montoya