Skip to content

ngimber/NanoNET

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 

Repository files navigation

NanoNET Toolbox

Generation and Analysis of NET Filament Line Profiles

This repository provides tools for studying neutrophil extracellular traps (NETs) from light microscopy data.
NanoNET consists of the following workflows:

  • NanoNET Detection – Automated segmentation and extraction of NET filament profiles from light microscopy data (e.g., SIM, STED, SMLM).
  • NanoNET Analysis – Statistical correlation and periodicity analysis of filament profiles.

Detailed information on sample preparation, imaging, and NanoNET can be found in the following paper:
Winkler et al. - Nanoscale Mapping Reveals Periodic Organization of Neutrophil Extracellular Trap Proteins, Nano Letters (2026).
DOI: https://doi.org/10.1021/acs.nanolett.5c05175


📦 Workflows

1. NET Detection

Purpose: Extract NET filament line profiles from 2D/3D microscopy stacks. Line profiles for all channels (three-channel images expected) are measured along a continuous DNA backbone channel.

NanoNET Detection GUI

Workflow steps:

  1. Preprocessing

    • (3D only) Create maximum-intensity projections from z-ranges containing NET signal.
    • (Optional) Cropping: remove non-NET regions or artifacts (e.g., cell remnants).
  2. Automated segmentation (NanoNET Detection)
    Set parameters:

    • Data folder: select the folder containing TIFF files (2D images or 3D projections).
    • File extension: choose the image file type (e.g. .tif).
    • Minimal profile length (µm): profiles shorter than this threshold are ignored.
    • Channel selection: define the DNA backbone channel (requires continuous DNA labeling).
    • Correct local contrast: compensates for shading/illumination inhomogeneity.
    • Line width (px): width over which intensities are integrated for line profiles.

Outputs

  • Skeletonized NET filaments
  • Per-channel line intensity profiles (CSV)
  • Parameter/configuration files for reproducibility

2. NET Analysis

Purpose: Perform correlation analysis of NET filament line profiles to identify structural periodicities and colocalization patterns.

NanoNET Analysis GUI

Workflow steps:

  1. Input: line intensity profiles from NET Detection (CSV files).

  2. Automated analysis
    Set parameters:

    • Fragments: enable Break into fragments to split profiles into segments of defined length (e.g., 1500 nm).
    • Pixel size (nm/px): set the image sampling.
    • Shift intervals: maximum lags for auto-/cross-correlation (steps are pixels).
    • Plot only first peak: if enabled, only the first peak in the correlogram is considered.
    • Minimal profile length: excludes shrt line profiles.
    • Resolution: expected resolution of the microscopy technique. This is required for the next point.
    • Suppress sub-reslution peaks: affects only auto-correlation traces and is required for analyszing periodicities.

Outputs

  • Correlation tables (auto- & cross-correlation values)
  • Averaged correlation profiles
  • Extracted periodicities (histograms)

⚙️ Requirements

📥 Python package installation

Install the Python dependencies with pip (recommended in a virtual environment):

# Upgrade pip
pip install --upgrade pip

# Core scientific stack
pip install pandas numpy scipy matplotlib

# Image IO and processing
pip install scikit-image tifffile imageio

# Jupyter (for running the notebooks/GUI)
pip install notebook ipykernel

# Optional: plotting helpers
pip install seaborn

📖 References

  1. NanoNET (study)
    Gimber N., et al. (2025). Nanoscale Mapping Reveals Periodic Organization of Neutrophil Extracellular Trap Proteins. bioRxiv. https://doi.org/10.1101/2025.07.28.665103

  2. Image processing methods
    Otsu, N. (1979). A threshold selection method from gray-level histograms. IEEE Transactions on Systems, Man, and Cybernetics, 9(1), 62–66. https://doi.org/10.1109/TSMC.1979.4310076
    Buades, A., Coll, B., & Morel, J.-M. (2005). A non-local algorithm for image denoising. CVPR 2005, 2, 60–65. https://doi.org/10.1109/CVPR.2005.38

  3. ImageJ / Fiji
    Schindelin, J., et al. (2012). Fiji: an open-source platform for biological-image analysis. Nature Methods, 9(7), 676–682. https://doi.org/10.1038/nmeth.2019
    Schneider, C. A., Rasband, W. S., & Eliceiri, K. W. (2012). NIH Image to ImageJ: 25 years of image analysis. Nature Methods, 9(7), 671–675. https://doi.org/10.1038/nmeth.2089

  4. Python ecosystem
    Virtanen, P., et al. (2020). SciPy 1.0: fundamental algorithms for scientific computing in Python. Nature Methods, 17, 261–272. https://doi.org/10.1038/s41592-019-0686-2
    Harris, C. R., et al. (2020). Array programming with NumPy. Nature, 585, 357–362. https://doi.org/10.1038/s41586-020-2649-2
    Hunter, J. D. (2007). Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3), 90–95. https://doi.org/10.1109/MCSE.2007.55
    McKinney, W. (2010). Data Structures for Statistical Computing in Python. Proc. of the 9th Python in Science Conf. (SciPy 2010), 51–56. https://doi.org/10.25080/Majora-92bf1922-00a
    van der Walt, S., et al. (2014). scikit-image: image processing in Python. PeerJ, 2, e453. https://doi.org/10.7717/peerj.453
    Gohlke, C. (tifffile). tifffile: Read and write TIFF files. https://pypi.org/project/tifffile/

About

NanoNET: A Toolbox for Nanoscale Analysis of Extracellular Traps

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors