-         

Ergebnis 1 bis 2 von 2

Thema: Canny Algorithmus

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    25.08.2006
    Beiträge
    13

    Canny Algorithmus

    Anzeige

    Hi!

    Ich fasse jetzt mal meine logik über den canny algorithmus zusammen:

    Ich habe ein bild in form einer matrix.
    Nun wird das bild mit gaussian blur erstmal unscharf gemacht.
    Dann wird der horizontale sowie vertikale sobel angewendet.
    Gradient und richtung in grad ausrechnen.
    Bei richtung in grad sind einige fragen offen.

    Die formel ist ja: Richtung = arctan(Gy/Gx).
    Wie kommen einige auf ergebnisse von -+180 grad?

    Wenn Gx und Gy 0 sind, dann soll die richtung 0 grad sein.
    Wenn Gx = 0 und Gy ungleich 0 , dann ist die richtung 90 grad.
    In den anderen fällen wird arctan(Gy/Gx) gerechnet.

    Da ein Pixel jedoch nur 8 Nachbarn hat, ergeben sich insgesamt lediglich 4 mögliche Kantenanstiege: 0°, 45°, 90° und 135°.
    Wieso nur 4?
    Außerdem kann arctan maximal 90 grad werden.

    Wie ist das weitere vorgehen wenn ich die winkel haben würde?
    Ich würde doch nun die gradientenmatrix pixel für pixel durchgehen und prüfen ob in der ausgerechneten richtung der nachbar größer ist und wenn ja wird der pixel auf 0 gesetzt.
    Dann nur noch schwellwerte wählen.

    Ich wäre dankbar, wenn jemand noch etwas genaueres dazu sagen könnte, gezielt zu den winkeln.

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2005
    Alter
    29
    Beiträge
    830
    woher soll das gute Programm den wissen in welche Richtung die Kante verläuft??(liegt da dran dass es keine gibt) bleiben nur waagrecht, senkrecht und 2*diagonal (Steigung Gefälle) der arctan kann ohne weiteres über 90°steigen, wenn du die Vorzeichen der Katheten im Koordinatensystem betrachtest(müssen parallel zur Division betrachtet werden).
    (+X/+Y=rechtes oberes Viertel; X-/Y+=l o V; X-/Y-=l u V; X+/Y-r u V) X+> und Y+^
    um die Kante zu identifizieren musst du wie von dir beschrieben die richtung weiter verfolgen und genauso weiter vergleichen(vergiss aber nicht die zweite Richtung, sonst bekommst du nur einen Teil der Kante)
    hth clemens
    Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •