Professional Documents
Culture Documents
gdzie symbole L1(m,n) i L2(m,n) oznaczają wartość poziomu jasności (poziomu szarości
lub intensywności barwy) punktu (piksela) o współrzędnych m i n odpowiednio obrazu
źródłowego i przefiltrowanego.
W sytuacji, gdy maska filtra jest symetryczna względem swych obydwu głównych
przekątnych, liniową filtrację kontekstową obrazu można wykonać posługując się filtrem
o skończonej odpowiedzi impulsowej (SOI, ang. FIR – Finite Impulse Response), co
można zapisać formalnie w sposób następujący:
K K
L2 ( m, n ) = ∑ ∑
i =− K j =− K
L1 ( m + i, n + j ) ⋅ w( K + i + 1, K + j + 1)
L1 =
w=
L2(3,2) = 8·(-1) + 7·(-1) + 10·(-1) + 14·(-1) + 13·8 + 8·(-1) + 1·(-1) + 12·(-1) + 5·(-1) = 39
Z filtracją nieliniową mamy do czynienia wtedy, kiedy sumowanie zostaje zastąpione
nieliniowym operatorem Ow działającym na cząstkowych wynikach uzyskanych w
rezultacie mnożeń elementów maski przez przykrywane nimi piksele:
L2 ( m, n ) = Ow [ L1 ( m + i, n + j ) ⋅ w( K + i + 1, K + j + 1)]
L3 _ high − L3 _ low
L3 ( m, n ) = ⋅ [ L2 ( m, n ) − L2 _ min] + L3 _ low
L2 _ max − L2 _ min
gdzie:
– symbole L2(m,n) i L3(m,n) oznaczają wartość poziomu jasności punktu (piksela) o
współrzędnych m i n odpowiednio obrazu przefiltrowanego i wynikowego,
– oznaczenia L2_min i L2_max symbolizują odpowiednio minimalną i maksymalną
wartość poziomu jasności obrazu przefiltrowanego,
– symbole L3_low i L3_high oznaczają odpowiednio najniższą i najwyższą dopuszczalną
wartość poziomu jasności obrazu wynikowego.
Z powodu kontekstowości wykonywanych operacji, pojawia się problem filtracji
„brzegu” obrazu. Na „brzegu” obrazu brakuje wartości niektórych argumentów funkcji,
będącej matematycznym zapisem reguły działania filtra.
¾ valid;
¾ same;
¾ full.
¾ valid – wartość funkcji jest wyznaczana tylko
dla tych punktów (pikseli) obrazu, dla których
całe ich otoczenie, zdefiniowane maską filtra,
zawiera się w obrazie;
¾ same – wartość funkcji jest wyznaczana dla
wszystkich punktów (pikseli) obrazu, a
brakujące wartości argumentów funkcji są
uzupełniane zerami (wymiary obrazu
źródłowego i wynikowego są takie same);
¾ full – wartość funkcji jest wyznaczana wtedy,
gdy choć jeden element maski filtra zawiera
się w obrazie, a brakujące wartości
argumentów funkcji są uzupełniane zerami.
Filtry liniowe
1 i2 + j2
G (i , j ) = ⋅ exp[ − ]
2 ⋅π ⋅σ 2 2 ⋅σ 2
gdzie:
σ – odchylenie standardowe;
i, j – współrzędne punktu (piksela) maski (i, j = –K/2, ... , 0, ... , K/2);
(K+1)×(K+1) – rozmiar maski filtra.
Obraz wyostrzony można uzyskać sumując z odpowiednią wagą obraz źródłowy i obraz
przefiltrowany filtrem górnoprzepustowym. Maskę takiego filtra tworzy się składając ze
sobą maskę neutralną i maskę filtra górnoprzepustowego. Z uwagi na pożądane
bezkierunkowe własności filtra górnoprzepustowego zazwyczaj stosuje się w tym
przypadku filtry laplasjanowe. Przykładowe maski filtrów wyostrzających mają
następującą postać:
Filtracja obrazu filtrem gradientowym
Filtracja obrazu filtrem laplasjanowym (1)
Filtracja obrazu filtrem laplasjanowym (2)
Filtracja obrazu filtrem wyostrzającym (1)
Filtracja obrazu filtrem wyostrzającym (2)
Filtry nieliniowe
¾ filtry medianowe;
¾ filtry ekstremalne;
¾ filtry kombinowane wykrywające krawędzie.
Filtry medianowe
Filtry medianowe to takie filtry, w których wartość przefiltrowanego punktu (piksela) jest
medianą z pierwotnej wartości piksela i wartości pikseli z jego otoczenia.
Mediana to w uproszczeniu wartość środkowa w uporządkowanym rosnąco ciągu wartości
pikseli całego otoczenia przetwarzanego piksela.
Filtracja medianowa nie wprowadza do obrazu nowych wartości pikseli, obraz po
wykonaniu tej filtracji nie wymaga zatem normalizacji.
Filtr medianowy skutecznie usuwa zakłócenia, nie powodując przy tym rozmazywania
obrazu (na ogół nie pogarsza ostrości krawędzi obecnych na obrazie).
Filtry ekstremalne
Na podobnej zasadzie co filtry medianowe działają dwa filtry ekstremalne: minimalny i
maksymalny.
W tym przypadku wartość przefiltrowanego punktu (piksela) jest wartością ekstremalną
(odpowiednio minimalną i maksymalną) ze zbioru zawierającego pierwotną wartość
piksela i wartości pikseli z jego otoczenia.
Zastosowanie filtra minimalnego powoduje zmniejszenie, a zastosowanie filtra
maksymalnego zwiększenie średniej jasności obrazu.
Filtracja ekstremalna nie wprowadza do obrazu nowych wartości pikseli, obraz po
wykonaniu tej filtracji nie wymaga zatem normalizacji.
Filtracja obrazu filtrem medianowym i uśredniającym (1)
mediana
Filtracja obrazu filtrem medianowym i uśredniającym (2)
mediana
Filtracja obrazu filtrem medianowym
o coraz większym rozmiarze maski filtra
minimalny
maksymalny
Filtry kombinowane wykrywające krawędzie
Idea filtrów kombinowanych polega na oddzielnym zastosowaniu dwóch filtrów
gradientowych w prostopadłych do siebie kierunkach, a następnie na dokonaniu
nieliniowej kombinacji wyników tych filtracji.
Dzięki nieliniowej kombinacji rezultatów takich liniowych przekształceń obrazu tworzy
się obraz wynikowy o wyjątkowo dobrze podkreślonych konturach, niezależnie od
kierunku ich przebiegu. Filtry kombinowane potrafią lokalizować krawędzie dokładniej i
w sposób bardziej pewny niż filtry laplasjanowe.
Filtry kombinowane są zazwyczaj budowane na bazie filtrów Prewitta lub Sobela.
Typowym sposobem łączenia (kombinowania) wyników filtracji gradientowej G1 i G2 jest
formuła euklidesowa:
G (m, n ) = (G1 (m, n )) 2 + (G2 (m, n )) 2
Końcowym etapem wykrywania krawędzi jest wykonanie cieniowania krawędzi (ang. edge
thinning). Najprostszym sposobem cieniowania krawędzi jest progowanie z minimalnym
progiem. Przyjmujemy wtedy, że krawędź występuje jeżeli wartość gradientu przewyższa
zadany próg, co odpowiada eliminacji z finalnej mapy krawędzi “słabych” elementów
krawędziowych.
Filtracja obrazu filtrem kombinowanym
prog = 0.1;
Filtr Canny'ego (1)
sigma = 1;
progi = [0.16 0.40];
sigma = 4;
progi = [0.08 0.2];