Skip to main content

Fast 3D volume resampling with optimized Cython

Project description

volresample

License: MIT Python 3.9+

Fast 3D volume resampling with Cython and OpenMP parallelization.

Implemented against PyTorch's F.interpolate and F.grid_sample as a reference, producing identical results for nearest, linear, and area modes. The cubic mode matches scipy.ndimage.zoom(order=3, mode='reflect'), using grid_mode=True when align_corners=False and grid_mode=False when align_corners=True. Can be used as a drop-in replacement when PyTorch or SciPy is not available or when better performance is desired on CPU.

Blogpost

Features

  • Cython-optimized with OpenMP parallelization
  • Simple API: resample() and grid_sample()
  • Interpolation modes: nearest, linear, area, and cubic
  • Supports 3D, 4D (multi-channel), and 5D (batched multi-channel) volumes
  • Supports align_corners=True for linear and cubic resampling
  • Supports uint8, int16 (nearest) and float32 dtypes (all other modes) for both resample and grid_sample

Installation

pip install volresample

Or build from source:

git clone https://github.com/JoHof/volresample.git
cd volresample
uv sync

Quick Start

Basic Resampling

import numpy as np
import volresample

# Create a 3D volume
volume = np.random.rand(128, 128, 128).astype(np.float32)

# Resample to a different size
resampled = volresample.resample(volume, (64, 64, 64), mode='linear')
print(resampled.shape)  # (64, 64, 64)

Cubic Resampling (scipy-compatible)

# Cubic B-spline resampling.
# align_corners=False -> scipy zoom(..., grid_mode=True)
# align_corners=True  -> scipy zoom(..., grid_mode=False)
resampled = volresample.resample(volume, (64, 64, 64), mode='cubic')

Align Corners

# For linear and cubic modes, align_corners=True preserves the corner voxels.
aligned = volresample.resample(volume, (192, 192, 192), mode='linear', align_corners=True)

Multi-Channel Volumes

# 4D volume with 4 channels
volume_4d = np.random.rand(4, 128, 128, 128).astype(np.float32)

# Resample all channels
resampled_4d = volresample.resample(volume_4d, (64, 64, 64), mode='linear')
print(resampled_4d.shape)  # (4, 64, 64, 64)

Batched Multi-Channel Volumes

# 5D volume with batch dimension (N, C, D, H, W)
volume_5d = np.random.rand(2, 4, 128, 128, 128).astype(np.float32)

# Resample all batches and channels
resampled_5d = volresample.resample(volume_5d, (64, 64, 64), mode='linear')
print(resampled_5d.shape)  # (2, 4, 64, 64, 64)

Grid Sampling

# Input volume: (N, C, D, H, W)
input = np.random.rand(2, 3, 32, 32, 32).astype(np.float32)

# Sampling grid with normalized coordinates in [-1, 1]
grid = np.random.uniform(-1, 1, (2, 24, 24, 24, 3)).astype(np.float32)

# Sample with linear interpolation
output = volresample.grid_sample(input, grid, mode='linear', padding_mode='zeros')
print(output.shape)  # (2, 3, 24, 24, 24)

Parallelization

import volresample

# Check default thread count (min of cpu_count and 4)
print(volresample.get_num_threads())  # e.g., 4

# Set custom thread count
volresample.set_num_threads(8)

# All subsequent operations use 8 threads
resampled = volresample.resample(volume, (64, 64, 64), mode='linear')

API Reference

resample(data, size, mode='linear', align_corners=False)

Resample a 3D, 4D, or 5D volume to a new size.

Parameters:

  • data (ndarray): Input volume of shape (D, H, W), (C, D, H, W), or (N, C, D, H, W)
  • size (tuple): Target size (D_out, H_out, W_out)
  • mode (str): Interpolation mode:
    • 'nearest': Nearest neighbor (works with all dtypes)
    • 'linear': Trilinear interpolation (float32 only)
    • 'area': Area-based averaging (float32 only, suited for downsampling)
    • 'cubic': Tricubic B-spline interpolation with IIR prefilter (float32 only). Matches scipy.ndimage.zoom(order=3, mode='reflect')
  • align_corners (bool): Only supported for mode='linear' and mode='cubic'
    • False (default): matches PyTorch align_corners=False for linear, and SciPy grid_mode=True for cubic
    • True: matches PyTorch align_corners=True for linear, and SciPy grid_mode=False for cubic
    • Passing align_corners=True with nearest or area raises ValueError

