SciPy is a well-known Python library focusing on scientific computing (it contains modules for optimization, linear algebra, integration, interpolation, and special functions such as FFT, signal, and image processing). It builds on the NumPy Array object, and NumPy is part of the whole SciPy stack (remember that we introduced the Scientific Python family in Chapter 1, An Introduction to NumPy). However, the SciPy module contains various topics that we can't cover in just one section. Let's look at an example of image processing (noise removal) to help you get some idea of what SciPy can do:
In [1]: from scipy.misc import imread, imsave, ascent In [2]: import matplotlib.pyplot as plt In [3]: image_data = ascent()
First, we import three functions from SciPy's miscellaneous routines: imread
, imsave
, and ascent
. In the following example, we use the built-in image ascent
, which is a 512 by 512 greyscale image. Of course, you may use your own image; simply call imread('your_image_name...