Installing scikit-image

Standard Python installation

From the shell, execute:

pip install scikit-image

Conda-based distributions (Anaconda, Miniconda)

From the shell/command prompt, execute:

conda install scikit-image


scikit-image comes pre-installed with several Python distributions, including Anaconda, Enthought Canopy, Python(x,y) and WinPython.

If you are using the distribution from, you’ll need to manually download a few packages: numpy, scipy and scikit-image from Christoph Gohlke’s website. Python wheels are installed using:

pip install SomePackage-1.0-py2.py3-none-any.whl

Debian and Ubuntu

On Debian and Ubuntu install scikit-image with:

sudo apt-get install python-skimage

Building from source

Execute the following command from the shell:

pip install scikit-image


If you experience the error Error:unable to find vcvarsall.bat it means that distutils is not correctly configured to use the C compiler. Modify (or create, if not existing) the configuration file distutils.cfg (located for example at C:\Python26\Lib\distutils\distutils.cfg) to contain:


For more details on compiling in Windows, there is a lot of knowledge iterated into the setup of appveyor (a continuous integration service).

Debian and Ubuntu

If your distribution ships an outdated version, you may recompile from source. First install the dependencies:

sudo apt-get install python-matplotlib python-numpy python-pil python-scipy

Get compilers:

sudo apt-get install build-essential cython

Then run the pip installation command.

Running the development version

Obtain the source from the git repository at by running:

git clone

After unpacking, change into the source directory and execute:

pip install -e .

To update:

git pull  # Grab latest source
python build_ext -i  # Compile any modified extensions

Building with bento

Alternatively, scikit-image can also be built using bento. Bento depends on WAF for compilation.

Follow the Bento installation instructions and download the WAF source.

Tell Bento where to find WAF by setting the WAFDIR environment variable:

export WAFDIR=<path/to/waf>

From the scikit-image source directory:

bentomaker configure
bentomaker build -j     # (add -i for in-place build)
bentomaker install      # (when not building in-place)

Depending on file permissions, the install commands may need to be run as sudo.

Runtime requirements

You can use pip to automatically install the runtime dependencies as follows:

$ pip install -r requirements.txt

Optional Requirements

You can use this scikit with the basic requirements listed above, but some functionality is only available with the following installed:

  • PyQt4

    The qt plugin that provides imshow(x, fancy=True) and skivi.

  • FreeImage

    The freeimage plugin provides support for reading various types of image file formats, including multi-page TIFFs.

  • PyAMG

    The pyamg module is used for the fast cg_mg mode of random walker segmentation.

  • Astropy provides FITS io capability.

  • SimpleITK Optional io plugin providing a wide variety of formats. including specialized formats using in medical imaging.

  • imread Optional io plugin providing most standard formats.

Testing requirements

  • Nose

    A Python Unit Testing Framework


    A tool that generates a unit test code coverage report

Documentation requirements

sphinx >= 1.3 is required to build the documentation.