Skip to main content

No project description provided

Project description

codecov pypi License

Imops

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

Install

pip install imops

Features

Fast Radon transform

from imops import radon, inverse_radon

Fast linear/bilinear/trilinear zoom

from imops import zoom
from imops import 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<=3, dtype=float32 or float64, output=None, order=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 or 'linear'

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)

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.

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.2.0.tar.gz (13.4 kB view hashes)

Uploaded Source

Built Distributions

imops-0.2.0-cp310-cp310-win_amd64.whl (253.3 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

imops-0.2.0-cp310-cp310-win32.whl (218.1 kB view hashes)

Uploaded CPython 3.10 Windows x86

imops-0.2.0-cp310-cp310-musllinux_1_1_x86_64.whl (1.8 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

imops-0.2.0-cp310-cp310-musllinux_1_1_i686.whl (1.7 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

imops-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

imops-0.2.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

imops-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl (636.2 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

imops-0.2.0-cp39-cp39-win_amd64.whl (256.4 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

imops-0.2.0-cp39-cp39-win32.whl (221.2 kB view hashes)

Uploaded CPython 3.9 Windows x86

imops-0.2.0-cp39-cp39-musllinux_1_1_x86_64.whl (1.8 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

imops-0.2.0-cp39-cp39-musllinux_1_1_i686.whl (1.7 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

imops-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

imops-0.2.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

imops-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl (523.4 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

imops-0.2.0-cp38-cp38-win_amd64.whl (256.5 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

imops-0.2.0-cp38-cp38-win32.whl (220.7 kB view hashes)

Uploaded CPython 3.8 Windows x86

imops-0.2.0-cp38-cp38-musllinux_1_1_x86_64.whl (1.9 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

imops-0.2.0-cp38-cp38-musllinux_1_1_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

imops-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

imops-0.2.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

imops-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl (522.4 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

imops-0.2.0-cp37-cp37m-win_amd64.whl (251.1 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

imops-0.2.0-cp37-cp37m-win32.whl (215.0 kB view hashes)

Uploaded CPython 3.7m Windows x86

imops-0.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

imops-0.2.0-cp37-cp37m-musllinux_1_1_i686.whl (1.6 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

imops-0.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

imops-0.2.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (1.6 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

imops-0.2.0-cp37-cp37m-macosx_10_9_x86_64.whl (506.8 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

imops-0.2.0-cp36-cp36m-win_amd64.whl (286.0 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

imops-0.2.0-cp36-cp36m-win32.whl (236.4 kB view hashes)

Uploaded CPython 3.6m Windows x86

imops-0.2.0-cp36-cp36m-musllinux_1_1_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.6m musllinux: musl 1.1+ x86-64

imops-0.2.0-cp36-cp36m-musllinux_1_1_i686.whl (1.6 MB view hashes)

Uploaded CPython 3.6m musllinux: musl 1.1+ i686

imops-0.2.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

imops-0.2.0-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl (1.6 MB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.17+ i686

imops-0.2.0-cp36-cp36m-macosx_10_9_x86_64.whl (508.8 kB view hashes)

Uploaded CPython 3.6m macOS 10.9+ x86-64

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