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

# 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

# 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.
  • 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.
  • 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.
  • asfortranarray: Perform an in-place matrix transposition for rectangular arrays if memory is contiguous, standard numpy otherwise.
  • ascontiguousarray: Perform an in-place matrix transposition for rectangular arrays if memory is contiguous, standard numpy algorithm 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.15.0.tar.gz (44.7 kB view details)

Uploaded Source

Built Distributions

fastremap-1.15.0-cp312-cp312-win_amd64.whl (632.0 kB view details)

Uploaded CPython 3.12 Windows x86-64

fastremap-1.15.0-cp312-cp312-win32.whl (473.7 kB view details)

Uploaded CPython 3.12 Windows x86

fastremap-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

fastremap-1.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

fastremap-1.15.0-cp312-cp312-macosx_11_0_arm64.whl (639.3 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

fastremap-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl (747.7 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

fastremap-1.15.0-cp311-cp311-win_amd64.whl (663.8 kB view details)

Uploaded CPython 3.11 Windows x86-64

fastremap-1.15.0-cp311-cp311-win32.whl (490.1 kB view details)

Uploaded CPython 3.11 Windows x86

fastremap-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

fastremap-1.15.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (6.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

fastremap-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

fastremap-1.15.0-cp311-cp311-macosx_11_0_arm64.whl (625.7 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

fastremap-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl (761.2 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

fastremap-1.15.0-cp310-cp310-win_amd64.whl (665.1 kB view details)

Uploaded CPython 3.10 Windows x86-64

fastremap-1.15.0-cp310-cp310-win32.whl (488.3 kB view details)

Uploaded CPython 3.10 Windows x86

fastremap-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

fastremap-1.15.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (6.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

fastremap-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

fastremap-1.15.0-cp310-cp310-macosx_11_0_arm64.whl (623.9 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

fastremap-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl (759.7 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

fastremap-1.15.0-cp39-cp39-win_amd64.whl (665.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

fastremap-1.15.0-cp39-cp39-win32.whl (488.6 kB view details)

Uploaded CPython 3.9 Windows x86

fastremap-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

fastremap-1.15.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (6.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

fastremap-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

fastremap-1.15.0-cp39-cp39-macosx_11_0_arm64.whl (623.9 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

fastremap-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl (760.0 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

fastremap-1.15.0-cp38-cp38-win_amd64.whl (677.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

fastremap-1.15.0-cp38-cp38-win32.whl (493.8 kB view details)

Uploaded CPython 3.8 Windows x86

fastremap-1.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

fastremap-1.15.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (6.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

fastremap-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

fastremap-1.15.0-cp38-cp38-macosx_11_0_arm64.whl (621.1 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

fastremap-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl (762.0 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: fastremap-1.15.0.tar.gz
  • Upload date:
  • Size: 44.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0.tar.gz
Algorithm Hash digest
SHA256 d6e2268103e3620d3eef45fc5921a479d1d3778e3f80f2e30c3f5cee92d1a47f
MD5 c748a2f36ab25cf7f4377c90056e715b
BLAKE2b-256 25ec86e4f8f6a0c778edd6a3db231cd45b74ac39918ee4c054abdbccbf65e37d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9622bf001da5ae55bda552e2b9c2a20c69deb7619a4792c7c6fc71bf0f6cc539
MD5 6ade2cabef86240bfa1b29fe91102fd0
BLAKE2b-256 6d60b9809e706b82df4a3984e425668a8bc8f1b77c7ecbe07b25b71a66b5406d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.15.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 473.7 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d6b12d6bfc34f52f07d63ccd038958b1dd837bcbe081e82fb7c295725da2eafa
MD5 e0ff251714dab63f4359d3149a156393
BLAKE2b-256 72c88825611239d300607774d4e15f7a70d2e7c6434d841abd704ffe58b8ae0c

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b0662f5c9d50d553d394a26cb4f0bea2b072fc2b5862583c9d5966a4130de9af
MD5 1a9cd03ea1024dd6f3e8f5429239cf45
BLAKE2b-256 6fcc0703660567aa10d21a5cbb16ffbf57f65c15006c7e46cb8d58fb2119995d

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3c30a5a3b5c34fb209cec502110ff3582c92410553d6a6f70ad791977180bf89
MD5 56209895b8ca77e223a3a388acb8f71d
BLAKE2b-256 108253c45dde44c1fde9e1959e848f88dc10b3e1df31e95e44634fd7c4f6aadb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 30ce5b2264f763b63af901d3805178748a26ad1cc6bd4cc6d8b5e1b879ffa825
MD5 8e06f96bce1541db636e961e867eadec
BLAKE2b-256 538ea51f72d8b8f406c8b8aae601b0734f7ffbca7068f92e49ecc3b58e311dd1

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cf996a3b8a023eb1f5aabe50a73e6f4fe44548e1869e1b02fbf5995fbba1a85e
MD5 fbb839558b85f40d93559f169d3a9a52
BLAKE2b-256 093581056f84b944364a79fff04817b8de7f2615d3a93c4e6dcb2f2657978eb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f819ef67de8193a16a06cd4295610d7b08eb744352102ce6986c7f18be7b22a4
MD5 a5b24af7743ac72f7b964642d0c45ff4
BLAKE2b-256 34ccd9e04498f930eeeaf625c9ad390554a88431f852cf22a45b9812b5458ca2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.15.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 490.1 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d573884f903d912f4e873096a8cd5aea65a0a5396df55292acc8066455c5d3c9
MD5 82612434abdb182a0290231adb8f6429
BLAKE2b-256 91eb764266d1101af468f4f0138855ef5fbfce1b800f0ea06b8a2bcd2db69d83

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ba6210f3e78a8e1fdc47f2ca160110504a1399954e60f4f441dc573b2cc288a
MD5 8e9e221903234bd93b60026054dfbafa
BLAKE2b-256 f92afce2e0858529f61f24ec68a10a88d53fa41c42a3f783da17787a51b6e937

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2dcdb943a80831f5831ed3ffbcb05acf4b6eac4a717de36223825d39e3e958b3
MD5 7990ff3462c88732642f3eb5ea16c3b3
BLAKE2b-256 566c9a81878751c1e0f323f330f9963f9b0d037e7945223771cce4c3baf06f8a

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 91278b4dea82b6d34cbc7fd3b9ab5dfdc4c1f5787acbf16915f89c9ad0aca5f2
MD5 f6e6de008d51910758a3f0872214a0a6
BLAKE2b-256 0827941fc33abd5dd9742329502c1f70f3b4f71f0f2ea56efbf26f25ec88a46a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e3190ace0cbee048dc9a4e32bf737943acd3d54f7236cc081b1bf273553a5176
MD5 e3bc892d7c98d34e90ddcc13a673e046
BLAKE2b-256 26020752da93025cb5f5183b16877c73344bfc3d445f310ff9ee3a5accaea83b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d9c3828e7df7337627ff64bfbf67eb713ced51941efc798dd35a19b78a00a285
MD5 9dc65973e04422b736b3d4266582c15b
BLAKE2b-256 6d167ac9df2eaa9725d5956e8df01675c25f85fff3f6d79dcf5f04cc32cad5aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e3e80f349e7433a86c61fd3cfd3f4a8750f8920a1ea162758c51358dc94cfda5
MD5 20dfa2848c2d8c3f53e7e3d228a89c54
BLAKE2b-256 405546ad72ec348823332eed10a3623dee17ce82243301fcb27549d6313b4924

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.15.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 488.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 6b4b4ef488c7968d677f89d88c7c32519c1cdc1e514f24ef8d17555389ec8eec
MD5 8d9b51d83740db5ff7455491c3d8314e
BLAKE2b-256 561996b6ba8624c8c5dfe1519e8c0be8bb2aa5c84d9b3624fb24bebcdba05af6

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df7ea7e87705653db27542d5756828d6c74ff4a0bde48b381b004d5becd878bd
MD5 d89360088a5f51e6a33077f5a4a5747f
BLAKE2b-256 1fe0387bfd5918d9dbdec8864ff7213e77eb105476733605b921c711d8f84a78

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1c792b128c9edf66f9ca81e1eb59e9a80a76c4fcf608baee0b8662fb9b34628b
MD5 f5cc729563c9beaf89286536dd44153f
BLAKE2b-256 92a53722203ecea3062f71b65c8907040661d6451ae9562531dd81638172d045

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f0ae28941e52609d569f8a3d2d52c46233052ee7ad6fb3b575e85471a73a9acf
MD5 e7824ba543fc9a78846db109b4d0c290
BLAKE2b-256 639155e5fb9ce74c4c07b05b8f4d56efdc8119f39a0585bb0a2befb91e4cdbe3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e81f266feff2866257eabf95dc321c80f14042fdf7f4d6b1203ee589a59885ad
MD5 64a49c7a3c2e842d6068313428cf0e23
BLAKE2b-256 b1f88671a46c51b03e4140016d7d0a5a7c52678b9e38eefcb27dd59c2aea1593

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a8cef0f7a00bd4dc41eec3bd5ebed45433aaf84caec756c318d853b67001891c
MD5 a42531ab2fb8fd4484459b3a8c7a78f6
BLAKE2b-256 d17605a984350684220114939e9d62ae3c1614f5ac1a8631f00005e2b632c42b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.15.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 665.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f97e614bd776a7e88fe916ec387e18ab43267e58d93bf00c3b8ec0e9614c424f
MD5 208aeb02b91e5ccaf3bbe082e1393156
BLAKE2b-256 877b9921808a1047888ff4cceb58cca1e806178706db4667d44a18614c48e495

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.15.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 488.6 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 f29972a766649c0a303504f7a6e36ad0a05ae9ae8626a3140d80201f29729603
MD5 584aff150fd5148548f1ac0a65f3b649
BLAKE2b-256 e0dfe7ef07ff4d981de2b6021f77c8aebec38ed48614ea70de0b74223e34253b

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02409dc0a477d4cfbe57847d7c8aa5cf15a6443aad2c887aee35757e67de09e3
MD5 5b92bf13e85c0c54e06d6ecbe4cec826
BLAKE2b-256 912d4bb560651b460d2cf30c2187a5d9891e64c6d3e0f37a852b72d2719196f0

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b1cd69972975b07e5b9c6a74dd57368e08c755d5ce7e60b362407dbabecda72e
MD5 b47392c246fb3dca62e3bf1856e4c5f7
BLAKE2b-256 9af461ff037064ef136e55689490483fec1c470213c8788e96c623ccd3597da0

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8dfafd98a69974b43b18b0478e2212d0882bb0e98f076eaec3949164d688ac66
MD5 a17b39e2a2339c427fe0ef809ce1045b
BLAKE2b-256 21e00f0fcdccafdaf2c1f4853c9ce50bed4a152c9abd3fe168521d1b66725510

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 19c273842589e5a0313fa83e7c4b0554c089336f79216d8792442d6e30a395ee
MD5 de210f029701490fa23e76b1adbe9b35
BLAKE2b-256 9e0f7aa8de214b46385b86afd441c5d2d7992f6d7ed30e1a1c1989e8e9f6a3a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d76581732f161d553d3dc322e583f327c6bb38cd043e1c3db2f37ef39255f94c
MD5 28bf99f94518cf2a85de284078360f7c
BLAKE2b-256 09013a78a933b36692d596e8d69180d77986af65b9af87672a414db3adc4e8e6

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: fastremap-1.15.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 677.3 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 179447d746ebcd36c4c44f07711bdeeae179cdd2bf152cc55adffc2605a118e4
MD5 7ccbcd68bae2738026a402cb970db0b2
BLAKE2b-256 94e2ad96325b1ad20ab1c0246a412a3f6a98eaa741be3e1f332293f1815bb5b5

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: fastremap-1.15.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 493.8 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 b955e2d649e05f0cabc456af5f3c71d91650b95f277333dbe9afb88be4323958
MD5 cdf8753e4aa047d2bedb7162c18104a5
BLAKE2b-256 c4f8ea23cf0796924224db2b887935f185b7d32b07840f86780d635ad3633783

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d8f6b4729f40b60df3a36604b07eb4f5f38199359cd6b45e7de06562627f1739
MD5 ee4487f937909f2b0983f2b5e0e0a375
BLAKE2b-256 9f3f07d5e07005b6c1d894ddf9e1784d409c5a14ce1d67a33259f4142262633e

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 71bdf35fe35288769d2fe571f8d439b728b76f2ae7d5098a161f43baa25ea799
MD5 f50417b3dcb2cbe2adb85122ca30df72
BLAKE2b-256 88e9ec3511fe03f2351291d550bebe90a8156e802c9e0ccfba2d982b664ebc08

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ad9c8f75f7cb81012f8c8156ef2e002554a1e46eb74b6ba475b6673b9826cb07
MD5 46a5cfb2a32906db4ffea42fe4d95c97
BLAKE2b-256 32cf8a6657861615fca7ce9a668795e34290a428704cf028863b1172b4d6c896

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2c60af0e5aa96cbd117e2e5b7d105c97db2ab76ea1158e4a18b36702d476e4d1
MD5 baded0893f5e338e1d49359ef74f291a
BLAKE2b-256 eb4ede82370c0c5f127ff57ef33da448482cfd7cc52305432ad4f24553bc274b

See more details on using hashes here.

File details

Details for the file fastremap-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2e1d4675fc12e1b6258fdc8a6c167a349c96132416d0cb04b3a116c953c469b9
MD5 07f0ba641f86f034ed5fa4bfef0ef26e
BLAKE2b-256 1a862d44d35c1ed9d736b42d48046bf0950372a1233982d603e02d498695b179

See more details on using hashes here.

Supported by

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