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

# 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.17.1.tar.gz (49.3 kB view details)

Uploaded Source

Built Distributions

fastremap-1.17.1-cp313-cp313-win_amd64.whl (618.9 kB view details)

Uploaded CPython 3.13Windows x86-64

fastremap-1.17.1-cp313-cp313-win32.whl (457.5 kB view details)

Uploaded CPython 3.13Windows x86

fastremap-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

fastremap-1.17.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (6.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

fastremap-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

fastremap-1.17.1-cp313-cp313-macosx_11_0_arm64.whl (621.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fastremap-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl (751.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

fastremap-1.17.1-cp312-cp312-win_amd64.whl (618.1 kB view details)

Uploaded CPython 3.12Windows x86-64

fastremap-1.17.1-cp312-cp312-win32.whl (452.7 kB view details)

Uploaded CPython 3.12Windows x86

fastremap-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

fastremap-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

fastremap-1.17.1-cp312-cp312-macosx_11_0_arm64.whl (622.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fastremap-1.17.1-cp312-cp312-macosx_10_13_x86_64.whl (752.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

fastremap-1.17.1-cp311-cp311-win_amd64.whl (668.6 kB view details)

Uploaded CPython 3.11Windows x86-64

fastremap-1.17.1-cp311-cp311-win32.whl (473.0 kB view details)

Uploaded CPython 3.11Windows x86

fastremap-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

fastremap-1.17.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (7.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

fastremap-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

fastremap-1.17.1-cp311-cp311-macosx_11_0_arm64.whl (625.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fastremap-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl (774.8 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

fastremap-1.17.1-cp310-cp310-win_amd64.whl (668.6 kB view details)

Uploaded CPython 3.10Windows x86-64

fastremap-1.17.1-cp310-cp310-win32.whl (472.8 kB view details)

Uploaded CPython 3.10Windows x86

fastremap-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

fastremap-1.17.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (6.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

fastremap-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

fastremap-1.17.1-cp310-cp310-macosx_11_0_arm64.whl (634.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fastremap-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl (773.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

fastremap-1.17.1-cp39-cp39-win_amd64.whl (669.1 kB view details)

Uploaded CPython 3.9Windows x86-64

fastremap-1.17.1-cp39-cp39-win32.whl (473.2 kB view details)

Uploaded CPython 3.9Windows x86

fastremap-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

fastremap-1.17.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (6.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

fastremap-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (6.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

fastremap-1.17.1-cp39-cp39-macosx_11_0_arm64.whl (635.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

fastremap-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl (774.0 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: fastremap-1.17.1.tar.gz
  • Upload date:
  • Size: 49.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1.tar.gz
Algorithm Hash digest
SHA256 e4ef75182154597c7feb202f1c7b71b8ef8d24076f6f03df641173fef5f81c40
MD5 3e8e2186d12658d607423095d99f15c8
BLAKE2b-256 6a88907f3f0741608989bfa15c84d555d4eb1aeb24753becfd45bbb611d5ada0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 618.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a798ea5046cd9b52b8a96cad2dac1f4f5d345824e05ffba75a3d636687236708
MD5 e4b6278a1100120a5e043df9c6485813
BLAKE2b-256 0e016a35abd0f7c73bc6a2239c3e9f30cc38024dc849b3e68c1ada4ade44e115

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp313-cp313-win32.whl
  • Upload date:
  • Size: 457.5 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 335cee35aa6c9e5bae41ba966da03c7b09810eb5a7e33ad4c9ad79368c70bee0
MD5 ab369ef3a99be97c19e5bf83b19e7818
BLAKE2b-256 6980eadee697a1aea5013cf985e4452ee069145506dfd3f77fd7a8b04dbc6791

See more details on using hashes here.

File details

Details for the file fastremap-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08c2846293a069d42755d5c47e366bb08081a04b49ed7fe5bd23dd87763f90b1
MD5 f2b1551c80527ac7d4157cdab77c7f4a
BLAKE2b-256 091c96c974bd27e7cfa8dc8cf755bf79ef1693b18c889e27ba96ff25ca1dd305

See more details on using hashes here.

File details

Details for the file fastremap-1.17.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2937b223c50e218de050970936c11668b74aa63795c8f36b04dc9abc1246d524
MD5 2ca0f42bab3df9255cf0e96662096181
BLAKE2b-256 00dd1ca2504a78826c54af08cc5e1c20fd2f7fe45d779f2c665f355a9dd24a1c

See more details on using hashes here.

File details

Details for the file fastremap-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ab6fff117ed97ce3daf47953c6a1883acb2f409fc11bb4d36dc3247639fdd7c9
MD5 6a6cd859752535eb796a94f934864ffc
BLAKE2b-256 fa359b01f538c966aa9c0d899f4dcdf369232027e2227b93990b16ad8fa7814a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2b6e2111405ee20ded6df744e8644aaa61d47b3ccbafc6e9a98acc6eac490f4f
MD5 d7802e5709a4d5e2bf097cd074216dc9
BLAKE2b-256 fb9f84d7211a36a3d7315a89575c00e96463a5aa41e1a7aaec0a838ce1df56b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 722b89ee782fc44de7ed5e8e5305fec0c876e8d900fc5b1cb48c2a4d99711074
MD5 f764ed8978282de1d43814e91929df72
BLAKE2b-256 655203aac11de91457cc3f4e362d4c093d989550088def2cb1f213f5932dddba

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 618.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 837d9c05ca841a14d69bdb73f738e0c0686a3190c377999c8be778f39d8bed76
MD5 05f38b5b418a13aeab57e973ce894be9
BLAKE2b-256 5e493f79e667d26c49d5d5735b59bb9a21b60d7f706db86fedbc41dc573edf57

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp312-cp312-win32.whl
  • Upload date:
  • Size: 452.7 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 a48217725fcf638440cf183f4a8d320c17406cfb8822dd74fc40762bef5b0c6a
MD5 d9270c11e175dc3c579e5be2ad6d1090
BLAKE2b-256 452a42f8917f11e387910ec388dd026590e747af97f05a16b49125de8986ee44

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a34fcbf1300ed24d3b031aabc6e41fb1aff3bf22e9fac5eba0244dece183286
MD5 e0c8fdcdd815f88aa342d5fe64160131
BLAKE2b-256 d10f5aba90436900ccd33a1096dae05d456984df691f87f21bd96b9d65f26aaf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 79faeef8c47fb46ba65667436cf763b80fd045c9f2e9eac95d747b04bad00c90
MD5 696e789f4989afdf1359de24b7a0d8e9
BLAKE2b-256 a2955c779436cb38c2bd1f196f72024f7c4268e65f9d2aaf1b5dd73b4423ac99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ecff9188957cb7e133f41520aee26a0b8c95418e27ab87380c04707f4b4994be
MD5 f84510a9032dce5b31aec7e77e0a8154
BLAKE2b-256 aa8c55b5577dcbaaa7527be2fc41eb488861f810dd7e9aaf3cdd4b8102c044d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1ff68d65eb937851fff10f1d8eb8a13ec7cb84016ce752e0193e0a6214625f64
MD5 4f7fdfc60e8bc2c8d725d9e865a5046e
BLAKE2b-256 7e21ae495085e34cf92f91deaaaf1ee006f609df8c934c0bc4d3e93d38ed99fe

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 668.6 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a77a959507b0b0faf24cb236883f18d9e1e5fe7ad52d6920bc0c18a6d434bb23
MD5 6843a623a77fe486780893c8731c88d9
BLAKE2b-256 3980bf3571ac0d82964aaf1438d665063edb056a6b0c51766c8e6ccbe5b12ac8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp311-cp311-win32.whl
  • Upload date:
  • Size: 473.0 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 15da5f3e9ba2c402787a56a657905bd4d5db7f3ecdf93ebc7837b24aa9c1b608
MD5 c879f4594055f97953101a6c70d6515e
BLAKE2b-256 448d1c08a9d9c4113e17c751d85f43ce736a5e1f60e57aeac5701489d2e3f030

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c9e1a07e35abb0ae0628583e278ba9da63307d546f7974aacbf991de2948e42c
MD5 2644af1310ca418a0b963be0ca731f06
BLAKE2b-256 1e034ff14ee6a4f3e3c1ae8c286b086474a987fd2233b6f9a6c4f3d56484e8a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 47a87ddda54c5fbbcc1b004ce3343d7cdcb3d54c575cb1aba8f99d3dc46b1513
MD5 b02ce369aedaad576e7fde841c315f7c
BLAKE2b-256 e8ddd2c398340e1a4d406e2d5121bffc7afa176c86eff48b71b7c89eaf30af35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4b16497f03e477d772b4fc6876dfbd15d3e87b75c91e90eac9b7404e3d287b23
MD5 33ac142a6613cfe45179c701413d3d9b
BLAKE2b-256 c6f89e12d102bc978b92e2c9435755f27f42cb34cc6af1e45579330c25ff9f31

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 50b9df9963d72501b7df9c25e1768de3518fd13a710715a692fde7b09994bcfa
MD5 32b4738f9c6f2c92180f912139b22c35
BLAKE2b-256 f549357dedebfb4d3e134360ac871f736bbc30349ee649b610495fced655a54e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2bd3ebc4a9732d05a33a2205bb6f3dfb65c36d402d02b068d397d5e1af701052
MD5 d13a16063a9f3f83f773b209b02f5406
BLAKE2b-256 d729e97da4a70b3ab022f8261474133f5c7121435732c2027450ef35d27f9f25

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 668.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d5e03841644e6ae3cc993ec60889f4795fdb4f2ab6c83998543cc21887fb892b
MD5 bc982e83d00d9c16f3eebf56218d61e6
BLAKE2b-256 f011b435e1b649269756e307e420e3997df63b63e5892b382ce6958b754cf695

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp310-cp310-win32.whl
  • Upload date:
  • Size: 472.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 e635f5b7cc563e3396a36f4a83dc7e529d23f6451401c3a3d81c299424b9f360
MD5 acd1f0c387b0512d0eeb93faae1c218c
BLAKE2b-256 5f15ff1e5b6b571b777f003b1356afe786548a174d27eedc964bf160f20516fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d6254a9a1d423f5f7a2a9f9787da0f6f1802a73d82b98f1b4bf0e95c0da18dd
MD5 083b7a325a0d699fbcbaf66de98cafb5
BLAKE2b-256 9e2314b9c667e413e593ac4af9e8974a007cd3d2957aaa270e21e5ed00e15958

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c8fc51534b786463b09f8aab321c94165dc361fdab4ca5e512831cc11bacad81
MD5 9bf399d0fdb38a1266f8f9c74c0d2375
BLAKE2b-256 4fd7e5eb570bdb8150d4b5df58b97aebba09470d832805da59de91218d1b7c51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 92bf630d3256b64d1e46619404ba2cae3a5a01311de2dab4e0d2bf2a6accad71
MD5 79912cc3969003b0882b5eed6eea215f
BLAKE2b-256 bbc1962b52f98a917042f52823c86083e6aea8b3e893d232629a94cb8dfd7561

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6297616ac12dcb612d6f1aa8d11aeb38db3628c71e1cd7b4d9d3fd8990f099f
MD5 9ca3220c9895aa852afb2ac0170caf0c
BLAKE2b-256 ed451ba511bff24608780d85f6c49b5221aad5e6377a11fe9b9cd64b1e4ef17c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 060d927cb8c58d8c5b635a4d1b8c60eb721d5fc4c0b88c6416a1c9bf4b2a8939
MD5 2d19723ea146d4968d6227b4248299f6
BLAKE2b-256 6091a55a9075b7cf101433754b7771c9edc59c4dccc4d077e2952b2ac5bd4da3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 669.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2d59092d1da685fbc4a00024752b18fa018d1a93553e14a22837ce279884299e
MD5 a53465295fa1154ffaa6dbbd7acdb178
BLAKE2b-256 db811468917ea48d1460dc5fbadea1736321ad5fdb2dd9f6970c826855f84fe9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastremap-1.17.1-cp39-cp39-win32.whl
  • Upload date:
  • Size: 473.2 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 022a1c7c75817a4ddf7ad53572aba408caf000bbae918f1525e8ab41df389355
MD5 2e31507eba27b3e2bc61be8d8fa2cc2c
BLAKE2b-256 1aa7e2c2f02a568abdf41b42b60989f2a040b5a89dcfb4428bccd379a6cd9e42

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 84ca0c1f9c82e1ad3d9d28413e8308907456afc3dfaf8ea2eeafa66fbd4f0fb7
MD5 f317db64e4933b971567496207fed71c
BLAKE2b-256 d7e39253b03d400645aaa897e05ab5cbbdfdb3fbd400d6a0c0a80303118a11d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 dc41b744bec297b03a8e6290ff105a96d82c1d505861df5869be24eff309c6aa
MD5 76b8026fcac8ef001e64670117c39089
BLAKE2b-256 05b10a98e128021258b5c5a99ab1752c3ff9279121043708135d77da136f8765

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 eb88e374bc5235035acaebddff2f22df1c05cee318b18b25bfbd69ce76571faf
MD5 ef793e07cbb6357321aa0d96301d71bc
BLAKE2b-256 f054be5f010337d8cb8b8a5dd712c04d7eb1d173eafd7bee92d1cd7d0db01a86

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2fcb811b7a219c75f5247bb49be549091444369fb33293888999a188e3a6fec7
MD5 9df1e4270f16275ef5d17cce36f2eca7
BLAKE2b-256 47522358dccdd602cdedf17d05cb5c8ec9572eb0f3637057b440fea41399d9a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for fastremap-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 772ec4b4a5fe1ff0030c6285072686b2c05714d3cf81bdaf3998c4eb76e91e0c
MD5 f912d66d8bdcd060c3e20510b37f684e
BLAKE2b-256 022cb0408ebde8a7b58ef84c5a1eb8eff31000b017410fb4b514b6a007158cae

See more details on using hashes here.

Supported by

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