n-dimensional images, with
- image aliasing
- user controllable hyperplane selection
- user controllable domains (index ranges)
- n-dimensional FFT/iFFT for complex images (freely distributable, with source) of arbitrary dimension size (image dimensions don't have to be a power of 2)
- frequency-based indexing for Fourier-domain images (the frequency-space origin can be moved to the center of the image)
- both bounds-checked (slow) and unchecked (fast) indexing
- domain-aware assignment operators (assignments between images of non-identical size and domain)
an image-disk-file manager, with
- n-dimensional image storage and retrieval
- hypeplane-size-aware storage (you can store individual frames of an image sequence separately, or together)
- byte-order (Big-Endian/Little-Endian) aware storage and retrieval (for image portability)
random number generators (freely distributable, with source), with
- uniform, gaussian and exponential distributions
- multiple basic (uniform[0,1]) random number generators
n-dimensional functions with operators for image assignment polynomial functions (with Hermites) (minimal) complex number support
Note: You are not prevented in any way from using other functions and code from the VideoToolbox, the MacOS, or elsewhere.Convention: C++ class names in my libraries are (with a few exceptions) prefixed with a three letter acronym taken from the name of the library. Hence we have objects like iml_uniform_rv, and iml_ubyte_image at our disposal.