Skip to main content

Pythonic API for a subset of the Intel Integrated Performance Primitives (Intel IPP) library

Project description

:mod:`motmot.FastImage` -- SIMD image processing

.. module:: motmot.FastImage.FastImage
:synopsis: SIMD image processing
.. index::
module: FastImage
single: FastImage


FastImage implements low-level image processing operations designed to
operate very quickly by using SIMD instructions. This is achieved by
calling the Intel IPP library. A bridge to numpy is made through the
`array interface`__.


Allocation of aligned memory

For the SIMD instructions to perform at maximal speed, images must be
aligned on 32-byte boundaries. FastImage relies on the underlying
image processing library to allocate the memory, trusting that it
knows best::

import motmot.FastImage.FastImage as FastImage
import numpy as np

# Allocate the image
fi_im1 = FastImage.FastImage8u( FastImage.Size(4,5) ) # width, height

# Get a numpy view
im1 = np.asarray( fi_im1 )
assert im1.shape == (5,4) # height, width

In the above example, im1.strides will be (32,1), indicating that each
row is aligned on a 32 byte boundary.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions (38.8 kB view hashes)

Uploaded source

motmot.FastImage_ipp-0.5.5.ipp.tar.gz (29.0 kB view hashes)

Uploaded source

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