nonmax_suppression_dirnonmax_suppression_dirNonmaxSuppressionDirNonmaxSuppressionDirnonmax_suppression_dir (Operator)

Name

nonmax_suppression_dirnonmax_suppression_dirNonmaxSuppressionDirNonmaxSuppressionDirnonmax_suppression_dir — Unterdrücken von nicht maximalen Punkten auf einer Kante unter Verwendung eines Richtungsbildes.

Signatur

nonmax_suppression_dir(ImgAmp, ImgDir : ImageResult : Mode : )

Herror nonmax_suppression_dir(const Hobject ImgAmp, const Hobject ImgDir, Hobject* ImageResult, const char* Mode)

Herror T_nonmax_suppression_dir(const Hobject ImgAmp, const Hobject ImgDir, Hobject* ImageResult, const Htuple Mode)

void NonmaxSuppressionDir(const HObject& ImgAmp, const HObject& ImgDir, HObject* ImageResult, const HTuple& Mode)

HImage HImage::NonmaxSuppressionDir(const HImage& ImgDir, const HString& Mode) const

HImage HImage::NonmaxSuppressionDir(const HImage& ImgDir, const char* Mode) const

HImage HImage::NonmaxSuppressionDir(const HImage& ImgDir, const wchar_t* Mode) const   (Nur Windows)

static void HOperatorSet.NonmaxSuppressionDir(HObject imgAmp, HObject imgDir, out HObject imageResult, HTuple mode)

HImage HImage.NonmaxSuppressionDir(HImage imgDir, string mode)

def nonmax_suppression_dir(img_amp: HObject, img_dir: HObject, mode: str) -> HObject

Beschreibung

nonmax_suppression_dirnonmax_suppression_dirNonmaxSuppressionDirNonmaxSuppressionDirNonmaxSuppressionDirnonmax_suppression_dir unterdrückt Punkte aus den Bildregionen von ImgAmpImgAmpImgAmpImgAmpimgAmpimg_amp, deren Grauwerte keine (gerichteten) Maxima sind. ImgDirImgDirImgDirImgDirimgDirimg_dir ist dabei ein Richtungsbild (Einheit: 2 Grad, d.h. 50 Grad sind z.B. mit Wert 25 codiert), wie es z.B. von edges_imageedges_imageEdgesImageEdgesImageEdgesImageedges_image geliefert wird. Es stehen zwei Modi zur Verfügung:

'nms'"nms""nms""nms""nms""nms"

Für jeden Bildpunkt wird getestet, ob sein Grauwert senkrecht zu seiner Richtung maximal ist. Im Modus 'nms'"nms""nms""nms""nms""nms" werden dazu nur die beiden der Senkrechten am nächsten liegenden Nachbarpunkte für die Entscheidung herangezogen. Ist der Grauwert eines dieser Nachbarn echt größer als der Grauwert des zu testenden Punktes, wird dieser unterdrückt (d.h. aus der Region entfernt, die Grauwerte bleiben unverändert).

'inms'"inms""inms""inms""inms""inms"

Wie 'nms'"nms""nms""nms""nms""nms", die beiden benötigten Vergleichswerte werden jedoch durch Interpolation der Grauwerte von vier Nachbarpunkten gewonnen.

Ausführungsinformationen

Parameter

ImgAmpImgAmpImgAmpImgAmpimgAmpimg_amp (input_object)  singlechannelimage(-array) objectHImageHObjectHImageHobject (byte / uint2 / real)

Amplitudenbild.

ImgDirImgDirImgDirImgDirimgDirimg_dir (input_object)  singlechannelimage(-array) objectHImageHObjectHImageHobject (direction)

Richtungsbild.

ImageResultImageResultImageResultImageResultimageResultimage_result (output_object)  image(-array) objectHImageHObjectHImageHobject * (byte / uint2 / real)

Bild mit verdünnten Kantenregionen.

ModeModeModeModemodemode (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Non-Maximum Suppression, interpolierende NMS.

Defaultwert: 'nms' "nms" "nms" "nms" "nms" "nms"

Werteliste: 'inms'"inms""inms""inms""inms""inms", 'nms'"nms""nms""nms""nms""nms"

Ergebnis

nonmax_suppression_dirnonmax_suppression_dirNonmaxSuppressionDirNonmaxSuppressionDirNonmaxSuppressionDirnonmax_suppression_dir liefert den Wert 2 (H_MSG_TRUE), falls die Parameter korrekt sind. Für das Verhalten bzgl. der Eingabebilder und Ausgaberegionen sind die Flags 'no_object_result'"no_object_result""no_object_result""no_object_result""no_object_result""no_object_result", 'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result""empty_region_result" und 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region""store_empty_region" einstellbar (siehe set_systemset_systemSetSystemSetSystemSetSystemset_system). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

edges_imageedges_imageEdgesImageEdgesImageEdgesImageedges_image, sobel_dirsobel_dirSobelDirSobelDirSobelDirsobel_dir, frei_dirfrei_dirFreiDirFreiDirFreiDirfrei_dir

Nachfolger

thresholdthresholdThresholdThresholdThresholdthreshold, hysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThresholdHysteresisThresholdhysteresis_threshold

Alternativen

nonmax_suppression_ampnonmax_suppression_ampNonmaxSuppressionAmpNonmaxSuppressionAmpNonmaxSuppressionAmpnonmax_suppression_amp

Siehe auch

skeletonskeletonSkeletonSkeletonSkeletonskeleton

Literatur

S.Lanser: „Detektion von Stufenkanten mittels rekursiver Filter nach Deriche“; Diplomarbeit; Technische Universität München, Institut für Informatik, Lehrstuhl Prof. Radig; 1991.
J.Canny: „Finding Edges and Lines in Images“; Report, AI-TR-720; M.I.T. Artificial Intelligence Lab., Cambridge; 1983.

Modul

Foundation