Skip to main content

Fast integer image histograms

Project description

ihist

Fast histogram computation for image data.

Currently experimental and API may still change.

Python API

Quick Start

import numpy as np
import ihist

# Grayscale image
image = np.random.randint(0, 256, (100, 100), dtype=np.uint8)
hist = ihist.histogram(image)  # Shape: (256,)

# RGB image
rgb = np.random.randint(0, 256, (100, 100, 3), dtype=np.uint8)
hist = ihist.histogram(rgb)  # Shape: (3, 256)

# With masking
mask = np.ones((100, 100), dtype=np.uint8)
hist = ihist.histogram(image, mask=mask)

Function

The Python API provides a single function for computing histograms:

import ihist

histogram = ihist.histogram(image, bits=None, mask=None,
                            components=None, out=None,
                            accumulate=False, parallel=True)

Parameters

image : array_like Input image data. Must be uint8 or uint16, and 1D, 2D, or 3D.

  • 1D arrays (W,) are interpreted as (1, W, 1)
  • 2D arrays (H, W) are interpreted as (H, W, 1)
  • 3D arrays (H, W, C) use C as number of components

Total pixel count must not exceed 2^32-1.

bits : int, optional Number of significant bits per sample. If not specified, defaults to full depth (8 for uint8, 16 for uint16). Valid range: [0, 8] for uint8, [0, 16] for uint16.

mask : array_like, optional Per-pixel mask. Must be uint8. Shape must match image dimensions:

  • For 1D images (W,): mask must be 1D, shape (W,)
  • For 2D/3D images: mask must be 2D, shape (H, W)

Only pixels with non-zero mask values are included. If not specified, all pixels are included.

components : sequence of int, optional Indices of components to histogram. If not specified, all components are histogrammed. Each index must be in range [0, n_components).

Examples:

  • [0] - histogram only the first component (e.g., red in RGB)
  • [0, 1, 2] - histogram first three components (e.g., RGB in RGBA, skipping alpha)

out : array_like, optional Pre-allocated output buffer. Must be uint32, and either:

  • 1D with shape (2^bits,) for single-component histogram, or
  • 2D with shape (n_hist_components, 2^bits)

If not specified, a new array is allocated and returned.

accumulate : bool, optional If False (default), the output buffer is zeroed before computing the histogram. If True, histogram values are accumulated into the existing buffer values. No effect if out is not given.

parallel : bool, optional If True (default), allows automatic multi-threaded execution for large images. If False, guarantees single-threaded execution.

Returns

histogram : ndarray Histogram(s) as uint32 array.

  • If the image is 1D or 2D and components is not specified, returns 1D array of shape (2^bits,)
  • If the image is 3D or components is explicitly specified, returns 2D array of shape (n_hist_components, 2^bits)
  • If out was provided, returns the same array after filling

Java API

Quick Start

import io.github.marktsuchida.ihist.HistogramRequest;
import java.nio.IntBuffer;

// Grayscale image
byte[] image = new byte[100 * 100];
IntBuffer hist = HistogramRequest.forImage(image, 100, 100).compute(); // 256 bins
// hist.remaining() == 256, access with hist.get(i)

// RGB image
byte[] rgb = new byte[100 * 100 * 3];
IntBuffer hist = HistogramRequest.forImage(rgb, 100, 100, 3).compute(); // 3 * 256 bins

// With advanced options
IntBuffer hist = HistogramRequest.forImage(image, 100, 100)
    .roi(10, 10, 80, 80)       // Region of interest
    .mask(maskData, 80, 80)    // Per-pixel mask
    .bits(8)                   // Significant bits
    .parallel(true)            // Allow multi-threading
    .compute();

Classes

HistogramRequest - Builder-style interface:

// Multi-component image (e.g., RGB)
IntBuffer hist = HistogramRequest.forImage(image, width, height, 3)
    .selectComponents(0, 1, 2)      // Which components to histogram
    .roi(x, y, roiWidth, roiHeight) // Region of interest
    .mask(maskData, maskWidth, maskHeight)  // Per-pixel mask with dimensions
    .maskOffset(offsetX, offsetY)   // Mask offset for ROI alignment
    .bits(sampleBits)               // Significant bits per sample
    .output(preallocatedBuffer)     // Pre-allocated output (size must be exact)
    .accumulate(true)               // Add to existing values
    .parallel(true)                 // Allow multi-threading
    .compute();

