Skip to main content

Efficient parallelizable algorithms for multidimensional arrays to speed up your data pipelines

Project description

codecov pypi License PyPI - Downloads

Imops

Efficient parallelizable algorithms for multidimensional arrays to speed up your data pipelines.

Install

pip install imops  # default install with Cython backend

How fast is it?

Time comparisons (ms) for Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz using 8 threads. All inputs are C-contiguous NumPy arrays. For morphology functions bool dtype is used and float64 for all others.

function / backend Scipy() Cython(fast=False) Cython(fast=True)
zoom(..., order=0) 2072 1114 867
zoom(..., order=1) 6527 596 575
interp1d 780 149 146
radon 59711 5982 4837
inverse_radon 52928 8254 6535
binary_dilation 2207 310 298
binary_erosion 2296 326 304
binary_closing 4158 544 469
binary_opening 4410 567 522
center_of_mass 2237 64 64

We use airspeed velocity to benchmark our code. For detailed results visit benchmark page.

Features

Fast Radon transform

from imops import radon, inverse_radon

Fast 0/1-order zoom

from imops import zoom, zoom_to_shape

# fast zoom with optional fallback to scipy's implementation
y = zoom(x, 2, axis=[0, 1])
# a handy function to zoom the array to a given shape 
# without the need to compute the scale factor
z = zoom_to_shape(x, (4, 120, 67))

Works faster only for ndim<=4, dtype=float32 or float64 (and bool-int16-32-64-uint8-16-32 if order == 0), output=None, order=0 or 1, mode='constant', grid_mode=False

Fast 1d linear interpolation

from imops import interp1d  # same as `scipy.interpolate.interp1d`

Works faster only for ndim<=3, dtype=float32 or float64, order=1

Fast 2d linear interpolation