PyTorch correspondence:

volresample PyTorch F.interpolate
mode='nearest' mode='nearest-exact'
mode='linear', align_corners=False mode='trilinear', align_corners=False
mode='linear', align_corners=True mode='trilinear', align_corners=True
mode='area' mode='area'

align_corners is intentionally limited to the modes where the reference APIs support it: linear and cubic.

SciPy correspondence:

volresample SciPy
mode='cubic', align_corners=False scipy.ndimage.zoom(order=3, mode='reflect', grid_mode=True)
mode='cubic', align_corners=True scipy.ndimage.zoom(order=3, mode='reflect', grid_mode=False)

Returns:

  • Resampled array with same number of dimensions as input

Supported Dtypes:

  • uint8, int16: Only with mode='nearest'
  • float32: All modes (nearest, linear, area, cubic)

grid_sample(input, grid, mode='linear', padding_mode='zeros', fill_value=0)

Sample input at arbitrary locations specified by a grid.

Parameters:

  • input (ndarray): Input volume of shape (N, C, D, H, W)
  • grid (ndarray): Sampling grid of shape (N, D_out, H_out, W_out, 3)
    • Values in range [-1, 1] where -1 maps to the first voxel, 1 to the last
  • mode (str): 'nearest' or 'linear'
  • padding_mode (str): 'zeros', 'border', 'reflection', or 'constant'
  • fill_value (float): Fill value for out-of-bounds samples when padding_mode='constant'. For integer dtypes in nearest mode, the value is clamped to the valid range. Default: 0

PyTorch correspondence:

volresample PyTorch F.grid_sample
mode='nearest' mode='nearest'
mode='linear' mode='bilinear'

The behavior matches PyTorch's grid_sample with align_corners=False.

Returns:

  • Sampled array of shape (N, C, D_out, H_out, W_out)

Supported Dtypes:

  • uint8, int16: Only with mode='nearest'
  • float32: All modes (nearest, linear)

set_num_threads(num_threads)

Set the number of threads used for parallel operations.

Parameters:

  • num_threads (int): Number of threads to use (must be >= 1)

get_num_threads()

Get the current number of threads used for parallel operations.

Returns:

  • Current thread count (default: min(cpu_count, 4))

Performance

Benchmarks below were produced by the default curated benchmark profile on an Intel i7-8565U using 4 CPU threads:

python tests/benchmark.py --threads 4

The default profile runs for about 30-60 seconds using adaptive repeat counts.

volresample vs PyTorch

Case Shape PyTorch volresample Speedup Max error
nearest 128x128x128 -> 64x64x64 0.98 ms 0.41 ms 2.36× 0
nearest (uint8) 128x128x128 -> 64x64x64 0.83 ms 0.27 ms 3.07× 0
nearest (int16) 128x128x128 -> 64x64x64 4.20 ms 0.40 ms 10.54× 0
linear 128x128x128 -> 64x64x64 3.45 ms 2.33 ms 1.48× 0
linear, align_corners=True 96x96x96 -> 144x144x144 23.75 ms 10.46 ms 2.27× 4.50e-05
area 160x160x160 -> 80x80x80 40.12 ms 7.20 ms 5.57× 0
4D linear 4x96x96x96 -> 64x64x64 12.01 ms 7.50 ms 1.60× 0
5D linear 2x4x80x80x80 -> 48x48x48 9.76 ms 8.49 ms 1.15× 0

volresample vs SciPy

Case Shape SciPy volresample Speedup Max error
cubic, align_corners=False 128x128x128 -> 64x64x64 266.29 ms 63.68 ms 4.18× 8.34e-07
cubic, align_corners=True 96x128x80 -> 64x160x48 403.68 ms 46.23 ms 8.73× 1.43e-06

volresample vs PyTorch (grid_sample)

Case Shape PyTorch volresample Speedup Max error
linear, zeros 1x2x96x96x96 -> 80x80x80 129.57 ms 41.63 ms 3.11× 4.40e-05
nearest, zeros 1x2x96x96x96 -> 80x80x80 14.23 ms 4.47 ms 3.18× 0
linear, reflection 1x2x80x96x64 -> 72x88x56 91.12 ms 19.75 ms 4.61× 5.42e-05

