mediaLib Library Functions mlibImageConvolveMxN(3MLIB)
NAME
mlibImageConvolveMxN - MxN convolution, with kernel
analysis for taking advantage of special cases
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlibstatus mlibImageConvolveMxN(mlibimage *dst, const mlibimage *src,
const mlibd64 *kernel, mlibs32 m, mlibs32 n, mlibs32 dm,
mlibs32 dn, mlibs32 cmask, mlibedge edge);
DESCRIPTION
The mlibImageConvolveMxN() 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 like
mlibImageSConv3x3(), mlibImageConv3x3(), and etc. in spe-
cial cases or mlibImageConvMxN() 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 mlibImageConvolveMxN(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 bits
are 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:
MLIBEDGEDSTNOWRITE
MLIBEDGEDSTFILZERO
MLIBEDGEDSTCOPYSRC
MLIBEDGESRCEXTEND
RETURN VALUES
The function returns MLIBSUCES if successful. Otherwise
it returns MLIBFAILURE.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
SunOS 5.11 Last change: 2 Mar 2007 2
mediaLib Library Functions mlibImageConvolveMxN(3MLIB)
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
SEE ALSO
mlibImageConv2x2(3MLIB), mlibImageConv2x2Fp(3MLIB),
mlibImageConv2x2Index(3MLIB), mlibImageConv3x3(3MLIB),
mlibImageConv3x3Fp(3MLIB), mlibImageConv3x3Index(3MLIB),
mlibImageConv4x4(3MLIB), mlibImageConv4x4Fp(3MLIB),
mlibImageConv4x4Index(3MLIB), mlibImageConv5x5(3MLIB),
mlibImageConv5x5Fp(3MLIB), mlibImageConv5x5Index(3MLIB),
mlibImageConv7x7(3MLIB), mlibImageConv7x7Fp(3MLIB),
mlibImageConv7x7Index(3MLIB),
mlibImageConvKernelConvert(3MLIB),
mlibImageConvMxN(3MLIB), mlibImageConvMxNFp(3MLIB),
mlibImageConvMxNIndex(3MLIB),
mlibImageConvolveMxNFp(3MLIB), mlibImageSConv3x3(3MLIB),
mlibImageSConv3x3Fp(3MLIB), mlibImageSConv5x5(3MLIB),
mlibImageSConv5x5Fp(3MLIB), mlibImageSConv7x7(3MLIB),
mlibImageSConv7x7Fp(3MLIB),
mlibImageSConvKernelConvert(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 3
|