The open imaging DSP library
Loading...
Searching...
No Matches
Supported operations

List of image processing operations supported by libmpix.

Note
At the moment, the libmpix library only supports C implementation for each operation. SIMD integration is in progress.

Format definitions

Note that a presence on that list does not mean that the format can be converted in all direction. Refer to the other lists below to see what is supported.

You may extend this list directly inside the applicatoin via mpix_bits_per_pixel_cb.

See also
mpix/formats.h with a list of all pixel formats defined by libmpix.

Pixel format conversion

libmpix can perform pixel format conversion to support multiple input and output formats.

See also
How to convert pixel formats

Raw Bayer format conversion

libmpix can perform debayer operations to use raw image as input.

The various options are:

  • 3x3, a higher quality but more compute intensive variant
  • 2x2, a lower quality but faster to process variant
See also
How to debayer images

Palette format conversion

libmpix can generate and read data in indexed colors.

The performance quickly goes down as approaching 256 colors (PALETTE8), and the image loose most of the information as approaching 2 colors (PALETTE1). Intermediate palette sizes are a trade-off of performance vs quality.

See also
How to palettize images

QOI format conversion

libmpix can convert files to the lossless QOI format which is slightly less efficient than PNG but lighter in CPU, memory and flash resources.

The output is byte-per-byte identical to the reference implementation.

See also
How to QOI-encode images

Image correction

libmpix can perform image correction operations as found in most ISP pipelines:

See also
How to correct images

Image kernel processing

libmpix can perform several kernel image processing operations to work on adjacent pixel affecting the sharpness, noise, blurriness...

See also
How to do kernel processing

Image resizing operations

libmpix can resize images using various strategies with a different trade-off between quality, flexibility and performance.

See also
How to do resize an image

Image statistics collection

libmpix can collect selected statistics from an image.

Statistics collection are supported for any of the pixel sampling formats (see below).

The following types of statistics are stored into the mpix_stats struct:

  • luma (Y channel) histogram
  • RGB channel average, minimum, maximum
See also
How to do collect image statistics

Pixel value sampling

libmpix can collect RGB pixels from the image using the following strategy:

  • Random sampling

And from the following input image formats:

See also
How to sample pixels