Skeleton (binary)

#include "BIFILTER.H"

 

HANDLE CALLBACK BinarySkeleton( HDIB     hDIB,

                                                                    int           MaxStep,
BOOL    BackGrndisBlack,
int           iShowProgress,
HWND  hParent)

Description

This function will morphologically skeletonize the binary image. The function works for only 1 bit per pixel images. The binary skeletonization of an object defines a unique compressed geometrical representation of the object. Skeletonization is often referred to as the Medial Axis Transform. Morphological skeleton is processed by binary thinning operation several times iteratively until no further changes occur.

Examples

binkep7                                                                 skeleton

The original 43 x 39 pixel object and the image of the skeletonized object.

Parameters

HDIB

hDIB

Handle of the DIB to filter.

Int

MaxStep

This parameter specifies the maximum number of thinning operations. If MaxStep is 0, binary skeletonizing will be processed iteratively until no further changes occur.

BOOL

BackGrndisBlack

This parameter specifies the color of the object and background.

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.