highpass_imagehighpass_imageHighpassImageHighpassImage (Operator)

Name

highpass_imagehighpass_imageHighpassImageHighpassImage — Verstärkung hochfrequenter Bildanteile.

Signatur

highpass_image(Image : Highpass : Width, Height : )

Herror highpass_image(const Hobject Image, Hobject* Highpass, const Hlong Width, const Hlong Height)

Herror T_highpass_image(const Hobject Image, Hobject* Highpass, const Htuple Width, const Htuple Height)

void HighpassImage(const HObject& Image, HObject* Highpass, const HTuple& Width, const HTuple& Height)

HImage HImage::HighpassImage(Hlong Width, Hlong Height) const

static void HOperatorSet.HighpassImage(HObject image, out HObject highpass, HTuple width, HTuple height)

HImage HImage.HighpassImage(int width, int height)

Beschreibung

highpass_imagehighpass_imageHighpassImageHighpassImageHighpassImage verstärkt hochfrequente Bildanteile durch eine lineare Filterung mit folgender Filtermatrix (am Beispiel 7x5): 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -35 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Die Anwendung der Prozedur entspricht der Anwendung des Mittelwertfilters (mean_imagemean_imageMeanImageMeanImageMeanImage), gefolgt von der Subtraktion des Originalgrauwerts vom Ergebnis. Zu der Differenz wird 128 addiert, d.h. der Nulldurchgang hat den Wert 128.

Der Filter hebt hochfrequente Anteile im Bild hervor (Kanten und Ecken). Die Trennfrequenz wird über die Größe (Height x Width) der Filtermatrix festgelegt: Je größer die Matrix ist, desto niedriger wird die Trennfrequenz.

Als Randbehandlungen werden die Grauwerte an den Objekträndern gespiegelt. Über- bzw. Unterlauf von Grauwerten wird beschnitten (255 bzw. 0).

Achtung

Werden für HeightHeightHeightHeightheight oder WidthWidthWidthWidthwidth gerade statt ungerade Werte übergeben, verwendet die Routine an ihrer Stelle die nächstgrößeren ungeraden Werte (damit ist der Schwerpunkt der Filtermaske immer eindeutig bestimmt).

highpass_imagehighpass_imageHighpassImageHighpassImageHighpassImage kann auf OpenCL Geräten ausgeführt werden. Dabei gelten dieselben Einschränkungen wie für mean_imagemean_imageMeanImageMeanImageMeanImage und sub_imagesub_imageSubImageSubImageSubImage.

Beachten Sie, dass Filteroperatoren eventuell unerwartete Resultate ausgeben, wenn ein Bild mit einer reduzierten Domäne als Input übergeben wird. Weitere Informationen können im Kapitel Filter gefunden werden.

Ausführungsinformationen

Parameter

ImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHobject (byte* / uint2*) *erlaubt für Compute Devices

Eingabebilder.

HighpassHighpassHighpassHighpasshighpass (output_object)  (multichannel-)image(-array) objectHImageHImageHobject * (byte / uint2)

Hochpass-gefilterte Ausgabebilder.

WidthWidthWidthWidthwidth (input_control)  extent.x HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite der Filtermaske.

Defaultwert: 9

Wertevorschläge: 3, 5, 7, 9, 11, 13, 17, 21, 29, 41, 51, 73, 101

Typischer Wertebereich: 3 ≤ Width Width Width Width width ≤ 501

Minimale Schrittweite: 2

Empfohlene Schrittweite: 2

Restriktion: Width >= 3 && odd(Width)

HeightHeightHeightHeightheight (input_control)  extent.y HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Höhe der Filtermaske.

Defaultwert: 9

Wertevorschläge: 3, 5, 7, 9, 11, 13, 17, 21, 29, 41, 51, 73, 101

Typischer Wertebereich: 3 ≤ Height Height Height Height height ≤ 501

Minimale Schrittweite: 2

Empfohlene Schrittweite: 2

Restriktion: Height >= 3 && odd(Height)

Beispiel (C)

highpass_image(Image,&Highpass,7,5);
threshold(Highpass,&Region,60.0,255.0);
skeleton(Region,&Skeleton);

Ergebnis

Sind die Parameterwerte korrekt, dann liefert highpass_imagehighpass_imageHighpassImageHighpassImageHighpassImage 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>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Nachfolger

thresholdthresholdThresholdThresholdThreshold, skeletonskeletonSkeletonSkeletonSkeleton

Alternativen

mean_imagemean_imageMeanImageMeanImageMeanImage, sub_imagesub_imageSubImageSubImageSubImage, convol_imageconvol_imageConvolImageConvolImageConvolImage, bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImage

Siehe auch

dyn_thresholddyn_thresholdDynThresholdDynThresholdDynThreshold

Modul

Foundation