KlassenKlassenKlassenKlassen | | | | Operatoren

topographic_sketchtopographic_sketchTopographicSketchtopographic_sketchTopographicSketchTopographicSketch (Operator)

Name

topographic_sketchtopographic_sketchTopographicSketchtopographic_sketchTopographicSketchTopographicSketch — Topographic primal sketch eines Grauwertbildes.

Signatur

topographic_sketch(Image : Sketch : : )

Herror topographic_sketch(const Hobject Image, Hobject* Sketch)

Herror T_topographic_sketch(const Hobject Image, Hobject* Sketch)

Herror topographic_sketch(Hobject Image, Hobject* Sketch)

HImage HImage::TopographicSketch() const

HImageArray HImageArray::TopographicSketch() const

void TopographicSketch(const HObject& Image, HObject* Sketch)

HImage HImage::TopographicSketch() const

void HOperatorSetX.TopographicSketch(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*Sketch)

IHImageX* HImageX.TopographicSketch()

static void HOperatorSet.TopographicSketch(HObject image, out HObject sketch)

HImage HImage.TopographicSketch()

Beschreibung

Die Funktion topographic_sketchtopographic_sketchTopographicSketchtopographic_sketchTopographicSketchTopographicSketch berechnet aus dem Grauwertbild ImageImageImageImageImageimage den „topographic primal sketch“. Dabei wird die Umgebung der einzelnen Bildpunkte mit einem bikubischen Polynom approximiert („facet model“). Aus diesen Daten werden die ersten und zweiten Richtungsableitungen an der Pixelposition berechnet, und daraus eine Einteilung des Pixels in eine von 11 Klassen hergeleitet. Die Klassen werden im Ausgabebild SketchSketchSketchSketchSketchsketch als Zahlen zwischen 1 und 11 zurückgegeben. Die einzelnen Klassen lauten wie folgt:

Peak 1
Pit 2
Ridge 3
Ravine 4
Saddle 5
Flat 6
Hillside Slope 7
Hillside Convex 8
Hillside Concave 9
Hillside Saddle 10
Hillside Inflection 11

Um die einzelnen Klassen als Regionen zu erhalten ist auf dem Labelbild Sketch noch eine Schwellenwertoperation mit entsprechendem Schwellenwert auszuführen.

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.

Parallelisierung

Parameter

ImageImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (byte)

Das Bild, für das der topographic primal sketch berechnet werden soll.

SketchSketchSketchSketchSketchsketch (output_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject * (byte)

Das Labelbild mit der Klasseneinteilung.

Beispiel (HDevelop)

* To extract the Ridges from a Image
read_image(Image,'sinus')
topographic_sketch(Image,Sketch)
threshold(Sketch,Ridges,3,3)

Beispiel (C)

/* To extract the Ridges from a Image */
read_image(&Image,"sinus");
topographic_sketch(Image,&Sketch);
threshold(Sketch,&Ridges,3.0,3.0);

Beispiel (HDevelop)

* To extract the Ridges from a Image
read_image(Image,'sinus')
topographic_sketch(Image,Sketch)
threshold(Sketch,Ridges,3,3)

Beispiel (HDevelop)

* To extract the Ridges from a Image
read_image(Image,'sinus')
topographic_sketch(Image,Sketch)
threshold(Sketch,Ridges,3,3)

Beispiel (HDevelop)

* To extract the Ridges from a Image
read_image(Image,'sinus')
topographic_sketch(Image,Sketch)
threshold(Sketch,Ridges,3,3)

Beispiel (HDevelop)

* To extract the Ridges from a Image
read_image(Image,'sinus')
topographic_sketch(Image,Sketch)
threshold(Sketch,Ridges,3,3)

Komplexität

Sei n die Anzahl der Bildpunkte im Eingabebild. Dann werden O(n) Operationen benötigt.

Ergebnis

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

Nachfolger

thresholdthresholdThresholdthresholdThresholdThreshold

Literatur

R. Haralick, L. Shapiro: „Computer and Robot Vision, Volume I“; Reading, Massachusetts, Addison-Wesley; 1992; Kapitel 8.13.

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren