Project vesicle_triangulator

This project reconstructs topological relationships between vesicle transfer events from 2D coordinate data using convex-hull / Delaunay triangulation, then writes the geometry out as both an annotated overlay image and an auto-formatted Excel workbook.

Source code: github.com/isomlab/vesicle_triangulator. This tool is now an installable Python package with a double-click launcher — see the repository README for installation.

📦 Archived release

The version of this code used for the associated manuscript is preserved at the nature-code-2026 tag of this repository, and archived at Zenodo:

Both are concept DOIs and always resolve to the latest version. The full citation will be added here on publication.

🔬 What vesicle_triangulator Does

vesicle_triangulator is a Tkinter-based image-analysis application that ingests CSV 2D coordinates extracted from thresholded connected-component images from two color channels, builds a calculates a 2D Delaunay triangulation using the 3D convex hull down projection method via the Isom-Lab compGeometry and convexHull3D_2_1 modules, and emits the triangulated mesh as both a visualization overlay and a structured Excel report. It is designed for quantifying vesicle-transfer events between cells, and characterizing vescicular neighborhoods, where the raw data is a list of transfer-point coordinates that need to be placed into consistent 3D geometric context for downstream analysis.

🔍 Key Capabilities

🛠️ Additional Functionalities

📚 Citations

A publication describing vesicle_triangulator is in preparation. If you use the tool in your work in the meantime, please cite the underlying OpenCV, NumPy, and Matplotlib frameworks along with any forthcoming Isom-Lab paper that features the tool.

  1. Bradski G. The OpenCV Library. Dr. Dobb’s Journal of Software Tools, 2000. https://opencv.org
  2. Harris CR, Millman KJ, van der Walt SJ, et al. Array programming with NumPy. Nature. 2020 Sep;585(7825):357-362. doi: 10.1038/s41586-020-2649-2. PMID: 32939066
  3. Hunter JD. Matplotlib: A 2D Graphics Environment. Computing in Science & Engineering. 2007;9(3):90-95. doi: 10.1109/MCSE.2007.55
  4. McKinney W. Data Structures for Statistical Computing in Python. Proceedings of the 9th Python in Science Conference, 2010;445:56-61. doi: 10.25080/Majora-92bf1922-00a