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
Description
===========
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`__.
__ http://docs.scipy.org/doc/numpy/reference/arrays.interface.html
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.
:mod:`motmot.FastImage` -- SIMD image processing
************************************************
.. module:: motmot.FastImage.FastImage
:synopsis: SIMD image processing
.. index::
module: FastImage
single: FastImage
Description
===========
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`__.
__ http://docs.scipy.org/doc/numpy/reference/arrays.interface.html
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
File details
Details for the file motmot.FastImage_ipp-0.5.5.ipp.zip
.
File metadata
- Download URL: motmot.FastImage_ipp-0.5.5.ipp.zip
- Upload date:
- Size: 38.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff44b67a143cf25653a44c6ff8cded7d183d61f7502ece1bbbb182b694c8bef2 |
|
MD5 | 7d6d8c10da42440ac3d6fa0a12f11aa5 |
|
BLAKE2b-256 | ac2dafeca6433cf164c7aa4ac60f595c8c4736a037b5e0c23a7b5566e19ec53b |
File details
Details for the file motmot.FastImage_ipp-0.5.5.ipp.tar.gz
.
File metadata
- Download URL: motmot.FastImage_ipp-0.5.5.ipp.tar.gz
- Upload date:
- Size: 29.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72001f8eb8addaf02b81f3fbad2824bd5e1c367332ca21e6fc816f8d51871306 |
|
MD5 | 112fc1e2c9ea7d23bb1486fd0d9ce504 |
|
BLAKE2b-256 | d6ba843592c52c0b2c816af8fa8ae4d1eb0737aba5fc83220485e70796bffc11 |