Posts by soad

    [...]So sieht mein Code grob aus, wenn in der if-Anweisung nix drinsteht ist alles wunderbar, aber wenn ich den Code mit befüllter If-Anweisung (wie in gepostetem Snippet) laufen lasse
    kommt inzwischen "No matching } in 'lathe', lathe found instead"...grad am durchtüfteln von dokus / dankbar für alle hints ;)


    Das Problem ist, dass du zwei lathe Objekte verschachtelst, d.h. du definierst das 2. Objekt innerhalb des 1., bevor das 1. geschlossen wurde.

    [...] Skaliere ich um 1.15 steht sie ein fettes Stück weiter oben. (Und nicht bisschen im Körper drin wie erwartet)


    Das wurde auch in der VO behandelt. Wenn das Objekt nicht(!) im Ursprung skaliert wird, wird es sowohl skaliert als auch verschoben.
    Z.B. eine Line der Länge 1 mit den Endpunkten (1,1) und (2,1) besitzt nach der Skalierung mit 0.5 die Koordinaten (0.5, 0.5) und (1, 0.5), sowie die Länge 0.5. Da also der Skalierungsfaktor <1 ist, wird das Objekt in Richtung des Ursprungs verschoben.

    ist das ergebnis dann nicht abhängig von der farbe dieses pixels?

    Ja.

    bzw ist der wert der dann jeweils rauskommt wircklich der wert des kernels? weil bei mir ergibt sich zwar das richtige muster, aber nicht die gewichtung 1 insgesamt.

    Ja, aber gewichtet mit dem Intensitätswert => Normieren!


    beim sigma weiß ich auch nicht so recht. die formel hab ich gesehen, weiß aber nicht was ich da wo einsetzen soll... : (


    Hierzu findest in diesem Thread schon einige Hinweise (siehe z.B: #71 | #139).

    Ich weiß jetzt nicht genau in welchem File das steht, aber im Command-Window musst du nichts ausgeben. Es ist eher ein Hinweis, dass die Funktion einen korrekten Rückgabewert besitzen soll.

    ich habe mir in matlab ein gradienten bild berechnet und versucht abzuspeichern, aber welches format muss ich verwenden damit ich tatsächlich ein 16bit bild erhalte?


    IMWRITE unterstützt 16-Bit sowohl für 'jpg', als auch 'png' und 'tiff'. Optional kannst du auch den 'Bitdepth' Parameter angeben.

    Danke für die Antwort.
    Tut mir leid, ich verstehe es aber immer noch nicht so ganz...
    Der Gaußfilter ist generell durch Sigma und Filterkern-Größe eindeutig bestimmt - richtig?!

    Richtig!


    Aber ich weiß noch immer nicht wie ich mit diesen Angaben dann auf den wirklichen Filterkern komme?! Ich kann in die Formel aus dem Skriptum Seite 44 einsetzen für x = y = 0 und mit
    1/(2*pi*simga^2) den mittleren Wert des Filterkerns ausrechen - richtig?!

    Richtig! Den konstanten Faktor 1/(2*pi*simga^2) kann man aufgrund der Normalisierung aber vernachlässigen, d.h. im Zentrum des Filterkerns steht vor(!) der Normalisierung e^0 = 1.

    Allerdings weiß ich nicht wie ich dann auf die anderen Werte im Kern komme bzw. ob der mittlere Wert dann überhaupt richtig ist? Weil die Formel erzeugt ja die "echte" Gaußverteilung und nicht die durch die Binomialverteilung approximierte... Wie komme ich also auf diese diskrete Gaußverteilung? Tut mir leid, aber hab grad die Binomialverteilung nicht mehr im Kopf bzw. auch wenn kann ich dann grad nicht den Zusammenhang zwischen "echter", durch die Formel im Skript gegebener Gaußverteilung und approximierter diskreter Binomial-Gaußverteilung herstellen... :/


    Oder um die Frage noch einmal ganz kurz zusammenzufassen:
    Wie komme ich bei gegebenem sigma und Filterkerngröße auf den wirklichen Filterkern?


    Danke!


    Ich denke, das (Verständnis-)Problem liegt darin, welchen Wert x bzw. y annehmen sollen. Also, 'einfach gesagt' geben x bzw. y die "Distanz" zum Filterzentrum in x- bzw. y-Richtung an, z.B für einen 3x3 Filterkerne wäre

    Code
    1. x = -1 0 1 y = -1 -1 -1
    2. -1 0 1 0 0 0
    3. -1 0 1 1 1 1


    Setzt du nun die entsprechenden Werte in die Formel ein und normalisierst anschließend, erhältst du den zugehörigen "echten" Gaußkernel :).