📚 The CoCalc Library - books, templates and other resources
License: OTHER
Image analysis in Python with SciPy and scikit-image
Across domains, modalities, and scales of exploration, images form an integral subset of scientific measurements. Despite a deep appeal to human intuition, gaining understanding of image content remains challenging, and often relies on heuristics. Even so, the wealth of knowledge contained inside of images cannot be understated. Scikit-image is an image processing library, built on top of SciPy, that provides researchers, practitioners, and educators access to a strong foundation upon which to build algorithms and applications.
Image analysis is central to a boggling number of scientific endeavors. Google needs it for their self-driving cars and to match satellite imagery and mapping data. Neuroscientists need it to understand the brain. NASA needs it to map asteroids and save the human race. It is, however, a relatively underdeveloped area of scientific computing. Attendees will leave this tutorial confident of their ability to extract information from their images in Python.
The tutorial is aimed at intermediate users of scientific Python with a working knowledge of NumPy. We introduce the library and give practical, real-world examples of applications. Throughout, attendees are given the opportunity to learn through hands-on exercises.
Prerequisites
All of the below packages, including the non-Python ones, can be found in the Anaconda Python distribution, which can be obtained for free. (Though some packages may need to be installed using conda install packagename
.)
Required packages
scikit-image (0.12.3)
Required for scikit-image:
Python >= 3.5
numpy >= 1.10
scipy >= 0.17
Required for image viewing and other examples:
matplotlib >= 1.5
Required for development (not this tutorial):
cython >= 0.23
Recommended for Input/Output:
Pillow >= 3.0
Example images
scikit-image ships with some example images in skimage.data
.
Sections
For convenience, we have divided this tutorial into several chapters, linked below. Throughout the tutorials, feel free to ask questions. We want you to come away confident in your image analysis skills!
1:30 - 1:40: Introduction
1:40 - 2:20: Images are just NumPy arrays
[10 minute break]
2:30 - 2:50: Image filters
2:50 - 3:30: Segmentation
[20 minute break]
3:50 - 4:30: RANSAC
[10 minute break]
4:40 - 5:30: Geometric transforms and warping, Panorama stitching
Further information
Here are some real world use cases.
The other scikits & interoperation with other Python packages
ndimage vs scikit-image
scikit-image vs opencv
After the tutorial
Stay in touch!
Follow the project's progress on GitHub.
Ask the team questions on the mailing list
Read our paper!