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.0.tar.gz (207.3 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.0-cp313-cp313-win_amd64.whl (87.2 kB view details)

Uploaded CPython 3.13Windows x86-64

volresample-0.4.0-cp313-cp313-manylinux_2_28_x86_64.whl (703.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

volresample-0.4.0-cp313-cp313-manylinux_2_28_aarch64.whl (657.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

volresample-0.4.0-cp313-cp313-macosx_15_0_x86_64.whl (387.4 kB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

volresample-0.4.0-cp313-cp313-macosx_15_0_arm64.whl (342.9 kB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

volresample-0.4.0-cp312-cp312-win_amd64.whl (87.4 kB view details)

Uploaded CPython 3.12Windows x86-64

volresample-0.4.0-cp312-cp312-manylinux_2_28_x86_64.whl (714.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

volresample-0.4.0-cp312-cp312-manylinux_2_28_aarch64.whl (662.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

volresample-0.4.0-cp312-cp312-macosx_15_0_x86_64.whl (382.7 kB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

volresample-0.4.0-cp312-cp312-macosx_15_0_arm64.whl (340.1 kB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

volresample-0.4.0-cp311-cp311-win_amd64.whl (91.1 kB view details)

Uploaded CPython 3.11Windows x86-64

volresample-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl (718.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

volresample-0.4.0-cp311-cp311-manylinux_2_28_aarch64.whl (667.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

volresample-0.4.0-cp311-cp311-macosx_15_0_x86_64.whl (387.0 kB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

volresample-0.4.0-cp311-cp311-macosx_15_0_arm64.whl (341.5 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

volresample-0.4.0-cp310-cp310-win_amd64.whl (90.9 kB view details)

Uploaded CPython 3.10Windows x86-64

volresample-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl (676.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

volresample-0.4.0-cp310-cp310-manylinux_2_28_aarch64.whl (630.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

volresample-0.4.0-cp310-cp310-macosx_15_0_x86_64.whl (387.8 kB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

volresample-0.4.0-cp310-cp310-macosx_15_0_arm64.whl (342.5 kB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

volresample-0.4.0-cp39-cp39-win_amd64.whl (91.1 kB view details)

Uploaded CPython 3.9Windows x86-64

volresample-0.4.0-cp39-cp39-manylinux_2_28_x86_64.whl (675.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

volresample-0.4.0-cp39-cp39-manylinux_2_28_aarch64.whl (628.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

volresample-0.4.0-cp39-cp39-macosx_15_0_x86_64.whl (388.0 kB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

File details

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

File metadata

  • Download URL: volresample-0.4.0.tar.gz
  • Upload date:
  • Size: 207.3 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.0.tar.gz
Algorithm Hash digest
SHA256 e8307e0fe563d06a8a4f7ba657a36d69fb5c21d6358ae62a95ce52f1cc0b07d2
MD5 1292761f4f84704d214374e99400da77
BLAKE2b-256 3a27e91008a7b0f13ff8e75300dd7e26150133bcafe832027f6ce0e8a1fedd45

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0.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.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 87.2 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.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bd3f7373a957dd19166a91e3624605574f277d529752ee925bdfe68352a6f815
MD5 8d52674ca4c2357315cf15a6d6cfc0ab
BLAKE2b-256 e6aa6b2c396967bd7eaf682a06cffdc59eb347100bd203aa174280ebc2243b9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3ea148413cf16ca7fb89227ae66d13e1e0575f69539788a6de6221d60ba0feb9
MD5 434ebd7cc13a73c7b41c51bf12770bd9
BLAKE2b-256 d46a3a69cf584ae0f6bd766895ca76875e31e30c22c9f764469da7a6cc66eb3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d9b1283b91630c64e3c2d3a080b3ac62199e8d33ec491928f77a38ef9d162666
MD5 9ad4ff25e73456e738151f85e48d5790
BLAKE2b-256 deb847adecedc707314f77975a03c7a57e846abcf2439f6d30a86c90739e41d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp313-cp313-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 ae3efbcccefb4a5239e66d082057c16688d475e549f50ec0cb8735520789a5b2
MD5 879c6243dd3155635d9c58f275b8d531
BLAKE2b-256 b303b13f166b300000bef019565771f42dc51ad1c2945a68caa868c39e428820

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 d7ba1c9a91f47c59bbc7e5e9588937cb9fff5f44f4bc0e14d59204609025c595
MD5 bcda6d875cb53d78378e73380d30208a
BLAKE2b-256 7e0f55e3f314c9d14295cb34aadcb2b211caba86a8c1edb11f15be4d86322fe5

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 87.4 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.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8402dc7c891a232fc556f8279c85f9a57fa685e565e8ceeebde8aa33012e212f
MD5 7c451eaa691a4e81b7a93e71b06e1540
BLAKE2b-256 6c86fde3e0cc50efc3f68aa1ee33e9c0df40b3736524d396d3d8064839f66b21

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 69a1cfa2ae4ae2f194595cafb49daef143c05ac5398ad44a9a2866c925b1f16d
MD5 8d7d6d6e285ae2042a6988d6f51be89f
BLAKE2b-256 8fd9f1bd0b36d69386e2239cac91f6a9893bba848f30c6c966aee4402f53e973

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0c72cec23378a1752888adc1279174cf303adacadfc9743bd15f56d6f2524c96
MD5 d2ee99f69520cf723c1f58c75eab25c6
BLAKE2b-256 368e486c44204e6787e516e5aa1c1fabd41645b1b6180a2692006b91f237a029

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 de1788d0476a5ead92fb4bb15ccdbb55d976d4f459290890b61dec311c249c36
MD5 68912f256291944885a08e3b498168c3
BLAKE2b-256 a83a2a4b5fb99aaabc4a8f322ef6bd36b891bb5fc0f7d94fddeb10e12fc1cf25

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 0ab93a66e43892d7798562a0dc609009dbced452ecdf3b51bea1a6dffd337951
MD5 3b82bb4da6f03a56f9b547fc47a6ef1a
BLAKE2b-256 6dec8eb62d715c3ea7a79d1fb8c939d1b5615c5062d13919f5772f0fa0609ddf

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 91.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.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 86dea07b14229c4f01f4af80234f800d5c9fce33653f19f462a7710d493aef81
MD5 0395421029c8e8edd36adf78a31a313e
BLAKE2b-256 c2072177d03d639474e5fa182c220d9d96940c08e28f74a44e35df00b2d62acc

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 65f09b1048626b5a32fbe217be80f21fac56a3162359ac87f6f740de6d726f61
MD5 fcca962babcfd4cabda602c358b5eba9
BLAKE2b-256 fd0420a6aa0aba7e08055ce952b7eb53dbf73761a20360c131c85663cf5a2b3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3a58ab6013fb72eafb4e166d9cfc4adc786692ef3368df77728c7581ab772c8f
MD5 218bb9ed86e2c54a1bc6fac63d1830e4
BLAKE2b-256 8143b4fd710e9256b1d5def8e4988f92ee4ee89d6e09db8febe1b8278d5d8e43

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 d5136851e362d1148e02b7cd9c78f3e5900f45bf10270bf3ed4889d09928ed63
MD5 d55fe78ce4f4b484dcf4610a8c14b0f6
BLAKE2b-256 615fbea8534570ae356ab175e623507257034203ddfd45afafa579734048f749

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 8a1615fcfba3bc3d6b67be8612b2a8ddfa0fc9304965825f0b55604bfe7ca518
MD5 12b3c239e8959a73736020400011e2c8
BLAKE2b-256 2f523f5cf3f1488b4977e8f8133a016e4331a084cb2b9623295cb02e2c4c7742

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 90.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.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8ccf5c50cd2380f463361e4490ce2b3ece50a7cdf29407104194a703b0e15ea9
MD5 b90a8c21d3844d06f46992279dc51aba
BLAKE2b-256 ddbb80cb05c1e8a430d71d8893ab1b5ca664a4775933f13b3b4810866210bfe3

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1b4c0fa67a324a7112103efe7e2b5e6d90e66e06f63700a70314a9c4d1de0c22
MD5 5b29c5b11097d1ddd01f0dec7b76e3b6
BLAKE2b-256 1d48bf68e9dc0e830df83c23797f9bc06281bc04edc1b3d00297e2d632880d6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b7a2cd96faf43aa81105672c750bd16a41236542650cb672d14068afabc2d724
MD5 8738295e525af4f59f7af325bdfeee66
BLAKE2b-256 41c632d5085faf36038148cdd37b3c2f598b4644857511ec9e140ddf1d352984

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 4699c4c1c4f2e388cfd06e1993d89244ae777673006ed8bb57e2295d8f8190d7
MD5 e4189b668182ca01180023f1e986644f
BLAKE2b-256 ffb5300731b8656508a10b4d6c41c7cc90a956316022d725177e33bf8dd01688

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 a46ec15a495f5b130036fdeb82808e32df88cf2a1660053d3ef5df8c3e9899a7
MD5 1a55dd265206863c5c5cdfd85a0a3b45
BLAKE2b-256 81dec1ae948c83b45ccf5b614f786139e0273065a7b1a2cc94efe35df82a6b85

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: volresample-0.4.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 91.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.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 96e29657cc8e7ce1996303fc89d4a0531ddcecf1fe50c7fa6b2ccc529e7d9d75
MD5 fb637f89d2a8f77af31b9f6a9974a3a8
BLAKE2b-256 3a4c522000f7c2397b9f81d9085b63082b8d8b4f20b0cff1486f7797c0d195e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3e5cb562e6f17c85a909b56d6ba006d1c975849130a915db2b6eed3a5f8cd1f5
MD5 00906bdff76b2c5d877a94020e889865
BLAKE2b-256 327da116cedca36ecadc613f78cb26297a7fc93ebcf8dfbe7fdb13445b0bd9a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3c558a111f3fd57071d0a6c95d52bed451508086da9d4aa898d2eb58ad36fd4b
MD5 f441d7ffcb3f11ea85d56a92f7513f17
BLAKE2b-256 645e081818dfda50999089260da48f5699dde02ef597e60367c06d54ac38ea90

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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.0-cp39-cp39-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for volresample-0.4.0-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f73c94f1108466f3c642062b29952a171f19ef3a6fd51201314362af6a866a70
MD5 461ced56f1ca7da25a1e14861908a110
BLAKE2b-256 81630ff6814c05680bacac966240062c61b11c626f194c70945eb2f4c2944dce

See more details on using hashes here.

Provenance

The following attestation bundles were made for volresample-0.4.0-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