Skip to main content

A library for creating binomial sampled data mimicking SPAD images.

Project description

SPADSampler

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({"Original": data, output})

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

# Visualize the Bernoulli sampling results
imshow_pairs({"Original": 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.2.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

spadsampler-0.1.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: spadsampler-0.1.2.tar.gz
  • Upload date:
  • Size: 12.5 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.2.tar.gz
Algorithm Hash digest
SHA256 d5ec557d2199f3c92c10b781a51ba9862dc94b8953d6927deb16bb6f5325d591
MD5 42edf8134e110e9d70b077589d426708
BLAKE2b-256 757d187eff65f7497fe44e6cecdab43e7fba4f16e2dbb1d9eac8a465fb04d0c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spadsampler-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.8 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0d393b46590b61ddb15f904a6a1377db36e536c61b63d4983a5046109ef2d80e
MD5 34e671e15f3e8e89827f8dead6d60f1e
BLAKE2b-256 7d67df2197a2d0866fe02f0e8a0982c9c4541de59bd87d997ec786ae50589af0

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