Operator Reference

bit_maskbit_maskBitMaskBitMaskbit_mask (Operator)

bit_maskbit_maskBitMaskBitMaskbit_mask — Logical “AND” of each pixel using a bit mask.

Signature

bit_mask(Image : ImageMask : BitMask : )

Herror bit_mask(const Hobject Image, Hobject* ImageMask, const Hlong BitMask)

Herror T_bit_mask(const Hobject Image, Hobject* ImageMask, const Htuple BitMask)

void BitMask(const HObject& Image, HObject* ImageMask, const HTuple& BitMask)

HImage HImage::BitMask(Hlong BitMask) const

static void HOperatorSet.BitMask(HObject image, out HObject imageMask, HTuple bitMask)

HImage HImage.BitMask(int bitMask)

def bit_mask(image: HObject, bit_mask: int) -> HObject

Description

The operator bit_maskbit_maskBitMaskBitMaskbit_mask carries out an “and” operation of each pixel with a fixed mask. The semantics of the “and” operation corresponds to that of C for the respective types (signed char, unsigned char, unsigned short, short, int/long). Only the pixels within the definition range of the image are processed.

Several images can be processed in one call. An output image is generated for every input image.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.
  • Automatically parallelized on channel level.
  • Automatically parallelized on domain level.

Parameters

ImageImageImageimageimage (input_object)  (multichannel-)image(-array) objectHImageHObjectHObjectHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Input image(s).

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

Result image(s) by combination with mask.

BitMaskBitMaskBitMaskbitMaskbit_mask (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Bit field

Default: 128

Suggested values: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096

Result

If the images are correct (type) the operator bit_maskbit_maskBitMaskBitMaskbit_mask 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>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>) If necessary an exception is raised.

Possible Successors

thresholdthresholdThresholdThresholdthreshold, bit_orbit_orBitOrBitOrbit_or

Alternatives

bit_slicebit_sliceBitSliceBitSlicebit_slice

See also

bit_andbit_andBitAndBitAndbit_and, bit_lshiftbit_lshiftBitLshiftBitLshiftbit_lshift

Module

Foundation