Krzyż Robertsa

Z Wikipedii, wolnej encyklopedii
Zdjęcie odrzutowca przed modyfikacjami.
Obrazek po modyfikacjach w oparciu o Krzyż Robertsa przy użyciu programu Xara X.

Krzyż Robertsa (filtr Robertsa) – jeden z najwcześniejszych algorytmów wykrywania krawędzi. Algorytm został zaproponowany przez Lawrence'a G. Robertsa w roku 1963.

Zasada działania polega na obliczeniu różnic luminancji pikseli położonych koło siebie po przekątnych, a następnie dodaniu ich wartości bezwzględnych. Obliczenie różnic można zapisać jako splot macierzy obrazu z każdą z przedstawionych poniżej macierzy o wymiarach 2x2.

Wynikiem tych operacji są dwie macierze przedstawiające pochodne kierunkowe obliczone dla kierunków 135° oraz 45°. Wynikowy obraz krawędzi powstaje po obliczeniu różnic modułów z odpowiadających sobie elementów macierzy. W oryginalnej pracy Robertsa jest zaprezentowany inny bardziej złożony rachunkowo sposób obliczania "stromości" krawędzi. Obliczenie polega na obliczeniu pierwiastka z sumy kwadratów elementów obu macierzy.

Wydaje się, że najprościej przebieg obliczeń dla każdego piksela obrazu można zapisać w następujący sposób:

tmp1 = input_image(x, y) – input_image(x+1, y+1)
tmp2 = input_image(x+1, y) – input_image(x, y+1)
output_image(x, y) = absolute_value(tmp1) + absolute_value(tmp2)

Krzyż Robertsa jest cały czas w użyciu ze względu na szybkość obliczeń. Przy porównaniu z późniejszymi algorytmami do wykrywania krawędzi (Prewitt, Sobel, Scharr, Canny) wykazuje mniejszą odporność na szumy, daje jednak węższe krawędzie.

Linki zewnętrzne[edytuj | edytuj kod]