ILIAS Universität Bern
  • Login
Show Sidebar

Breadcrumb Navigation

Icon Course

2020-01-21 Image processing with Python

Get started with image processing in Python.


About this training
Image processing with Python

Do you sometimes wish you could customize an existing image analysis procedure because it does not exactly fit your needs? Then join this training and learn how to interactively prototype a custom image processing pipeline using Python and Jupyter notebooks!

In the last years, Python has become one of the most popular programming languages in the scientific community. This is also true in the image processing area, where Python underlies important projects, for example in biology with CellProfiler (, in astronomy with Astropy ( or more generally in machine learning based image classification with tools like Keras (

Python is also the language of choice for interactive programming in notebook systems like Jupyter, an ideal environment to "learn by doing" image processing, and to quickly prototype analysis pipelines. To summarize, Python is an ideal programming language both for beginner and advanced programmers.

In this lecture, using Jupyter notebooks, we will go through all the steps necessary to develop a small image processing pipeline. Students will have live access to those notebooks from their computer, and will be able to modify and execute them to have a hands-on learning experience. The lecture will be mostly based on the scikit-image library (, which offers a very wide array of image processing tools e.g. for multi-dimensional imports, image filtering, binary morpgological opeartions, region measurements, watershed segmentation, active contours etc. We will also use the matplotlib library for 2D image visualization ( and the ipyvolume library ( for 3D volume rendering. The examples used will be taken from Biology, but most of the course content is relevant in general for people interested in image processing.

Learning outcomes - participants can/know
  • Become familiar with the Jupyter environment
  • Open various image formats and visualize them
  • Apply different types of filters to images
  • Use automatic segmentation approaches
  • Extract measurements from images and plot them
Target group
  • UNIBE staff members, students and potential users involved in scientific research
  • Participants must bring own laptops and should be familiar with the Python language.   
  • Students have access to the Notebooks used during the lecture and can live experiment with them during the presentation and in pauses between presentation units.
  • A certificate will be delivered to participants who have attended the whole training.
  • The coaches are local or external experts
Practical information (time, location ...)
Time : 2020-01-21 09:00 - 17:00
Location : Mittelstrasse, Room 120, Mittelstrasse 43, University of Bern

Training language: English
Participants : Max 25
Registraion : Mandatory
Coaches : Dr. Guillaume Witz
Prerequisites : Laptop, minimal Linux and programming experience 
Certificate : Certificate for full training attendance 

Course material : You don't have to prepare anything for the course. You will be given access to a Jupyter environment that runs in your default browser and that is pre-loaded with the course material using the following link:

You will be greeted with a login window. You will be assigned a user name at the beginning of the lecture and will be able to choose your password. If you close the browser window you can simply come back to your Jupyter environment using the following link:

If you want to install the required environment on your own computer, you can follow the instructions provided with the link below (the procedure including data download takes ~1hour). The procedure should work with UNIX systems (macOS, Linux), but some commands might have to be adapted for Windows users:

I will not provide support for local installs at the beginning of the lecture, but I'm happy to help anyone at the end of the course.
About ScITS
The Science IT Support is there to boost your research by supporting you solving computing challenges. 
Your code doesn't compile, you need more computing power, more storage, a data mangament plan and
so on -