Skip to main content

Remap, mask, renumber, unique, and in-place transposition of 3D labeled images. Point cloud too.

Project description

PyPI version

fastremap

Renumber and relabel Numpy arrays at C++ speed and physically convert rectangular Numpy arrays between C and Fortran order using an in-place transposition.

import fastremap

uniq, cts = fastremap.unique(labels, return_counts=True) # may be much faster than np.unique

idxs = fastremap.indices(labels, 1231) # important for huge arrays

labels, remapping = fastremap.renumber(labels, in_place=True) # relabel values from 1 and refit data type
ptc = fastremap.point_cloud(labels) # dict of coordinates by label

labels = fastremap.refit(labels) # resize the data type of the array to fit extrema
labels = fastremap.refit(labels, value=-35) # resize the data type to fit the value provided

wider_dtype = fastremap.widen_dtype(np.uint32) # np.uint64
narrower_dtype = fastremap.narrow_dtype(np.uint32) # np.uint16

# remap all occurances of 1 -> 2
labels = fastremap.remap(labels, { 1: 2 }, preserve_missing_labels=True, in_place=True)

labels = fastremap.mask(labels, [1,5,13]) # set all occurances of 1,5,13 to 0
labels = fastremap.mask_except(labels, [1,5,13]) # set all labels except 1,5,13 to 0

mapping = fastremap.component_map([ 1, 2, 3, 4 ], [ 5, 5, 6, 7 ]) # { 1: 5, 2: 5, 3: 6, 4: 7 }
mapping = fastremap.inverse_component_map([ 1, 2, 1, 3 ], [ 4, 4, 5, 6 ]) # { 1: [ 4, 5 ], 2: [ 4 ], 3: [ 6 ] }

fastremap.transpose(labels) # physically transpose labels in-place
fastremap.ascontiguousarray(labels) # try to perform a physical in-place transposition to C order
fastremap.asfortranarray(labels) # try to perform a physical in-place transposition to F order

minval, maxval = fastremap.minmax(labels) # faster version of (np.min(labels), np.max(labels))

# computes number of matching adjacent pixel pairs in an image
num_pairs = fastremap.pixel_pairs(labels)  
n_foreground = fastremap.foreground(labels) # number of nonzero voxels
is_solid = fastremap.is_solid(labels, 1) # checks if all 1 w/ early exit, no copy

# computes the cutout.tobytes(order) of each chunk and returns
# the binaries indexed by fortran order in the order specified (C or F)
# If the input image is F contiguous and F is requested, or C and C order,
# and the image is larger than a single chunk, this will be significantly
# faster than iterating and using tobytes.
binaries = fastremap.tobytes(labels, (64,64,64), order="F")

All Available Functions

  • unique: Faster implementation of np.unique.
  • renumber: Relabel array from 1 to N which can often use smaller datatypes.
  • indices: Optimized search for matching values.
  • remap: Custom relabeling of values in an array from a dictionary.
  • refit: Resize the data type of an array to the smallest that can contain the most extreme values in it.
  • narrow_dtype: Find the next sized up dtype. e.g. uint16 -> uint32
  • widen_dtype: Find the next sized down dtype. e.g. uint16 -> uint8
  • mask: Zero out labels in an array specified by a given list.
  • mask_except: Zero out all labels except those specified in a given list.
  • component_map: Extract an int-to-int dictionary mapping of labels from one image containing component labels to another parent labels.
  • inverse_component_map: Extract an int-to-list-of-ints dictionary mapping from an image containing groups of components to an image containing the components.
  • remap_from_array: Same as remap, but the map is an array where the key is the array index and the value is the value.
  • remap_from_array_kv: Same as remap, but the map consists of two equal sized arrays, the first containing keys, the second containing values.
  • transpose: Perform an in-place matrix transposition for rectangular arrays if memory is contiguous, apply the stock np.transpose function otherwise.
  • asfortranarray: Perform an in-place matrix transposition for rectangular arrays if memory is contiguous, apply the stock np.asfortranarray function otherwise.
  • ascontiguousarray: Perform an in-place matrix transposition for rectangular arrays if memory is contiguous, apply the stock np.ascontiguousarray function otherwise.
  • minmax: Compute the min and max of an array in one pass.
  • pixel_pairs: Computes the number of adjacent matching memory locations in an image. A quick heuristic for understanding if the image statistics are roughly similar to a connectomics segmentation.
  • foreground: Count the number of non-zero voxels rapidly.
  • point_cloud: Get the X,Y,Z locations of each foreground voxel grouped by label.
  • tobytes: Compute the tobytes of an image divided into a grid and return the resultant binaries indexed by their gridpoint in fortran order with the binary in the order requested (C or F).

