Content-type: text/html
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_ImageGradient3x3(mlib_image *dst, const mlib_image *src, const mlib_d64 *hmask, const mlib_d64 *vmask, mlib_s32 cmask, mlib_edge edge);
The mlib_ImageGradient3x3() function performs edge detection by computing the magnitude of the image gradient vector in two orthogonal directions using 3x3 gradient filtering.
It uses the following equation:
dst[x][y][i] = ( SH(x,y,i)**2 + SV(x,y,i)**2 )**0.5
where SH() and SV() are the horizontal and vertical gradient images generated from the corresponding channel of the source image by correlating it with the supplied orthogonal (horizontal and vertical) gradient masks.
The function takes the following arguments:
dst
src
hmask
vmask
cmask
edge
MLIB_EDGE_DST_NO_WRITE MLIB_EDGE_DS_FILL_ZERO MLIB_EDGE_DST_COPY_SRC MLIB_EDGE_SR_EXTEND
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes:
|
mlib_ImageGradient3x3_Fp(3MLIB), mlib_ImageGradientMxN(3MLIB), mlib_ImageGradientMxN_Fp(3MLIB), attributes(5)