Skip to content

Commit 0a43dec

Browse files
committed
Adding introduction episode
1 parent 5bcbf99 commit 0a43dec

2 files changed

Lines changed: 136 additions & 0 deletions

File tree

config.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,14 @@
88
# lc: Library Carpentry
99
# cp: Carpentries (to use for instructor training for instance)
1010
# incubator: The Carpentries Incubator
11+
# Note that you can also use a custom carpentry type. For more info,
12+
# see the documentation: https://carpentries.github.io/sandpaper-docs/editing.html
1113
carpentry: 'incubator'
1214

15+
# Custom carpentry description
16+
# This will be used as the alt text for the logo
17+
# carpentry_description: "Custom Carpentry"
18+
1319
# Overall title for pages.
1420
title: 'Microscopy Image Analysis with Python and Napari'
1521

@@ -64,6 +70,7 @@ episodes:
6470
- 03-thresholding-and-segmentation.md
6571
- 04-measurements.md
6672
- 05-napari.md
73+
- introduction.md
6774

6875
# Information for Learners
6976
learners:

episodes/introduction.md

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
---
2+
title: 'Introduction'
3+
teaching: 10
4+
exercises: 2
5+
---
6+
7+
:::::::::::::::::::::::::::::::::::::: questions
8+
- What will I learn in this course, and how is it structured?
9+
- Why use Python for microscopy image analysis?
10+
- What are digital microscopy images, and how do they differ from everyday images?
11+
- What kinds of things can I measure from images using Python?
12+
- How is the course organised and what software and data will I need to follow along?
13+
::::::::::::::::::::::::::::::::::::::::::::::::
14+
15+
::::::::::::::::::::::::::::::::::::: objectives
16+
- Describe the aims and structure of the course
17+
- Identify the main Python tools used in microscopy image analysis
18+
- Recognise different types of microscopy image data and formats
19+
- Verify that the required software and packages are installed
20+
- Navigate the lesson materials and setup environment
21+
::::::::::::::::::::::::::::::::::::::::::::::::
22+
23+
## Welcome
24+
25+
This course introduces essential tools and techniques for working with digital microscopy images using Python. It is aimed at researchers and students with some experience in microscopy and a basic familiarity with Python. You do not need to be an expert programmer to benefit.
26+
27+
We’ll use real image data and widely-used open-source Python libraries, and we’ll explore what makes digital microscopy unique—multi-dimensional data, metadata, and challenges like segmentation and feature measurement.
28+
29+
## What will we do in this course?
30+
31+
By the end of the course, you will be able to:
32+
33+
- Open and inspect images in Python
34+
- Explore and process multi-dimensional datasets (e.g. time series, z-stacks, multi-channel images)
35+
- Apply filters and perform background correction
36+
- Segment and measure biological objects (e.g. nuclei, cells)
37+
- Use tools like Napari for visualising and interacting with image data
38+
39+
Microscopy image analysis allows you to extract measurable information from biological samples. Examples include:
40+
41+
- Object size, shape, and area
42+
- Intensity or signal distribution per region
43+
- Cell counts, distances, and object relationships
44+
- Colocalisation of signals across channels
45+
46+
A typical image analysis workflow looks like:
47+
48+
1. **Preprocessing** (e.g. background subtraction, filtering)
49+
2. **Segmentation** (defining objects of interest, such as nuclei)
50+
3. **Feature extraction** (e.g. area, intensity, shape, location)
51+
4. **Analysis and interpretation** (e.g. plotting, classification, statistics)
52+
53+
## Key software tools
54+
55+
In this course, we’ll use:
56+
57+
- **Jupyter notebooks**: for writing and running Python interactively
58+
- **NumPy**: for handling numerical arrays (which is what images are!)
59+
- **scikit-image**: for general image processing operations
60+
- **matplotlib**: for plotting and displaying images
61+
- **Napari**: for interactive viewing and annotation of multi-dimensional images
62+
63+
All episodes use open-source tools that you can install locally or access via your institution’s JupyterHub (e.g. Noteable for University of Edinburgh users).
64+
65+
::::::::::::::::::::::::::::::::::::: callout
66+
### 💡 Reflection
67+
68+
Have you used any of the following before?
69+
70+
- Jupyter notebooks
71+
- Napari
72+
- Python image libraries (e.g. scikit-image, OpenCV)
73+
74+
Take a minute to note down which tools you're already familiar with and what you'd like to learn.
75+
::::::::::::::::::::::::::::::::::::::::::::::::
76+
77+
## What kind of data?
78+
79+
We’ll work with real microscopy images, including:
80+
81+
- Multi-channel fluorescence `.tif` files
82+
- 3D z-stacks and time series
83+
- Colour (RGB) images
84+
- Proprietary formats (e.g. `.nd2`, `.czi`)
85+
86+
We'll also cover how to read metadata, understand bit depth, and interpret image dimensions.
87+
88+
::::::::::::::::::::::::::::::::::::: callout
89+
### Note: RGB vs Scientific Multichannel Images
90+
91+
Images like `.jpg` or `.png` use RGB colour, where each pixel contains red, green, and blue values.
92+
93+
In scientific microscopy, multichannel images are often stored as **separate grayscale channels** (e.g. DAPI, GFP, RFP). These can be visualised as colour composites but are fundamentally different from RGB images used in photography.
94+
:::::::::::::::::::::::::::::::::::::::::::::::::
95+
96+
## Course structure
97+
98+
This course is made up of the following episodes:
99+
100+
1. **Introduction** (this episode)
101+
2. **Opening and checking an image**
102+
3. **Exploring image dimensions and channels**
103+
4. **Basic image processing and filtering**
104+
5. **Segmentation and object detection**
105+
6. **Working interactively with Napari**
106+
7. **Measuring and exporting results**
107+
108+
Each episode includes code-along demonstrations, exercises, and challenges. The final episode will tie everything together in a small analysis pipeline.
109+
110+
## Meet the dataset
111+
112+
Here is one of the images we’ll be working with:
113+
114+
![Sample fluorescent image](fig/FluorescentCells_3channel_thumb.jpg){alt="Thumbnail of test image"}
115+
116+
This is a multi-channel fluorescent image showing nuclei, membranes, and cytoplasm in different colours.
117+
118+
You’ll also work with z-stacks, RGB images, and proprietary formats like `.nd2`.
119+
120+
➡️ See the [Reference page](../reference) for a quick recap of Python syntax and digital image basics used in this course.
121+
122+
---
123+
124+
::::::::::::::::::::::::::::::::::::: keypoints
125+
- This course is for researchers with some Python and microscopy experience
126+
- We will use open-source tools for exploring, processing, and analysing images
127+
- You will learn how to work with multi-dimensional bioimages and extract useful measurements
128+
- All exercises use real microscopy datasets
129+
::::::::::::::::::::::::::::::::::::::::::::::::

0 commit comments

Comments
 (0)