Skip to main content

A library for creating binomial sampled data mimicking SPAD images.

Project description

SPADSampler

CI PyPI - Version License: CC0-1.0 Python Versions

SPADSampler is a simple tool for creating binomial sampled data mimicking SPAD (Single-Photon Avalanche Diode) images. It provides tools for sampling, histogram computation, and visualization of image data. It has two sampling methods: Binomial and Bernoulli. The image is sampled using the integer value as the trails. A target range of mean photon counts are specified, and the image is sampled to match the specified range. If the sampling method is Bernoulli, the image is truncated to 0 or 1 to mimic the SPAD cut-off.

Installation

You can clone this repository or install SPADSampler using pip:

# Install directly from GitHub
pip install git+https://github.com/lyehe/spadsampler.git

# Install from PyPI
pip install spadsampler

Quick Start with Google Colab

You can try out SPADSampler quickly using our Google Colab notebook: Open In Colab

Features

  1. Binomial and Bernoulli Sampling: Sample data using either binomial or Bernoulli distribution.
  2. Histogram Computation: Compute and visualize histograms of image data.
  3. Flexible Input: Accept both numpy arrays and file paths as input.
  4. Customizable Sampling: Adjust sampling parameters such as probability range and processing axis.
  5. Visualization: Easily visualize original and sampled data side by side.

Usage

Here's a basic example of how to use SPADSampler:

import numpy as np
from spadsampler import sample_data, imshow_pairs, SamplingMethod

# Generate random data
data = np.random.randint(0, 256, (40, 128, 128, 5), dtype=np.uint8)

# Sample data using binomial sampling
output, = sample_data(data, range=(-6, -3))

# Visualize the results
imshow_pairs(output)

# Sample data using Bernoulli sampling
output_b, = sample_data(data, range=(-6, -3), sampling_method=SamplingMethod.BERNOULLI)

# Visualize the input and Bernoulli sampling results
imshow_pairs({"Input": data} | output_b)

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

spadsampler-0.1.5.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

spadsampler-0.1.5-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file spadsampler-0.1.5.tar.gz.

File metadata

  • Download URL: spadsampler-0.1.5.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.6

File hashes

Hashes for spadsampler-0.1.5.tar.gz
Algorithm Hash digest
SHA256 9a37c1d3433cb4437bc74e10176a39dd41daffb3f41ec011d1f8329e58dee5e8
MD5 2c1ce1514134598190eb5f1afbe312be
BLAKE2b-256 f921f893d9df092a0e1c0ef8fd7dff50c07ffee3fa0ea3a3e3f91d5773f5c39b

See more details on using hashes here.

File details

Details for the file spadsampler-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: spadsampler-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.6

File hashes

Hashes for spadsampler-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 196917d52768c403f34c3511efc74907c36d3a51ec2b9f307325581a038bf401
MD5 5651d47f2687488577a69d4b054d9494
BLAKE2b-256 22d7e36cd147d7e9a687289b1c52685d40acc9d738edd5bc8114b3701c1f35f8

See more details on using hashes here.

Supported by

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