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.6.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for spadsampler-0.1.6.tar.gz
Algorithm Hash digest
SHA256 582f429cd844323b6b49adb99c97e25a485209dbbc21a9d8a2ef2dbfca820549
MD5 e00ad904d66d29025dc5894699c4eafe
BLAKE2b-256 6380cb53cd1331a49e516db5e4c8b062f93e2a55388e28f5a720e24716c5efac

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spadsampler-0.1.6-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.7

File hashes

Hashes for spadsampler-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 9f1645a9c88ecfe482c6640f9055fdb14d4b8f04fbe66199f15898fdc453c419
MD5 df709193625ec3ef02c4d1f8cfa36a66
BLAKE2b-256 b6622e4ae6fd75972dedfcfbf4ec9f0fc92028f65358fa23882c93de8184b987

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