Linear Motion Blur Filter

#include "BIFILTER.H"

 

HANDLE CALLBACK FilterMotionBlur(            HDIB     hDIB,
int           iAngle,
int           iDistance,
int           iShowProgress,
HWND  hParent)

Description

This function will generate motion blur noise on the input image. The motion blur noise can be tuned by the angle of the motion and the distance of the noise in pixels. This function works for only 8 bit per bixel and 24 bit per pixel images.

Examples

macskaauto                                                  motion

The original 180 x 210 pixel image and the motion blured image with iAngle = 45 degrees and iDistance = 10.

Parameters

HDIB

hDIB

Handle of the DIB to filter.

int

iAngle

The angle (degrees) between the motion’s line and a horizontal line.

int

iDistance

The distance of the motion noise in pixels. The larger the distance the larger the noise.

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.