Average speedup across the default benchmark suite: 3.99×.

Notes:

  • Cubic mode is validated against SciPy rather than PyTorch. The align_corners flag selects between SciPy's grid_mode=True and grid_mode=False, and both paths are benchmarked above.
  • int16 nearest shows the largest speedup because PyTorch must round-trip through float32, while volresample operates directly on int16.
  • Area mode remains one of the strongest CPU wins because the implementation parallelizes efficiently over spatial work.
  • 4D and 5D coverage is included in the benchmark suite so multi-channel and batched paths are represented, even when the raw speedups are smaller than the single-volume cases.
  • These are machine-specific measurements. CPU architecture, memory bandwidth, thermal throttling, and installed library versions can shift the absolute numbers substantially.

Development

Running Tests

# Run all tests
pytest tests/

# Run with PyTorch comparison tests
pip install torch
pytest tests/ -v

# Skip PyTorch tests
pytest tests/ --skip-torch

Running Benchmarks

# Curated default run: all modes plus grid_sample, roughly 30-60 seconds
python tests/benchmark.py

# Faster smoke benchmark
python tests/benchmark.py --profile quick

# Or pin the thread count
python tests/benchmark.py --threads 4

# Output is printed live while the benchmark runs
python -u tests/benchmark.py

Building from Source

pip install -e ".[dev]"
python setup.py build_ext --inplace

License

MIT License - see LICENSE file for details.

Contributing

Contributions are welcome. Please submit a Pull Request.

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

volresample-0.4.1.tar.gz (209.4 kB view details)

Uploaded Source

Built Distributions

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

volresample-0.4.1-cp313-cp313-win_amd64.whl (88.1 kB view details)

Uploaded CPython 3.13Windows x86-64