pip Installation

pip install fastremap

If not, a C++ compiler is required.

pip install numpy
pip install fastremap --no-binary :all:

Manual Installation

A C++ compiler is required.

sudo apt-get install g++ python3-dev 
mkvirtualenv -p python3 fastremap
pip install numpy

# Choose one:
python setup.py develop  
python setup.py install 

The Problem of Remapping

Python loops are slow, so Numpy is often used to perform remapping on large arrays (hundreds of megabytes or gigabytes). In order to efficiently remap an array in Numpy you need a key-value array where the index is the key and the value is the contents of that index.

import numpy as np 

original = np.array([ 1, 3, 5, 5, 10 ])
remap = np.array([ 0, -5, 0, 6, 0, 0, 2, 0, 0, 0, -100 ])
# Keys:            0   1  2  3  4  5  6  7  8  9    10

remapped = remap[ original ]
>>> [ -5, 6, 2, 2, -100 ]

If there are 32 or 64 bit labels in the array, this becomes impractical as the size of the array can grow larger than RAM. Therefore, it would be helpful to be able to perform this mapping using a C speed loop. Numba can be used for this in some circumstances. However, this library provides an alternative.

import numpy as np
import fastremap 

mappings = {
  1: 100,
  2: 200,
  -3: 7,
}

arr = np.array([5, 1, 2, -5, -3, 10, 6])
# Custom remapping of -3, 5, and 6 leaving the rest alone
arr = fastremap.remap(arr, mappings, preserve_missing_labels=True) 
# result: [ 5, 100, 200, -5, 7, 10, 6 ]

The Problem of Renumbering

Sometimes a 64-bit array contains values that could be represented by an 8-bit array. However, similarly to the remapping problem, Python loops can be too slow to do this. Numpy doesn't provide a convenient way to do it either. Therefore this library provides an alternative solution.

import fastremap
import numpy as np

arr = np.array([ 283732875, 439238823, 283732875, 182812404, 0 ], dtype=np.int64) 

arr, remapping = fastremap.renumber(arr, preserve_zero=True) # Returns uint8 array
>>> arr = [ 1, 2, 1, 3, 0 ]
>>> remapping = { 0: 0, 283732875: 1, 439238823: 2, 182812404: 3 }

arr, remapping = fastremap.renumber(arr, preserve_zero=False) # Returns uint8 array
>>> arr = [ 1, 2, 1, 3, 4 ]
>>> remapping = { 0: 4, 283732875: 1, 439238823: 2, 182812404: 3 }

arr, remapping = fastremap.renumber(arr, preserve_zero=False, in_place=True) # Mutate arr to use less memory
>>> arr = [ 1, 2, 1, 3, 4 ]
>>> remapping = { 0: 4, 283732875: 1, 439238823: 2, 182812404: 3 }

The Problem of In-Place Transposition

When transitioning between different media, e.g. CPU to GPU, CPU to Network, CPU to disk, it's often necessary to physically transpose multi-dimensional arrays to reformat as C or Fortran order. Tranposing matrices is also a common action in linear algebra, but often you can get away with just changing the strides.

