mediaLib Library Functions mlib_ImageConvolveMxN(3MLIB)
NAME
mlib_ImageConvolveMxN - MxN convolution, with kernel
analysis for taking advantage of special casesSYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlib_status mlib_ImageConvolveMxN(mlib_image *dst, const mlib_image *src,
const mlib_d64 *kernel, mlib_s32 m, mlib_s32 n, mlib_s32 dm,
mlib_s32 dn, mlib_s32 cmask, mlib_edge edge);
DESCRIPTION
The mlib_ImageConvolveMxN() function analyzes the convolu-
tion kernel, converts the floating-point kernel to an
integer kernel, then performs a MxN convolution on the source image by calling either one of the functions likemlib_ImageSConv3x3(), mlib_ImageConv3x3(), and etc. in spe-
cial cases or mlib_ImageConvMxN() in other cases.
The input image and the output image must have the same image type and have the same number of channels. The unselected channels in the output image are not overwritten.For single-channel images, the channel mask is ignored.
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]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.SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlib_ImageConvolveMxN(3MLIB)
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.cmask Channel mask to indicate the channels to be con-
volved, each bit of which represents a channel in the image. The channels corresponding to 1 bitsare those to be processed. For a single-channel
image, the channel mask is ignored.edge Type of edge condition. It can be one of the fol-
lowing:MLIB_EDGE_DST_NO_WRITE
MLIB_EDGE_DST_FILL_ZERO
MLIB_EDGE_DST_COPY_SRC
MLIB_EDGE_SRC_EXTEND
RETURN VALUES
The function returns MLIB_SUCCESS if successful. Otherwise
it returns MLIB_FAILURE.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 2 Mar 2007 2
mediaLib Library Functions mlib_ImageConvolveMxN(3MLIB)
____________________________________________________________
| 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_ImageConv3x3_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_ImageConv7x7_Fp(3MLIB),
mlib_ImageConv7x7Index(3MLIB),
mlib_ImageConvKernelConvert(3MLIB),
mlib_ImageConvMxN(3MLIB), mlib_ImageConvMxN_Fp(3MLIB),
mlib_ImageConvMxNIndex(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_ImageSConvKernelConvert(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 3