TopHat (grayscale)

#include "BIFILTER.H"


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


The top-hat filter is used to enhance low contrast high spatial frequency features within an image. The function works for only 8 bit per pixel grayscale images. Morphological top-hat of an image is defined as the difference between the original image and the graylevel opened image.


Description: 8bitgray                                                  Description: macskatophat

The original 180 x 210 pixel grayscale image and the Top-Hat filtered image with a 8 x 8 pixel, all zero structuring function.




Handle of the DIB to filter.



This parameter specifies the structuring function used by dilation and erosion. If StrFunc parameter is NULL,  grayscale Top-Hat filter  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.



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.



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.


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

Library :    Use BIFilter.lib.

DLLs :       BIFilter.dll, BiDlgs.dll.