mlib_ImageLookUp2(3MLIB) mediaLib Library Functions mlib_ImageLookUp2(3MLIB)NAMEmlib_ImageLookUp2 - table lookup
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>
mlib_status mlib_ImageLookUp2(mlib_image *dst, const mlib_image *src,
const void **table, const mlib_s32 *offsets, mlib_s32 channels);
DESCRIPTION
The mlib_ImageLookUp2() function maps the source image to the destina‐
tion image by using the user-specified lookup table and an offset.
The source and destination images must have the same width and height.
The source and destination images can have different data types. See
the following table for available variations of the table lookup func‐
tion on image types:
Type [*] BYTE SHORT USHORT INT FLOAT DOUBLE
────────────────────────────────────────────────────────────────────────────────────────
MLIB_BIT Y
MLIB_BYTE Y Y Y Y Y Y
────────────────────────────────────────────────────────────────────────────────────────
MLIB_SHORT Y Y Y Y Y Y
────────────────────────────────────────────────────────────────────────────────────────
MLIB_USHORT Y Y Y Y Y Y
────────────────────────────────────────────────────────────────────────────────────────
MLIB_INT Y Y Y Y Y Y
[*] Each row represents a source data type. Each column represents a
destination data type.
The source and destination images also can have a different number of
channels. The source image can be a single-channel image or can have
the same number of channels as the destination image. The lookup table
can have one channel or have the same channels as the destination
image. See the following table for possible variations on the number of
channels in the images and the lookup table:
# of channels in # of channels in # of channels in
the input image the lookup table the output image
──────────────────────────────────────────────────────────────
1 n n
n 1 n
n n n
where, n = 1, 2, 3, 4.
Each of the following equations is used in the corresponding case shown
in the table above.
dst[x][y][i] = table[i][src[x][y][0] - offsets[i]]
dst[x][y][i] = table[0][src[x][y][i] - offsets[0]]
dst[x][y][i] = table[i][src[x][y][i] - offsets[i]]
PARAMETERS
The function takes the following arguments:
dst Pointer to destination image.
src Pointer to source image.
table Pointer to lookup table. The data type of the lookup table
is the same as that of the destination image.. The format
of the lookup table is:
table[channel][index]
The entries are indexed from 0 to 1, 2, ..., and so on. It
is the user's responsibility to provide a lookup table that
has enough entries to cover all possible values of the
pixel components deducted by the offset in each channel of
the source image.
offsets Offset values subtracted from the src pixel before table
lookup.
channels Number of channels in the lookup table. If the number of
channels equals 1, then the same table is applied to all
channels. Otherwise, the number of channels must be no less
than the number of channels in the destination image.
RETURN VALUES
The function returns MLIB_SUCCESS if successful. Otherwise it returns
MLIB_FAILURE.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOmlib_ImageLookUp(3MLIB), mlib_ImageLookUp_Inp(3MLIB), mlib_ImageLookUp‐
Mask(3MLIB), attributes(5)SunOS 5.10 2 Mar 2007 mlib_ImageLookUp2(3MLIB)