derivate_vector_field
— Falten eines Vektorfeldes mit Hilfe von Ableitungen der Gaußfunktion.
derivate_vector_field(VectorField : Result : Sigma, Component : )
derivate_vector_field
glättet die Komponenten eines Vektorfeldes
mit Hilfe von Ableitungen der Gaußfunktion und berechnet verschiedene daraus
abgeleitete Größen.
derivate_vector_field
akzeptiert nur Vektorfelder die den
semantischen Typ 'vector_field_relative' haben. Das Vektorfeld
VectorField
F(r,c)=(u(r,c),v(r,c)) ist wie in optical_flow_mg
definiert.
Dabei ist Sigma
der Parameter der Gaußfunktion
(d.h. es bestimmt die Glättung). Falls in Sigma
ein einzelner Wert
angegeben wird, ist die Glättung in Spalten- und Zeilenrichtung gleich. Falls
zwei Werte in Sigma
übergeben werden, wird mit dem ersten Wert die
Glättung in Spaltenrichtung und mit dem zweiten Wert die Glättung in
Zeilenrichtung festgelegt. Mögliche Werte für Component
sind:
Die Rotation des Vektorfeldes. Eine Anwendung von 'curl' ist es, optische Flussfelder zu analysieren. Bildlich gesprochen steht 'curl' für die Rotation, die ein kleines Boot hätte, falls das Vektorfeld eine Flüssigkeit wäre.
Die Divergenz des Vektorfeldes. Eine Anwendung von 'divergence' ist es, optische Flussfelder zu analysieren. Bildlich gesprochen steht 'divergence' für die Senken und Quellen die das Vektorfeld hätte, wenn es eine Flüssigkeit wäre.
Wenn derivate_vector_field
im Kontext von photometrischem Stereo
verwendet wird, bietet der Operator zwei weitere Parameter, die insbesondere für
die Verarbeitung des Gradientenfeldes, das von photometric_stereo
geliefert
wird, geeignet sind. In diesem Fall wird das Vektorfeld als Gradientenfeld der
Oberfläche interpretiert.
Im Folgenden wird das Eingabevektorfeld als angenommen, wobei die erste und zweite Komponente des Eingabegradientenfeldes das Gradientenfeld der Oberfläche f(r,c) ist. In den folgenden Formeln steht f_rc für die erste Ableitung in Spaltenrichtung der ersten Komponente des Gradientenfeldes.
Mittlere Krümmung H. Eine Anwendung von 'mean_curvature' ist es,
Vektorfelder zu verarbeiten, die von photometric_stereo
zurückgegeben werden. Nach dem Filtern können kleine Kratzer oder
Erhebungen leichter segmentiert werden.
Gaußkrümmung K. Eine Anwendung von 'gauss_curvature' ist es,
Vektorfelder zu verarbeiten, die von photometric_stereo
zurückgegeben werden. Nach dem Filtern können kleine Kratzer oder
Erhebungen leichter segmentiert werden. Wenn die Oberfläche, die dem
Vektorfeld zugrunde liegt, abwickelbar ist, ist die Gaußkrümmung gleich Null.
VectorField
(input_object) singlechannelimage(-array) →
object (vector_field)
Eingabevektorfeld.
Result
(output_object) singlechannelimage(-array) →
object (real)
Gefilterte Bilder.
Sigma
(input_control) real(-array) →
(real)
Sigma der Gaußfunktion.
Defaultwert: 1.0
Wertevorschläge: 0.7, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0
Typischer Wertebereich: 0.2
≤
Sigma
≤
50.0
Restriktion: 0.01 <= Sigma <= 50.0
Component
(input_control) string →
(string)
Zu berechnende Ableitung oder zu berechnendes Merkmal.
Defaultwert: 'mean_curvature'
Werteliste: 'curl' , 'divergence' , 'gauss_curvature' , 'mean_curvature'
Sind die Parameterwerte korrekt, dann liefert derivate_vector_field
den Wert 2 (H_MSG_TRUE).
Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich
mittels set_system('no_object_result',<Result>)
festlegen.
Gegebenenfalls wird eine Exception-Behandlung durchgeführt.
optical_flow_mg
,
photometric_stereo
Foundation