Sobel Operator in 1D

Gast #4639138
Lesenswert?
• ▲
▼
Für 2D ist der Sobel Operator die bekannte 3x3 Matrix. Was ich mich nun 
frage, da ich nur mit 1D Signalen zu tun habe: Kann man den Sobel 
Operator auch auf ein 1D Signal anwenden und wenn ja, wie sieht der 
Sobel Operator dann für 1D Signale genau aus?

Einfach die 3x3 Matrix zeilenweise anwenden oder übersehe ich da etwas? 
Kann jemand vielleicht ein Beispiel geben?
Gast #4639295
Lesenswert?
• ▲
▼
Kantenerkenner schrieb:
> Das wäre die Vorschrift für eine Kante im Mittelpunkt M und den
> Nachbarn
> L sowie R:
>
> (1 0 -1) also praktisch L-R und das gfs betragsmässig interpretiert.

Ich versuche mal ein Beispiel. Ist folgendes korrekt?

x = [0 0 0 1 1 1]

(1*0)+(0*0)+(-1*0) = 0
(1*0)+(0*0)+(-1*1) = -1
(1*0)+(0*1)+(-1*1) = -1
(1*1)+(0*1)+(-1*1) = 0

y = [0 -1 -1 0]

Nun hat der Sobel Operator aber die Faktoren (+/-) 1,2,1. Ich meine mal 
gelesen zu haben, dass dies eine zusätzliche Glättung bewirkt. Wäre das 
dann einfach (1 2 1 0 -1 -2 -1)?
#4639323
Lesenswert?
• ▲
▼
Homer schrieb:
> Ich versuche mal ein Beispiel. Ist folgendes korrekt?
>
> x = [0 0 0 1 1 1]
>
> (1*0)+(0*0)+(-1*0) = 0
> (1*0)+(0*0)+(-1*1) = -1
> (1*0)+(0*1)+(-1*1) = -1
> (1*1)+(0*1)+(-1*1) = 0
>
> y = [0 -1 -1 0]

Wenn ich das noch halbwegs richtig im Kopf habe:

Führt man eine lineare Faltung eines Signalvektors mit M Elementen mit 
einem solchen mit N Elementen durch, dann hat das Ergebnis M + N - 1 
Elemente.

Hier wären das demnach: 6 + 3 - 1 = 8

da x hier sechs Elemente enthält und das anzuwendende Filter drei. 
Demnach sollte der Vektor y acht Elemente enthalten. Oder aber ich irre 
mich - die Vorlesung ist schon verdammt lange her ;-)
Gast #4639686
Lesenswert?
• ▲
▼
Er hat die Ränder weggelassen. Rauskommen würde:

U U 0 -1 -1 0 U U

weil ja für die Randwerte keine Eingangswerte zur Verfügung stehen.

Man kann die Detaktion auf über ein Pixel machen, also 1 -1 0 Dann ist 
das Ergebnis aber versetzt.
Gast #4640266
Lesenswert?
• ▲
▼
Einige Paper und Arbeiten der Erfinder sind frei verfügbar und geben 
schöne Einblicke, z.B.:

* J. Canny. „A Computational Approach to Edge Detection“

* Hanno Scharr. „Optimale Operatoren in der Digitalen Bildverarbeitung“
Persönliche Seite #4643687
Lesenswert?
• ▲
▼
Sobel und andere sind SO! nur in einem absolut bereinigten und idealen 
Bild sicher anwendbar. Für die meisten praktischen Fälle muss ein Bild 
(und auch das hier geforderte eindimensionale Signal) meistens 
vorbereitet werden oder Korrekturen und z.B. Rauschfilterung müssen im 
Filter implementiert sein. Dazu muss man den Vektor entsprechend 
aufziehen und die geforderten Frequenzen einbeschreiben.
Gast #4643691
Lesenswert?
• ▲
▼
Jürgen S. schrieb:
> Sobel und andere sind SO! nur in einem absolut bereinigten und
> idealen
> Bild sicher anwendbar. Für die meisten praktischen Fälle muss ein Bild
> (und auch das hier geforderte eindimensionale Signal) meistens
> vorbereitet werden oder Korrekturen und z.B. Rauschfilterung müssen im
> Filter implementiert sein.

Das ist klar, also z.B. Canny. Wollte nur die reine Kantenerkennung auf 
1D übertragen verstehen, nicht das Canny "Komplettpaket" :-)

@rme
Danke für die Tipps!

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.