Skip to main content

DNA2Graph

DOI

DNA2Graph is an open-source image analysis tool for automated segmentation and classification of DNA molecules in electron microscopy images obtained by rotary shadowing.

It provides both an intuitive graphical user interface for local use and a command-line interface for scalable execution on HPC systems.

For documentation, tutorials, and sample outputs, visit the project website.

DNA2Graph

Features

  • Automated segmentation of DNA molecules in electron microscopy images.
  • Two segmentation approaches:
    • a standard, non-learning-based segmentation pipeline;
    • a CNN-based segmentation pipeline (BETA).
  • Post-processing algorithms designed to enforce biologically plausible segmentations.
  • Classification of segmented molecules as:
    • non-linear molecules, including branched or cyclic structures such as replication forks, Holliday junctions, bubbles, or t-loops;
    • linear molecules;
    • boundary molecules, located near image borders and likely incomplete.
  • Export of Fiji/ImageJ-compatible ROIs for segmented molecules and bounding boxes.
  • CSV export of molecule length measurements, including total molecule length and linear subregion measurements.
  • Export of spatial graph representations that encode molecular topology and spatial organization for downstream analysis.

DNA2Graph

Segmentation ROIs (left) and Bounding Box ROIs (right) generated by DNA2Graph and loaded in Fiji. DNA2Graph automatically assigns each molecule to one of three groups: non-linear (red), linear (blue), or boundary (yellow).

Installation

DNA2Graph is distributed through PyPI:

pip install dna2graph

This installs both the graphical interface and the command-line interface.

To update DNA2Graph:

pip install --upgrade dna2graph

Usage

Graphical Interface

Launch the GUI with:

dna2graph

Command-Line Interface

Display the available CLI commands and options with:

dna2graph-cli --help

Performance

DNA2Graph can process large stitched electron microscopy images on a personal computer without requiring a GPU. A 20,000 x 20,000 grayscale image can be processed in approximately 1-8 minutes on an Apple M1 machine with 8 GB of RAM. For a fixed image size, runtime scales with the number of molecules present in the image.

Support

For help with DNA2Graph, contact the project maintainer at federico.chinello@studbocconi.it or open an issue on GitHub.

Citation

F. Chinello, M. Giannattasio, E. Zanella, F. Bruno, F. M. Buffa, and Y. Doksani.F
DNA2Graph [Computer software]. Zenodo, 2026.
https://doi.org/10.5281/zenodo.20413553

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dna2graph-1.0.2.tar.gz (175.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dna2graph-1.0.2-py3-none-any.whl (180.3 kB view details)

Uploaded Python 3

File details

Details for the file dna2graph-1.0.2.tar.gz.

File metadata

  • Download URL: dna2graph-1.0.2.tar.gz
  • Upload date:
  • Size: 175.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.0

File hashes

Hashes for dna2graph-1.0.2.tar.gz
Algorithm Hash digest
SHA256 94e00fe303a8fe23adf126257e003c096d780bf93ee15004b84bcfaa66430b0f
MD5 c7715bf1cc2be7f154c8d29aefad7f3d
BLAKE2b-256 212c734367140fc8f279aba38d5a28fb0684ee50269378e4417d195b3d79f733

See more details on using hashes here.

File details

Details for the file dna2graph-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: dna2graph-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 180.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.0

File hashes

Hashes for dna2graph-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e7e133f3f88bb385909ecf1fd2cecc598d927a98c7a42b6d64b73315c0966345
MD5 bcc20fe1685314b16688a92c6091ae94
BLAKE2b-256 1c348295b29580f5a953d575b15c6341fe28c01367087fb7b19cf6511083ac2a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 files

1.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page