volresample-0.4.1-cp313-cp313-manylinux_2_28_x86_64.whl (708.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

volresample-0.4.1-cp313-cp313-manylinux_2_28_aarch64.whl (658.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

volresample-0.4.1-cp313-cp313-macosx_15_0_x86_64.whl (389.4 kB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

volresample-0.4.1-cp313-cp313-macosx_15_0_arm64.whl (343.7 kB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

volresample-0.4.1-cp312-cp312-win_amd64.whl (88.3 kB view details)

Uploaded CPython 3.12Windows x86-64

volresample-0.4.1-cp312-cp312-manylinux_2_28_x86_64.whl (717.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

volresample-0.4.1-cp312-cp312-manylinux_2_28_aarch64.whl (665.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

volresample-0.4.1-cp312-cp312-macosx_15_0_x86_64.whl (385.2 kB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

volresample-0.4.1-cp312-cp312-macosx_15_0_arm64.whl (341.4 kB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

volresample-0.4.1-cp311-cp311-win_amd64.whl (92.1 kB view details)

Uploaded CPython 3.11Windows x86-64

volresample-0.4.1-cp311-cp311-manylinux_2_28_x86_64.whl (726.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

volresample-0.4.1-cp311-cp311-manylinux_2_28_aarch64.whl (671.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

volresample-0.4.1-cp311-cp311-macosx_15_0_x86_64.whl (389.0 kB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

volresample-0.4.1-cp311-cp311-macosx_15_0_arm64.whl (342.8 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

volresample-0.4.1-cp310-cp310-win_amd64.whl (91.9 kB view details)

Uploaded CPython 3.10Windows x86-64

volresample-0.4.1-cp310-cp310-manylinux_2_28_x86_64.whl (682.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

volresample-0.4.1-cp310-cp310-manylinux_2_28_aarch64.whl (633.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

volresample-0.4.1-cp310-cp310-macosx_15_0_x86_64.whl (389.9 kB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

volresample-0.4.1-cp310-cp310-macosx_15_0_arm64.whl (343.8 kB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

volresample-0.4.1-cp39-cp39-win_amd64.whl (92.1 kB view details)

Uploaded CPython 3.9Windows x86-64

volresample-0.4.1-cp39-cp39-manylinux_2_28_x86_64.whl (680.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

volresample-0.4.1-cp39-cp39-manylinux_2_28_aarch64.whl (631.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

volresample-0.4.1-cp39-cp39-macosx_15_0_x86_64.whl (390.0 kB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

File details

Details for the file volresample-0.4.1.tar.gz.

File metadata

  • Download URL: volresample-0.4.1.tar.gz
  • Upload date:
  • Size: 209.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1.tar.gz
Algorithm Hash digest
SHA256 8479bc5e81d43e91498f02e1ea7decb78bc9503377d22433fecd89eda8cd98ba
MD5 380853d1dadbe2752464f27c5647544a
BLAKE2b-256 7ab452dbe7900521d05107393f37eb5294421b5ced4228845be4284e4b458771

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1.tar.gz:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 88.1 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a723c747682dc8e8fb9146970e820ce8540013ee1c857e9098bb145009ced508
MD5 644fc512560d32fb57999fd27a3b16f5
BLAKE2b-256 9b406ad746088cd740a7b7b46a702e8aea6ce2cd192918c7225732bec0416038

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp313-cp313-win_amd64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 da2f46ea079fd11b7924a38e54d1eb0052e03f8a1003324fc48d721951a9f925
MD5 687112b67973f97a4682099c1638d1d4
BLAKE2b-256 870c4e35dc9e8a8189340ab81459045b82d9e0ffdc5b094f01d9910b551029e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d0eb8c6417e73c28058245983e39f3003178861e74687bd20e8276582497724d
MD5 d923567c6677a0060ecc0f29df187f93
BLAKE2b-256 27d87beaba701e5a321ffec11561cf4ff1de1163b61a3b6ec94be09ff7ae472a

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp313-cp313-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 0d416f32184402515934c64cffd07cae2a0b93b153ef3a2ecafb4049a7cf03d5
MD5 39c770e8e38d1396e2bbe086cffbb0de
BLAKE2b-256 1ade0db0cd05225b65a4eaadd91052f027531d7532644a21764dacd2a9709f86

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp313-cp313-macosx_15_0_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 0a8fa227cc8327a9c4d0f8ada5e5b3fba62c76c6170396a1247854231a55e1b0
MD5 867dd2b86beff389bac8c133a847ac38
BLAKE2b-256 2ec6741d96975c4cabb4487df2d9d75643c7782003e393d0be5bc1871ab87970

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 88.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 36200a4301471d42080ac63e28b657040c6016eda20be6e3d250bfac11ee2d1c
MD5 b6993c3365c473dd2f0d53fd46523e62
BLAKE2b-256 6c63a08cf922b642434bf3fe97cf21717c95c4aeb8ec5ac81b3749ea21887558

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp312-cp312-win_amd64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 17ec6dfe2a6c1b7227c2a97cbd8382bab8950e4f858bfa0b409d87ef3f95324c
MD5 add225abcd0529b724e97a202339e265
BLAKE2b-256 7f50f7a3628c1ff2feaa8b48657161f8bc5f8f879a23d7f1f7060e7f5f990cbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 40d914acd28024b169d007c58376a29966cf5eccec101b2fd40728520f9db324
MD5 180fc1bf5ecd4283c71651e2add24ba7
BLAKE2b-256 5558642046dea1e3eb3e70467c6882f4c2fb7adbc02579552a1c0ff213004fbf

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 6d803658238dba58a6c46001f7670578082d7e8d51d8844daabeb5f1d2e231cc
MD5 62e3c01bea5188a559b70ce62fbf7c69
BLAKE2b-256 68f711b394c1e6f8bf45ea2156b37b4bf786a7bbae177a2d355a14e743eba836

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp312-cp312-macosx_15_0_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 604c126037e77f35c1668ce2e3bf16eb4f105a12731c7bc7cc82d0e33216f47b
MD5 4fcb0e46b2960533e4dc868d067a856e
BLAKE2b-256 640951dda5b5367a79f3419764ddbf2ae692f2c8d73513af2d40eaf4706d6a21

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 92.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f069db247108f32336df8a61060d19be7c28395514016c2a4b3dcb22464d7a92
MD5 c4f827b8f04d571fd69de7573dd3c8c4
BLAKE2b-256 38a4712b2b6b1ffda6d4906c7035e8642d61eba84f1cebb45251c915b011d525

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp311-cp311-win_amd64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2ec2392c5b77dd55fd814fc24c7be26e921190e72b9f4212c02cde3b8d1f1b66
MD5 ad6747d7b9b5df8b635dce0538218d3c
BLAKE2b-256 0850a78c7741685cc003e9a07be223d8efb5f6a3f4952d4c118798a8c088fcd1

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5cbf5d642821e1f3ba6d06bcb1807b1e9aa444d52c59713df8f299b038b5aa08
MD5 0f5f035d37e756a61365fac7d6645bcf
BLAKE2b-256 bc1635cb5060737384ee05efcd08607103be73aeeace1ff2509f43e097e4da69

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 d17ef7d4f7492061a0f13a791d505fbedd557290a4cf304d70cff7203a356d86
MD5 a53a1370ecd93a18779afc313f5e3d53
BLAKE2b-256 e069c62badb6bc0bdf017d4239bf230c3acdddfbd275b84c16bc1866eb64b1cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp311-cp311-macosx_15_0_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3dc4e38873c969d558ec72ff3525f0955224f546096bc7f4716d4b1167d66b6e
MD5 dc24463ade250c9388880fd208362634
BLAKE2b-256 c24f39270591390cdd1a7d5b47c62a99b25045bd25463095c9cd1176bdfaaae2

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 91.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 04c8da7b75a42c07d144605c25c07db9b921110fa32abe2cf631606c619941a0
MD5 a7541bc6f1b6337529055c73b74cc3ac
BLAKE2b-256 882f17842a9105de972177dc65cf18db9a9c92d71848f77eb6000e6ff10e0de2

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp310-cp310-win_amd64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 02bc1f669655cd332adb899d64294a5db243b5b7b80685fa5b8dc2a317ec9a22
MD5 b64ecd272a0da85aaf7881c062ebc425
BLAKE2b-256 e4dae763ac2a536f0d6b9fa81e3a22b1672ba521357ab1d11d0841ef6fe5d259

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 305f229d1243832787dea736e8a470959d73f850738448ac3b139390225c2f2d
MD5 cc66e1d2fd22fc8661fbe38dacde39a0
BLAKE2b-256 0cd579c573de52bf59d2cdf08f9e727315b2ea86bf0eb7a0ba975b4c8b179092

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 3bf913120744cdd3a16c002f80e64ba130dfe6fad0316f505378d4d1f4afcf4e
MD5 7b7b02684e0b4279a92e41940688320a
BLAKE2b-256 15ab8a61fb37607c2b4a6e6337fb8e56346a6f53a4b523558a7a8e689511c9fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp310-cp310-macosx_15_0_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 58884bfc1938441b6f548a104727b558da0e1ca7005ec8fc2bb314f5069cb357
MD5 5b2e45f3e981341a468dbe516f49c1cc
BLAKE2b-256 eeff2e352a63cd96bff5d6dce363105255f5606740347faa995a89ca63aeeddf

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 92.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for volresample-0.4.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ece67974a38c93173ca7f056b18bd259e03c55a1f26956aab2d1d642ee560697
MD5 615a3bc73c12d605bf80e4ff1bb192fc
BLAKE2b-256 e19d2fb447ffcf523a77f67d0bb3ba9120fc699dec8ca163ccec5c29d056df62

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp39-cp39-win_amd64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2375516388521eb19d3e64d3762ea3641023c554697a35677882616907ddf969
MD5 56ab247de1cc62a0b5b4bee97c44b995
BLAKE2b-256 174e726904cfdb935b88f54c80312de3d03beeeee2cb932cf2d1c9671754a6aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp39-cp39-manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e1dc3d843ebb236d5cab53af791a9d770869f92ce8fb6a5442c9ac7b72929091
MD5 e3fa95f8191284d02f3ffb8bd4925ab6
BLAKE2b-256 ac911403545a4d5791617e3a5633246b3aa278351f802554d86b573cd69b1905

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp39-cp39-manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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

File details

Details for the file volresample-0.4.1-cp39-cp39-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.1-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 97797c625b4bae21d0f8c53645f32db656906aae60c8fdb298d1171b54db28ca
MD5 0416b75f9546a3927ff054f6f9c950a6
BLAKE2b-256 61e85801a1fae7ef282225e0e9b5dce0f2e830de0751aac8ba45baf0cd7665fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.1-cp39-cp39-macosx_15_0_x86_64.whl:

Publisher: build_wheels.yml on JoHof/volresample

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