bit_lshiftbit_lshiftBitLshiftBitLshiftbit_lshift (Operator)

Name

bit_lshiftbit_lshiftBitLshiftBitLshiftbit_lshift — Links-Shift aller Pixel des Bildes.

Signatur

bit_lshift(Image : ImageLShift : Shift : )

Herror bit_lshift(const Hobject Image, Hobject* ImageLShift, const Hlong Shift)

Herror T_bit_lshift(const Hobject Image, Hobject* ImageLShift, const Htuple Shift)

void BitLshift(const HObject& Image, HObject* ImageLShift, const HTuple& Shift)

HImage HImage::BitLshift(Hlong Shift) const

static void HOperatorSet.BitLshift(HObject image, out HObject imageLShift, HTuple shift)

HImage HImage.BitLshift(int shift)

def bit_lshift(image: HObject, shift: int) -> HObject

Beschreibung

bit_lshiftbit_lshiftBitLshiftBitLshiftbit_lshift berechnet einen bitweisen „links-Shift“ aller Pixel des Eingabebildes. Die Semantik der „links-Shift“ Operation entspricht der von C („<<“) für die jeweiligen Typen (signed char, unsigned char, short, unsigned short, int/long). Tritt ein Überlauf auf, so wird das Ergebnis auf den maximalen Wert des jeweiligen Pixeltyps begrenzt. Es werden nur die Bildpunkte innerhalb des Definitionsbereiches des Bildes bearbeitet.

Es können mehrere Bilder pro Aufruf bearbeitet werden. Zu jedem Eingabebild wird ein Ausgabebild erzeugt.

Ausführungsinformationen

Parameter

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

Eingabebild(er).

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

Ergebnis(se) der Shift-Operation.

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

Shift-Wert.

Default: 3

Wertevorschläge: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 24, 30, 31

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

Beispiel (C)

read_image(&ByteImage,"fabrik");
convert_image_type(ByteImage,&Int2Image,"int2");
bit_lshift(Int2Image,&FullInt2Image,8);

Ergebnis

Sind die Bilder korrekt (Typ) und hat ShiftShiftShiftshiftshift eine gültigen Wert, dann liefert bit_lshiftbit_lshiftBitLshiftBitLshiftbit_lshift den Wert 2 ( H_MSG_TRUE) . Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels 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>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Alternativen

scale_imagescale_imageScaleImageScaleImagescale_image

Siehe auch

bit_rshiftbit_rshiftBitRshiftBitRshiftbit_rshift

Modul

Foundation