An out-of-place transposition is easy to write, and often faster, but it will spike peak memory consumption. This library grants the user the option of performing an in-place transposition which trades CPU time for peak memory usage. In the special case of square or cubic arrays, the in-place transpisition is both lower memory and faster.

  • fastremap.asfortranarray: Same as np.asfortranarray but will perform the transposition in-place for 1, 2, 3, and 4D arrays. 2D and 3D square matrices are faster to process than with Numpy.
  • fastremap.ascontiguousarray: Same as np.ascontiguousarray but will perform the transposition in-place for 1, 2, 3, and 4D arrays. 2D and 3D square matrices are faster to process than with Numpy.
import fastremap
import numpy as np 

arr = np.ones((512,512,512), dtype=np.float32)
arr = fastremap.asfortranarray(x)

arr = np.ones((512,512,512), dtype=np.float32, order='F')
arr = fastremap.ascontiguousarray(x)

C++ Usage

The in-place matrix transposition is implemented in ipt.hpp. If you're working in C++, you can also use it directly like so:

#include "ipt.hpp"

int main() {

  int sx = 128;
  int sy = 124;
  int sz = 103;
  int sw = 3;

  auto* arr = ....;

  // All primitive number types supported
  // The array will be modified in place, 
  // so these functions are void type.
  ipt::ipt<int>(arr, sx, sy);            // 2D
  ipt::ipt<float>(arr, sx, sy, sz);      // 3D
  ipt::ipt<double>(arr, sx, sy, sz, sw); // 4D

  return 0;
}

--
Made with <3

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

fastremap-1.19.0.tar.gz (52.3 kB view details)

Uploaded Source

Built Distributions

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

fastremap-1.19.0-cp314-cp314t-win_amd64.whl (770.5 kB view details)

Uploaded CPython 3.14tWindows x86-64

fastremap-1.19.0-cp314-cp314t-win32.whl (551.6 kB view details)

Uploaded CPython 3.14tWindows x86

fastremap-1.19.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.8 MB view details)

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

