HALCON Reference Manual / Filter / Bit Operators

bit_slice (Operator)

Name

bit_slice — Extract a bit from the pixels.

Synopsis

bit_slice(Image : ImageSlice : Bit : )

Description

The operator bit_slice extracts a bit level from the input image. The semantics of the “and” operation corresponds to that of C for the respective types (signed char, unsigned char, short, unsigned 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.

Parameters

Image (input_object) (multichannel-)image(-array) object (byte / direction / cyclic / int1 / int2 / uint2 / int4)
Input image(s).

ImageSlice (output_object) (multichannel-)image(-array) object (byte / direction / cyclic / int1 / int2 / uint2 / int4)
Result image(s) by extraction.

Bit (input_control) integer (integer)
Bit to be selected.
Default value: 8
Suggested values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 24, 30, 32
Typical range of values: 1 ≤ Bit ≤ 32
Minimum increment: 1
Recommended increment: 1
Restriction: (Bit >= 1) && (Bit <= 32)

Example (Syntax: C)

read_image(&ByteImage,"fabrik");
for (bit=1; bit<=8; i++)
{
  bit_slice(ByteImage,&Slice,bit);
  threshold(Slice,&Region,0,255);
  disp_region(Region,WindowHandle);
  clear(bit_slice); clear(Slice); clear(Region);
}

Result

If the images are correct (type) and Bit has a valid value, the operator bit_slice 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>:) If necessary an exception is raised.

Parallelization Information

bit_slice is reentrant and automatically parallelized (on tuple level, channel level, domain level).

Possible Successors

threshold, bit_or

Alternatives

bit_mask

See also

bit_and, bit_lshift

Module

Foundation


HALCON Reference Manual / Filter / Bit Operators
Version 9.0.2 Copyright © 1996-2010 MVTec Software GmbH