corner_responsecorner_responseCornerResponseCornerResponse (Operator)

Name

corner_responsecorner_responseCornerResponseCornerResponse — Suche von Ecken in Bildern.

Signatur

corner_response(Image : ImageCorner : Size, Weight : )

Herror corner_response(const Hobject Image, Hobject* ImageCorner, const Hlong Size, double Weight)

Herror T_corner_response(const Hobject Image, Hobject* ImageCorner, const Htuple Size, const Htuple Weight)

void CornerResponse(const HObject& Image, HObject* ImageCorner, const HTuple& Size, const HTuple& Weight)

HImage HImage::CornerResponse(Hlong Size, double Weight) const

static void HOperatorSet.CornerResponse(HObject image, out HObject imageCorner, HTuple size, HTuple weight)

HImage HImage.CornerResponse(int size, double weight)

Beschreibung

corner_responsecorner_responseCornerResponseCornerResponseCornerResponse ist ein Operator, um Grauwertecken in einem Bild zu extrahieren. Die Formel für die Berechnung lautet: wobei I das Eingabe- und R das Ergebnisbild der Filterung darstellt. Zur Glättung (W) wird gauss_imagegauss_imageGaussImageGaussImageGaussImage, zur Berechnung der Ableitung wird sobel_ampsobel_ampSobelAmpSobelAmpSobelAmp verwendet.

Die Corner-Response-Funktion ist invariant gegenüber Rotation. Um eine günstige Abhängigkeit der Funktion R(x,y) von den lokalen Gradienten zu erhalten, ist der Parameter WeightWeightWeightWeightweight auf 0.04 zu setzen. Hiermit ergeben sich nur an Grauwertecken positive Werte für R(x,y), während gerade Kanten negative Werte erhalten. Der Ausgabebildtyp ist identisch mit dem Eingabebildtyp. Bei Byte-Bildern als Eingabe werden also die negativen Werte auf 0 gesetzt. Falls dies nicht erwünscht ist, sollte das Bild mit convert_image_typeconvert_image_typeConvertImageTypeConvertImageTypeConvertImageType in ein Real- oder Int2-Bild konvertiert werden.

Achtung

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 / int2 / real)

Eingabebild.

ImageCornerImageCornerImageCornerImageCornerimageCorner (output_object)  multichannel-image(-array) objectHImageHImageHobject * (byte / uint2 / int2 / real)

Ergebnis der Filterung.

Parameteranzahl: ImageCorner == Image

SizeSizeSizeSizesize (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Gewünschte Filtergröße der Gaußmaske.

Defaultwert: 3

Wertevorschläge: 3, 5, 7, 9, 11

WeightWeightWeightWeightweight (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Gewichtung.

Defaultwert: 0.04

Typischer Wertebereich: 0.0 ≤ Weight Weight Weight Weight weight ≤ 0.3

Minimale Schrittweite: 0.001

Empfohlene Schrittweite: 0.01

Beispiel (C)

read_image(&Fabrik,"fabrik");
corner_response(Fabrik,&CornerResponse,3,0.04);
local_max(CornerResponse,&LocalMax);
disp_image(Fabrik,WindowHandle);
set_color(WindowHandle,"red");
disp_region(LocalMax,WindowHandle);

Nachfolger

local_maxlocal_maxLocalMaxLocalMaxLocalMax, thresholdthresholdThresholdThresholdThreshold

Siehe auch

gauss_filtergauss_filterGaussFilterGaussFilterGaussFilter, sobel_ampsobel_ampSobelAmpSobelAmpSobelAmp, convert_image_typeconvert_image_typeConvertImageTypeConvertImageTypeConvertImageType

Literatur

C.G. Harris, M.J. Stephens, „A combined corner and edge detector“'; Proc. of the 4th Alvey Vision Conference; August 1988; pp. 147-152.
H. Breit, „Bestimmung der Kameraeigenbewegung und Gewinnung von Tiefendaten aus monokularen Bildfolgen“; Diplomarbeit am Lehrstuhl für Nachrichtentechnik der TU München; 30. September 1990.

Modul

Foundation