Zum Inhalt springen

Roberts-Operator

aus Wikipedia, der freien Enzyklopädie

Der Roberts-Operator ist ein einfacher Kantendetektions-Algorithmus der Bildverarbeitung und einer der ältesten Operatoren. Der Operator wurde 1963 von Lawrence Roberts vorgestellt<ref><templatestyles src="Webarchiv/styles.css" />{{#if:20070329000502

      | {{#ifeq: 20070329000502 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20070329000502}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2024-04-27 22:33:44 InternetArchiveBot | 2024-04-27 22:33:44 InternetArchiveBot |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20070329000502}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2024-04-27 22:33:44 InternetArchiveBot | 2024-04-27 22:33:44 InternetArchiveBot |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2024-04-27 22:33:44 InternetArchiveBot | 2024-04-27 22:33:44 InternetArchiveBot |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }} (Memento{{#if: {{#if: 2024-04-27 22:33:44 InternetArchiveBot | 2024-04-27 22:33:44 InternetArchiveBot |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: Machine Perception Of Three-Dimensional Solids | {{#invoke:WLink|getEscapedTitle|Machine Perception Of Three-Dimensional Solids}} | {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html}} }}  
                 }}}}}}}}{{#if:2024-04-27 22:33:44 InternetArchiveBot
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20070329000502|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.packet.cc/files/mach-per-3D-solids.html}}
    || {{#if:  || }}
  }}{{#if: Machine Perception Of Three-Dimensional Solids
    | {{#if: {{#invoke:WLink|isBracketedLink|Machine Perception Of Three-Dimensional Solids}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.packet.cc/files/mach-per-3D-solids.html%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.packet.cc/files/mach-per-3D-solids.html%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.packet.cc/files/mach-per-3D-solids.html }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }}</ref>. Hier wird die Differenz über Kreuz liegender Pixel berechnet. Deswegen wird dieser Operator auch als Roberts-Cross-Operator bezeichnet. Das Kantenbild ist schnell und einfach zu berechnen, jedoch ist der Operator für verrauschte Bilder schlecht geeignet. Er produziert zudem schmalere Kanten als vergleichbare Kantendetektoren.

Der Operator nutzt als Faltungsmatrix eine 2×2-Matrix. Multipliziert man beide jeweils mit −1, so erhält man ebenfalls ein Paar Roberts-Filtermatrizen.

<math>

\mathbf{b'_x} = \mathbf{h_1} * \mathbf{b} = \begin{bmatrix} +1 & 0 \\ 0 & -1 \end{bmatrix} * \mathbf{b} </math>

<math>

\mathbf{b'_y} = \mathbf{h_2} * \mathbf{b} = \begin{bmatrix} 0 & +1 \\ -1 & 0 \end{bmatrix} * \mathbf{b} </math>

Mit <math>b</math> als das Eingangsbild.

Die Berechnung der Kantenstärke kann dann mittels <math> b' = |b_x'|+|b_y'| \!\,</math> durchgeführt werden.

Einfacher ausgedrückt, kann der Gradient für jedes Pixel in <math>b' \!\,</math> wie folgt berechnet werden:

<math> b'(x,y) = |b(x,y) - b(x+1,y+1)| + |b(x+1,y) - b(x,y+1)| \!\,</math>

Beispielbilder

Einzelnachweise

<references />

Literatur

  • {{#invoke:Vorlage:Literatur|f}}