Skip to main content

PyFLI Logo

pyfli: A Unified Platform for FLI Data Processing

Tests License: CC BY-NC-ND 4.0 Contributions Welcome Python 3.11+ PyPI version

pyfli is a comprehensive library designed for Fluorescence Lifetime Imaging (FLI) data processing. It streamlines the workflow for handling diverse file formats from various hardware manufacturers and provides a standardized pipeline for both traditional analytical and deep-learning-based inference.


Key Features

  • Universal Processing Pipeline: Simplifies the handling of multiple FLI file types (ICCD, SPAD, TCSPC).
  • Enhanced FLI Simulator: A robust simulation engine adaptable to specific camera hardware parameters and noise models.
  • Standardized Inference: Unified interface for time-resolved microscopy and macroscopic FLI data (MFLI).

Supported Data Acquisition Methods

The platform provides native support for several high-end imaging systems:

  1. ICCD: Intensified Charge-Coupled Device cameras for fast-gated, wide-field imaging.
  2. SwissSPAD2 & SwissSPAD3: High-speed SPAD (Single-Photon Avalanche Diode) architectures for high-resolution photon counting.
  3. SPCImage/TCSPC: Standardized processing for Time-Correlated Single Photon Counting microscopy data.

Data Processing & Analysis

pyfli implements industry-standard analytical methods to extract lifetime information:

  • Non-linear Least Squares Fitting (NLSF): Robust mathematical approach for exponential decay modeling.
  • Phasor Plot Analysis: Graphical, model-free transformation of fluorescence decay into a 2D polar plot for easy species separation.
  • Maximum Likelihood Estimation (MLE): Statistical estimator optimized for low-photon regimes.
  • Rapid Lifetime Determination (RLD): Computationally efficient method for real-time applications and high-frame-rate data.
  • Laguerre Method: Model-free IRF deconvolution followed by multi-exponential lifetime extraction on a per-pixel basis.

Installation

Install the stable version directly from PyPI:

pip install pyfli-lib

For users requiring GPU-based processing, install the optional tensor/AI dependencies:

pip install "pyfli-lib[gpu]"

Quick Start

Even though the package is installed as pyfli-lib, you import it as pyfli in your scripts:

from pyfli import DataOperations

loader = DataOperations(
    data_path="experimental_data.sdt",
    irf_path="instrument_data.txt",
    bg_path="background_data.tif",
    mask_path="background_data.png",
)
decay_data = loader.load_data()
irf_data = loader.load_irf()

Citation

If you use pyfli in your research, please cite this package:

Pandey V. pyfli: A Unified Platform for Fluorescence Lifetime Imaging Data Processing. https://github.com/vkp217/pyfli-pkg/tree/joss-submission

@article{pandey2025pyfli,
  author  = {Pandey, Vikas},
  title   = {{pyfli}: A Unified Platform for Fluorescence Lifetime Imaging Data Processing},
  journal = {},
  year    = {2025},
  note    = {},
  url     = {https://github.com/vkp217/pyfli-pkg/tree/joss-submission}
}

If you use the phasor SEPL analysis functionality specifically, please also cite the following paper on which the phasor module is based:

Michalet X. "Continuous and discrete phasor analysis of binned or time-gated periodic decays." AIP Advances 11, 035331 (2021). https://doi.org/10.1063/5.0027834


Repository & Issues

The source code is hosted on GitHub. Please report any bugs or feature requests via the issues tracker.

Release files for pyfli-lib 0.1.19

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyfli-lib 0.1.19
File Size Uploaded
pyfli_lib-0.1.19.tar.gz 2.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyfli-lib 0.1.19
File Interpreter ABI Platform
pyfli_lib-0.1.19-py3-none-any.whl Python 3 none any Details

Total release size: 4.0 MB

Release files / pyfli_lib-0.1.19.tar.gz

Download URL pyfli_lib-0.1.19.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
1fa7c7c8e40836f19a0353136b2f87405aed25d65c2df9c1cf06677d2d079e8c
BLAKE2b-256 checksum
How to use checksums
78f2145fd6f6cd4b69e500f981bfd78da112aedd1453725a8a6da52a8fd0b109
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release files / pyfli_lib-0.1.19-py3-none-any.whl

Download URL pyfli_lib-0.1.19-py3-none-any.whl
Size 2.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
e0cdd0f0a213192559566464e24eb514168569b6cd4d94f72af1d9092ab44021
BLAKE2b-256 checksum
How to use checksums
6252e53acb006287ac1ba2c2b035406b33010225d43c3496ebf6ebe2d396c655
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release history Release notifications | RSS feed

This release

0.1.19 This release

2 release files

0.1.18

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page