Material for the hands-on part of the Cilia-AI / CiliaConnect mini-course on image analysis and AI.
Before the course, please choose how you want to work (in the browser or on your own laptop) and get ready as described in Before the course: get ready.
Contents
- Program
- Before the course: get ready
- Exercises
- During the course: getting updates
- Repository layout
- License
Detailed timing is announced on site.
Wednesday, 7 October (afternoon)
- Welcome and overview of the three days
- What is an image? What is image analysis?
- Classical image analysis: tools (Fiji, napari, Imaris) and community (image.sc, I2K)
- The deep learning revolution, and what agentic AI has changed since
- Denoising: a short introduction
- Hands-on: the denoising exercise, in three parts
- What was your experience? (discussion)
Slides of the Wednesday afternoon: 20261007_Jug_CiliaConnectWorkshop_Day1.pdf (PDF, 12 MB).
Thursday, 8 October
- Recap: what is the right tool for the job? What should I learn? (FJ, NJY)
- The rest of the program will be announced on site.
Instructors: Florian Jug (FJ), Nathalie Jurisch-Yaksi (NJY), Esben Lorentzen (EL), Daniel Burgdorf (DB).
All you need is a laptop. Beyond that, you can choose how deep you want to go:
| Colab track | Local track | |
|---|---|---|
| What it is | You run the exercises in your web browser, on Google's computers. | You install the Python tools on your own laptop and run everything there. |
| What you install | Nothing, apart from Fiji (recommended for everyone). | git, uv and the exercise environments (about 5 GB of disk space). |
| Good for | Getting started quickly, without fighting with installations. | Learning how analysis projects work on your own machine, and reusing them after the course. |
| Time to get ready | About 10 minutes. | 30 to 60 minutes, much of it waiting for downloads. |
Not sure? Choose the Colab track. All material stays online, so you can still try the local track later.
Please get ready before Wednesday, at home or in your lab, where the internet is fast.
- Accounts. A Google account (for Colab) and an account for at least one AI assistant, for example ChatGPT, Claude or Gemini. Free accounts are fine.
- Fiji (recommended). Download it from fiji.sc, unzip it and start it once. We use it to look at images.
- The course material.
- Colab track: on the GitHub page of the course, click the green Code button, then Download ZIP. Unzip it somewhere you will find it again.
- Local track: you download it with git instead, see Step 3 below.
That's it for the Colab track!
Never used a terminal, git or GitHub? No problem, just follow the steps one by one and copy the commands exactly.
A terminal is a window in which you type commands instead of clicking.
- macOS: press
Cmd + Space, typeTerminaland press Enter. - Windows: open the Start menu, type
PowerShelland click on Windows PowerShell. - Linux: open the Terminal app (on many systems
Ctrl + Alt + T).
Type a command, then press Enter to run it.
First check whether git is already installed:
git --versionIf this prints something like git version 2.x.x, go to Step 3. Otherwise:
-
macOS: run
xcode-select --installand click Install in the window that appears (this installs Apple's command line tools, which include git). Runninggit --versionmay also open this window by itself. -
Windows: download Git for Windows from git-scm.com/downloads/win and run the installer. The default settings are fine, just keep clicking Next. Alternatively, run this in PowerShell:
winget install --id Git.Git -e --source winget
-
Linux:
sudo apt install git(Ubuntu, Debian) orsudo dnf install git(Fedora).
Then close the terminal, open a new one and check again with git --version.
The course material lives on GitHub, a website that hosts git repositories. Downloading a copy of a repository is called cloning. You do not need a GitHub account for this.
Go to the folder where you want the course material, for example your home folder, and clone the repository:
cd ~
git clone https://github.com/juglab/CiliaAI-minicourse.git
cd CiliaAI-minicourseThis creates a folder CiliaAI-minicourse with everything in it, and moves you into it. These commands are the same on macOS, Linux and Windows (PowerShell).
Tip: avoid folders that are synced to the cloud (OneDrive, iCloud Drive, Dropbox). The Python environments created later contain thousands of small files, which makes syncing slow and can break things. On many laptops
DocumentsandDesktopare such folders; your home folder (~) usually is not.
Next time you open a terminal, get back into the course folder with:
cd ~/CiliaAI-minicourse# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Close and reopen your terminal afterwards, then check with uv --version.
Each exercise folder contains one or more small uv projects (a pyproject.toml plus a uv.lock). Running uv sync inside such a folder creates a local .venv with exactly the tested package versions.
This installs both Python environments of the denoising exercise (several hundred MB, mostly TensorFlow) and tests them. The first run can take 5 to 15 minutes.
cd ~/CiliaAI-minicourse
uv run check_setup.pyAt the end it prints a summary. If it says "Everything works", you are ready. If not, try the hints it prints. If you are still stuck, bring your laptop and the full output of the script to the course, and we will help you.
Denoise a microscopy image with whatever AI help you like. Instructions: denoising/denoising_challenge.md.
Now do it again, step by step, and understand what happens. Choose one of two tracks:
| Track | What you do | What you need |
|---|---|---|
| Colab (recommended) | Train Noise2Void on a cloud GPU and look at what it removed. Open the notebook in Colab | A Google account, nothing to install |
| Local | Denoise with a classical method (BM3D) and with Noise2Void on your laptop, then compare both. Instructions: denoising/denoising_exercise.md |
The local track setup |
In Colab you upload the image data/convollaria.tif from your course folder; the notebook explains how. The install step at the top of the notebook takes several minutes, so we will ask you to start it early.
Now we reveal a clean, low-noise version of the image and compare all your results with it: visually, and with two numbers (PSNR and SSIM). Instructions: denoising/benchmark/README.md.
Curious how the classic filters (Gaussian, median, bilateral, total variation, ...) compare to Noise2Void on the same image? Have a look at the gallery in denoising/bonus_classical_denoising/. Every Fiji example comes with a small macro, so you can rerun it and play with the settings. This is not part of the exercise, just something to explore if you have time or are curious.
More exercises will be added. Each one lives in its own folder and comes with step-by-step instructions.
We may add or fix material during the course. To get the latest version, go to the course folder and pull the changes:
cd ~/CiliaAI-minicourse
git pullIf git refuses because "your local changes would be overwritten" (for example because you edited one of the scripts), put your changes aside, pull, and then bring them back:
git stash
git pull
git stash popYour own new files and all results in denoising/results/ are never touched by git pull.
No git at all? On the GitHub page of the course, click the green Code button and then Download ZIP, and unpack it. This works too, but to get updates you have to download the ZIP again.
CiliaAI-minicourse/
├── README.md this file
├── LICENSE CC BY 4.0 (texts, slides, images, data)
├── LICENSE-CODE MIT (scripts, notebook, macros)
├── check_setup.py run this before the course
├── slides/
│ └── 20261007_Jug_CiliaConnectWorkshop_Day1.pdf Wednesday afternoon
├── data/
│ └── convollaria.tif example image (2D, 16-bit, 1024 × 1024)
└── denoising/
├── denoising_challenge.md Part 1: solve it with AI
├── CAREamics_Noise2Void_2D_ZeroCostDL4Mic.ipynb Part 2, Colab track
├── denoising_exercise.md Part 2, local track
├── compare_results.py side-by-side comparison figure
├── denoise-bm3d/ BM3D environment + script
├── denoise-n2v/ Noise2Void environment + script
├── benchmark/ Part 3: compare all results with the clean image
└── bonus_classical_denoising/ gallery of classical filters + Fiji macros
You are welcome to reuse this material, for example in your own teaching.
- Texts, slides, images and data are licensed under Creative Commons Attribution 4.0 International (CC BY 4.0): you may share and adapt them for any purpose, as long as you give appropriate credit (for example: "CiliaAI mini-course, Florian Jug et al., https://github.com/juglab/CiliaAI-minicourse").
- Code (Python scripts, the Jupyter notebook and the Fiji macros) is licensed under the MIT License, the more common choice for software.
Exceptions:
- Figures and screenshots by others that appear in the slides remain under their original licenses; their sources are credited on the slides.
- The napari screenshots in
denoising/bonus_classical_denoising/are by Robert Haase (BSD-3-Clause), seeSOURCES.md. - The Colab notebook is adapted from the ZeroCostDL4Mic Noise2Void notebook (MIT License).