import numpy as np
from imops.interp2d import Linear2DInterpolator
n, m = 1024, 2
points = np.random.randint(low=0, high=1024, size=(n, m))
points = np.unique(points, axis=0)
x_points = points[: n // 2]
values = np.random.uniform(low=0.0, high=1.0, size=(len(x_points),))
interp_points = points[n // 2:]
num_threads = -1 # will be equal to num of CPU cores
# You can optionally pass your own triangulation as an np.array of shape [num_triangles, 3], element at (i, j) position is an index of a point from x_points
interpolator = Linear2DInterpolator(x_points, values, num_threads=num_threads, triangles=None)
# Also you can pass values to __call__ and rewrite the ones that were passed to __init__
interp_values = interpolator(interp_points, values + 1.0, fill_value=0.0)

Fast binary morphology

from imops import binary_dilation, binary_erosion, binary_opening, binary_closing

These functions mimic scikit-image counterparts

Padding

from imops import pad, pad_to_shape

y = pad(x, 10, axis=[0, 1])
# `ratio` controls how much padding is applied to left side:
# 0 - pad from right
# 1 - pad from left
# 0.5 - distribute the padding equally
z = pad_to_shape(x, (4, 120, 67), ratio=0.25)

Cropping

from imops import crop_to_shape

# `ratio` controls the position of the crop
# 0 - crop from right
# 1 - crop from left
# 0.5 - crop from the middle
z = crop_to_shape(x, (4, 120, 67), ratio=0.25)

Labeling

from imops import label

# same as `skimage.measure.label`
labeled, num_components = label(x, background=1, return_num=True)

Backends

For all heavy image routines except label you can specify which backend to use. Backend can be specified by a string or by an instance of Backend class. The latter allows you to customize some backend options:

from imops import Cython, Scipy, zoom

y = zoom(x, 2, backend='Cython')
y = zoom(x, 2, backend=Cython(fast=False))  # same as previous
y = zoom(x, 2, backend=Cython(fast=True))  # -ffast-math compiled cython backend
y = zoom(x, 2, backend=Scipy())  # use scipy original implementation

Also backend can be specified globally or locally:

from imops import imops_backend, set_backend, zoom

set_backend('Scipy')  # sets Scipy as default backend
with imops_backend('Cython'):  # sets Cython backend via context manager
    zoom(x, 2)

Available backends:

function / backend Scipy Cython
zoom
interp1d
radon
inverse_radon
binary_dilation
binary_erosion
binary_closing
binary_opening
center_of_mass

Acknowledgements

Some parts of our code for radon/inverse radon transform as well as the code for linear interpolation are inspired by the implementations from scikit-image and scipy. Also we used fastremap, edt and cc3d out of the box.

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

imops-0.10.0.tar.gz (62.5 kB view details)

Uploaded Source

Built Distributions

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

imops-0.10.0-cp312-cp312-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.12Windows x86-64

imops-0.10.0-cp312-cp312-win32.whl (4.8 MB view details)

Uploaded CPython 3.12Windows x86

imops-0.10.0-cp312-cp312-musllinux_1_1_x86_64.whl (18.0 MB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ x86-64

imops-0.10.0-cp312-cp312-musllinux_1_1_i686.whl (17.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ i686

imops-0.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

imops-0.10.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (16.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

imops-0.10.0-cp312-cp312-macosx_11_0_arm64.whl (5.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

imops-0.10.0-cp311-cp311-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.11Windows x86-64

imops-0.10.0-cp311-cp311-win32.whl (4.8 MB view details)

Uploaded CPython 3.11Windows x86

imops-0.10.0-cp311-cp311-musllinux_1_1_x86_64.whl (18.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ x86-64

imops-0.10.0-cp311-cp311-musllinux_1_1_i686.whl (17.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ i686

imops-0.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

imops-0.10.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (17.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

imops-0.10.0-cp311-cp311-macosx_11_0_arm64.whl (5.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

imops-0.10.0-cp310-cp310-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.10Windows x86-64

imops-0.10.0-cp310-cp310-win32.whl (4.9 MB view details)

Uploaded CPython 3.10Windows x86

imops-0.10.0-cp310-cp310-musllinux_1_1_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

imops-0.10.0-cp310-cp310-musllinux_1_1_i686.whl (17.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ i686

imops-0.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

imops-0.10.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (16.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

imops-0.10.0-cp310-cp310-macosx_11_0_arm64.whl (5.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

imops-0.10.0-cp39-cp39-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.9Windows x86-64

imops-0.10.0-cp39-cp39-win32.whl (4.9 MB view details)

Uploaded CPython 3.9Windows x86

imops-0.10.0-cp39-cp39-musllinux_1_1_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ x86-64

imops-0.10.0-cp39-cp39-musllinux_1_1_i686.whl (17.1 MB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ i686

imops-0.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

imops-0.10.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (16.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

imops-0.10.0-cp39-cp39-macosx_11_0_arm64.whl (5.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

imops-0.10.0-cp38-cp38-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.8Windows x86-64

imops-0.10.0-cp38-cp38-win32.whl (4.8 MB view details)

Uploaded CPython 3.8Windows x86

imops-0.10.0-cp38-cp38-musllinux_1_1_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ x86-64

imops-0.10.0-cp38-cp38-musllinux_1_1_i686.whl (17.9 MB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ i686

imops-0.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

imops-0.10.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (16.7 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686

imops-0.10.0-cp38-cp38-macosx_11_0_arm64.whl (5.5 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

imops-0.10.0-cp37-cp37m-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.7mWindows x86-64

imops-0.10.0-cp37-cp37m-win32.whl (4.9 MB view details)

Uploaded CPython 3.7mWindows x86

imops-0.10.0-cp37-cp37m-musllinux_1_1_x86_64.whl (17.4 MB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ x86-64

imops-0.10.0-cp37-cp37m-musllinux_1_1_i686.whl (16.9 MB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ i686

imops-0.10.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.9 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

imops-0.10.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (16.1 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686

File details

Details for the file imops-0.10.0.tar.gz.

File metadata

  • Download URL: imops-0.10.0.tar.gz
  • Upload date:
  • Size: 62.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0.tar.gz
Algorithm Hash digest
SHA256 ff0d30968cf2741e5eb3469ea30b9f3cc0c39dfb4bcfaba6841b87347cd4186f
MD5 1eb9aad61c4f723fb24261e9f2766d3d
BLAKE2b-256 459f9ae7c885ce93c9c846126d0e6fb2998a1453b2c47f3417175deb58137a4a

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6e3c1165e69f55af38240375201d5b32f258e4cf1809453ebbb6b02c3af575f2
MD5 a3ba50eef048fe9fd9e482e80c12638a
BLAKE2b-256 d74d9e22d0ac459af08e1c4ff733cba2578543809324ea00008315d3ba5c8fe0

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 b1e8f1668590ea85f20ccbfcf054a19b7d45ff9c65458bc929c969d73dd26044
MD5 6a5487324fbc54541ab304c485612778
BLAKE2b-256 a03b2d068843a990d9d64b3d151abb75ccc3c69dde186a44662e2386d46d57c2

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 1c9f1b7332f5bc3d324171e801fdb9118a766fb43b531fc166572cf1d3b95b75
MD5 2e5dd36fd0d39382c978b5bcd7344445
BLAKE2b-256 60221905d3922824b380d0a8f8d84656312058aeaeb632fc50563dab1ce935c5

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 a625bbc3462cedb6d3ce45b21e4b64320ba18145eb221cd5ea5009223ffa3e49
MD5 7ee2a285b95366d6ebc0c91b347f3f60
BLAKE2b-256 2620a7da9a60bbe021b8f7ad0f4bd149eb40a5485eee0f613bca9f49702e756f

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e6b5b1bda181053c307639be0b8ce069ddbbbd88d1d6d377f87e572faf1a339
MD5 32c3adbdcbdd0159e7116fb13e306573
BLAKE2b-256 19154beebe3a96ab6794a95fcb4f1c1a1a5142623fa8d8e87ad41cd8eb8abbd0

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 5b5bbe682665dbcfbf4df1204b18e850b6f8c26c2be91bce4a924a86e79d55c2
MD5 c7853bba9cedcd6a690f6727d750fce6
BLAKE2b-256 933c2dd6513bbf27f323f335cf92c5382f28a3de5821b69a109128e637a14201

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5fe74595d3af1f39a9395702207e229def40d4eec3869a00efae459704cc9fd3
MD5 11ebee8f7966a53d4a2433d6674d6ff9
BLAKE2b-256 87155b43433a96ab5fe2ecd55dd337416b3c3f7366e5e13146d29044e3d0de3f

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9d56dcc3bc6fbfb4f7b1819c3084f26f7d13dca9122ad60c99ed1ca87ecf8a79
MD5 72015ba563e4d79c961d5f9875019a97
BLAKE2b-256 8e9045239311dd88bf453b1cf1af18e02aacc064af6e882c410de187d9920414

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 adeb1b85d5e0aecc46f36c3199e21528d76945e33d630b72beda35ae4ac4155e
MD5 0f2aad50ac849e92cfe417364da639ef
BLAKE2b-256 74fb562ac25b9170f449103315f6604fcb488f9b43b233e0b20c48cb7b90d9cc

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 77cca5e39dcf088f4253e194d2248b3bb226a0d147f5b4c51539928bc0273d2c
MD5 51545f876e708cdb7f59dc6a474a4733
BLAKE2b-256 761140df9ce704d0918d2609e45c7e61f43b88c5c4539776ca7694bcd964a4bf

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 d64535ac0b2295231bd407e2b3a13b8741bfc544aaa2d2d95a36fdeb92ac2918
MD5 84a9da5ea2b9077166f488e2d8e6f9d9
BLAKE2b-256 2bf55e4eb142f59ee91943215c848b8e8530187c5e7de1005a1b59d9d5ad1082

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dbcb7c124438907e09a9edf3b43ee79e2747df90249224aa2827a9c71838cf37
MD5 00d4650132990c827d66878019fe644b
BLAKE2b-256 bc47437832550a0d46f7419c8764b23742a0d46767d201796cca23d83c7c1f00

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1ddbb8f5a228e787f21bc6afb26984d391a6d27dd02e6baa89b5ff367cfbc082
MD5 4751a3906b3767cd6dd170d40dff9791
BLAKE2b-256 a79f93050feeaf0ed10a9863e8111fd4571177ef95813bc1b4e47d8d32440a9e

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 68756c1df881ea8f69201bb1c3045876d406b4326b79f4835f2da90b11b8303e
MD5 7d1d02e25ee0c95b1c16ab952c7c0b6d
BLAKE2b-256 23231216b61a5fc11061d29ab474e6c2e203aed3220e553fe4f4c0f1539cfd99

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2920e52bcf3d5b65ea7fd6410e09a5d8347e1c29a172ecccbca4119e0fdbda69
MD5 31ee56f94e976ca8954ec6ea9d6d84ff
BLAKE2b-256 abfb5889f2ba46e1247dcfe106724cb589244b9d53bfb2557adcdacdda2d5cdf

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 2f144a384fb6f725cd816665333c721985fc7321b64aeefda5cdefa2a713a11c
MD5 0a83bc6684163043c6f57b5eabc7b7b3
BLAKE2b-256 ca7330ee43c013848472d8f89f2e08dd6c6ac35450b60c6d2e6c398a680f7f2d

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 4f7e814512eff5b4323ed90ce5e080d0428c2bebf93d999ff583d7c310876a40
MD5 b60c17aa40da1148efe4d6e1a896ae56
BLAKE2b-256 ad0ec61f3ed8afe9275f265a69f5f5bf7ee4931708143700d7eb4d93c0262647

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6fc050bcc5ecb6c981706f495e8e8cfbc8bf282ffc61e74c1352f7474897c9f6
MD5 ad576775a661525f06c8b6858bc1f488
BLAKE2b-256 5e495e1f80da4341da8dc7117343331ce7c34a5c827b20364c3aee1b7b9802b2

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 66e0b8a2e7d94662d21edec3534f07726ceaa9bffe33f992fe6b0724763b1204
MD5 74114c7cdc17f5392be6c2dd81db2803
BLAKE2b-256 f6264e611703ac1ca23e28c193a3e89ef34f94e351100993cc51e26ca924c11f

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8c10b8243b2c344584617d354d48969a859763f64b4bde6d2f5f215b519442cf
MD5 81fa0741355ff74d6195a7c90e89da60
BLAKE2b-256 7776f2957c666b875558501e0ac270cde5c0f9c51a0c11cf984c11aff59f25c3

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b80cd0b78325be532cd742d084177c8c6a0ac663efa08b703ea14b6ad53ba71b
MD5 c3eae4b69ef7668a89a250d6d6e452d0
BLAKE2b-256 e911c67f87671d8739d6a776cee1d84750550304fe887900719adc0f1ededa26

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4d0798c4644ae02f00e78eb3a7bb07c716d044aeea1eeac0758a26fd06e0062e
MD5 3c3952116a552ed991080f502b7a8fcc
BLAKE2b-256 77bcb99ee1c81d93fb04bcc2f556772735574f0e1e9208f13a48c7ff83b31514

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 eb30a77143a0881bc1405b6a5c251d6f7b2565d58aabac8043e9400dcdc88cb2
MD5 4891ed3dc30230725d769949db90199b
BLAKE2b-256 fd9c3b1930b52ebf545de04f70c23362e370e2648defb2f3c483d3841c930e68

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a348e14afa540d415942a01c1cec51dffd710862681d16b27ae6a1428ccf759c
MD5 701a02826e4401eada6d9ddbcd5342a6
BLAKE2b-256 a71247c62289d6faec5b1389d498f33740f44155f6c3460556bd419a463bcb89

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

  • Download URL: imops-0.10.0-cp39-cp39-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 17.1 MB
  • Tags: CPython 3.9, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 80275b1a31b464ef685f7299dc55291848b0e275db2ba3031db3b5a7c349c970
MD5 805940d5389087cac0818308b3ac4c4a
BLAKE2b-256 8d2e9b882d5373b0eaf346f5aa77f828cc841c0d0645240b9376ef069b1ad544

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e76009a9c7b3b6e055bb71bd826eaa755be39643df7b428218bb7c4030365347
MD5 781ce84a28152dc58d7a8d4c622d553b
BLAKE2b-256 2ccfdf0fbd4cf2643d171f6a8bc87de1d0ace27b8568f9eb6ae2a2b2ec0d0f1f

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 349e2c3c4311e4aab9aa2b6b63a7e8d53d6872c2c23e42e8194fcf6e70454f34
MD5 e8b63bf3fc46cd0631b9b7b60bc2c191
BLAKE2b-256 dc188365c79273398f55abb49ae306d73fa01ea4442cf20eb01e6ac4ab243ed8

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9e8b541c2f3775f93ffbd1d66573a8198475414ba52bef4d00afaf9317a66d7
MD5 947a15e9b841730d575509b104ae2dd4
BLAKE2b-256 0092b94d3610875c74bdde684ae16f7ca3bf47e6da769892113eef50348ac7ac

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 61e00cfc530e866a57519b426899477378becb9f6d5538aeb7e1c0df9f3cad41
MD5 29b5384f29fad7c628009153da38c29d
BLAKE2b-256 e510ed66ebb682dbc5e59730b8a66457eb48d890763894f1b02377546cfe27f9

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 d87ffadb1769fbda919eb0ff0a61d54fc7bddc1b66b72675eb68817eb144f986
MD5 878e6b3e7712c7047c794b3c933e339e
BLAKE2b-256 fc9067440f0ef52bb748fc1ffb840bb1073df8132aed6de3a740e86dd1cb4687

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 9877aff4fd15b7e5abe0769b03481316bffa3e515e2be6eb47b8a57c21cc0023
MD5 1876caddd4d2f8d356280c0a1b062fa4
BLAKE2b-256 5e89c493de6b250421000c482663fcff8dc70be078b8a45d994bfaca369d230c

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

  • Download URL: imops-0.10.0-cp38-cp38-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 17.9 MB
  • Tags: CPython 3.8, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 c62bd48e8835acc124ad6ad10b2e158a9306db96e16aeefb65782422fa9f8fda
MD5 91e9e77cad9bc480f7f0c2ad64ac0212
BLAKE2b-256 90f920b184376ebb9d2f20ee088635e811149eee4598de9c494783448d466ea2

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a7c3d89c1860d5a554c966782239df06a068c24cfd2a7830e9621f2f3dad0fe
MD5 ac22d1e76363d7d2370648996f4a93d4
BLAKE2b-256 e39d4b261407ca9ba2d54a75b22a4af478a785c4a2c82feeb80fd6635abca5b6

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 243d53e79541959581b2c5ee542485a370fddbbd2c452fe1e4d6e21e09a14b03
MD5 876fb7904a988bafe8f8637901d3c6c2
BLAKE2b-256 0158fc58589abca5e6f774923d2e282a36100b3ebc8d6503312b4b8a748da91c

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0ca7f644293c471dfc5d31e5d6dcdd16f6abc6c7ff41e5765dd80e0920771dca
MD5 1fa7f439a0080ca21e563d56645fae42
BLAKE2b-256 45de38a9ec1054ca16e5d1c079a5186f52e5c095c439aee6677d46da75ef9b7e

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: imops-0.10.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f7d7aae8d12e1566bcc909971e28b43661310899fd3e39ec75531b4e4b3884ed
MD5 4300fa034899667be41f60c6952297f7
BLAKE2b-256 c741f122c970bb2feeaee46830227592b5a7c6d92151465891523495512f9770

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: imops-0.10.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imops-0.10.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 04e89e7944ef5d3af47dcddb462ec1cb6a672ad3159711f25fec1bc27816af87
MD5 4fdbb9a4dbd049d52a070d214f776a72
BLAKE2b-256 e5ebc3a682aee9f98802f66a2ae060bdfa3677daf998ea1eae86a8735601d230

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 107e59d56e154dc0865263eda886485137dfbf438211b849458bfe8544bb6120
MD5 c01b101be340cfc76f91eb71f5ed93a9
BLAKE2b-256 a49082498e4ebbe41304fa359fda14bd5d43b04a9266257230284d7de34aea5e

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 2bfc673f603fa0d1a23a1c5994af3acbd862341ae3f8ee3611b057fbf0b85a19
MD5 8609f3fcec5bffea975f3be0b2a45d8f
BLAKE2b-256 e9942eeaa81d658b9c3c49e6e81c6e2696624d0016d6c3c9a14e72fd1cc9e0fd

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0e5d7557950ac43a0588bbc958d782c906180a14d4e70c681178ee7f50d190fe
MD5 61cedacd50d368e2317bb824057d0ca3
BLAKE2b-256 079b08318cf84e2fc2aee69f52fb15794d5f000d2c04903d9a48509774016701

See more details on using hashes here.

File details

Details for the file imops-0.10.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for imops-0.10.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a069ed7f911f17b9072625573f2c0096532167e25a828777e87ea4c4870ff094
MD5 b1704a312517720b8eb8a59ec24c52c0
BLAKE2b-256 c6a3fbfe31fee3f1ae0fedcfef53a5fa3fbe6bb33b3336fa31086d52e7a268c9

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