Erosion (grayscale)

#include "BIFILTER.H"

 

HANDLE CALLBACK GrayScaleErosion(              HDIB            hDIB,
StrE        *StrFunc,
int           iShowProgress,
HWND  hParent)

Description

This function will morphologically erode the 8 bit grayscale image. The function works for only 8 bit per pixel grayscale images. Graylevel erosion of an image is used to smooth small positive graylevel regions. Graylevel erosion is defined as the minimum of the difference between a local region of an image and a given graylevel mask.

Examples

Description: emesegray                                                                Description: emeseeroded

The original 720 x 1006 pixel grayscale image and the eroded image with a 3 x 3 pixel, all zero structuring function.

Parameters

HDIB

hDIB

Handle of the DIB to filter.

StrE

*StrFunc

This parameter specifies the structuring function used by erosion. If StrFunc parameter is NULL, grayscale erosion will be processed by a 3 x 3 pixel, all zero structuring function. StrE structure is discussed in Chapter Data Structures at Data structure used by Morphological Operations and Weighted Filters entry.

int

iShowProgress

This parameter specifies the displaying of the progressbar and the preview dialog.

Available values:

DISPLAY_NONE (0)      -     The progressbar and the preview dialog will not display before filtering.

DISPLAY_PROGRESS (1) -The progressbar will display during filtering procedure.

DISPLAY_DIALOG (2) -     The preview dialog will display before filtering. This dialog shows the part of the image before and after filtering.

DISPLAY_BOTH (3)      -     The progressbar and the preview dialog will display.

IMPORTANT: The preview dialog will only display, if there is BiDlgs.dll installed.

HWND

hParent

Handler of the parent window.

Return values

The handle of the new filtered DIB or NULL if an error occurred.

Programming notes

The function will not free the input DIB.

Requirements

Header :    Declared in BIFilter.h; include BIFilter.h.

Library :    Use BIFilter.lib.

DLLs :       BIFilter.dll, BiDlgs.dll.