fastremap-1.19.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.9 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp314-cp314t-macosx_11_0_arm64.whl (648.7 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

fastremap-1.19.0-cp314-cp314t-macosx_10_15_x86_64.whl (756.6 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

fastremap-1.19.0-cp314-cp314-win_amd64.whl (617.0 kB view details)

Uploaded CPython 3.14Windows x86-64

fastremap-1.19.0-cp314-cp314-win32.whl (438.6 kB view details)

Uploaded CPython 3.14Windows x86

fastremap-1.19.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.9 MB view details)

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

fastremap-1.19.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp314-cp314-macosx_11_0_arm64.whl (591.6 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

fastremap-1.19.0-cp314-cp314-macosx_10_15_x86_64.whl (700.7 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

fastremap-1.19.0-cp313-cp313-win_amd64.whl (602.8 kB view details)

Uploaded CPython 3.13Windows x86-64

fastremap-1.19.0-cp313-cp313-win32.whl (433.0 kB view details)

Uploaded CPython 3.13Windows x86

fastremap-1.19.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (7.0 MB view details)

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

fastremap-1.19.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp313-cp313-macosx_11_0_arm64.whl (581.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fastremap-1.19.0-cp313-cp313-macosx_10_13_x86_64.whl (701.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

fastremap-1.19.0-cp312-cp312-win_amd64.whl (602.9 kB view details)

Uploaded CPython 3.12Windows x86-64

fastremap-1.19.0-cp312-cp312-win32.whl (428.6 kB view details)

Uploaded CPython 3.12Windows x86

fastremap-1.19.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (7.1 MB view details)

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

fastremap-1.19.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp312-cp312-macosx_11_0_arm64.whl (582.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fastremap-1.19.0-cp312-cp312-macosx_10_13_x86_64.whl (701.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

fastremap-1.19.0-cp311-cp311-win_amd64.whl (646.5 kB view details)

Uploaded CPython 3.11Windows x86-64

fastremap-1.19.0-cp311-cp311-win32.whl (451.4 kB view details)

Uploaded CPython 3.11Windows x86

fastremap-1.19.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (7.1 MB view details)

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

fastremap-1.19.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp311-cp311-macosx_11_0_arm64.whl (584.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fastremap-1.19.0-cp311-cp311-macosx_10_9_x86_64.whl (738.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

fastremap-1.19.0-cp310-cp310-win_amd64.whl (645.4 kB view details)

Uploaded CPython 3.10Windows x86-64

fastremap-1.19.0-cp310-cp310-win32.whl (451.6 kB view details)

Uploaded CPython 3.10Windows x86

fastremap-1.19.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.8 MB view details)

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

fastremap-1.19.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp310-cp310-macosx_11_0_arm64.whl (587.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fastremap-1.19.0-cp310-cp310-macosx_10_9_x86_64.whl (735.1 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

fastremap-1.19.0-cp39-cp39-win_amd64.whl (646.7 kB view details)

Uploaded CPython 3.9Windows x86-64

fastremap-1.19.0-cp39-cp39-win32.whl (452.4 kB view details)

Uploaded CPython 3.9Windows x86

fastremap-1.19.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastremap-1.19.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastremap-1.19.0-cp39-cp39-macosx_11_0_arm64.whl (588.0 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

fastremap-1.19.0-cp39-cp39-macosx_10_9_x86_64.whl (735.5 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file fastremap-1.19.0.tar.gz.

File metadata

  • Download URL: fastremap-1.19.0.tar.gz
  • Upload date:
  • Size: 52.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0.tar.gz
Algorithm Hash digest
SHA256 53e8ad6d4e9c526b2ce963185d9b3cf95703b92ca20ae7d99821ac17f4e5f19c
MD5 32dac36a58e46f180a829f186c25f15b
BLAKE2b-256 979bb971717b03bd4dfb477d603b54f1433b899f1cff621340c421c6d8140f83

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 770.5 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 c48b6400090721f92d3ea5ff2f5c289b9d034e12722d97c5f3239c189b00f5f4
MD5 93b58cdae38b4451318fe5a3937261c9
BLAKE2b-256 09098d81617b388d1be461e6e1dd318c287c3aba2c5bf3978c7075570443b2c3

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 551.6 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 f9eddcee20abecbd96bed4c3547aaeb2a7d0692f9507e287c7001012a22ef568
MD5 50f92be9d6e834ed227248cd9721a69a
BLAKE2b-256 026d311c7629d93e05b180742cb5319540fdbc506f4c8221d80cb09ff0ee9436

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c495f7e5687a65766803b1ca8fb5468a0bcfd9b98b1585817ca91dfeb90672fc
MD5 ca494c6c65923bdf0a8bf7b146a57681
BLAKE2b-256 393ae0e07c196fab28a023888c27cdcfe7d421d44b12f24f1d782f3a40889bff

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5704e0e632567a32adbee5f6ec85428983e1cac02531ae1ba283555ab7ab92ab
MD5 9bbadf67d5355c20bf9cd272c79270c8
BLAKE2b-256 cd0a40fb911b25b9c7bbc5c6a251d4109a686167791b4b6b794e2b4be62e144a

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0305002a45e57eef021c9003638134434a1fc7fabe68e1c909132b66eef6a920
MD5 88fe3ca0b822ed523bafe3846b47bf0c
BLAKE2b-256 188c26dd49757f78498619be417b1a9b062acb073f62873581f766debf9e9408

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 2cab361d27df0c3256729ef1a2047e2a0ee3d644f8bf6acf5f6d7aa01332f59a
MD5 8c758b131e056b270fe333523dd6cd2b
BLAKE2b-256 d9d7a9251e6e279410fe3702e7bfec87b80e1559b686ff1c5a31c575483441cd

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 617.0 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 d63c5980fbe91301d4ae37caf4e054b908b37878b68c7c8cc8cd523689576be6
MD5 68ac90fe044e49169ce7b4b3c89926d6
BLAKE2b-256 bf4c45aaed0599d2e2eaea839c1604eb8a1d7850d122697890169360509e2618

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp314-cp314-win32.whl
  • Upload date:
  • Size: 438.6 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 228f2fbf1df40da2a3268283fcaf3da700fe477f4c8a99e042e9235eab4013d2
MD5 b773f40d8bfa297d457b50f08c546653
BLAKE2b-256 6cd11ae713ca32044abaa326df048f9196f68ac897fe1f1d4349ec14ad4f8f96

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 03627be1bac4c66578de3793a7a3b9c6fda7ec2c16af0a1c52ee5ac025b132b1
MD5 368830ff20a9bd28e7f83026ee881a60
BLAKE2b-256 fcea101b1aea304127b532642f7985a816a65af29953de36e83877a2cc2a7a3e

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 da8b90e6e8c6e32b9e18e490509ce098097bcd9cd0a30280b381460b507e98f9
MD5 a52c320e743a783b359f300e3ecfaf73
BLAKE2b-256 637ddd7b1938b142978ee2dc1e656d195aedb7527affb108f31124a884d66164

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b8ba5e9df854c7fef5a77a48be5f892520d8222c6f4602c2de41f6966c9cefb
MD5 17ee88a620a910445f9fe12c28b2881f
BLAKE2b-256 bbabb9d5a26e3b3ab4bd624e610e0a71e47f73917edfbd4fbb70a26ef5fd4a98

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 00197b4b2609ec8a14953d3af4780ed4d3b2dedb6fa612c8854217d4673e07a8
MD5 15d8e617ca49018c984648e4da447056
BLAKE2b-256 77ef65cad42fe60d4b4611a1e95ba2d406d202e825de663d86961be82ee54b3b

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 602.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bba7d43fe3770960086cc69fcaca63768dd149159df42e02ef05fa1b8b2d79c0
MD5 4a5272ec067a0636fcd9f95e53517e9d
BLAKE2b-256 bd175f82236f7b742753204d1388ecac5b9b2cc8d3043fbfb7176f0df071bdad

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp313-cp313-win32.whl
  • Upload date:
  • Size: 433.0 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 6619a877a16e732a4cc909268b10ec4dccffed70b3eb05eb6d259f5282094883
MD5 73308d0a5621e9b2cdad685ec9e02b72
BLAKE2b-256 c2669bd9e8a3485876a9cb520fdb0616999db98500206180bed88ad8d3f5be71

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 be07b2f2f240947563e3959e561eadd3c6574254d41adbf7146cb15b4bce8f92
MD5 f04a86047923fecf1304fa568d8163f2
BLAKE2b-256 1641e70db40a9d1a2cb8d4bbd5416f1c3607c52beb482fdc28ca7c4ef05630c9

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c49010c8ae151ccf19ed74debc74646b510f96c2e13ea2b920069ef2ec7b0206
MD5 ce4b31908025df37bb0495cf73f471d6
BLAKE2b-256 4d7f09f7f69eb44418f12e364a3bda87673bd5afcb7a3db5236dbc1c4f149611

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a1f2d74278bb4fe8958b8043c74a4509892a9e0946f94ccd4958bc798aa56643
MD5 2324d33f557d5a9ee975012c826f49e8
BLAKE2b-256 029da15abce359d1b87dfd3fca19ad547180c1b5396f60464dd31efe1550b6e3

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a471eea6ba31253811fe557b82f3c8058604808ec261faf71c0af64526e8e2c8
MD5 aa14e9ec41a5a8da5a664051b1a309a2
BLAKE2b-256 2680e998b2c8799340c082801b22160b0fb78591aa75215bda0b5c8e83ede2e1

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 602.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9474d9eeeb90eeed6d45e574d2f33bc155a7195a9db044aa27db62506ac03140
MD5 6a45cffe2adf9dcc6c26a344dd61b765
BLAKE2b-256 8a4967ffee4d1ddc9d1caf5688a3992692e756e9d346d4dcb49da59f9a5e299d

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 428.6 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 b90f3ad97c9b0a540accc49b122a1690531f536f1bd7023133b734d5ca0b9fee
MD5 8cd411f57dec2f30e44f5cd76594f014
BLAKE2b-256 30aeb5a39af74e13e512885d8e782c93f05d8b439ffcd6197fec49bbd2e3e966

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c5913454be791c0d9ef839ff4d8f703fbcae5a329d977687eb10f91ab0812593
MD5 7242837a8e10424796289881e6b7d8a5
BLAKE2b-256 1e2124f86d9673067fe5752daadeedc7abb8ddebb8a63b01539edd459dcd4ec8

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1b77fc9eaa96a0b3d9e66e0017d95e316e554ca21b7ceed07e9dc80e1683a195
MD5 e71fff4fc08b5f4b1202c9cb4178864c
BLAKE2b-256 fa7932965998a8ff298f89b472cefb5f25d9ee087521a4d273938fda7dc3ea9c

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6468890ba56e88f0b1ef339e1a64d9ae796241a8b76527900d26d663dd3c54c
MD5 6410874cf931df25d3c82e709c91a0e1
BLAKE2b-256 b29500890479f3d524f5cf05df366253d359bfc360a07b7fc6f124db60b48fff

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 570847a554546a5fd0c7083942bff87582d8e83418f8e52d673d09e5ce19ea67
MD5 7ae104807d29fce79d53ff54afb76dda
BLAKE2b-256 15fe73fdd6b735ff871c2c306e3c509dd87e17bda2467b738aaae4ef49bd9c8f

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 646.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 95ba49868d33c9f64e31afd012d5fc0d7c1f944faf9240b24310ad64b0dda9cb
MD5 bd51ca9f5ca4c256a7b3664f736ba892
BLAKE2b-256 986e968147cb8356a0614c17db86cc660135e888afc143c172192d54d4da8d2c

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 451.4 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 770e9317aa8270500419bdbdb5012e8aa7f864493e5f43b363e8d321db5ae86f
MD5 d5233f08af53195000cf0b075d8ced6a
BLAKE2b-256 5fea606960401fbcaaa380de52b4515a0d4c7f3e780bed73c9c3e7ecefcf4994

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 92b56141e970c0ac6abfadb36c5792d9cd5e71b7a1fc5b52784764a09f913f8d
MD5 05b8d1a35cc76600794142751755c801
BLAKE2b-256 5d45c058998320f020e09ce3a66f6314b36adb4826866a8ad9af68736b598f02

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 87b90b17c1fcabd05a76d44e7c91f2c8b03135690e5692a45243b42872c13af4
MD5 d10ec0b6c13a0bce2afec882dccd05cd
BLAKE2b-256 b56d3fad489b0f8a6e1f86b818469fdcda5b61ebccde461c59add23c86807de8

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d8f95587eb0f92d5a0b6f20b0fea4e48e6491f40a4d09d58649ae632ff500c71
MD5 102baf77a353a5f51e507bd985b41320
BLAKE2b-256 df1b072b88b4b1a8a8c394ec35cfc3084f8509177a90837c67c70231e9df25f2

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e79802453c67aca3f330adb83c84ed1096cb116c5e2e44aa450019d08bf74517
MD5 54a8c7c3585975c5ed50153b32dde3c1
BLAKE2b-256 9f628395a9d92bd4b1809a9a0be5139f48127652f4ac0f9283b715301790fb7c

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 645.4 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 cc9a06ea2964f3389b773b258e361ce47adadcef87511f25f632e1a6048b4544
MD5 37cd925f87429a14cbedbf1f7080b15f
BLAKE2b-256 c8320a9c071f33aad962a0d8e01d6c4af313e6a590ba4de005f6d4c4de4e3c57

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 451.6 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 165f27d68656c195b673d177b8b09648030ef118f58fc732b5b0d990cb01b192
MD5 1070f50005a2f9b0fc4e8bf0aa62fd0a
BLAKE2b-256 3a60668fbf6cff388d5894094e0c6a0509a4211e9ca5c540a958a16f1850ac4a

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 92ff0152a060b8509a0d3f61b69dff6472b42c3189a41d84b1bcad49ae2fb3d8
MD5 1529b40666bfe96bbf958235005a2fe6
BLAKE2b-256 497de9250faf17ef0f8aa6b691b56fd89fe807cbcb42ce7aa2adab31cc275910

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 45ce32ab5dff4f400b03c0b1f4837de1fa3e3f0aa983c24c17707ec018f85c08
MD5 338823d62389a64519b35d3e111da55d
BLAKE2b-256 f3b93e40af1e30ed170d0eff1d647900b1cdfc8cc82c8334ad568d50081bf2a4

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 85329c71fae000bbb6cdf336fc0c683908e54f269e1d365e532d36b9d23a9956
MD5 bb9343f86bf035f17c776e1fbbcd4c49
BLAKE2b-256 4f0f4dff7f22e06e5fcfb4b96becbdaa3870fe2c9c666591382e517e30586304

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6b4f03581a6a8815eb77403ad657e80749802e6a46c69865536805cef9bcf379
MD5 5805f79c48166df038380ce79a4e7f18
BLAKE2b-256 83703a3a7c63d2c4b77db29e3d0c2798ef3dbb0457ebe950673c9c72a00626e4

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 646.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3eea8f872df9265f83f3390fca0ac66eeff9272bf3dfa8c9a248a596602c07ad
MD5 49710d7a04dbd05f082e4f1351198a7e
BLAKE2b-256 e3e910559ec7a14996d78a8e77eb0284a1f896d1c524aec2481f2750d771c699

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: fastremap-1.19.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 452.4 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 40c803f2f7b0011d63832bbe8468270f21783ed829166a937a5c11c5d70cbd89
MD5 0cada55b57d67006cc545a05988a77d8
BLAKE2b-256 47c47122bee82b77e12f716bd027d530fd6b6fbdef306e1f46cf7d6d68af91f3

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8aac94b610b9b3d02f76ecdb5f185484d8f96e684c940042e757e3a62dded77f
MD5 0fbf4de209cb375e435889f54fbf6bbd
BLAKE2b-256 c021c9437907455a56b714319f7165bb79368e737d36954bb00469cbfee0b2c9

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 862fa44fad7200f59fbf0b07c07c6266c5d5425b38c829e0cb3cb47e16db4680
MD5 b1d2c36a2bfec7a947128b61d1bc22ef
BLAKE2b-256 33ea1dddc668d45e5ccec5456fd5104f828c6cb48577f86ff7ddb64422f3e59b

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 128446d50d2ea4a7410823dd4278088f32e28c9dc7323abfa5c98ad2270fd7ef
MD5 98ea5b056b94d733a94469fe37b330d1
BLAKE2b-256 23fcd21da527576dbfdc69ec4caea4475912616dbdae808282f1f95f01119691

See more details on using hashes here.

File details

Details for the file fastremap-1.19.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.19.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6fdb904aff0df80cd1368901338c3ea90de77c72072bf860c831d5c846399a12
MD5 68aa7e8bdcceacd958cc68633724814e
BLAKE2b-256 24bfc44b94b0adcbee869d3ef024b155a7a2fd9bcc8fb795ca0c027e43c6055f

See more details on using hashes here.

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