Go to main content

man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2017
 
 

mlib_ImageSobel_Fp (3MLIB)

Name

mlib_ImageSobel, mlib_ImageSobel_Fp - Sobel filter

Synopsis

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

mlib_status mlib_ImageSobel(mlib_image *dst, const mlib_image *src,
     mlib_s32 cmask, mlib_edge edge);
mlib_status mlib_ImageSobel_Fp(mlib_image *dst, const mlib_image *src,
     mlib_s32 cmask, mlib_edge edge);

Description

Each function is a special case of the gradient filter, which is an edge detector which computes the magnitude of the image gradient vector in two orthogonal directions. In this case, the gradient filter uses specific horizontal and vertical masks.

The Sobel filter is one of the special cases of gradient filter using the following horizontal and vertical masks:

hmask =  { -1.0, 0.0, 1.0,
           -2.0, 0.0, 2.0,
           -1.0, 0.0, 1.0 }
           
vmask =  { -1.0, -2.0, -1.0,
            0.0,  0.0,  0.0,
            1.0,  2.0,  1.0 }

Parameters

Each function takes the following arguments:

dst

Pointer to destination image.

src

Pointer to source image.

cmask

Channel mask to indicate the channels to be processed, 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 following:

MLIB_EDGE_DST_NO_WRITE
MLIB_EDGE_DS_FILL_ZERO
MLIB_EDGE_DST_COPY_SRC
MLIB_EDGE_SR_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_ImageGradient3x3(3MLIB), mlib_ImageGradient3x3_Fp(3MLIB), attributes(5)