mlib_ImageConvolveMxN man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

mlib_ImageConvolveMxN(3MLImediaLib Library Functiomlib_ImageConvolveMxN(3MLIB)

NAME
       mlib_ImageConvolveMxN  - MxN convolution, with kernel analysis for tak‐
       ing advantage of special cases

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

       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  convolution  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	mlib_ImageSConv3x3(), mlib_ImageConv3x3(), and etc. in
       special 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.

       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 convolved, each
		 bit of which represents a channel in the image. The  channels
		 corresponding to 1 bits are those to be processed. For a sin‐
		 gle-channel image, the channel mask is ignored.

       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

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_Image‐
       Conv2x2Index(3MLIB),	  mlib_ImageConv3x3(3MLIB),	   mlib_Image‐
       Conv3x3_Fp(3MLIB),      mlib_ImageConv3x3Index(3MLIB),	   mlib_Image‐
       Conv4x4(3MLIB),	      mlib_ImageConv4x4_Fp(3MLIB),	   mlib_Image‐
       Conv4x4Index(3MLIB),	   mlib_ImageConv5x5(3MLIB),	   mlib_Image‐
       Conv5x5_Fp(3MLIB),      mlib_ImageConv5x5Index(3MLIB),	   mlib_Image‐
       Conv7x7(3MLIB),	       mlib_ImageConv7x7_Fp(3MLIB),	   mlib_Image‐
       Conv7x7Index(3MLIB), mlib_ImageConvKernelConvert(3MLIB), mlib_ImageCon‐
       vMxN(3MLIB),	 mlib_ImageConvMxN_Fp(3MLIB),	  mlib_ImageConvMxNIn‐
       dex(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.10			  2 Mar 2007	  mlib_ImageConvolveMxN(3MLIB)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net