We'll cover the image processing operations you need to know to solve common geologic and geophysical problems across scales using Python. Images are more than just photographs, and we'll focus on methods that can be applied to any regularly sampled dataset, be it a thin section, an elevation map, a seismic volume, or a satellite image. If you've ever wondered how to chain Python libraries together to accomplish tasks you do in ImageJ, ArcGIS Spatial Analyist, or Photoshop, this tutorial is right for you.
We'll focus primarly on using basic numpy operations, scipy.ndimage, and scikit-image, but we'll do some work with more specalized libraries as well.
Materials are in the git repository here:
https://github.com/joferkington/geo_image_processing_tutorial The material is still under active development at the moment, but feel free to browse around. If you're not familiar with how to work with this repository, you can
run the tutorial in binder.While the details may change, here's the current outline:
- Overview / Introduction
- Seamount Detection Example
- Thresholding
- Filtering
- Segmentation
- Simplification
- Slope and Hillshade of Topographic Data
- Grain Detection in Thin Sections
- Using gradients for more than slope
- Lineament Analysis from Aerial Photography
- Edge detection
- Hough Transform
- Structure Tensor
- What is color?