pyfli.simulator.distributions#

Sample detector, noise, beta, and truncated-normal parameters for simulations.

This module belongs to pyfli.simulator and is part of PyFLI synthetic FLI/FLIM data generation, hardware noise modeling, calibration, and validation tools. Public API includes classes ParameterSampler.

Classes

ParameterSampler()

Sample physically plausible detector and lifetime parameters for simulation workflows.

class ParameterSampler[source]#

Bases: object

Sample physically plausible detector and lifetime parameters for simulation workflows. Static methods cover quantum efficiency, noise parameters, beta draws, truncated normals, and interval stretching.

static sample_qe(sensor_type='continuous', rng=None)[source]#

Samples QE based on sensor type.

Parameters:
  • sensor_type (str)

  • rng (Any | None)

Return type:

Any

static sample_noise_params(bit_depth, sensor_type='continuous', rng=None)[source]#

Centralized control for hardware noise levels.

Parameters:
  • bit_depth (int)

  • sensor_type (str)

  • rng (Any | None)

Return type:

dict[Any, Any]

static sample_beta(alpha, beta, scale=1.0, offset=0.0, rng=None)[source]#

Standard beta sampling with scale and offset.

Parameters:
Return type:

Any

static beta_sample(alpha, beta, scale=1.0, clip_eps=1e-4, rng=None)[source]#

Your specific photon-count beta sampling logic.

Parameters:
Return type:

ndarray

static truncated_normal(mu, sigma, lower=0.01, upper=5.0)[source]#

Fixed: Now takes mu and sigma as separate arguments.

Parameters:
Return type:

Any

static stretch_squeeze(sample, epsilon)[source]#

Maps [0,1] to [epsilon, 1-epsilon].

Parameters:
Return type:

Any