mlib_ImageConvMxNIndex(3MLIB) mediaLib Library Functions mlib_ImageConvMxNIndex(3MLIB)
NAME
mlib_ImageConvMxNIndex - MxN convolution on a color indexed image
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>
mlib_status mlib_ImageConvMxNIndex(mlib_image *dst, const mlib_image *src,
const mlib_s32 *kernel, mlib_s32 m, mlib_s32 n, mlib_s32 dm,
mlib_s32 dn, mlib_s32 scale, mlib_edge edge, const void *colormap);
DESCRIPTION
The mlib_ImageConvMxNIndex() function performs a MxN convolution on the color indexed source image by using the user-supplied kernel.
The input and output images must have the same image type and size.
For this convolution, the key element of the convolution kernel is located at (dm, dn) of the kernel matrix.
This function performs the convolution on a color indexed image. The input image and the output image must be single-channel images. The
image type must be MLIB_BYTE or MLIB_SHORT.
It uses the following equation:
m-1-dm n-1-dn
dst[x][y][i] = SUM SUM src[x+p][y+q][i]*k[p][q]*2**(-scale)
p=-dm q=-dn
where m > 1, n > 1, 0 <= dm < m, 0 <= dn < n.
PARAMETERS
The function takes the following arguments:
dst Pointer to destination image.
src Pointer to source image.
kernel Pointer to the convolution kernel, in row major order.
m Width of the convolution kernel. m > 1.
n Height of the convolution kernel. n > 1.
dm X coordinate of the key element in the convolution kernel. 0 <= dm < m.
dn Y coordinate of the key element in the convolution kernel. 0 <= dn < n.
scale Scaling factor.
edge Type of edge condition. It can be one of the following:
MLIB_EDGE_DST_NO_WRITE
MLIB_EDGE_DST_FILL_ZERO
MLIB_EDGE_DST_COPY_SRC
MLIB_EDGE_SRC_EXTEND
colormap Internal data structure for inverse color mapping. This data structure is generated by the mlib_ImageColorTrue2IndexInit()
function.
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 ALSO
mlib_ImageConv2x2(3MLIB), mlib_ImageConv2x2_Fp(3MLIB), mlib_ImageConv2x2Index(3MLIB), mlib_ImageConv3x3(3MLIB), mlib_Image-
Conv3x3_Fp(3MLIB), mlib_ImageConv3x3Index(3MLIB), mlib_ImageConv4x4(3MLIB), mlib_ImageConv4x4_Fp(3MLIB), mlib_ImageConv4x4Index(3MLIB),
mlib_ImageConv5x5(3MLIB), mlib_ImageConv5x5_Fp(3MLIB), mlib_ImageConv5x5Index(3MLIB), mlib_ImageConv7x7(3MLIB), mlib_Image-
Conv7x7_Fp(3MLIB), mlib_ImageConv7x7Index(3MLIB), mlib_ImageConvKernelConvert(3MLIB), mlib_ImageConvMxN(3MLIB), mlib_ImageCon-
vMxN_Fp(3MLIB), mlib_ImageConvolveMxN(3MLIB), mlib_ImageConvolveMxN_Fp(3MLIB), mlib_ImageSConv3x3(3MLIB), mlib_ImageSConv3x3_Fp(3MLIB),
mlib_ImageSConv5x5(3MLIB), mlib_ImageSConv5x5_Fp(3MLIB), mlib_ImageSConv7x7(3MLIB), mlib_ImageSConv7x7_Fp(3MLIB), mlib_ImageSConvKernelCon-
vert(3MLIB), attributes(5)
SunOS 5.11 2 Mar 2007 mlib_ImageConvMxNIndex(3MLIB)