Go to main content

man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2017
 
 

mlib_ImageConv4x4Index(3MLIB)

Name

mlib_ImageConv4x4Index - 4x4 convolution on a color indexed image

Synopsis

cc [ flag... ] file... –lmlib [ library... ]
#include <mlib.h>

mlib_status mlib_ImageConv4x4Index(mlib_image *dst, const mlib_image *src,
     const mlib_s32 *kernel, mlib_s32 scale, mlib_edge edge,
     const void *colormap);

Description

The mlib_ImageConv4x4Index() function performs a 4x4 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 (1, 1) of the kernel matrix.

This function performs the convolution on 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 = 4, n = 4, dm = (m - 1)/2 = 1, dn = (n - 1)/2 = 1.

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.

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_ImageConv3x3_Fp(3MLIB), mlib_ImageConv3x3Index(3MLIB), mlib_ImageConv4x4(3MLIB), mlib_ImageConv4x4_Fp(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(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)