// All methods except for forImage() and compute() are optional.

// The returned IntBuffer has position/limit set to cover the histogram data.
// If output(IntBuffer) was used, the returned buffer is a duplicate that shares
// storage with the original; the original's position/limit are not modified.
// For heap buffers (default or when output(int[]) was used), get the array:
int[] array = hist.array();

IHistNative - Low-level JNI wrapper (advanced):

// Buffer-based (direct or array-backed buffers)
IHistNative.histogram8(sampleBits, imageBuffer, maskBuffer,
    height, width, imageStride, maskStride, nComponents, componentIndices,
    histogramBuffer, parallel);

(And, similarly, histogram16() for 16-bit images.)

Input Types

The Java API supports both arrays and NIO buffers:

  • 8-bit images: byte[] or ByteBuffer
  • 16-bit images: short[] or ShortBuffer
  • Mask: byte[] or ByteBuffer
  • Histogram output: int[] or IntBuffer

Performance: Zero-Copy vs Copy

Input Type IHistNative HistogramRequest Notes
Array (byte[], short[], int[]) N/A (wrap first) Zero-copy Wrapped as heap buffer
Direct buffer Zero-copy Zero-copy GetDirectBufferAddress
Array-backed buffer (ByteBuffer.wrap()) Zero-copy Zero-copy GetPrimitiveArrayCritical
View buffer (e.g., asReadOnlyBuffer()) Rejected Copy Copied to temp direct buffer
Read-only heap buffer Rejected Copy (input only) Rejected for histogram output

IHistNative requires buffers to be either direct or array-backed. View buffers and other buffer types are rejected with IllegalArgumentException.

HistogramRequest handles all buffer types automatically. Arrays are wrapped in heap buffers (zero-copy). Unsupported buffer types are silently copied to temporary direct buffers, which incurs a performance overhead but ensures all input types work.

Notes

  • Signed types: Java byte is signed (-128 to 127), but pixel values are interpreted as unsigned (0 to 255). The native code correctly handles this. Similarly for short with 16-bit images.

  • Accumulation: Like the C API, histogram values are accumulated. Use .accumulate(false) (default) to zero the output first.

  • Exact buffer sizes: Buffer and array parameters must have exactly the required size (not just at least the required size). For the image buffer, this is width * height * nComponents; for the mask, width * height; for the histogram output, nHistComponents * 2^bits. For buffers, the size that must match is the value of remaining() (distance from position() to limit()), not capacity().

  • Thread safety: The histogram functions are thread-safe for independent calls. Multiple threads can compute histograms simultaneously.

C API

The C API provides two functions for computing histograms of 2D image data:

  • ihist_hist8_2d() - for 8-bit samples (uint8_t)
  • ihist_hist16_2d() - for 16-bit samples (uint16_t)

Both functions have identical behavior except for the sample data type.

Function Signatures

#include <ihist/ihist.h>

void ihist_hist8_2d(
    size_t sample_bits,
    uint8_t const *restrict image,
    uint8_t const *restrict mask,
    size_t height,
    size_t width,
    size_t image_stride,
    size_t mask_stride,
    size_t n_components,
    size_t n_hist_components,
    size_t const *restrict component_indices,
    uint32_t *restrict histogram,
    bool maybe_parallel);

void ihist_hist16_2d(
    size_t sample_bits,
    uint16_t const *restrict image,
    uint8_t const *restrict mask,
    size_t height,
    size_t width,
    size_t image_stride,
    size_t mask_stride,
    size_t n_components,
    size_t n_hist_components,
    size_t const *restrict component_indices,
    uint32_t *restrict histogram,
    bool maybe_parallel);

Overview

These functions compute histograms for one or more components (stored as interleaved multi-sample pixels) from image data. They support:

  • Multi-component images (e.g., grayscale, RGB, RGBA)
  • Selective histogramming of specific components
  • Optional per-pixel masking
  • Region of interest (ROI) processing via stride and pointer offset
  • Automatic parallelization for large images
  • Arbitrary bit depths (not just full 8 or 16 bits)

Parameters

