HALCON Reference Manual 10.0.2
Table of Contents / Filters / Enhancement ClassesClassesClasses | | | Operators

illuminateilluminateilluminateIlluminateIlluminate (Operator)

Name

illuminateilluminateilluminateIlluminateIlluminate — Illuminate image.

Signature

illuminate(Image : ImageIlluminate : MaskWidth, MaskHeight, Factor : )

Herror illuminate(const Hobject Image, Hobject* ImageIlluminate, const Hlong MaskWidth, const Hlong MaskHeight, double Factor)

Herror T_illuminate(const Hobject Image, Hobject* ImageIlluminate, const Htuple MaskWidth, const Htuple MaskHeight, const Htuple Factor)

Herror illuminate(Hobject Image, Hobject* ImageIlluminate, const HTuple& MaskWidth, const HTuple& MaskHeight, const HTuple& Factor)

HImage HImage::Illuminate(const HTuple& MaskWidth, const HTuple& MaskHeight, const HTuple& Factor) const

HImageArray HImageArray::Illuminate(const HTuple& MaskWidth, const HTuple& MaskHeight, const HTuple& Factor) const

void HOperatorSetX.Illuminate(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*ImageIlluminate, [in] VARIANT MaskWidth, [in] VARIANT MaskHeight, [in] VARIANT Factor)

IHImageX* HImageX.Illuminate(
[in] Hlong MaskWidth, [in] Hlong MaskHeight, [in] double Factor)

static void HOperatorSet.Illuminate(HObject image, out HObject imageIlluminate, HTuple maskWidth, HTuple maskHeight, HTuple factor)

HImage HImage.Illuminate(int maskWidth, int maskHeight, double factor)

Description

The operator illuminateilluminateilluminateIlluminateIlluminate enhances contrast. Very dark parts of the image are “illuminated” more strongly, very light ones are “darkened”. If orig is the original gray value and mean is the corresponding gray value of the low pass filtered image detected via the operators mean_imagemean_imagemean_imageMeanImageMeanImage and filter size MaskHeightMaskHeightMaskHeightMaskHeightmaskHeight x MaskWidthMaskWidthMaskWidthMaskWidthmaskWidth. For byte-images val equals 127, for int2-images and uint2-images val equals the median value. The resulting gray value is new:

             new = round ( (val - mean) * Factor + orig ).

   Height Width  Factor
   ---------------------
    40     40     0.55
   100    100     0.7
   150    150     0.8

Parallelization

Parameters

ImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject (byte / int2 / uint2)

Image to be enhanced.

ImageIlluminateImageIlluminateImageIlluminateImageIlluminateimageIlluminate (output_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject * (byte / int2 / uint2)

“Illuminated” image.

MaskWidthMaskWidthMaskWidthMaskWidthmaskWidth (input_control)  extent.x HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Width of low pass mask.

Default value: 101

Suggested values: 31, 41, 51, 71, 101, 121, 151, 201

Typical range of values: 3 ≤ MaskWidth MaskWidth MaskWidth MaskWidth maskWidth ≤ 299

Minimum increment: 2

Recommended increment: 10

MaskHeightMaskHeightMaskHeightMaskHeightmaskHeight (input_control)  extent.y HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Height of low pass mask.

Default value: 101

Suggested values: 31, 41, 51, 71, 101, 121, 151, 201

Typical range of values: 3 ≤ MaskHeight MaskHeight MaskHeight MaskHeight maskHeight ≤ 299

Minimum increment: 2

Recommended increment: 10

FactorFactorFactorFactorfactor (input_control)  real HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Scales the “correction gray value” added to the original gray values.

Default value: 0.7

Suggested values: 0.3, 0.5, 0.7, 1.0, 1.5, 2.0, 3.0, 5.0

Typical range of values: 0.0 ≤ Factor Factor Factor Factor factor ≤ 5.0

Minimum increment: 0.01

Recommended increment: 0.2

Restriction: (0 < Factor) && (Factor < 5)

Example (HDevelop)

read_image(Image,'fabrik')
disp_image(Image,WindowHandle)
illuminate(Image,Better,40,40,0.55)
disp_image(Better,WindowHandle)

Example (C)

read_image(&Image,"fabrik");
disp_image(Image,WindowHandle);
illuminate(Image,&Better,40,40,0.55);
disp_image(Better,WindowHandle); 

Example (HDevelop)

read_image(Image,'fabrik')
disp_image(Image,WindowHandle)
illuminate(Image,Better,40,40,0.55)
disp_image(Better,WindowHandle)

Example (HDevelop)

read_image(Image,'fabrik')
disp_image(Image,WindowHandle)
illuminate(Image,Better,40,40,0.55)
disp_image(Better,WindowHandle)

Example (HDevelop)

read_image(Image,'fabrik')
disp_image(Image,WindowHandle)
illuminate(Image,Better,40,40,0.55)
disp_image(Better,WindowHandle)

Result

If the parameter values are correct the operator illuminateilluminateilluminateIlluminateIlluminate returns the value 2 (H_MSG_TRUE) The behavior in case of empty input (no input images available) is set via the operator set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>). If necessary an exception is raised.

Possible Successors

disp_imagedisp_imagedisp_imageDispImageDispImage

Alternatives

scale_image_maxscale_image_maxscale_image_maxScaleImageMaxScaleImageMax, equ_histo_imageequ_histo_imageequ_histo_imageEquHistoImageEquHistoImage, mean_imagemean_imagemean_imageMeanImageMeanImage, sub_imagesub_imagesub_imageSubImageSubImage

See also

emphasizeemphasizeemphasizeEmphasizeEmphasize, gray_histogray_histogray_histoGrayHistoGrayHisto

Module

Foundation


Table of Contents / Filters / Enhancement ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH