Toggle navigation sidebar
Toggle in-page Table of Contents
Image data science with Python and Napari @EPFL
Image data science with Python and Napari @EPFL
Course preparation
Day 1: Introduction to Python and Bio-image Analysis
Introduction to Bio-image Analysis
Introduction to Python part I
Python code in Jupyter notebooks
Basic math in python
Pitfalls when working with Jupyter notebooks
Basic types in python
Lists and tuples
Cropping lists
Cropping images
Sorting lists
Masking numpy arrays
Dictionaries
Introduction to Python part II
Conditions
Loops
Functions
Day 2: Image Filtering, Segmentation and Feature Extraction
File Paths
Simple Folder Structures
Advanced Folder Structures
Opening and Displaying with Images in Python
The Napari Assistant
Generating Jupyter Notebooks from the Napari Assistant
Working with images
Image file formats
Image Filters
Noise reduction
Optional: 3D Image Filters
Image segmentation
Exercise: Thresholding
Morphological Image Processing
Otsu’s threshold method (optional)
Label images
Touching objects labeling
Voronoi tesselation
Voronoi-Otsu-labeling
3D Image Segmentation
Seeded watershed for membrane-based cell segmentation
Exercise: Seeded watershed in Napari
Remove labels on image edges
Label image refinement
The Segmentation Game
Image segmentation quality measurements
Feature extraction
Quantitative image analysis
Statistics using SimpleITK
Basic statistics with pyclesperanto
Parametric map images in Napari
Quantiative neighborhood measurements
Day 3: Machine learning and introduction to deep learning
Machine learning for object segmentation
Supervised machine learning
Exercise: Interactive pixel and object classification
Pixel classification using Scikit-learn
Object segmentation on OpenCL-compatible GPUs
Training classifiers from folders of images
Deep Learning for image segmentation
Day 4: Biostatistics and data science
Working with tabular data
Introduction to working with DataFrames
Plotting Data with Python
Plotting Data with Matplotlib
Statistics
Basic descriptive statistics
Clustering
K-means clustering
HDBSCAN
Interactive dimensionality reduction and clustering
Day 5: Best practices in scientific programming and licensing/sharing of code
Best practices in scientific programming
Writing readable code
Writing good code
Prevent magic numbers
Divide and rule
Custom modules
Reading exercise
Keep it short and simple
Exercise modularization
Interactive functions in Jupyter Lab
Potential group projects
repository
open issue
Index