FILTRACJA OBRAZÓW KONTUROWYCH ZA POMOCĄ KRO 1 M. Grzegorek, W. S. Mokrzycki * IPI PAN, Zespół Grafiki i Przetwarzania Obrazów, 01-237 Warszawa, Ordona 21, * oraz IASD WAT, 00-908 Warszawa, Kaliskiego 2 mary,wmokrzyc@ipipan.waw.pl STRESZCZENIE: Opracowanie dotyczy pewnego mechanizmu przetwarzania obrazów gradientowych zwanego Krzywą Redukcji Obrazu (KRO). KRO to rodzaj operatora brzegowego który umożliwia ''czyszczenie'' obrazu gradientowego w/g automatycznie dobranego progu, zależnego od wartości zmian w tym obrazie. Znormalizowane krzywe KRO wykazują podobieństwo dla: różnych typów obrazów, różnych jasności i kontrastów oraz różnego przetwarzania wstępnego obrazu. Mają cechy wspólne oraz powtarzające się elementy. Pewne punkty KRO mogą służyć jako watrości progów dla ''czyszczenia''. Słowa kluczowe: obraz, obraz gradientowy, filtracja gradientowa, automatyczna detekcja konturów. 1. WSTĘP Przyjmijmy, że obraz cyfrowy jest macierzą punktów z przypisanymi wartościami funkcji jaskrawości. Wówczas obraz brzegowy jest dwuwartościową macierzą punktów, o rozmiarze takim samym jak obraz (cyfrowy): jedna wartość oznacza wystąpienie brzegu w tym pikslu, druga -- wystąpienie nie-brzegu, piksla tła lub wnętrza ściany obiektu. Operator brzegowy, przekształcając wejściowy obraz w obraz brzegowy czyni to tak, że piksle oznaczone jako brzegowe są związane z widocznymi krawędziami obiektów sceny, przedstawionej na obrazie. Detekcja brzegów opiera się bowiem na założeniu, że granice obiektów ujawniają się jako zmiany jaskrawości obrazu. Przyjmuje się, że brzegi odpowiadają krawędziom obiektów występujących w scenie i wyrażają się w obrazie dużymi nagłymi zmianami funkcji jaskrawości. KRO, [3], jest to pewna funkcja, która umożliwia automatyczne ''czyszczenie'' obrazu gradientowego (konturowego). Jest oparta na następującej zależności: jest to proporcja liczby piksli, w których zachodzą zmiany intensywności (jaskrawości) w obrazie o poziomie większym od pewnego progu (zmian intensywności), do wartości tego progu. Możliwa optymalność i automatyzm działania (które w niskopoziomowym przetwarzaniu obrazów ciągle są problemem) wynika z faktu, że na tej krzywej znajdują się pewne charakterystyczne punkty, które odgrywają szczególną rolę w morfologii obrazów. Dlatego KRO może być uważana za detektor brzegu, który sam ustala sobie optymalne parametry, w zależności od tego, jaki jest zakres zmian jaskrawości w obrazie. 1 Badania by³y czêœciowo finansowane z grantu KBN nr 8T11C04912 pt. Aktywne stereowidzenie w zastosowaniu do identyfikacji kszta³tów i relacji przestrzennych
Autorzy [2] uważają, że porównanie jakości działania detektorów brzegów wymaga wzorca. Najczęściej jest on wykonany specjalnie do tych celów i dokonywane oceny jakościowe ograniczają się do obrazów syntetycznych. Lecz dla obrazów naturalnych powstają wątpliwości co do słuszności takiego podejścia. Dla obrazów naturalnych wykorzystywanych w systemach wizualnych, możnaby oceniać detektory na podstawie działania całego systemu wizualnego, z różnymi operatorami brzegowymi, bowiem detektor brzegów jest zawsze pierwszym modułem tego typu systemów i od jakości jego działania zależy w dużym stopniu powodzenie działania całego systemu. Jednakże jedynym istniejącym, kompletnym i łatwo dostępnym rozpoznającym obiekty systemem wizualnym jest wzrok człowieka, również nie zestandaryzowany. Stąd ocena działania detektorów czy to jako ocena końcowa całego systemu wizualnego, czy jako bezpośredni wynik działania jedynie samego detektora jest subiektywna, różna dla różnych ludzi i zależna od doboru obrazów. W związku z tym ważniejsze wydaje się szybkie optymalne i automatyczne ograniczenie liczby przetwarzanych piksli, [4], wykonanie na nich dalszych operacji detekcji brzegu, a następnie uzupełnienie znalezionych konturów przez powrót do informacji zawartej w obrazie lub kompletowanie konturów z wykorzystaniem wiedzy o zadaniu lub/i o scenie. 2. KRZYWA REDUKCJI OBRAZU 2.1. WYZNACZANIE KRO Jak już wspominaliśmy, KRO jest wykresem następującej proporcji: liczba piksli obrazu, w których zachodzą zmiany jaskrawości o poziomie większym od ustalonego progu (progu zmian jaskrawości), do wartości tego progu. Obliczanie KRO wykonuje się w ten sposb, że do obrazu początkowego stosuje się operator Sobela lub inny operator gradientowy. Dla wszystkich piksli obrazu znane są wtedy wartości modułu gradientu funkcji jaskrawości tworzące obraz gradientowy (konturowy). Następnie wylicza się punkty krzywej KRO jako zależność liczby piksli na obrazie, w których wartość modułu gradientu jest wyższa od pewnej wartości - progu gradientu modułu, od tego progu modułu. Zmienną niezależną jest moduł gradientu jaskrawości. Wartości tego modułu są liczbami rzeczywistymi, zawartymi między zero i maksymalną (dla tego obrazu) wartością modułu gradientu. Dla każdej liczby naturalnej z tego przedziału, zlicza się piksle, w których wartość jest ponad progiem odcięcia. Na rys. 1. pokazano krzywą redukcji dla obrazu z rys. 2.
Rys. 1. KRO (nieznormalizowana). Na osi poziomej odkładane są wartości modułu gradientu (w zakresie, w jakim zmieniają się w danym obrazie); na osi pionowej liczba piksli w obrazie, w których wartość modułu gradientu jest większa od wartości progu odcięcia. 2.2. WŁAŚCIWOŚCI KRO Dla przebadania i porównania KRO dla różnych typów obrazów oraz określenia jej właściwości, normalizujemy krzywą: na osi poziomej odkładamy względną wartość modułu gradientu, odniesioną do maksymalnej jego wartości (rys. 2.). Zawiera się ona teraz w zakresie od 0 do 100% wielkości maksymalnej modułu gradientu. Liczbę piksli w obrazie, w których gradient jest większy od zadanego progu (''czarne'' piksle) normalizuje się, odnosząc ją do liczby wszystkich piksli w obrazie. Rys. 2. Obraz początkowy i jego znormalizowana KRO. Na osi pionowej umieszczamy procentowe ilości piksli ponad danym progiem. Podziałka zaznaczana jest co 10%. Punkty krzywej odpowiadające progom p 0, p 1, p 2, p 3 oznaczone są iksem.
Tak przekształcone (znormalizowane) krzywe przyjmują postać dogodną do ich porównań dla: różnych typów obrazów, różnych jasności i kontrastów oraz przetwarzania wstępnego, [3]. Dla porównania pokazano KRO dla innego obrazu testowego (rys. 4.). Krzywe KRO wykazują podobieństwo i cechy wspólne. Podobieństwo występuje dla: wszystkich używanych przez nas do tej pory (5-ciu) operatorów gradientowych, wszystkich obrazów uzyskanych za pomocą systemu kamerowego wstępnej filtracji filtrem gaussowskim o różnym parametrze σ Krzywe mają powtarzające się elementy; można je podzielić na odcinki na podstawie charakterystycznego zachowania się krzywej (zmian szybkości spadku krzywej): odcinek największego spadku krzywej, odcinek o największej krzywiźnie, odcinek rozprostowania krzywej. W związku z tym na krzywej można wyróżnić pewne punkty: s 0, s 1, s 2 i s 3 (rys. 2.) -- punkty charakterystyczne, które mogą służyć jako watrości pewnych progów dla modułów gradientów, wydają się być znaczące dla analizy KRO, a także można -- w oparciu o nie, wysunąć pewne wnioski dotyczące morfologii obrazu, którego ta krzywa dotyczy. Punkt s 0 odpowiada wartości modułu gradientu równej zero i związany jest z punktem na krzywej o maksymalnej wartości (100%) na osi rzędnych. Jest to stały punkt dla wszystkich krzywych. Próg p 0 oznacza wartość zerową progu odcięcia: wszystkie ''zaczernione'' piksle leżą ponad progiem i są widoczne w obrazie konturowym. Punkt s 1 jest nazywany punktem największego spadku krzywej (lub punktem przegięcia krzywej). Na osi x odpowiada mu próg p 1 w miejscu, gdzie styczna do krzywej przecina oś poziomą. Odcinek rozprostowania krzywej umożliwia wyznaczenie innego wyróżnionego punktu progowego - punktu s 3. Krzywa na tym odcinku przechodzi w prostą. Punkt ten wyznacza się w następujący sposób: do krzywej w miejscu jej minimalnego nachylenia konstruowana jest styczną. Styczna ta przecina oś y w punkcie, który wyznacza ilość (w %) piksli nie wystających ponad próg i odpowiada punktowi s 3 rozprostowania krzywej. Punkt ten wyznacza na osi x progowy punkt p 3. Między punktami s 1 i s 3 leży odcinek, gdzie krzywa przechodzi z fazy o dużym spadku do fazy małych zmian. Punkt maksymalnej krzywizny krzywej, leży właśnie między punktami s 1 i s 3. Na tym jej odcinku, leżącym w zakresie progów p 1 i p 3, poszukiwany jest charakterystyczny punkt s 2, w którym KRO osiąga maksimum krzywizny. Odpowiada mu wartość progu odcięcia p 2. 2.3. REDUKCJA OBRAZU ZA POMOCĄ KRO KRO można wykorzystać do automatycznej redukcji (''czyszczenia'') obrazu konturowego - zadając jedynie numer progu (p 1, p 2 lub p 3 ). W tym celu, mając obraz konturowy, należy: 1. obliczyć (wyznaczyć) KRO, 2. obliczyć (wskazany) próg czyszczenia, 3. ''wyzerować'' wszystkie piksle w obrazie gradientowym, w których moduł gradientu nie przekracza wybranego progu. Działanie KRO jako ''reduktora'' konturów jest pokazane na rys. 3., na którym są przedstawione obrazy konturów, ilustrujące wynik progowania różnymi wartościami
progu. Kolor biały oznacza piksle ''wyczyszczone'' z obrazu (nie przekraczjące progu), kolor czarny - piksle pozostawione w obrazie (o wartościach modułu ponad progiem). Im wyższa wartość progu, tym mniejsza liczba piksli pozostaje w obrazie: dla wartości progu równej zero, prawie wszystkie piksle znajdą się powyżej progu; 100% odpowiada całkowitej liczbie piksli w obrazie; dla wartości progu równej masymalnemu modułowi gradientu - moduły we wszystkich pikslach znajdą się poniżej progu i w obrazie nie pozostaną żadne piksle; w położeniach pośrednich liczba piksli ponad progiem zawarta jest między (prawie) całkowitą liczbą piksli w obrazie a zerem. Interpretacja ''czyszczenia'' obrazu konturowego za pomocą KRO może być następująca: przy przechodzeniu od mniejszych wartości progów do większych, szybkość zmian ilości piksli pozostających w obrazie znacznie się różni. Dla małych wartości modułów jest ona bardzo duża. W obrazie jest bardzo dużo piksli, w których zachodzą zmiany jaskrawości, jednak są one minimalne. Stąd małe zmiany wartości modułu powodują duży stopień redukcji ''zaczernionych'' piksli obrazu. Pomiędzy wartościami progów p 1 i p 3 szybkość zmian staje się wolniejsza. Małe zmiany w tym zakresie nie powodują tak dużych redukcji obrazu. Pozwala to przypuszczać, że zniknęły z obrazu kontury przypadkowe, mało znaczące, a pozostały stabilne, które mają naturę niezależną od stosowania metody ich wykrywania. Dla wartości modułów powyżej trzeciego progu, szybkość ''czyszczenia'' obrazu jest bardzo niska, mało przydatna do dokładnego określania progu modułu gradientu, zwłaszcza zaś automatyzacji tej czynności. Rys. 3. Obrazy gradientowe przed i po ''czyszczeniu'' obrazu z rys. 2. w/g progów p 1, p 2, p 3.
2.4. BRZEGI A CHARAKTERYSTYCZNE ODCINKI KRZYWEJ Można znaleźć zależności między opisanymi odcinkami KRO i wartościami progów a wyglądem obrazu brzegowego, tworzonego przez piksle ''zaczernione'': granice odcinka największego spadku krzywej stanowią punkty s 0 i s 1, wyznaczone wielkościami progów odcięcia p 0 i p 1. p 0 jest dolnym ograniczeniem zakresu wartości progowych dla tego odcinka krzywej. Drugim punktem granicznym jest punkt p 1, wyznaczony przez styczną do krzywej, przecinającą oś x pod największym kątem. Obraz konturowy, zredukowany w/g progu p 1, zawiera mnóstwo piksli z niewielką zmianą jaskrawości (''śmieci'') -- piksli nie powiązanych z brzegami, ale wynikających z przypadkowych zmian funkcji jasności tła. Same brzegi mają znaczną grubość (rys. 3). Odcinek rozprostowania krzywej wyznaczony jest zakresem wartości progu p 3 i wartością maksymalną (100%). Charakteryzuje się on małymi zmianami liczby piksli usuwanych z obrazu przy zwiększaniu wartości progu. Ten przedział charakteryzuje się procesem destrukcji (wymazywania) obrazu -- aż do całkowitego ''wyczyszczenia'' piksli dla progu 100%: brzegi są dużo cieńsze a przez to (co prawda) lepiej określone, ale też występuje w nich wiele długich przerw. ''Zaczernione'' piksle tła są prawie całkowicie wyeliminowane. Odcinek o największej krzywiżnie odpowiada wartościom progu zawartym między punktami p 1 i p 3. Jest to odcinek, gdzie krzywa wykazuje radykalną zmianę zachowania się liczby redukowanych piksli przy przesuwaniu progu wzdłuż osi x. Krzywa przechodzi z fazy o dużym spadku do fazy małych zmian. Sądzimy, że w tym przedziale należy szukać optymalnego progu, dla którego dwie przeciwstawne tendencje: wymazywania obrazu i wymazywania ''śmieci'' są utrzymane na dopuszczalnym poziomie. Punkt p 2 wydaje się być optymalym progiem do automatycznego ''czyszczenia'' obrazu z konturów przypadkowych, nie odpowiadających treści obrazu. 3. WPŁYW TYPU OBRAZU NA PRZEBIEG KRO W naszych badaniach poszukiwaliśmy również związku między typem obrazu i przebiegiem KRO. Do badań zostały użyte różne typu obrazów (z teksturą i bez, z różnym stopniem wypełnienia powierzchni obrazu, obrazy kontrastowe i niekontrastowe). Jedne z nich mają tło z regularną teksturą (siatka prostokątna z różną wielkością oczek), inne mają gładkie tło. Rys. 4. Obraz testowy kom_p i jego KRO.
KRO dla różnych obrazów tego samego typu są podobne co do przebiegu i charakteru zmian krzywej. Odmienne w małym stopniu są jej pewne cechy, zależnie od ilości obiektów w scenie i ich urozmaicenia (np. występowanie faktury w tle). Im bardziej scena jest wypełniona obiektami, tym łagodniejszy przebieg ma krzywa w miejscu maksymalnej krzywizny i przy wyższych wartościach liczby piksli ponad progiem rozprostowuje się. Im więcej obiektów w obrazie, tym bardziej krzywa odsuwa się od początku układu współrzędnych. Wydaje się, że to odsuwanie jest związane z długością brzegów obiektów oraz długością brzegów tekstury. Potwierdza się to zachowaniem się krzywej w serii obrazów z teksturą, gdzie KRO jest mocno odsunięta od punktu (0,0). Grubość brzegów jest przeważnie zależna od wartości progu. Dla obrazów testowych podane zostały przebiegi KRO, rys. 2. i 4. (bez wprowadzania wygładzania wstępnego). 4. WPŁYW WSTĘPNEJ FILTRACJI OBRAZU NA PRZEBIEG KRO Wstępną filtrację obrazu wykonuje się zwykle za pomocą filtru gaussowskiego, stąd nasze badania dotyczyły takiej właśnie filtracji i jej wpływu na przebieg KRO. Braliśmy pod uwagę różne wartości parametru σ i różne typy obrazów, [5]. Dla każdego obrazu zostały sporządzone wykresy KRO z uwzględnieniem zmiennego parametru σ filtru Gaussa. Na ilustracji zostały naniesione wszystkie krzywe z parametrem σ z wybranego zakresu, tak, że można porównać przebieg krzywych KRO dla kolejnych wartości tego parametru. Na krzywych KRO zaznaczone są znalezione dla nich położenia progu redukcji p 2. Parametr σ przybiera wartości: 0 ( bez filtracji, oraz 10 wartości między 0.5 i 1.4 z krokiem 0.1 (rys. 5. i 6.). Rys. 5. Obraz oryginalny z05_l i KRO z różnymi parametrami σ. Im większa wartość σ tym krzywa leży wyżej. Dla fragmentów krzywej z przedziału o większych wartościach progów oraz o większych ilościach piksli ponad progiem
(początkowa i końcowa faza przebiegu KRO), krzywe leżą blisko siebie. Natomiast w środkowej części krzywe oddalają się od siebie. Odległości między krzywymi rosną wraz ze stopniem skomplikowania sceny (ze wzrostem liczby obiektów sceny). Na obrazach mających za tło teksturę, krzywe wychodzą z jednego punktu (100% piksli ponad progiem), rozchodzą się, następnie przecinają się w okolicach pewnego punktu (bliskiego punktowi s 1 ), rozsuwają się w okolicy, gdzie leżą punkty progowe s 2, w pobliżu osi x przecinają sie drugi raz i przechodzą w płaską część krzywych, mniej lub bardziej odległych od siebie. Pęki niektórych krzywych przecinają się w sąsiedztwie pewnych punktów lub poszczególne linie przecinają się wzajemnie na pewnym obszarze. W środkowej części wykresu, międzu punktami przecięcia, KRO o mniejszych wartościach parametru σ leżą niżej, w pozostałych przedziałach wyżej. Rys. 6. Obraz oryginalny sc24_p i KRO z różnymi parametrami σ. 5. PODSUMOWANIE Przeprowadzone badanie możliwości wykorzystania KRO pozwalają wysunąć wniosek o dużej skuteczności proponowanej metody filtracji obrazów konturowych. Zaletą metody jest automatyczny dobór progu ''czyszczenia'' tła. Metoda jest skuteczna dla dużej klasy obrazów. Ponadto z kształtu KRO można wnioskować o pewnych cechach obrazu, na przykład o wypełnieniu sceny.
LITERATURA [1]. Mokrzycki W.: Encyklopedia Przetwarzania Obrazów. Akademicka Oficyna Wydawnicza, Warszawa. 1996 [2] Heath, M., Sarkar, S., Sanocki, T., Bowyer, K.: Comparison of edge detectors: a methodology and initial study. Proc. CVPR'96, San Francisco, June. [3] Grzegorek M., Mokrzycki W.,: Algorytm gradientowej detekcji konturów na obrazie z autonomicznym doborem pułapu tła. Raport Prace IPI PAN, nr 824, Warszawa. 1997 [4] Grzegorek M., Mokrzycki W.,: Detekcja i kompletowanie konturów. III Sympozjum Naukowe: Techniki Przetwarznia Obrazu - referaty i komunikaty, str. 209-217. 1998 [5] Grzegorek M., Mokrzycki W.: Eksperymenty z Krzywą Redukcji Obrazu Prace IPI PAN, nr 872, Warszawa.