awesome-scientific-image-analysis
A curated list of scientific image analysis resources and software tools.
https://github.com/epfl-center-for-imaging/awesome-scientific-image-analysis
Last synced: 4 days ago
JSON representation
-
π Learning resources
-
Papers
- 2023 - Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters.
- 2023 - Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters.
- 2022 - A Hitchhiker's guide through the bio-image analysis software universe - Robert Haase et al.
- 2023 - Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters.
- 2023 - Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters.
- 2024 - Creating and troubleshooting microscopy analysis workflows: Common challenges and common solutions - Beth Cimini.
- 2023 - Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters.
-
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
- Microcourses
- Optical microscopy Image Processing & analysis - ->
- Aits Lab - ->
- Did you know β Image Analysis Style - Marie Held -->
- My Journey in Image Analysis - ClΓ udia Salat -->
- ImageScience.org - ->
- The Image Analysis Field Guide - EPFL Center for Imaging
- Bio-image Analysis Notebooks - Robert Haase -->
- Introduction to Programming in the Biological Sciences Bootcamp - Justin Bois
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
- Introduction to bioimage analysis
- First principles in computer vision
- DigitalSreeni
- Awesome Biological Image Analysis
- Awesome Computer Vision
- Awesome Medical Imaging
- ImageScience.org - ->
- The Image Analysis Field Guide - EPFL Center for Imaging
- Bio-image Analysis Notebooks - Robert Haase -->
- Introduction to Programming in the Biological Sciences Bootcamp - Justin Bois
- A Hitchhiker's guide through the bio-image analysis software universe - Robert Haase et al.
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
- Creating and troubleshooting microscopy analysis workflows: Common challenges and common solutions - Beth Cimini
- Introduction to bioimage analysis
- First principles in computer vision
- DigitalSreeni
- Microscopy Series
- Microcourses
- Optical microscopy Image Processing & analysis - ->
- Aits Lab - ->
- Towards effective adoption of novel image analysis methods - Talley Lambert, Jennifer Waters
-
Video series
- Did you know β Image Analysis Style - Marie Held -->
- My Journey in Image Analysis - ClΓ udia Salat -->
-
Curated lists
-
-
ποΈ Open science
-
Reproducibility
- When seeing is not believing: application-appropriate validation matters for quantitative bioimage analysis
- Reproducible image handling and analysis
- Understanding metric-related pitfalls in image analysis validation
- Reporting reproducible imaging protocols
- When seeing is not believing: application-appropriate validation matters for quantitative bioimage analysis
- Processing images for papers & posters - ->
- When seeing is not believing: application-appropriate validation matters for quantitative bioimage analysis
- When seeing is not believing: application-appropriate validation matters for quantitative bioimage analysis
-
Software development practices
-
Figures creation
-
-
βοΈ Image segmentation
-
Software tools
- skimage.segmentation - Classical segmentation algorithms in Python.
- Ilastik - Pixel Classification - Semi-supervised workflow for pixel classification.
- Segment Anything Model 2 (SAM 2) - Promptable, foundation model for image segmentation.
- rembg - Remove image backgrounds.
- nnUNet - U-Net based biomedical image segmentation (2D and 3D).
- segmentation_models - Segmentation models with pretrained backbones in Keras (Tensorflow).
- segmentation_models.pytorch - Segmentation models with pretrained backbones in Pytorch.
- Monai - Pytorch-based deep learning framework for biomedical imaging.
- StarDist - Segmentation of cell nuclei and other round (star-convex) objects.
- pytorch-3dunet - ->
- InstanSeg - ->
- omnipose - ->
- SAMJ - Segment Anything in Fiji.
- YOLO11 - Instance Segmentation - Image segmentation using Ultralytics YOLO.
- CellPose - Segmentation of cells and membranes in microscopy images.
-
Learning resources
-
- Thresholding - Introduction to Bioimage Analysis
- Thresholding - Scikit-image
- Segmentation - ImageJ Tutorials
- Image segmentation - Image data science with Python and Napari
- skimage.segmentation
- Ilastik - Pixel Classification
- Segment Anything Model 2 (SAM 2)
- rembg
- nnUNet
- segmentation_models
- segmentation_models.pytorch
- Monai
- StarDist
- CellPose
- pytorch-3dunet - ->
- InstanSeg - ->
- omnipose - ->
-
-
π Image registration
-
Learning resources
-
Software tools
- pyGPUreg - ->
- Fast4DReg - ->
- SimpleElastix - ->
- DIPY - ->
- ANTsPy - ->
- VoxelMorph - ->
- ABBA - Aligning Big Brains and Atlases.
- skimage.registration - Cross-correlation and optical flow algorithms in Python.
- SPAM - Image correlation in 2D and 3D.
- pystackreg - Image stack (or movie) alignment in Python.
- TurboReg - Image stack (or movie) alignment in Fiji.
- Warpy - Register whole slide images in Fiji.
-
- Image correlation - Theory
- Image correlation - Practice
- ABBA
- pyGPUreg - ->
- Fast4DReg - ->
- SimpleElastix - ->
- DIPY - ->
- ANTsPy - ->
- VoxelMorph - ->
- skimage.registration
- pystackreg
- TurboReg
-
-
πͺ Image denoising
-
Learning resources
-
Software tools
- SwinIR - Deep image restoration using Swin Transformer - for grayscale and color images.
- noise2self - Blind denoising with self-supervision.
- CellPose3 - OneClick - Deep-learning based denoising models for fluorescence and microscopy images.
- CSBDeep - Image restoration in Fiji.
- skimage.restoration - Classical denoising algorithms in Python (TV Chambolle, Non-local Means, etc.).
- CAREamics - Deep-learning based, self-supervised algorithms: Noise2Void, N2V2, etc.
-
-
π Object detection
-
Software tools
- DeepLabCut - Animal pose estimation.
- OpenPifPaf - Human pose estimation.
- Spotiflow - Spot detection for microscopy data.
- Detectron2 - ->
- YOLO11 - Object Detection - Object detection using Ultralytics YOLO.
-
-
πΎ Tracking
-
Learning resources
-
Software tools
- TrackMate - Fiji plugin.
- Trackpy - Particle tracking in Python.
- Mastodon - Large-scale tracking in Fiji.
- Trackastra - Tracking with Transformers.
- ultrack - Large-scale cell tracking.
- co-tracker - Tracking any point on a video.
- LapTrack - Particle tracking in Python.
-
-
π» Visualization
-
Software tools
- Napari - Interactive nD image viewer in Python
- Neuroglancer - Browser-based visualizations compatible with large images (zarr)
- PyVista - 3D visualizations in Python through VTK
- vedo - Scientific visualizations of 3D objects
- Fiji - Volume Viewer - Ideal for Fiji users
- Fiji - 3D Viewer - Ideal for Fiji users
- Fiji - 3Dscript - 3D rendering animations in Fiji
- Viv - Multiscale visualization on the web
- supervision - ->
- fastplotlib - ->
- K3D-jupyter - ->
- itkwidgets - VTK viewer in Jupyter notebooks
- ipyvtklink - ->
- ipyvolume - ->
- ipygany - ->
- NeuroMorph - ->
- Fiji - BigDataViewer - Ideal for big data
- 3D Slicer - ->
- microfilm - ->
- microviewer - ->
- vizarr - Simple Zarr viewer
- ndv - ->
- hyperspy - ->
- Paraview - Scientific visualizations through VTK
-
Learning resources
-
- Visual image comparison (Scikit-image)
- tif2blender
- NeuroMorph
- BigDataViewer
- 3D Slicer - ->
- microfilm - ->
- microviewer - ->
- vizarr - ->
- ndv - ->
- hyperspy - ->
- Napari
- QuPath
- Neuroglancer
- pyvista
- vedo
- tif2blender
-
-
π Getting started
- Introduction to Bioimage Analysis - Pete Bankheads.
- Image data science with Python and Napari - EPFL & TU Dresden.
- Image Processing and Analysis for Life Scientists - BIOP, EPFL.
- Image Processing with Python - Data Carpentry
- Ilastik - Interactive learning and segmentation toolkit.
- Napari - A fast and interactive multi-dimensional image viewer for Python.
- Microscopy Series - iBiology. Focused on microscopy techniques.
- Fiji - ImageJ, with βbatteries-includedβ.
- Napari - A fast and interactive multi-dimensional image viewer for Python
- QuPath - Open Software for Bioimage Analysis.
- Setting up Python for scientific image analysis
- Image data science with Python and Napari - EPFL & TU Dresden
- Image Processing and Analysis for Life Scientists - BIOP, EPFL
- Introduction to Bioimage Analysis - Pete Bankheads
- Fiji - ImageJ, with βbatteries-includedβ
- Ilastik - Interactive learning and segmentation toolkit
-
π Performance
-
Learning resources
-
Software tools
- pyclesperanto_prototype - GPU-accelerated bioimage analysis.
- Numba - JIT compiler for Python and Numpy code.
- cuCIM - GPU-accelerated image processing.
- OpenCV - Optimized image processing algorithms.
-
-
π Python
-
Python setup
- Managing Conda Environments
- Conda Cheatsheet - ->
- Python environments workshop - Talley Lambert.
- Setting up Python for scientific image analysis - ->
-
Python programming
- Python 3 documentation
- Automate the Boring Stuff with Python - ->
- Programming with Python - Software Carpentry.
- pydevtips: Python Development Tips - Eric Bezzam. -->
- Python packaging 101 - ->
-
Python for image processing
- Image processing with Python - Guillaume Witz. -->
- Scikit-image - Scientific image processing toolbox.
- 3.3. Scikit-image: image processing - Scientific Python Lectures. -->
- scipy.ndimage - Multidimensional image processing.
- opencv-python - Computer vision toolbox.
-
-
π¬ Fiji (ImageJ)
-
Learning resources
- Scientific Imaging Tutorials - ImageJ.
- Image handling using Fiji - training materials - Joanna PylvΓ€nΓ€inen.
- Fiji Programming Tutorial - ->
-
Plugins
- ThunderSTORM
- MorphoLibJ - Morphological operations.
- DeepImageJ - Run deep learning models in Fiji.
-
-
ποΈ Napari
-
Plugins
- napari hub
- napari-skimage-regionprops - Region properties.
- napari-threedee - 3D interactivity toolbox.
- Omega - Napari with ChatGPT.
- napari-sam - Segment Anything in Napari.
- napari-imagej - Fiji in Napari.
- devbio-napari - Comprehensive image processing toolbox.
- napari-clusters-plotter - Object clustering.
- napari-accelerated-pixel-and-object-classification - Semi-supervised pixel classification.
- Usage (napari.org)
- napari-animation - Create animations.
- napari-convpaint - Pixel classification based on deep learning feature extraction.
-
-
𧬠QuPath
-
Extensions
- qupath-extension-sam - Segment Anything in QuPath.
- qupath-extension-cellpose - CellPose.
- qupath-extension-stardist - StarDist.
-
Plugins
-
-
ποΈ Infrastructure
-
Extensions
- BIOP-desktop - Virtual desktop for bioimage analysis.
- BAND - Bioimage ANalysis Desktop.
- Fractal - Framework to process bioimaging data at scale in the OME-Zarr format.
- Galaxy (EU) - Web-based platform for accessible computational research.
- Renkulab - Data, Code, and Compute all under one roof.
- Hugging Face Spaces - Build, host, and share ML apps.
- BioImage.IO dev - Models, Datasets, and Applications for bioimage analysis.
-
-
πΈ Other
-
π€ LLMs
-
π· Image acquisition
- Cameras and Lenses - Bartosz Ciechanowski.
- Knowledge Center - Edmund Optics.
- Guides - Center for Microscopy and Image Analysis - University of Zurich -->
-
π©» Image reconstruction
- Pyxu - Modular and Scalable Computational Imaging.
- Welcome to Inverse Problems and Imaging - ->
-
π² Splines
- SplineBox - Efficient splines fitting in Python.
-
π Orientation
- OrientationJ - Fiji plugin.
- OrientationPy - 2D and 3D orientation measurements in Python.
-
π οΈ Utilities
- aicsimageio - Image reading and metadata conversion.
- imageio - Python library for reading and writing image data.
- patchify - Image patching (tiling).
- pims - Python Image Sequence.
- imutils - Image utilities.
- imantics - Image annotation semantics (Masks, Bounding Box, Polygons...) -->
- ncolor - Remapping of instance labels -->
- Depth Anything - ->
- pixelflow - ->
-
-
π§βπ€βπ§ Communities
- Image.sc
- GloBIAS
- SwissBIAS - ->
- Euro-BioImaging - ->
- Image.sc
- GloBIAS
- SwissBIAS
- Euro-BioImaging - ->
- QUAREP-LiMi - ->
- Smart Microscopy - ->
- BIII.eu - ->
- QUAREP-LiMi - ->
- Smart Microscopy - ->
- BIII.eu - ->
Programming Languages
Categories
π Learning resources
46
π» Visualization
41
βοΈ Image segmentation
36
π Image registration
26
πΎ Tracking
21
πΈ Other
19
πͺ Image denoising
16
π Getting started
16
π§βπ€βπ§ Communities
14
π Python
14
ποΈ Open science
14
ποΈ Napari
12
π Object detection
10
ποΈ Infrastructure
7
π Performance
6
π¬ Fiji (ImageJ)
6
𧬠QuPath
4
Sub Categories
Software tools
73
Learning resources
18
Plugins
16
Extensions
10
π οΈ Utilities
9
Reproducibility
8
Papers
7
Python programming
5
Python for image processing
5
Figures creation
4
Python setup
4
Curated lists
3
π· Image acquisition
3
Software development practices
2
π€ LLMs
2
π©» Image reconstruction
2
Video series
2
π Orientation
2
π² Splines
1
Keywords
python
24
deep-learning
19
segmentation
15
image-processing
12
pytorch
11
machine-learning
11
computer-vision
8
visualization
7
microscopy
7
unet
6
cell-segmentation
6
denoising
6
tracking
5
bioimage-analysis
5
medical-imaging
5
scientific-visualization
5
object-detection
5
blender
4
mesh
4
python3
4
microscopy-images
4
semantic-segmentation
4
unet-pytorch
4
segmentation-models
4
optical-flow
4
pspnet
4
imaging
4
plotting
4
image-analysis
4
image-segmentation
4
fpn
4
neuroimaging
4
jupyter
4
volume-rendering
3
yolo
3
instance-segmentation
3
imagej
3
3d
3
napari-plugin
3
napari
3
gehlenborglab
3
vtk
3
tensorflow
3
zarr
3
viv
3
diffeomorphism
2
tractometry
2
tractography
2
spherical-harmonics
2
gpu
2