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

bit_andbit_andbit_andBitAndBitAnd (Operator)

Name

bit_andbit_andbit_andBitAndBitAnd — Bit-by-bit AND of all pixels of the input images.

Signature

bit_and(Image1, Image2 : ImageAnd : : )

Herror bit_and(const Hobject Image1, const Hobject Image2, Hobject* ImageAnd)

Herror T_bit_and(const Hobject Image1, const Hobject Image2, Hobject* ImageAnd)

Herror bit_and(Hobject Image1, Hobject Image2, Hobject* ImageAnd)

HImage HImage::BitAnd(const HImage& Image2) const

HImageArray HImageArray::BitAnd(const HImageArray& Image2) const

void HOperatorSetX.BitAnd(
[in] IHUntypedObjectX* Image1, [in] IHUntypedObjectX* Image2, [out] IHUntypedObjectX*ImageAnd)

IHImageX* HImageX.BitAnd([in] IHImageX* Image2)

static void HOperatorSet.BitAnd(HObject image1, HObject image2, out HObject imageAnd)

HImage HImage.BitAnd(HImage image2)

Description

The operator bit_andbit_andbit_andBitAndBitAnd calculates the “and” of all pixels of the input images bit by bit. The semantics of the “and” operation corresponds to that of C for the respective types (signed char, unsigned char, short, unsigned short, int/long). The images must have the same size and pixel type. The pixels within the definition range of the image in the first parameter are processed.

Several images can be processed in one call. In this case both input parameters contain the same number of images which are then processed in pairs. An output image is generated for every pair.

Parallelization

Parameters

Image1Image1Image1Image1image1 (input_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Input image(s) 1.

Image2Image2Image2Image2image2 (input_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Input image(s) 2.

ImageAndImageAndImageAndImageAndimageAnd (output_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Result image(s) by AND-operation.

Example (HDevelop)

read_image(Image0,'monkey')
disp_image(Image0,WindowHandle)
read_image(Image1,'fabrik')
disp_image(Image1,WindowHandle)
bit_and(Image0,Image1,ImageBitA)
disp_image(ImageBitA,WindowHandle)

Example (C)

read_image(&Image0,"monkey");
disp_image(Image0,WindowHandle);
read_image(&Image1,"fabrik");
disp_image(Image1,WindowHandle);
bit_and(Image0,Image1,&ImageBitA);
disp_image(ImageBitA,WindowHandle);

Example (HDevelop)

read_image(Image0,'monkey')
disp_image(Image0,WindowHandle)
read_image(Image1,'fabrik')
disp_image(Image1,WindowHandle)
bit_and(Image0,Image1,ImageBitA)
disp_image(ImageBitA,WindowHandle)

Example (HDevelop)

read_image(Image0,'monkey')
disp_image(Image0,WindowHandle)
read_image(Image1,'fabrik')
disp_image(Image1,WindowHandle)
bit_and(Image0,Image1,ImageBitA)
disp_image(ImageBitA,WindowHandle)

Example (HDevelop)

read_image(Image0,'monkey')
disp_image(Image0,WindowHandle)
read_image(Image1,'fabrik')
disp_image(Image1,WindowHandle)
bit_and(Image0,Image1,ImageBitA)
disp_image(ImageBitA,WindowHandle)

Result

If the images are correct (type and number) the operator bit_andbit_andbit_andBitAndBitAnd 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.

Alternatives

bit_maskbit_maskbit_maskBitMaskBitMask, add_imageadd_imageadd_imageAddImageAddImage, max_imagemax_imagemax_imageMaxImageMaxImage

See also

bit_maskbit_maskbit_maskBitMaskBitMask, add_imageadd_imageadd_imageAddImageAddImage, max_imagemax_imagemax_imageMaxImageMaxImage

Module

Foundation


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