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. Can be used as a drop-in replacement when PyTorch is not available or when better performance is desired on CPU.

Features

  • Cython-optimized with OpenMP parallelization
  • Simple API: resample() and grid_sample()
  • Interpolation modes: nearest, linear and area
  • Supports 3D and 4D (multi-channel) volumes
  • Supports uint8, int16 (nearest) and float32 dtypes (all)

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)

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')

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)

PyTorch correspondence:

volresample PyTorch F.interpolate
mode='nearest' mode='nearest-exact'
mode='linear' mode='trilinear'
mode='area' mode='area'

volresample does not expose an align_corners parameter. The behavior matches PyTorch's align_corners=False (the default).

Returns:

  • Resampled array with same number of dimensions as input

Supported Dtypes:

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

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

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', or 'reflection'

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)

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 on an Intel i7-8565U against PyTorch 2.8.0. Times are means over 10 iterations.

resample() — single large 3D volume:

Operation Mode Single-thread Four-threads
volresample PyTorch Speedup volresample PyTorch Speedup
512³ → 256³ nearest 23.6 ms 38.0 ms 1.6× 12.6 ms 16.7 ms 1.3×
512³ → 256³ linear 99.9 ms 182 ms 1.8× 34.3 ms 54.6 ms 1.6×
512³ → 256³ area 230 ms 611 ms 2.7× 64.5 ms 613 ms 9.5×
512³ → 256³ nearest (uint8) 13.7 ms 33.8 ms 2.5× 4.3 ms 10.4 ms 2.4×
512³ → 256³ nearest (int16) 16.5 ms 217 ms 13.2× 8.4 ms 93.2 ms 11.2×

grid_sample() — single large 3D volume (128³ input):

Mode Padding Single-thread Four-threads
volresample PyTorch Speedup volresample PyTorch Speedup
linear zeros 118 ms 181 ms 1.5× 38.1 ms 169 ms 4.4×
linear reflection 103 ms 211 ms 2.1× 33.2 ms 194 ms 5.9×

Average speedup across all benchmarks: 3.1× at 1 thread, 6.0× at 4 threads.

Notes:

  • Area mode: At 1 thread the speedup is 2.7×; at 4 threads it reaches 9.5×. PyTorch's area interpolation does not appear to parallelize over spatial dimensions for single-image workloads — its runtime is essentially unchanged between 1 and 4 threads (611 ms vs. 613 ms). volresample parallelizes along the first spatial dimension, reducing runtime from 230 ms to 65 ms with 4 threads.
  • int16: PyTorch does not support int16 interpolation natively and requires casting to float32, processing, then casting back. volresample operates directly on int16, eliminating two full-volume type conversions. The advantage is large even at 1 thread (13.2×) and persists at 4 threads because the conversion overhead scales with data volume, not thread count.
  • Thread scaling: For large volumes, volresample typically halves wall time going from 1 to 4 threads on nearest and linear modes. Grid sample scales more strongly (1.5× → 4.4× for linear) because per-voxel work is higher. PyTorch scaling is more variable, and negligible for area mode.
  • These are estimates on a single machine under light load. Actual results will vary with CPU architecture, memory bandwidth, and system conditions.

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

# Use default threads (min of cpu_count and 4)
python tests/benchmark_resampling.py --iterations 10

# Or specify thread count
python tests/benchmark_resampling.py --threads 4 --iterations 10

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.1.0.tar.gz (171.2 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.1.0-cp313-cp313-win_amd64.whl (68.2 kB view details)

Uploaded CPython 3.13Windows x86-64

volresample-0.1.0-cp313-cp313-manylinux_2_28_x86_64.whl (507.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

volresample-0.1.0-cp313-cp313-manylinux_2_28_aarch64.whl (484.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

volresample-0.1.0-cp313-cp313-macosx_15_0_x86_64.whl (359.7 kB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

volresample-0.1.0-cp313-cp313-macosx_15_0_arm64.whl (320.3 kB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

volresample-0.1.0-cp312-cp312-win_amd64.whl (68.3 kB view details)

Uploaded CPython 3.12Windows x86-64

volresample-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl (514.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

volresample-0.1.0-cp312-cp312-manylinux_2_28_aarch64.whl (490.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

volresample-0.1.0-cp312-cp312-macosx_15_0_x86_64.whl (357.9 kB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

volresample-0.1.0-cp312-cp312-macosx_15_0_arm64.whl (318.6 kB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

volresample-0.1.0-cp311-cp311-win_amd64.whl (70.0 kB view details)

Uploaded CPython 3.11Windows x86-64

volresample-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl (515.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

volresample-0.1.0-cp311-cp311-manylinux_2_28_aarch64.whl (490.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

volresample-0.1.0-cp311-cp311-macosx_15_0_x86_64.whl (359.9 kB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

volresample-0.1.0-cp311-cp311-macosx_15_0_arm64.whl (319.5 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

volresample-0.1.0-cp310-cp310-win_amd64.whl (70.1 kB view details)

Uploaded CPython 3.10Windows x86-64

volresample-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl (494.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

volresample-0.1.0-cp310-cp310-manylinux_2_28_aarch64.whl (472.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

volresample-0.1.0-cp310-cp310-macosx_15_0_x86_64.whl (360.8 kB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

volresample-0.1.0-cp310-cp310-macosx_15_0_arm64.whl (320.3 kB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

volresample-0.1.0-cp39-cp39-win_amd64.whl (70.2 kB view details)

Uploaded CPython 3.9Windows x86-64

volresample-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl (493.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

volresample-0.1.0-cp39-cp39-manylinux_2_28_aarch64.whl (470.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

volresample-0.1.0-cp39-cp39-macosx_15_0_x86_64.whl (360.9 kB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

File details

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

File metadata

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

File hashes

Hashes for volresample-0.1.0.tar.gz
Algorithm Hash digest
SHA256 44026516802bcf9cee5e39ca9420c4b9a84c46a6baf5a512a8d9cb100ee5f359
MD5 0bd98d2bde1ae699961a8bd6300d43b7
BLAKE2b-256 6d7c9af386c7aa6357cf03d87f44ad080d1b734d10293e52ba7a32fe4a045bdc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 80892b06bf3c9dc53172dcbb97875eb631a4d758dc5891bf3fbd96408ddca54a
MD5 2d8850d18eff8863f707be598691983f
BLAKE2b-256 3778e41274dabc54535e97de4b4065766505de046b9296905bba51a1e42845ca

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 de6511053e0d8f12b093d4735f44154b5b8dc7f288000eba914ce7096461ffc9
MD5 4ac9bd0ca82e7ce383ba4cabab1db811
BLAKE2b-256 9c29669e2908c4810a1decdf742bebf5d16d0e4c41afdf311e959a494ca6e7d8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bdc2ba222a590a75ce75577737487814948252dabab4d0aec93e5c8152959df9
MD5 f91dca373dad892b962a771269232e18
BLAKE2b-256 621e762ec972221d79ca526d9fb292d2c46b13bc54ee4fdc1ce0c13359fe993c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 d76b654544925a1b9cdbad3ce14d9c51e3c5943a7b41e45582f572e0e62a2ddd
MD5 2d2769cf7c33b6931f12c55d87f221a6
BLAKE2b-256 d14b116b1da3d007ca5f0854b1b0cb8ccf64779b657a940b86e625e268f09ce8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 b83c247675b980d6ddef459687e1974e13638315626c925e72fc5df5bd174db1
MD5 40cd8acf8720d704dd7a9af8f12295a0
BLAKE2b-256 6fb618fe882131a2bf5f4772894a8b01f9b111b06fbc65d487fed8dff9884fa8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 574eebfb2341138db1799cd89da79cebc890ee2ff861c6cad303588466848911
MD5 f2249db83f4741205882c2fdbc0b1c13
BLAKE2b-256 8ff20d6108b2c8705140d3a26d51d675bf98ea9941c89053fd20876a86d85e11

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0315975e68d6224a99375b107cfd1606ff6a529ec7b94afa2cbc0948f274ecc1
MD5 2a860f8ae678c6340195ed35f0ee9698
BLAKE2b-256 dbd94a8775ab2d400169d534ac5e9ec9a314a2e7491d3e67bf3f2c1d4f96123b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f5bb5b6a5e38ceca5e05e85e827da6b4a581bd492ac04388b4605dd55d0528e9
MD5 3fe7768c9a09d48a4883e133b9432244
BLAKE2b-256 8098dda562bb3ef50c96c2cd3416cd5abbb166cd887d5ce55402fd542ece67cb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 35c7072cb4019866c8ddbaba36187859be3e63fcea0020e067032ebb34cf64ac
MD5 bfc51506104120dfc17a565395e4ec4e
BLAKE2b-256 31274f2c826ce155cc3c001ce95d0e13110c82b354ae68f83dc2fc003fbd6b04

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 dd326c303fe9861a2a82ff11e05e376f75465ae8ab187d1fca88e33a5dbe745a
MD5 4051d1ec78592712494fca3d6cb316b6
BLAKE2b-256 60ffe978390eb02106a471c3f5929fbc50aefd9efc79457e6f9d7d906292a232

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 20a2f499ef3f35a19bd31214af03c4c69c9db94e19a990d9c5f47eb66c8f6321
MD5 6511663e910391b51ba59abee10b74db
BLAKE2b-256 1b06c8a06856ee366799e7bcea7672217b1497e7b01e28209a0f212f8c708736

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 70659e0f6a660ee7b30c9a425dafc9c6756a78615de7f625a7cc5af58263fa6d
MD5 88888705030f46b34cfe707209317a27
BLAKE2b-256 420d26184dddae506ec76f7ba73521b4f314be40448022079fad9ce1ff6a552f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dc8cebd5386f2563da4a3346d8d270ca4432892ed83baafba42847f32a3f1ddc
MD5 fe13a9257e719a89e49ec065754f073c
BLAKE2b-256 a09565f2f07d3d19a05f5be7612ffcc9846a15c0992e4a6e75f667f79235fceb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 b4f82f1b6a928b12caf503e9a9229065ed70003122fbea2be841bf58a73afa1c
MD5 5abea6691c396467bc95e0d61ed05b9f
BLAKE2b-256 123fcb43fb4e7b922e743184575d889d955fce39de4c5f220365b96186ee5df1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 55a2b0382830481a56d1046dfd7403010c133821e0ce2e18e55861e3b1711b27
MD5 1b427f230198f3d3c811ca58797f8350
BLAKE2b-256 1cffa06185a0cdf4b0247e512bbe20acd3757463a1b54f390c072b0f85c13f1e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 187e2551338a1250c44f3a43e9cbe87deb400e4c6a4802f8538f8354e5a93c69
MD5 d374ff9305fc5d21a3d11cfb0d5cf61f
BLAKE2b-256 6695e974860a5a9f9ba8541af378b11debe9b5ee34566b866352e54a6417be7f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 078538848c7fdf8ae4695e047c508048048cc2144adab63d518d9e34ee88a47b
MD5 5c2e66b5ea0ae238ef690332708fcadd
BLAKE2b-256 c4ec25cafdbcbe5b7ef2426c4877172959f1be0dc323f1b6aeb5efbae0496479

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 26822e0f85a714d3d6fee2100b66f15bda8419721486fe8f40aa3d3f5e8edfe9
MD5 2975ceadbd098350a55d905a50e5e9c0
BLAKE2b-256 9c0dcfc66c8c65ec84974b4a26c5466b1383ae77a9f7cbb46f8ec2082072a26a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 a0ac1f21031d79c6403a2611dda8adaeb1e2d3de43872b9bea9cc2aeb83d6449
MD5 97463a7654f8165fec4861abb752e100
BLAKE2b-256 2d97f05a2ff72e88505873f42db004f7a805dea84f02931e49096a9c273ce05a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 969feaee4ab98e97e54bd286f8fc426514424a29d2e881c30f30fd0fd67e9f1f
MD5 f206b06052d29079faa12abaa43b160e
BLAKE2b-256 61b164b03c0bcd1927d60c62ec8779add0b950e1b903b67f32751ff2a062e900

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for volresample-0.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 00e01b9b093f6ccbf309c94b3c83a7385d343f69a075a3ee75094fbae699f37d
MD5 63bf8bdf9913e9f487f4171cb7e67673
BLAKE2b-256 04572c803f62ffc3659669ac69ce61e833656c8ce7c20c2f35e59961de791b07

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5060d259561f636abea6b1890657e41dd95f06a70c8f012fbde87417a3909097
MD5 e0684b83f20ef4e44df315e881b56bbd
BLAKE2b-256 67043543673288e548a347e51502322c12edb7b5dd03db0cc65a58f82d513e6a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6a75c4dcc9e1435a1af2c293b6ec6feab3bf3d528061596c681b08e30bfe5c8d
MD5 eedd31c69430e2cd5609a44b4416fab7
BLAKE2b-256 908c40694d44112f89ada14447cc6e6990ee82b253df2693b3c34bee645eb7a4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for volresample-0.1.0-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 83cc81c20fc582ebb5b0f89923408747b668b1083dfdcde511e5a4e96f4641c0
MD5 560f42f082965b2818e97bad18cf23e2
BLAKE2b-256 2b2c7c340c28057cba6593f600dd0bab5298ac4e92ae9286209199a05b50989b

See more details on using hashes here.

Provenance

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