Image Processing with Python

Netherlands eScience Center in Amsterdam

June 05 - 06, 2023

9:30 - 17:00 CEST

Instructors: Candace Moore, Djura Smits, Giulia Crocioni, Dani Bodor

Helpers: Candace Moore, Djura Smits, Giulia Crocioni, Dani Bodor

Some adblockers block the registration window. If you do not see the registration box below, please check your adblocker settings.

General Information

The eScience Center offers a range of free workshops and training courses, open to all researchers affiliated with Dutch research organizations. We organize workshops covering digital skills needed to put reproducible research into practice. These include online collaboration, reproducible code and good programming practices. We also offer more advanced workshops such as GPU Programming, Parallel Programming and Deep Learning.

This workshop will teach you to about digital images and how to work with them with code. The workshop will cover the basics of digital images, manipulation with Python and the scikit-image (skimage) library. Both deeper image understanding and automation of image processing tasks will be covered.

By the end of the workshop you should be able to enhance your research with images be they from microscopy, radiology or another discipline.

Notes: This workshop is scheduled for two days.


The participants should:

  • Be familiar with Python (you should be able to write simple functions)
  • Be interested in analysis of images towards scientific goals

Where: Science Park 402, 1098 XH Amsterdam. Get directions with OpenStreetMap or Google Maps.

When: June 05 - 06, 2023, 9:30 - 17:00 CEST.

Requirements: Participants must bring a laptop with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below).

Accessibility: We are committed to making this workshop accessible to everybody. Unfortunately, the elevator in our building is broken and it will take until July to fix it. Please contact us at if you cannot use the staircase.

Materials will be provided in advance of the workshop and large-print handouts are available if needed by notifying the organizers in advance. If we can help making learning easier for you (e.g. sign-language interpreters, lactation facilities) please get in touch (using contact details below) and we will attempt to provide them.

Contact: Please email or for more information.

Code of Conduct

Participants are expected to follow these guidelines:

Everyone who participates in Carpentries activities is required to conform to the Code of Conduct. This document also outlines how to report an incident if needed.


This workshop is scheduled on two separate concurrent days. This allows you to work on your code in between the sessions, implementing the lessons you learned during our meetings together. Please schedule dedicated work time in your calendar, so you can take full advantage of the workshop.

Day 1.

9:00 Welcome and Introduction
9:20 Image Basics
9:40 Working with the skimage library
10:30 Coffee break
10:40 Drawing +
11:40 Bitwise Operations
12:30 Lunch break
13:30 Creating Histograms
14:30 Summary Lecture
15:30 Optional extra tutoring
16:30 END day 1

Day 2.

9:00 Welcome back
9:10 Blurring Images
10:00 Coffee break
10:15 Thresholding Images
11:15 Connected Component Analysis
12:15 Lunch break
13:20 Optional Challenge
14:30 Bonus lecture: transformations, affine
15:30 Feedback collection
16:00 END

All times in the schedule are in the CET timezone (Amsterdam time).


To participate in a Data Carpentry workshop, you will need access to software as described below. In addition, you will need an up-to-date web browser.

We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.

Software setup

This lesson assumes you have more or less current versions of the following installed on your computer:

  • Python version 3.7 or higher

You will also need to install the following packages:

  • ipyml
  • skikit-image
  • matplotlib
  • jupyterlab

In addition, we recommend an account on GitHub. Create one here.

If you clone the image-processing repository , then you will have all the data for the class already.

To clone the repository you can navigate in your terminal to the directory you want the repository in, then use the following command in a terminal: git clone After this command the repository should be built in your current working directory.