sample_bits Number of significant bits per sample. Valid range: 1-8 for ihist_hist8_2d(), 1-16 for ihist_hist16_2d(). The histogram will contain 2^sample_bits bins per sample.

Values with bits set beyond sample_bits are discarded and not counted in any bin.

image Pointer to image data. Samples are interleaved in row-major order:

  • Row 0, pixel 0: all samples
  • Row 0, pixel 1: all samples
  • ...
  • Row 1, pixel 0: all samples
  • ...

May be NULL if height or width is 0.

mask (optional) Per-pixel mask for selective histogramming. If non-NULL, must point to height * mask_stride uint8_t values. Only pixels where the corresponding mask value is non-zero are included in the histogram.

Pass NULL to histogram all pixels.

height Image height in pixels. May be 0 for empty input.

width Image width in pixels. May be 0 for empty input.

image_stride Row stride for the image in pixels (not bytes). Must be ≥ width.

When image_stride equals width, the image is treated as contiguous. Use image_stride > width together with an offset image pointer to process a rectangular region of interest (ROI) within a larger image.

mask_stride Row stride for the mask in pixels (not bytes). Must be ≥ width.

When mask_stride equals width, the mask is treated as contiguous. This parameter allows the mask to have a different stride from the image, which is useful, for example, if you have a mask that covers only a rectanglular ROI of the image.

n_components Number of interleaved per pixel. Examples:

  • 1 for grayscale
  • 3 for RGB
  • 4 for RGBA

Must be > 0.

n_hist_components Number of components to histogram. Must be > 0.

This allows histogramming a subset of components, such as skipping the alpha component in RGBA images.

component_indices Array of n_hist_components indices specifying which components to histogram. Each index must be in the range [0, n_components).

Examples:

  • {0} - histogram only the first component (e.g., red in RGB)
  • {0, 1, 2} - histogram first three components (e.g., RGB in RGBA, skipping alpha)
  • {1, 2, 3} - histogram last three components (e.g., skip first component in ARGB)

Must not be NULL.

histogram (output, accumulated) Output buffer for histogram data. Must point to n_hist_components * 2^sample_bits uint32_t values.

Histograms for each component are stored consecutively:

  • Bins for component_indices[0]: histogram[0] to histogram[2^sample_bits - 1]
  • Bins for component_indices[1]: histogram[2^sample_bits] to histogram[2 * 2^sample_bits - 1]
  • ...

Important: The histogram is accumulated into this buffer. Existing values are added to, not replaced. To obtain a fresh histogram, zero-initialize the buffer before calling the function.

maybe_parallel Controls parallelization.

  • true - Allows automatic multi-threaded execution for large images, if ihist was built with parallelization support (TBB).
  • false - Guarantees single-threaded execution.

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

