Numerical image processing involves the manipulation and transformation of images, often in order to extract information of interest from the images. NumPy ndarrays provide an efficient container for image data, that can therefore be processed using the SciPy toolstack.
In this tutorial, we will first briefly see how simple operations on images (e.g. cropping, framing) can be performed using NumPy. More complex image processing operations will be handled principally by the scikit-image module, or occasionally by the ndimage submodule of SciPy. Compared to other image processing modules for Python, scikit-image is designed to work transparently with numpy nd-arrays, and is written in pure Python and some Cython in order to promote readability and maintainability.
The different subtopics of this tutorial include:
This tutorial will consist mostly of hands-on examples; no mathematical justification of the algorithms will be given during the tutorial. Besides the main image processing tasks, the tutorial will demonstrate how NumPy advanced features (masks, broadcasting, manipulation of subsets of indices) and scikit-image utilities functions make image processing easier. The tutorial will also address the visualization of image processing results (contours, etc.).
Installation of the scikit-image : see http://scikit-image.org/download.html