Functions

Morphology Operations for Gray Images
[Image Processing]

Collaboration diagram for Morphology Operations for Gray Images:

Functions

int imProcessGrayMorphConvolve (const imImage *src_image, imImage *dst_image, const imImage *kernel, int ismax)
int imProcessGrayMorphErode (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphDilate (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphOpen (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphClose (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphTopHat (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphWell (const imImage *src_image, imImage *dst_image, int kernel_size)
int imProcessGrayMorphGradient (const imImage *src_image, imImage *dst_image, int kernel_size)

Detailed Description

See im_process_loc.h

Function Documentation

int imProcessGrayMorphConvolve ( const imImage src_image,
imImage dst_image,
const imImage kernel,
int  ismax 
)

Base gray morphology convolution.
Supports all data types except complex. Can be applied on color images.
Kernel is always IM_INT. Use kernel size odd for better results.
Use -1 for don't care positions in kernel. Kernel values are added to image values, then
you can use the maximum or the minimum within the kernel area.
No border extensions are used. All the gray morphology operations use this function.
Returns zero if the counter aborted.

im.ProcessGrayMorphConvolve(src_image: imImage, dst_image: imImage, kernel: imImage, ismax: boolean) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphConvolveNew(image: imImage, kernel: imImage, ismax: boolean) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphErode ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Gray morphology convolution with a kernel full of "0"s and use minimum value.

im.ProcessGrayMorphErode(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphErodeNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphDilate ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Gray morphology convolution with a kernel full of "0"s and use maximum value. Returns zero if the counter aborted.

im.ProcessGrayMorphDilate(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphDilateNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphOpen ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Erode+Dilate. Returns zero if the counter aborted.

im.ProcessGrayMorphOpen(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphOpenNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphClose ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Dilate+Erode. Returns zero if the counter aborted.

im.ProcessGrayMorphClose(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphCloseNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphTopHat ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Open+Difference. Returns zero if the counter aborted.

im.ProcessGrayMorphTopHat(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphTopHatNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphWell ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Close+Difference. Returns zero if the counter aborted.

im.ProcessGrayMorphWell(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphWellNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5] 
int imProcessGrayMorphGradient ( const imImage src_image,
imImage dst_image,
int  kernel_size 
)

Difference(Erode, Dilate). Returns zero if the counter aborted.

im.ProcessGrayMorphGradient(src_image: imImage, dst_image: imImage, kernel_size: number) -> counter: boolean [in Lua 5] 
im.ProcessGrayMorphGradientNew(image: imImage, kernel_size: number) -> counter: boolean, new_image: imImage [in Lua 5]