AUTOMATYKA 2005 Tom 9 Zeszyt 3 Sebastian Stoliñski *, Szymon Grabowski * Eksperymentalne porównanie filtrów medianowych do usuwania szumów impulsowych z obrazów barwnych. Wprowadzenie Szum impulsowy to zak³ócenia pojedynczych próbek sygna³u (np. pikseli obrazu). Wartoœci zaszumionych próbek mog¹ znacznie ró niæ siê od swego s¹siedztwa. Przyk³adowym Ÿród³em powstawania szumu impulsowego jest matryca CCD aparatu cyfrowego, która mo e generowaæ znaczny szum przy d³ugich czasach ekspozycji (np. przy wykonywaniu zdjêæ w nocy). Klasyczn¹ technik¹ usuwania szumu impulsowego z obrazów jest zastosowanie filtru medianowego. Dla obrazów w skali szaroœci (grayscale) polega ona na zast¹pieniu ka dego piksela obrazu punktem, który jest median¹ jego otoczenia. Jedynym kryterium wyboru mediany jest poziom jasnoœci punktów otoczenia. S¹siedztwo analizowanego piksela, którego punkty s¹ brane pod uwagê przy wyborze mediany, nazywa siê mask¹. Najczêœciej stosowane maski maj¹ niewielkie rozmiary, ze wzglêdu na koszt obliczeñ i wzrost rozmycia obrazu. W niniejszej pracy rozwa ania zostan¹ ograniczone do dwóch masek o rozmiarach 3 3: krzy owej i kwadratowej (rys. ). Rys.. Maska krzy owa 3 3 i maska kwadratowa 3 3 O ile w przypadku filtracji obrazów w skali szaroœci wyznaczenie mediany nie przedstawia adnych trudnoœci, to dla obrazów kolorowych, gdzie ka dy punkt obrazu jest opisa- * Katedra Informatyki Stosowanej, Politechnika ódzka 57
572 Sebastian Stoliñski, Szymon Grabowski ny przez trzy sk³adowe (np. R, G, B), proces doboru mediany jest bardziej skomplikowany. Istnieje kilka algorytmów wyznaczania mediany dla obrazów kolorowych (ogólniej: o pikselach opisanych wektorami). W tej pracy opisane zosta³y nastêpuj¹ce rodziny filtrów: filtry VMF (Vector Median Filter) filtry te oparte s¹ na medianie wektorowej, czyli na obliczaniu mediany na podstawie odleg³oœci pomiêdzy wektorami w przestrzeni; filtry VDF (Vector Directional Filters) oparte na wyznaczaniu pseudomediany na podstawie k¹tów pomiêdzy wektorami; filtry DDF (Distance Directional Filters), które mo na uznaæ za hybrydê dwóch powy szych podejœæ. Wymienione filtry ró ni¹ siê miêdzy sob¹ jakoœci¹ oraz szybkoœci¹ filtracji. W ka dej grupie jest kilka filtrów, ich parametry znacznie odbiegaj¹ od siebie, gdy niektóre z nich s¹ projektowane pod k¹tem jak najwiêkszej szybkoœci dzia³ania (tak, aby mo na by³o je stosowaæ do przetwarzania obrazów w czasie rzeczywistym), w innych zaœ priorytetowa jest jakoœæ filtracji (ich szybkoœæ, choæ wa na, nie jest parametrem krytycznym). 2. Opis filtrów 2.. Rodzina filtrów VMF Klasyczny filtr VMF Dzia³anie filtrów VMF [] opiera siê na pojêciu mediany wektorowej. Pojêcie to mo - na wyprowadziæ nawi¹zuj¹c do definicji mediany skalarnej. Medianê skalarn¹ mo na wyraziæ wzorem med = arg min Fi Fj, F W j= 0KN i gdzie: W zbiór wszystkich punktów maski (o indeksach 0..N ), F i punkt maski, dla którego obliczana jest odleg³oœæ. Je eli zast¹pimy odleg³oœæ miêdzy skalarami odleg³oœci¹ miêdzy wektorami obliczon¹ wed³ug przyjêtej metryki (zwykle miejskiej lub euklidesowej), to otrzymamy wielkoœæ zwan¹ median¹ wektorow¹, wyra on¹ formalnie wzorem N R= min d( Fi, Fj), Fi W j = 0 gdzie: R mediana wektorowa, W zbiór zawieraj¹cy wszystkie punkty maski, N liczba pikseli w masce, F i, F j punkty maski.
Eksperymentalne porównanie filtrów medianowych... 573 Filtr FMVMF Zasada dzia³ania filtra FMVMF (Fast Modified Vector Median Filter) [7] jest podobna do klasycznego filtru VMF. Modyfikacje zosta³y wprowadzone przy obliczaniu odleg³oœci dla punktu centralnego maski. We wzorze tym zosta³ dodany wspó³czynnik proguj¹cy β. Po tej modyfikacji wzór na medianê wektorow¹ dla punktu centralnego przyjmuje postaæ N 0 = β+ 0 j= (, j ). R d F F Dla pozosta³ych punktów nie uwzglêdnia siê natomiast w formule sumy odleg³oœci do punktu centralnego N Ri = d( Fi, Fj) dla i =,..., N. j= Dla niektórych k, R k przyjmuje wartoœæ mniejsz¹ ni R 0 N k k j j= ( ) R = d F, F < R. 0 Wynika st¹d, i punkt F 0 jest zamieniany przez punkt F k wtedy, gdy spe³niony jest warunek N N d( Fk, Fj) < β+ d( F0, Fj). j= j= Ostatecznie otrzymujemy wiêc zale noœæ: N β< { df ( 0, Fj) df ( k, Fj)}. j= Wzór ten mo na przedstawiæ w innej postaci [4]: N N 0, if β+ d ( F0, Fj) min d ( Fi, Fj), j= Fi W\ F0 j= k = N N N iopt : = arg min d( Fi, Fj ), if min d( Fi, Fj ) < β+ d( F0, Fj ), Fi W\ F0 j= Fi W\ F0 j= j= gdzie F k jest pikselem, który zast¹pi piksel F 0.
574 Sebastian Stoliñski, Szymon Grabowski Nietrudno dojœæ do wniosku, e filtr FMVMF jest szybszy od klasycznego filtru VMF, gdy wymaga mniejszej liczbê operacji obliczania odleg³oœci (dla maski w kszta³cie krzy a i dla punktów nie bêd¹cych centrum maski wystarczy policzyæ odleg³oœci tylko do trzech punktów przestrzeni barw, a nie do czterech, jak w przypadku filtru VMF, dla punktu F 0 zaœ konieczne jest obliczenie odleg³oœci do wszystkich punktów maski). Wartoœæ parametru β, dla obrazu o sk³adowych barwnych znormalizowanych do przedzia³u [0,], powinna mieœciæ siê w przedziale [0,2;]. Wyniki eksperymentów pokazuj¹, e przewa nie najlepsze rezultaty uzyskuje siê dla β = 0,75 [7]. Filtr FMVMF bardzo przypomina VMF. Istota modyfikacji polega na okreœleniu, czy punkt F 0 ma szansê byæ zak³óceniem; jeœli tak, to nie jest on brany pod uwagê przy obliczaniu odleg³oœci do s¹siadów F 0. Filtr PNNVMF Filtr PNNVMF (Primum Non Nocere Vector Median Filter, z ³ac. po pierwsze, nie szkodziæ ) [4] jest modyfikacj¹ filtru FMVMF. Wprowadzane zmiany nie dotycz¹ bezpoœrednio algorytmu obliczania odleg³oœci punktów w przestrzeni barw, a jedynie sposobu doboru tych punktów. Najwa niejsza zmiana jest zgodna z zasad¹ po pierwsze nie szkodziæ, to znaczy, e w miarê mo liwoœci w czasie obliczeñ s¹ brane pod uwagê punkty, które zosta³y ju przefiltrowane. Na przyk³ad dla maski krzy owej przy filtracji obrazu od lewego górnego rogu punkty maski F, F 4 s¹ punktami obrazu ju przefiltrowanego, natomiast pozosta³e punkty maski s¹ punktami obrazu zaszumionego. Istnieje jeden wyj¹tek od tej zasady, w przypadku gdy obliczamy odleg³oœci punktu F do punktu F 4 (analogicznie odleg³oœæ F 4 do F ), dla sumy skojarzonej z punktem F (F 4 ) bierzemy pod uwagê tylko now¹ wartoœæ F 4 (F ), natomiast F (F 4 ) jest wektorem z obrazu poddawanego filtracji. Drug¹ modyfikacj¹ jest pozostawienie wartoœci F 0, je eli suma odleg³oœci skojarzona z co najwy ej jednym z jego s¹siadów jest mniejsza ni N β + d F j= ( 0, Fj ). Zmiana ta zosta³a wprowadzona w celu poprawienia jakoœci filtracji i zmniejszenia iloœci zamienianych punktów. 2.2. Rodzina filtrów VDF Klasyczny filtr BVDF Filtr BVDF (Basic Vector Directional Filter) mo na zdefiniowaæ podobnie jak filtr VMF, zastêpuj¹c pojêcie mediany wektorowej median¹ k¹tow¹ [2] N α i = ( Fi, Fj), i = {0,, 2,..., N }, j= 0 gdzie: α i k¹t nachylenia wektora F i, δ k¹t pomiêdzy wektorami F i, F j.
Eksperymentalne porównanie filtrów medianowych... 575 Uporz¹dkowanie wartoœci k¹tów α i, powoduje uporz¹dkowanie odpowiadaj¹cych im wektorów w przestrzeni kolorów α = α 2 =... = α k =... = α N F = F 2 =... = F k =... = F N. Korzystaj¹c z powy szych za³o eñ mo na otrzymaæ zale noœæ [7] T FF i j ( Fi, Fj) = cos. Fi Fj Punkt wyjœciowy z filtra mo emy wyznaczyæ obliczaj¹c α i dla wszystkich punktów maski, a nastêpnie znajduj¹c najmniejsz¹ wartoœæ α i. Filtry FMVDF i PNNVDF Filtry te s¹ modyfikacj¹ klasycznych filtrów PNNVMF i FMVMF polegaj¹c¹ na zastosowaniu w nich metryki kierunkowej. Jest to jedyna zmiana w stosunku do oryginalnych algorytmów. 2.3. Klasyczny filtr DDF Ten filtr jest kombinacj¹ dwóch filtrów VMF i VDF. Do wyznaczania minimum odleg³oœci, filtr ten wykorzystuje kryterium, które jest po³¹czeniem sumy odleg³oœci wektorów (zwyk³ej mediany skalarnej) i sumy k¹tów miêdzy wektorami [3]. W najprostszej postaci kryterium do zminimalizowania ma postaæ: Ω = R α dla i = 0,,..., N, i i i N N Ω i = df ( i Fj) ( Fi, Fj) dla i= 0,,..., N, j= 0 j= 0 i wyjœcie filtra x jest skojarzone z Ω, gdzie Ω jest wartoœci¹ minimaln¹ ze zbioru liczb Ω 0, Ω,..., Ω N uporz¹dkowanego w postaci: Ω 0 = Ω =... = Ω N. Nale y zwróciæ uwagê, i minimalizacja iloczynu R i α i niekoniecznie oznacza, e obydwa jego sk³adniki bêd¹ mia³y wartoœæ najmniejsz¹. Filtr DDF ³¹czy w³aœciwoœci filtrów VMF i BDVF. Stosuj¹c niewielk¹ modyfikacjê wzoru podstawowego, mo emy otrzymywaæ filtr o w³aœciwoœciach zbli onych, w zale noœci od potrzeb, do filtru VMF lub BVDF. Modyfikacja ta polega na dodaniu wspó³czynnika p przyjmuj¹cego wartoœci ze zbioru [0,], bêd¹cego w pewnym sensie wag¹ wzmacniaj¹c¹ lub os³abiaj¹c¹ któr¹œ z czêœci filtra. Zak³adamy, e waga p jest potêg¹, do jakiej podnosimy sk³adnik pochodz¹cy z filtra BVDF, natomiast sk³adnik pochodz¹cy z filtru VMF jest podnoszony do potêgi o wyk³adniku p. W wyniku tej modyfikacji otrzymujemy wzór [3] p p i i i Ω = R α dla i = 0,, K, N.
576 Sebastian Stoliñski, Szymon Grabowski atwo zauwa yæ, e dla p = 0 filtr DDF zachowuje siê jak klasyczny filtr VMF, natomiast dla p = filtr ma cechy filtra BVDF. Z kolei dla p = 0,5 filtr jest zwyk³ym filtrem DDF. 3. Wyniki testów Zaimplementowane filtry zosta³y poddane testom jakoœciowym i wydajnoœciowym. Wszystkie testy zosta³y przeprowadzone na komputerze PC o specyfikacji: procesor AMD Athlon GHz, 256 MB pamiêci RAM (SDRAM), system operacyjny Windows 2000 z Service Pack 4. Filtry zosta³y zaimplementowane w jêzyku C++ z u yciem œrodowiska Visual Studio 6.0. Wyniki filtracji zale ¹ m. in. od obszaru maski u ywanej w filtrze. Przeprowadzone eksperymenty pozwalaj¹ twierdziæ, e najlepsze rezultaty uzyskuje siê za pomoc¹ masek krzy owych 3 3 i kwadratowych 3 3. Wiêksze maski nie powoduj¹ znacz¹cej poprawy jakoœci, natomiast znacznie zwiêkszaj¹ koszt obliczeñ. Z tych powodów opis eksperymentów zosta³ ograniczony do dwóch masek. 3.. Test wydajnoœciowy Test wydajnoœci filtrów polega³ na trzykrotnej filtracji kilku obrazów dla wszystkich zaimplementowanych filtrów. Wszystkie obrazy testowe (lenabig.bmp, airplanebig.bmp, peppersbig.bmp, sailboatbig.bmp, splashbig.bmp i tiffanybig.bmp) maj¹ rozmiar 024 024 piksele. Powsta³y one ze standardowych obrazów 52 52 poprzez ich powielenie i po³¹czenie. Ka da z bitmap by³a testowana dla trzech wartoœci szumu impulsowego: 4%, 0% i 30%. Otrzymane wyniki z ka dego przebiegu testu zosta³y porównane, a nastêpnie wybrano z nich wartoœci minimalne. Zgodnie z przewidywaniami, czasy filtracji dla ró nych obrazów, przy u yciu tych samych filtrów, nie ró ni³y siê od siebie znacz¹co (nie przekracza³y kilku procent), co pozwala twierdziæ, e szybkoœæ filtru nie zale y od zawartoœci filtrowanego obrazu. Tabela przedstawia wyniki testu wydajnoœciowego dla obrazu airplanebig.bmp, wyra one w MB/s. Jak widaæ, szybkoœæ filtracji tylko nieznacznie spada przy wzroœcie gêstoœci szumu; spadek ten jest widoczny szczególnie dla szybszych filtrów. To zjawisko mo e byæ spowodowane mniejsz¹ zdolnoœci¹ cache owania odleg³oœci w przypadku obrazów o wiêkszej iloœci zak³óceñ. Z trzech badanych metryk najwydajniejsza jest, zgodnie z przewidywaniami, metryka miejska, oko³o dwukrotnie wolniejsza od niej jest metryka euklidesowa, najwolniejsza zaœ metryka kierunkowa. Najszybszymi z testowanych filtrów s¹ filtry FMVMF (ich szybkoœæ przy metryce miejskiej jest o oko³o 0% wiêksza ni VMF), nieco wolniejsze s¹ filtry PNNVMF spowodowane jest to nieco bardziej skomplikowanym algorytmem wyznaczania pseudomediany. Czas filtracji filtrów kierunkowo-odleg³oœciowych jest w przybli eniu równy sumie czasów filtracji poszczególnych czêœci filtra (czas czêœci VMF plus BVDF).
Eksperymentalne porównanie filtrów medianowych... 577 Szum VMF, metryka miejska, maski: Tabela Wyniki testu wydajnoœciowego dla obrazu airplanebig.bmp VMF, metryka euklidesowa, maski: BVDF, maski: DDF, metryka miejska, maski: DDF, metryka euklidesowa, maski: krzy 3 3 krzy 3 3 krzy 3 3 krzy 3 3 krzy 3 3 [MB/s] [MB/s] [MB/s] [MB/s] [MB/s] 4% 0,7 4,6 4,4 2,,0 0,29,06 0,28 0,79 0,25 0% 0,68 4,6 4,34 2, 0,99 0,29,04 0,28 0,78 0,25 30% 0,7 4,55 4,28 2,08 0,96 0,28,0 0,27 0,76 0,24 FMVMF, metryki: PNNVMF, metryki: miejska euklid. BVDF miejska euklid. BVDF Szum [MB/s] [MB/s] 4% 2,50 6,65, 2,45 4,54,08 0% 2,00 6,5,09 2,00 4,54,07 30% 2,00 6,37,06,95 4,34,03 3.2. Test jakoœci filtracji Celem testu jest porównanie jakoœci filtracji przy optymalnych ustawieniach filtrów w zale noœci od zastosowanej maski i metryki. Dla filtrów FMVMF i PNNVMF zostanie zastosowany optymalny wspó³czynnik â otrzymany w wyniku osobnego testu (zbiorczego dla wielu obrazów). Podobnie dla filtrów DDF zostan¹ zastosowane wyk³adniki potêg, dla których otrzymano najlepsz¹ jakoœæ filtracji. Ponadto zostanie jeszcze zbadana liczba zamienianych pikseli, mo e to pozwoliæ na wyci¹gniêcie wniosków dotycz¹cych zale noœci miêdzy liczb¹ zaszumionych pikseli, liczb¹ zamienionych punktów obrazu a jakoœci¹ filtracji. Jakoœæ filtracji jest oceniana przy u yciu trzech wymienionych poni ej kryteriów. ) Znormalizowany œredni b³¹d kwadratowy (NMSE), NMSE X Y ( f ( x, y ) (, x y fe x y = = )) = X Y 2 f ( x, y) x= y= gdzie: X, Y wymiary obrazu, f(x, y) obraz oryginalny, f e (x, y) obraz zrekonstruowany. 2,
578 Sebastian Stoliñski, Szymon Grabowski 2) Stosunek sygna³u do szumu (SNR), SNR = X x= = X Y x= y= Y 2 fe ( x, y y ) ( f ( x, y) f ( x, y) ) oznaczenia we wzorze analogiczne do wzoru na NMSE. 3) Znormalizowana rozbie noœæ kolorów (NCD) [6]: NCD = X Y ΔE x= y=, X Y E * x= y= 2 2 2 /2 2 2 2 /2 Δ E = [( Δ L*) + ( Δ u*) + ( Δv*) ], E* = [( L*) + ( u*) + ( v*) ], gdzie: ΔE percepcyjny b³¹d zmiany koloru, E* norma obrazu oryginalnego w przestrzeni kolorów L*u*v*. Przestrzeñ kolorów L*u*v* w badanym przypadku jest przestrzeni¹ RGB, a wartoœci L*u*v* s¹ odpowiednio wartoœciami R, G i B. Testy zosta³y przeprowadzone dla trzech obrazów: lena.bmp, baboon.bmp i peppers.bmp. Tabele 2 4 przedstawiaj¹ wyniki. Zauwa yæ mo na, e dla prawie wszystkich obrazów zanieczyszczonych 4% szumem impulsowym najlepsze s¹ filtry PNNVMF i FMVMF, oba z metryk¹ miejsk¹. Osi¹gane wartoœci stosunku sygna³u do szumu s¹ nawet rzêdu 3000 (dla obrazu lena.bmp). Jedynym przypadkiem, gdy aden z tych dwóch filtrów nie jest najefektywniejszy pod wzglêdem jakoœci przy szumie 4%, jest plik baboon.bmp, gdzie wygrywa filtr DDF z mask¹ 3 3 i metryk¹ euklidesow¹, nieco gorsze s¹ filtry FMVMF i PNNVMF z metryk¹ kierunkow¹ rozwa aj¹c kryteria SNR i NMSE, natomiast bior¹c pod uwagê miarê NCD lepsze okazuj¹ siê te dwa ostatnie filtry. Porównuj¹c b³êdy otrzymane przy u yciu tych samych kryteriów dla ró nych obrazów, mo na zauwa yæ, e silnie zale ¹ one od zawartoœci obrazu, ró nica w maksymalnej wartoœci SNR jest 8-krotna, taka sytuacja wystêpuje na przyk³ad dla obrazów lena (3386 filtr FMVMF, metryka miejska) i baboon (79 filtr FMVMF, metryka miejska). W przypadku obrazów zniekszta³conych szumem 0% wyniki s¹ podobne jak dla szumu 4%, ale wzrost iloœci zak³óceñ spowodowa³ spadek jakoœci filtracji, co szczególnie dobrze widaæ na przyk³adzie filtrów FMVMF oraz PNNVMF i kryterium SNR, gdzie wartoœæ stosunku sygna³u do szumu spad³a w przybli eniu dwukrotnie, dla miary b³êdu NCD sytuacja jest podobna, natomiast dla NMSE zmiana wartoœci jest rzêdu 30%. Dla innych filtrów spadek jakoœci filtracji jest znacznie mniejszy i wynosi oko³o 0% 5% dla wszystkich kryteriów. Mimo takiego spadku jakoœci nadal filtry FMVMF i PNNVMF z metryk¹ miejsk¹ s¹ najlepsze dla obrazów lena.bmp i peppers.bmp, dla pliku baboon.bmp, gdzie najlepszy ze wzglêdu na NMSE i SNR jest DDF z mask¹ 3 3 i metryk¹ euklidesow¹, natomiast bior¹c pod uwagê NCD, najlepsz¹ jakoœæ uzyskujemy stosuj¹c filtr PNNVMF z metryk¹ kierunkow¹, jednak co ciekawe efektywnoœæ filtracji tym filtrem wed³ug pozosta³ych miar b³êdów jest bardzo s³aba. e 2,
Eksperymentalne porównanie filtrów medianowych... 579 Tabela 2 Wyniki testu jakoœci dla obrazu lena.bmp Tabela 3 Wyniki testu jakoœci dla obrazu peppers.bmp
580 Sebastian Stoliñski, Szymon Grabowski Tabela 4 Wyniki testu jakoœci dla obrazu baboon.bmp Dla obrazów zanieczyszczonych szumem 30%, spadek jakoœci filtracji jest podobny jak w poprzednim wypadku. Porównuj¹c wartoœci b³êdów mo na zauwa yæ, e filtr FMVMF z metryk¹ miejsk¹ przestaje byæ dobrym rozwi¹zaniem, dla wszystkich obrazów jest on s³abszy od filtru DDF3x3 z obiema metrykami oraz od PNNVMF z metryk¹ miejsk¹. Ten ostatni filtr zachowuje siê doœæ dobrze jedynie dla obrazu lena.bmp, jakoœæ filtracji wed³ug kryteriów NMSE i SNR jest gorsza ni filtra: VMF z mask¹ 3 3 i metryk¹ miejsk¹. Jednak ró nice na niekorzyœæ PNNVMF nie przekraczaj¹ kilku procent, natomiast wed³ug kryterium NCD filtr ten jest nadal najlepszy. Filtrem, który zachowuje siê doœæ nietypowo, jest DDF z mask¹ 3 3 i metryk¹ euklidesow¹. Jest to jedyny filtr z tej rodziny, w którym optymalnym ustawieniem okaza³o siê wzmocnienie czêœci VDF kosztem VMF. Filtr ten jest najbardziej uniwersalny: dla wszystkich obrazów i wszystkich poziomów zak³óceñ uzyskane wyniki stawiaj¹ go w czo³ówce pod wzglêdem jakoœci. Co wa ne, dla ka dego przypadku jest on lepszy od obydwu tworz¹cych go filtrów (czyli filtrów VMF z metryk¹ euklidesow¹ i BVDF, obydwa z maskami kwadratowymi 3 3). Ostatnim badanym parametrem procesu filtracji by³a liczba zamienianych punktów obrazu. Analizuj¹c wyniki, mo na zauwa yæ, e nie ma wyraÿnej korelacji miêdzy liczb¹ zamienianych punktów a jakoœci¹ filtracji. Dla ustalenia uwagi: obraz 52 52 z szumem 4% zawiera oko³o 0 485 zniekszta³conych punktów, 0% oko³o 26 24, a 30% oko³o 78 643 zniekszta³conych pikseli. Porównuj¹c te wartoœci z iloœciami zamienionych pikseli
Eksperymentalne porównanie filtrów medianowych... 58 mo na zauwa yæ, e filtry FMVMF i PNNVMF z metryk¹ miejsk¹ oraz filtr DDF 3 3 z metryk¹ euklidesow¹ zamieniaj¹ podobn¹ liczbê punktów do liczby zaszumionych pikseli (+/ 40%), natomiast na przyk³ad ca³kiem niez³y filtr VMF z mask¹ krzy ow¹ i metryk¹ miejsk¹ zamienia oko³o 20 70 tysiêcy pikseli. Pewn¹ anomaliê stanowi filtr PNNVMF z metryk¹ kierunkow¹, zamianie poddaje on oko³o po³owy z liczby zaszumionych pikseli, na przyk³ad dla obrazu lena.bmp i wartoœci szumu 4%, 0% i 30% zamienianych jest odpowiednio 5985, 3 970 i 30 335 punktów. Ten ostatni filtr mo na zastosowaæ do filtrów dwuprzebiegowych [5], jako filtr drugiego przejœcia usuwaj¹cego tylko na pewno zak³ócone piksele. Powy sze wnioski maj¹ znaczenie orientacyjne, poniewa jakoœæ filtracji bardzo silnie zale y od zawartoœci obrazu. Dla takich samych filtrów i identycznej zawartoœci szumu dla ró nych obrazów wartoœci kryterium SNR mog¹ ró niæ siê kilkukrotnie. Dobrym przyk³adem jest porównanie umieszczonych w pracy wyników filtracji plików lena.bmp i peppers.bmp. Analizuj¹c tabele, mo na zauwa yæ, e wszystkie kryteria wykazuj¹ wiêkszy spadek iloœci szumu przy filtracji pliku lena.bmp. Zwi¹zane jest to z zawartoœci¹ obrazu lena, który ma t³o zawieraj¹ce niewielk¹ iloœæ kolorów i du ¹ iloœæ du ych obiektów, natomiast w obrazie peppers.bmp wystêpuje wiêcej obiektów, które s¹ w dodatku cieniowane i przez to trudniej je filtrowaæ za pomoc¹ filtrów medianowych. Wraz ze wzrostem iloœci szczegó³ów i ró nokolorowych ma³ych obiektów spada jakoœæ filtracji, poniewa filtr medianowy ma tendencjê do uœredniania wartoœci, co powoduje usuwanie szumu, ale te czêsto szczegó³ów z obrazu, obserwuj¹c obraz po filtracji mo emy zauwa yæ, e jest on rozmyty w porównaniu z orygina³em, stopieñ rozmycia jest proporcjonalny do rozmiaru maski. Porównuj¹c jakoœæ obrazów otrzymanych w wyniku filtracji medianowej, ³atwo zauwa yæ, e jej skutecznoœæ spada znacznie wraz ze wzrostem iloœci zak³óceñ. To zjawisko mo na bardzo ³atwo wyjaœniæ. Wraz ze wzrostem iloœci szumu roœnie prawdopodobieñstwo, e w przetwarzanej masce pojawi siê kilka zaszumionych pikseli, co mo e spowodowaæ, e wybrany prawid³owy punkt bêdzie zak³óceniem. Najmniejsza mo liwa maska krzy owa, s³abo sobie radzi ju w przypadku, gdy w jej obszarze znajd¹ siê dwa zak³ócone piksele, z regu³y nie s¹ one zastêpowane prawid³owym punktem obrazu, tylko punktem zaszumionym. W rezultacie przy wiêkszym lokalnym skupieniu szumu otrzymujemy wiêksze zniekszta³cenie obrazu. Takie zjawisko nie wystêpuje dla wiêkszych masek, gdy maj¹ one wiêkszy wybór punktów obrazu i pojawienie siê nawet kilku zak³óconych pikseli nie powoduje b³êdnego wyniku filtracji. 3.3. Test mikroobrazów Celem eksperymentu by³o zbadanie jakoœci filtracji ma³ych wycinków obrazu oraz znalezienie takich fragmentów, dla których poszczególne filtry dobrze usuwaj¹ szum, i takich, dla których odszumianie jest ma³o skuteczne. Porównane zosta³y zarówno filtry w ramach jednego obrazu, jak i jakoœæ filtracji poszczególnych obrazów. W testach zaobserwowaæ mo na du ¹ rozbie noœæ pomiêdzy wartoœciami kryteriów dla ró nych obrazów,
582 Sebastian Stoliñski, Szymon Grabowski zrozumia³e jest zatem, e oprócz oceny statystycznej obrazy poddaliœmy ocenie wizualnej (czêœciowo subiektywnej), pod k¹tem zarówno iloœci zamienianych pikseli, jak i trafnoœci dokonywanych podmian. Wszystkie testy przeprowadziliœmy dla sta³ych wartoœci parametrów filtrów, które wynosz¹: β 0,7, potêga czêœci VMF 0,8, dla wszystkich filtrów DDF oprócz DDF za mask¹ 3 3 i metryk¹ euklidesow¹, gdzie potêga czêœci VMF wynosi 0,2. Obrazy testowe s¹ fragmentami plików: lena, baboon, i peppers. Mikroobrazy te maj¹ rozmiary 7 7 lub 8 8 pikseli i mo na je podzieliæ na trzy grupy: ) g³adkie, 2) zawieraj¹ce ³agodne przejœcie kolorów, 3) ze szczegó³ami. Pierwsz¹ grupê stanowi¹ fragmenty t³a lub wiêkszych jednobarwnych obiektów, drug¹ kawa³ki krawêdzi czy cieniowane przejœcia pomiêdzy obiektami, ostatni¹ zaœ fragmenty ma³ych obiektów. Obrazki bêd¹ce fragmentami du ych obiektów zwykle filtruj¹ siê bardzo dobrze, a najlepsze wyniki osi¹ga siê dla szumu, który znacznie ró ni siê od t³a. Dobrym przyk³adem jest obrazek lena_34_456.bmp (fragment pliku lena.bmp o wymiarach 7 7 i wspó³rzêdnych lewego górnego rogu [34;456]). Wartoœci kryteriów otrzymane w tym przypadku wskazuj¹ na bardzo dobr¹ filtracjê, maksymalne wartoœci SNR wynios³y 55 47,7. Tak dobre rezultaty s¹ wynikiem zawartoœci obrazu jest to fragment jednolitego t³a z szumem znacznie ró ni¹cym siê od obrazu oryginalnego. Ciekawe wnioski mo na otrzymaæ, obserwuj¹c liczbê zamienionych pikseli (obrazek zawiera³ 4 piksele szumu, w tym jeden w niefiltrowanym obszarze na brzegu obrazu), okazuje siê, e filtry PNNVMF i FMVMF dla metryk miejskiej i kierunkowej usunê³y tylko zaszumione piksele, natomiast ró nice w wartoœciach kryteriów s¹ spowodowane ró n¹ trafnoœci¹ podmian pikseli. W tym porównaniu (w ramach rodziny PNNVMF, FMVMF) najgorsze wyniki uzyskano za pomoc¹ filtra PNNVMF z metryk¹ kierunkow¹. Inne g³adkie mikroobrazy testowe maj¹ znacznie gorsz¹ jakoœæ filtracji (przynajmniej wed³ug kryteriów statystycznych), przyczyn¹ tego zjawiska jest nieco wiêksze zró - nicowanie kolorów w obrazie. Znaczny wp³yw na koñcowy wynik filtracji ma charakterystyka szumu. Jeœli szum ma podobn¹ barwê do t³a, to proces filtracji daje znacznie gorsze wyniki, filtrom trudniej jest wyizolowaæ zak³ócenia, na przyk³ad w obrazku baboon_57_82.bmp czêœæ szumu ma podobn¹ barwê do barwy t³a, co powoduje, e niektóre filtry pozostawiaj¹ zaburzone piksele. Takie zachowanie jest charakterystyczne dla filtrów PNNVMF i FMVMF z metrykami miejsk¹ oraz kierunkow¹. Dodatkowo filtr z metryk¹ kierunkow¹ nie usun¹³ zniekszta³conego piksela w kolorze czarnym. Takie zachowanie tych filtrów ma odzwierciedlenie w wartoœciach kryteriów jakoœci filtracji, na przyk³ad SNR dla obu filtrów i metryki kierunkowej jest równy tylko 28,6, natomiast dla metryki miejskiej SNR wynosi 93,9. Dla porównania SNR dla tych filtrów z metryk¹ euklidesow¹ ma wartoœæ 0 83,6 i jest to najlepszy rezultat spoœród wszystkich filtrów (oczywiœcie dla tego obrazu).
Eksperymentalne porównanie filtrów medianowych... 583 Kolejnym obrazkiem z serii g³adkich jest baboon_33_205.bmp, który zawiera zaledwie jeden zniekszta³cony punkt, ale jego barwa jest bardzo zbli ona do t³a obrazu. Obserwuj¹c wyniki eksperymentów mo na zauwa yæ, e cztery filtry pozostawi³y obraz bez zmian, aden piksel nie zosta³ zamieniony, tymi filtrami s¹ PNNVMF i FMVMF z metrykami miejska oraz kierunkow¹. Jedynym filtrem, który wykaza³ siê dobr¹ skutecznoœci¹ filtracji (zamieni³ tylko punkt bêd¹cy szumem), jest filtr DDF z mask¹ 3 3 i metryk¹ euklidesow¹. Nieco gorzej wypad³y w tym porównaniu filtry FMVMF i PNNVMF z metryk¹ euklidesow¹, które dokona³y po jednej niepotrzebnej podmianie piksela. Obraz lena_299_233.bmp jest ostatnim z serii obrazów g³adkich, zawiera a szeœæ zniekszta³conych punktów, jednak e ich barwa doœæ znacznie ró ni siê od t³a obrazu. Mimo to, kilka filtrów nie poradzi³o sobie z oczyszczeniem tego pliku. Najgorsze rezultaty otrzymano dla filtrów PNNVMF z metrykami kierunkow¹ i euklidesow¹ oraz FMVMF dla wszystkich metryk, oba filtry z metrykami kierunkowymi nie zamieni³y adnego punktu. Natomiast bardzo dobry wynik uzyskano dla metryki miejskiej i filtra PNNVMF zamieni³ on szeœæ pikseli i wszystkie z nich okaza³y siê szumem. Eksperymenty przeprowadzone na obrazach zawieraj¹cych ³agodne przejœcia kolorów (s¹ to na przyk³ad: rozmyte krawêdzie, zmiany kolorów w obrêbie jednego obiektu) wykaza³y, e filtry z zadanymi maskami doœæ dobrze radz¹ sobie z tego rodzaju szumem. W obrazku baboon_39_90.bmp najlepsze okazuj¹ siê klasyczne filtry VMF z mask¹ krzy- ow¹ oraz filtr DDF z t¹ sam¹ mask¹ i metryk¹ miejsk¹. S³abe wyniki otrzymano zaœ dla filtrów FMVMF i PNNVMF, dla metryki kierunkowej wyniki filtracji s¹ bardzo z³e. Ca³kowicie inne zachowanie filtrów wykaza³y testy obrazu baboon_76_28.bmp, wyniki eksperymentu s¹ bardzo zaskakuj¹ce, obraz zawiera stosunkowo niewiele szumu, bo zaledwie jeden piksel, ale oryginalne punkty obrazu maj¹ bardzo ró ne barwy. W takich niesprzyjaj¹cych warunkach najlepsze wyniki otrzymano dla filtrów PNNVMF i FMVMF z metryk¹ kierunkow¹ dokona³y one zamiany tylko jednego piksela i w obu przypadkach by³ to zniekszta³cony punkt. Pozosta³e filtry zosta³y zdeklasowane, usunê³y one szum, ale oprócz tego dokona³y znacznych zniszczeñ w obrazie oryginalnym. Ostatnim obrazkiem tej serii jest lena_285_277.bmp, zawiera on zniekszta³cone piksele wyraÿnie kontrastuj¹ce z obrazem, ale zgrupowane w jednym obszarze. Dla takiego obrazu najlepsz¹ filtracjê uzyskuje siê dla masek krzy owych i metryki miejskiej. Z tej grupy filtrów najlepsz¹ jakoœæ uzyskano dla filtrów FMVMF i PNNVMF z metrykami miejsk¹ i euklidesow¹. Najgorszymi filtrami dla tego obrazu s¹ filtry FMVMF i PNNVMF z metryk¹ kierunkow¹, obserwuj¹c obrazy wynikowe mo na zauwa yæ, e pierwszy filtr pozostawi³ jeden szary punkt wyraÿnie kontrastuj¹cy z otoczeniem, a PNNVMF nie usun¹³ adnego ze zniekszta³conych punktów, mo e to byæ spowodowane doœæ specyficznym uk³adem szumu, w którym zaszumione punkty s¹siaduj¹ ze sob¹. Ostatni¹ grup¹ badanych mikroobrazów s¹ obrazki zawieraj¹ce ma³e elementy, szczegó³y, drobne obiekty. Pierwszym badanym plikiem z tej grupy jest lena_364_449.bmp, który ma cztery zniekszta³cone piksele. Najlepiej, zgodnie z kryteriami NMSE i SNR, poradzi³y sobie z szumem filtry VMF i DDF, oba z mask¹ krzy ow¹ i metryk¹ miejsk¹, ale dokona- ³y one wielu zbytecznych zamian punktów obrazu. Co ciekawe, wartoœci kryteriów oceny
584 Sebastian Stoliñski, Szymon Grabowski filtracji dla tych filtrów s¹ identyczne; oznacza to, e zamieni³y one dok³adnie te same piksele. Najlepsze w sensie kryterium NCD okaza³y siê filtry PNNVMF i FMVMF z metryk¹ miejsk¹, ale nie usunê³y one jednego zaszumionego punktu. Podobnie filtr FMVMF z metryk¹ kierunkow¹ pozostawi³ jeden zniekszta³cony piksel, ale nieco gorzej zamienia³ on piksele, st¹d jego s³abszy wynik. Bardzo s³abe wyniki uzyska³ filtr PNNVMF z metryk¹ kierunkow¹, usun¹³ on zaledwie jeden zaszumiony punkt. Kolejnym obrazem z tej serii jest peppers_76_86.bmp, zawiera on gwa³towne przejœcie pomiêdzy barwami oraz 5 zaburzonych pikseli, znacznie ró ni¹cych siê barw¹ od t³a. Bardzo s³abe wyniki uzyska³y filtry FMVMF i PNNVMF z metryk¹ kierunkow¹, pierwszy z nich usun¹³ trzy zaszumione piksele, ale dokona³ jednej nietrafnej zamiany, drugi natomiast usun¹³ zaledwie jeden piksel szumu. Z kolei najlepsze okaza³y siê te same filtry z metryk¹ miejsk¹, wed³ug kryterium SNR by³y one oko³o 30 razy lepsze od najs³abszych filtrów i oko³o 3 razy lepsze od drugiego pod wzglêdem jakoœci filtru VMF z metryk¹ miejsk¹ i mask¹ 3 3. Podsumowuj¹c test mikroobrazów mo na stwierdziæ, e najbardziej uniwersalnymi filtrami s¹ filtry VMF z mask¹ krzy ow¹ dokonuj¹ one poprawnej filtracji dla wiêkszoœci obrazów. Ich wad¹ jest to, e zamieniaj¹ niepotrzebnie du ¹ liczbê punktów. Wyniki filtracji uzyskane dla tych filtrów nie s¹ najlepsze, ale filtry te w miarê dobrze radz¹ sobie z ka dym typem obrazu. Dla obrazów nie zawieraj¹cych szczegó³ów i zanieczyszczonych ma³o kontrastowym lub gêstym szumem, dobre rezultaty mo na uzyskaæ, stosuj¹c filtry o wiêkszych maskach. Dla obrazów zawieraj¹cych ma³e obiekty najlepiej u ywaæ filtrów FMVMF i PNNVMF z metrykami miejsk¹ i kierunkow¹. Doœæ ciekawie zachowuj¹ siê te filtry z drug¹ z wymienionych metryk, doskonale radz¹ sobie z szumem w obrazach zawieraj¹cych ma³e obiekty. Potrafi¹ one bezb³êdnie rozpoznaæ zaszumione piksele, dziêki temu nie niszcz¹ one informacji z obrazu, ale z drugiej strony czêsto zdarza siê, e nie oczyszczaj¹ ca³kowicie obrazu. Bardzo s³abo zaœ radz¹ sobie z gêstym szumem. Niezwykle trudno jest uzyskaæ za pomoc¹ tego filtra przeciêtne rezultaty filtracji; albo jest on jednym z najlepszych (z regu³y wtedy inne filtry uzyskuj¹ bardzo s³abe wyniki), albo co siê niestety zdarza czêœciej jednym z najs³abszych w sensie badanych kryteriów (inne filtry w tych sytuacjach radz¹ sobie bardzo dobrze). Mo na stwierdziæ, e s¹ to filtry do zadañ specjalnych. Obserwuj¹c wyniki filtrów BVDF mo na zauwa yæ, e s¹ one bezradne, jeœli filtrowany jest obraz zawieraj¹cy szum o wspó³rzêdnych wektora RGB, który znajduje siê na jednej prostej z wektorami punktów obrazu, z którymi on s¹siaduje, np. jeœli obraz sk³ada siê z punktów o wartoœciach RGB [0,0,0], a szum ma wartoœæ [200,200,200], to w sensie metryki kierunkowej odleg³oœæ pomiêdzy tymi punktami bêdzie wynosi³a zero. Porównuj¹c kryteria oceny jakoœci uzyskane dla ró nych obrazów, ³atwo zauwa yæ, e osi¹gaj¹ one wartoœci œwiadcz¹ce o najlepszej filtracji dla obrazów zawieraj¹cych du e jednobarwne powierzchnie; wynika to z faktu, i filtrom ³atwiej jest znaleÿæ punkt, który dobrze przybli y obraz oryginalny, natomiast w przypadku obrazów z ma³ymi obiektami, czêsto mimo prawid³owej identyfikacji szumu, filtr wybiera z³y punkt na zamianê.
Eksperymentalne porównanie filtrów medianowych... 585 4. Wnioski W pracy dokonaliœmy porównania kilku rodzajów filtrów jednoprzebiegowych medianowych oraz zaproponowaliœmy nowy algorytm bêd¹cy po³¹czeniem ju istniej¹cych. Filtr ten ma ciekawe w³aœciwoœci, potrafi znaleÿæ w obrazie tylko zaszumione piksele i usun¹æ je bez niepotrzebnych zmian w niezak³óconej czêœci obrazu, jego wad¹ jest zbyt du a selektywnoœæ nie zawsze usuwa wszystkie zanieczyszczone piksele. Porównanie filtrów wykaza³o, e najlepsze s¹ filtry o ma³ych maskach i metrykach miejskiej i euklidesowej, nieco gorzej spisuj¹ siê filtry z metryk¹ kierunkow¹. Z filtrów kombinowanych DDF najlepszy okaza³ siê filtr z mask¹ 3 3 i metryk¹ euklidesow¹. Pozosta³e filtry z tej grupy s¹ nieco gorsze, szczególnie pod wzglêdem wydajnoœciowym. Eksperymenty przeprowadzono dla standardowych obrazów testowych znanych z literatury; interesuj¹ce mog³oby byæ porównanie wyników uzyskanych dla obrazów rzeczywistych, np. fotografii wykonanych w technice cyfrowej, która wnosi doœæ znacz¹ce szumy zw³aszcza przy d³ugich czasach ekspozycji. Naturalnym kierunkiem dalszych badañ jest te zastosowanie opisanych technik w filtracji wieloprzebiegowej [5]. Literatura [] Astola J., Haavisto P., Neuvo Y.: Vector median filters. Proc. IEEE, vol. 78, No. 4, April 990, 678 689 [2] Karakos D.G., Trahanias P.E.: Generalized Multichannel Image-Filtering Structures. IEEE Transactions on Image Processing, vol. 6, No. 7, July 997 [3] Lukac R.: Weighted Directional Distance Filters. NORSIG-2002 5th Nordic Signal Processing Symposium, October 4 7, 2002 [4] Grabowski S., Bieniecki W.: Usuwanie szumu impulsowego w obrazach kolorowych przy u yciu zmodyfikowanego filtru medianowego. X Konferencja Sieci i Systemy Informatyczne, ódÿ, paÿdziernik 2002, 55 523 [5] Grabowski S., Bieniecki W.: A two-pass median-like filter for impulse noise removal in multichannel images. III Konferencja Komputerowe Systemy Rozpoznawania (KOSYR 2003), Mi³ków k/karpacza, maj 2003, 95 200 [6] Pratt W. K.: Digital Image Processing. New York, Wiley 99 [7] Smo³ka B., Szczepañski M., Plataniotis K.N., Venetsanopoulos A.N.: Fast Modified Vector Median Filter. Computer Analysis of Images and Patterns, Lecture Notes in Computer Science, W. Skarbek (Ed.), 200, 570 580
586 Sebastian Stoliñski, Szymon Grabowski