Skip to main content

A comprehensive library for Digital Holographic Microscopy (DHM)

Project description

HoloBio: Digital Holographic Microscopy Library

Version: 1.0.2 Author: SOPHIA-Research-Lab License: GPL-3.0

HoloBio is an open-source Python library and GUI for quantitative analysis in Digital Holographic Microscopy (DHM). It supports real-time and offline modes, various optical setups (lens-based and lensless), and provides advanced tools for analyzing biological samples.

Installation

You can install holoBio directly from PyPI (Python 3.8+ required):

pip install holoBio

Alternatively, to install from source:

  1. Clone the repository:
    git clone https://github.com/SOPHIA-Research-Lab/HoloBio.git
    cd HoloBio
    
  2. Install dependencies and the package:
    pip install .
    

Usage

Once installed, you can launch the main graphical interface by running the following command in your terminal:

holobio

Or, if the command is not found (due to PATH issues):

python -m holobio

This will open the main menu where you can select between DHM and DLHM modes, and between Real-Time and Post-Processing interfaces.


Project Structure

The source code is organized in the holobio/ package directory:

Core Application

  • Main_.py: The entry point of the application. Initializes the main menu window and handles navigation between different modules.
  • __init__.py: Marks the directory as a Python package.

Main Interfaces (GUI)

  • main_DHM_PP.py: DHM Post-Processing. Interface for loading and analyzing existing holograms.
  • main_DHM_RT.py: DHM Real-Time. Interface for capturing and analyzing holograms live from a camera.
  • main_DLHM_PP.py: DLHM Post-Processing. Specialized interface for Lensless Digital Holographic Microscopy (offline).
  • main_DLHM_RT.py: DLHM Real-Time. Specialized interface for Lensless Digital Holographic Microscopy (live).

Algorithms & Methods

  • pyDHM_methods.py: Core numerical methods for reconstruction, propagation, and filtering.
  • phaseShifting.py: Implementation of phase-shifting algorithms for phase retrieval.
  • unwrap_methods.py: Wrapper functions for different phase unwrapping techniques.
  • unwrapping.py: Implementation of specific phase unwrapping algorithms (e.g., weighted least squares).
  • settingsCompensation.py: GUI and logic for configuring phase compensation parameters (e.g., for tilt/aberration removal).
  • parallel_rc.py: Parallel processing implementations for faster reconstruction.
  • track_particles_kalman.py: Kalman filter implementation for tracking moving particles in real-time or video sequences.

Utilities

  • tools_GUI.py: Common GUI widgets, dialogs, and helper functions reused across different interfaces.
  • functions_GUI.py: Additional functional logic for GUI interactions.
  • tools_microstructure.py: Tools for morphological analysis (segmentation, particle counting, area measurement).
  • utilities.py: General purpose utility functions (image I/O, array manipulation).
  • settings.py: Global configuration and constants.

License

This project is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE file for details.

Additional Resources

For more detailed information, please refer to the User Guide and Scientific Paper located in the Complementary_info directory of this repository:

  • 📄 User Guide: Complementary_info/User_Manual.pdf - Comprehensive manual covering installation, mode selection (Real-Time vs Offline), and advanced reconstruction procedures.
  • 📄 Paper: Complementary_info/HoloBio_paper.pdf - Detailed scientific background and validation of the tool.

Support or Contact

If you have any questions or need support, please contact:

Researcher Email Google Scholar
Ana Doblas adoblas@umassd.edu Profile
Raul Castañeda racastaneq@eafit.edu.co Profile

Citation

If you use HoloBio in your research, please refer to the following manuscript:

W. Mona, M. J. Gil-Herrera, E. Mazo, D. Córdoba, S. Obando, M. J. Lopera, R. Restrepo, C. Trujillo, A. Doblas, and R. Castañeda.
"HoloBio: A Holographic Microscopy Tool for Quantitative Biological Analysis"
Under review, PLOS Computational Biology.

Project details


Download files

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

Source Distribution

holobio-1.0.2.tar.gz (189.0 kB view details)

Uploaded Source

Built Distribution

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

holobio-1.0.2-py3-none-any.whl (198.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: holobio-1.0.2.tar.gz
  • Upload date:
  • Size: 189.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for holobio-1.0.2.tar.gz
Algorithm Hash digest
SHA256 087c04942898087ccd51e03ecb31f62fb1caf7ac92548f285d4e827df5569dcf
MD5 ce41400d797b0a746f57effe37176f60
BLAKE2b-256 f83457eba18b96ebe7a00d58e84e6d6bb9b4ab567e8d6bb0b44b16fc0131134e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: holobio-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 198.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for holobio-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fd0edd397514e1e1a363723361e7e0174dfde9eb4983550c05b0b46eca8da1a9
MD5 9d7469bdc098e1be66609e3dc42f743a
BLAKE2b-256 a9c32b84a5917dfcbd51f0b3be826aee1f13227835ba4bd7f8b6adeee8787a77

See more details on using hashes here.

Supported by

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