ihist-0.1.1.tar.gz (93.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ihist-0.1.1-cp314-cp314t-win_amd64.whl (185.4 kB view details)

Uploaded CPython 3.14tWindows x86-64

ihist-0.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (222.3 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl (142.4 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

ihist-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl (150.0 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

ihist-0.1.1-cp314-cp314-win_amd64.whl (184.6 kB view details)

Uploaded CPython 3.14Windows x86-64

ihist-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (224.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp314-cp314-macosx_11_0_arm64.whl (141.0 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ihist-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl (148.7 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

ihist-0.1.1-cp313-cp313-win_amd64.whl (180.3 kB view details)

Uploaded CPython 3.13Windows x86-64

ihist-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (223.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (140.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ihist-0.1.1-cp313-cp313-macosx_10_15_x86_64.whl (148.6 kB view details)

Uploaded CPython 3.13macOS 10.15+ x86-64

ihist-0.1.1-cp312-cp312-win_amd64.whl (180.4 kB view details)

Uploaded CPython 3.12Windows x86-64

ihist-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (223.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (140.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ihist-0.1.1-cp312-cp312-macosx_10_15_x86_64.whl (148.6 kB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

ihist-0.1.1-cp311-cp311-win_amd64.whl (180.3 kB view details)

Uploaded CPython 3.11Windows x86-64

ihist-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (224.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (141.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ihist-0.1.1-cp311-cp311-macosx_10_15_x86_64.whl (148.5 kB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

ihist-0.1.1-cp310-cp310-win_amd64.whl (180.3 kB view details)

Uploaded CPython 3.10Windows x86-64

ihist-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (224.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ihist-0.1.1-cp310-cp310-macosx_11_0_arm64.whl (141.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

ihist-0.1.1-cp310-cp310-macosx_10_15_x86_64.whl (148.7 kB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

Details for the file ihist-0.1.1.tar.gz.

File metadata

  • Download URL: ihist-0.1.1.tar.gz
  • Upload date:
  • Size: 93.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b20e84d67ab4c71de1b7c8f8322d717a7c327626f92970d54ed3595483ff547b
MD5 279d81b75b19a71694aa4f51edae3d8b
BLAKE2b-256 82641e038156f265115f0065c12b5284b6e6ee41d4e779fbf39dc491f0529502

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1.tar.gz:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 185.4 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 808c683cd92c8a692183a4466c2d6120def5be3fad8941e1cb8f10c8e410f6e3
MD5 e559e0a4906f90babd89eacd1bfd9196
BLAKE2b-256 e31ecb7ea5c657fdb88c9243cb6f42273a24dac32c2a4dceb2aaa7ab5be253b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314t-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3a4e78a8e7fb03931d484d34f0e5c208579d9c91448ff21d89686869b01bf94d
MD5 6bc8d2f648994888e82806d4f8b8bc90
BLAKE2b-256 e483ac9a2ca943ed641ec4ffb34540b55a4dfa6d14098cc188e9f84f31fcbaa5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ed43aee77fe983864feb0215ad5601bee766141532b9993f3b9bda8086d424b
MD5 fe2d3daafc71434fcc7627255bbab11b
BLAKE2b-256 e34ae8dec9639d7ee721d1f1667d7a8d7712bd1a2be1a81b29c3d613f2fd5bda

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7169c3c92b48877760751444a4c86e0e75e0ecf4493698a090d3f1adbd28d350
MD5 a64a4d9bf53aef2b969faa068fe0c945
BLAKE2b-256 3613450c2d756f22f51df3f629ba7c5ffd807691dbd46aaad0f4019455014928

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 184.6 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 a0c98ed7f8e7b6a1b5499aa8478350dee62c679ec1fad30c2f30cd83be7ab512
MD5 33f69d968230629be1bafc8a3041a452
BLAKE2b-256 f1ad1e55d0f265fa4f20b239831edbf89147091eb16d7081826da67831ad5a6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dbe09dd4ed7ccb312a17eede223e5adcedb609ecf175d5c45522d5aa47f77024
MD5 37b66fa452c0b9b69cda7dcaf0f0ad0d
BLAKE2b-256 2da752b73abf30e0d49f48a774082030bbfc15f5c3b3fda9ee8bf46faf36f43c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2f05f4082a42e2d937ad70379969d0eade05a0af131e10c3bdef91e0d6bb8d95
MD5 41f22bf3cd47a65ca7d56e1649bada93
BLAKE2b-256 70e47f88a2bc5d298155c75b09059dcee20c1162ad9869666f8a3fba9f4c3a32

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 10527b3402bfcfcc84ae49ed71552925a5b72321966c85a9546517f742049226
MD5 d1cadfdbedda766c80a222c5740ded57
BLAKE2b-256 bcedc29f7043657c90b65848af03a72850799155204f129e33571588f8bd3787

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 180.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1eac1c21c5b5ca49a667331e10fc36fce4eb425242a3232fa09d436037965f4a
MD5 5296b54af0a165fd77c4d936e9767957
BLAKE2b-256 09a40358ced76f65210996e10b6070d2060cacad24b6bb59720bbad14e3da642

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp313-cp313-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 59e4335dc24ba62b61871e9de4098821a11b6026c863c6889ab4995b8cd13bd1
MD5 912334fbddf20676bfc3958cee3d40b1
BLAKE2b-256 48824ef57790bb5d41456b6a982a0e7c0bd4e1303626aaaadde3874ddaae7e16

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 015118720a69473a792e1e496a7b04f0898dbedb7017a97fa8c9f5c1a53fde12
MD5 c985d38e74f8601272bdee2610115ff2
BLAKE2b-256 eb154199783cdb740c506c1e5eb94d66765d2c2750da9e32632b14604b2432c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp313-cp313-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 cd535c6a576558166374c642712b769ac1852161b8ae84d83d41555cb7cccf93
MD5 7bdd31c102d6db98cc5878cdc8ca8995
BLAKE2b-256 0d00ebf828be1afad9c39a4495d1442ef59cb628558c9d93d074873f734c7128

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp313-cp313-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 180.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d65713de0964b66f90a2a76ed7dbcdbe758ee6b69213557404137e21e977ee4d
MD5 4a4adadc671bda954e060e2f864eb7b7
BLAKE2b-256 217b3ef50c3a669b2d1659e38fabf9b38027a6ceefae63964230a60cd7183956

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp312-cp312-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 11d9dcbc45ef3a21c55823aed842702c94325c76ebc6dc40efdf157c82c26120
MD5 2081ed1cba56c9ddf796bd0f3bb3ae0a
BLAKE2b-256 d4ab68281ad3ae68c36d9907be630e1e1f10c92887e38ff4b82581520ef19d71

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de25e71f004cd334c708ec2004b08f11ad60cd25e6f8ce59755b42a3f5c30e7b
MD5 49a76d3900284c8049ffc5ace334b930
BLAKE2b-256 ba135bd892526b07e5c96fb097849bd5fae6f31ad0cc5d5f531bcd4aa6fee817

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp312-cp312-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 16273d52952f71aa5ee289075fff0a2993180e0d537aefb403b4965b061a314c
MD5 30efa4db70e502d5be4277ca69ba89d6
BLAKE2b-256 703cc18823a6c11f7bb15603254defeaba7f33c425c7b834c37d87a6e1afa495

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp312-cp312-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 180.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6a19d8c1ffb00f0e308e8de75b5ec41e3dbf03b500b338f87654b6fc9910fa70
MD5 7b8517051baa953afc77fd631cf5b824
BLAKE2b-256 79bd73ef235198d6850a5910347c21150d63cd0e86ec2dd4cb6ad7e107807310

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp311-cp311-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 afbab1143ad7981d6e7410665fafc356165a5b105752c91e0fbbfa6c5ab28478
MD5 acfa4ab002f135120f3c869fee1dc183
BLAKE2b-256 81a69dc9984896c93c154558fa604c0a16cee0841e0eee64655000ad56b11597

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 66e3bfcef16119860f3f7c05598446a2eea023dc7d0c108eefce425c5eb4a925
MD5 b5649c8a8cee588b0795cf4db3352809
BLAKE2b-256 c71a6a6d48b0143a2a29ebd67bacba5258b47b77cb1aad96f77d38110018578e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp311-cp311-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 9b3df1606eb00da8ce02f9f6fe762f1d42be86579b415398afa57d353de1678a
MD5 53e070b9d1eba7900a3adc76d5d993fe
BLAKE2b-256 e5d6dfb7c40b89340f31fdc13a767c4cb85e05118b12447bc383fbcc84eb5601

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp311-cp311-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: ihist-0.1.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 180.3 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ihist-0.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 26369aed1e4fcbe02352f3798c5f42c1b105eba509320c3c96e25c645d8de978
MD5 c54b73f287c001694bb8d6b66b1c0af5
BLAKE2b-256 ba3f3608536ebcb697dce06261a5a1eb284a4491ea760bf956440e636e55a702

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp310-cp310-win_amd64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f09d7ec0226e712a019c16177afe0a87c72054a598802a7dabdd686f9ce5ad1d
MD5 883328b10972d6fbfb4e59805ea16733
BLAKE2b-256 9de7724e5f468d017e21486efd39478bc1a8673f21e723317b6348d4ba4de393

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aef00ca783fa4ae9b257803c9730a3c3aacd787bc16be00bec090b51a6564997
MD5 2b5f9d97b7f6bbda8e978d6390b3749d
BLAKE2b-256 5865f733239a9cb26f31baa2976b857794736c8328a3297d22104d66369d4847

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ihist-0.1.1-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ihist-0.1.1-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 599ab42df2b9edcd8afb6b4be767a97848f811663b8eef6444a6bf46713966c1
MD5 f78d03207931340e63b3324703ee2bee
BLAKE2b-256 f36b7910c150827456e1480f36d3614f12d5e745b3e73d62b00f3383d83766b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ihist-0.1.1-cp310-cp310-macosx_10_15_x86_64.whl:

Publisher: ci.yml on marktsuchida/ihist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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