Zastosowanie techniki KHM (k-średnich harmonicznych) w przetwarzaniu obrazów barwnych

Wielkość: px
Rozpocząć pokaz od strony:

Download "Zastosowanie techniki KHM (k-średnich harmonicznych) w przetwarzaniu obrazów barwnych"

Transkrypt

1 Politechnika Śląska Wydział Automatyki, Elektroniki i Informatyki Zastosowanie techniki KHM (k-średnich harmonicznych) w przetwarzaniu obrazów barwnych Mgr inż. Mariusz Frąckiewicz praca doktorska wykonana pod kierunkiem Dr hab. inż. Henryka Palusa, Prof. nzw. w Pol. Śl. GLIWICE, 211

2

3 Pragnę złożyć podziękowania promotorowi Dr hab. inż Henrykowi Palusowi, Prof. nzw. w Pol. Śl. za cenne rady i dyskusje, które zaowocowały powstaniem pracy w obecnej formie. Ponadto dziękuję Prof. dr hab. inż. Andrzejowi Świerniakowi za wieloletnią opiekę naukową i stworzenie optymalnych warunków do pracy badawczej w Zakładzie Inżynierii Systemów. A nade wszystko dziękuję mojej Żonie, której codzienne wsparcie pozwoliło mi na ukończenie niniejszej rozprawy.

4

5 Spis treści 1 Wprowadzenie i geneza pracy Cel i tezy pracy Organizacja pracy Klasteryzacja pikseli Idea klasteryzacji danych Techniki KM i KHM Wybrane metody oceny jakości obrazu Miary pochodzące z teorii sygnałów Miary jakości uwzględniające percepcję barwy Wskaźniki jakości klasteryzacji danych Wskaźniki jakości obrazu posegmentowanego Technika KHM w kwantyzacji barwy Pojęcie kwantyzacji barwy Metody inicjalizacji technik KM i KHM Wyniki kwantyzacji barwy dla KM i KHM Problem pustych klastrów Wpływ zakłóceń na KM i KHM Technika KHM w segmentacji obrazu Segmentacja obrazu Wyniki segmentacji obrazu dla KM i KHM Akceleracja obliczeń Układy wielordzeniowe i programowanie równoległe Zrównoleglenie obliczeń w KM i KHM Badania doświadczalne Podsumowanie 93 Bibliografia 95 Spis rysunków 12 Spis tabel 16

6 Wykaz skrótów i akronimów KM - (ang. k-means technique) technika k-średnich KHM - (ang. k-harmonic means technique) technika k-średnich harmonicznych MSE - (ang. Mean Squared Error) błąd średniokwadratowy PSNR - (ang. Peak Signal to Noise Ratio) szczytowy stosunek sygnału do szumu INTRA - (ang. Intra cluster distance) średnia odległość wewnątrzklastrową INTER - (ang. Inter cluster distance) odległość międzyklastrowa CIE - (ang. International Commission on Illumination) Międzynarodowa Komisja Oświetleniowa DB - (ang. Davies-Bouldin index) wskaźnik walidacyjny Daviesa-Bouldina VMF - (ang. Vector Median Filter) filtr oparty na wektorowej medianie DC - (ang. Diagonal of Cube Initialization) metoda inicjalizacji z przekątnej sześcianu RGB MM - (ang. Min - Max Initialization) metoda inicjalizacji oparta na wartościach minimalnych i maksymalnych HIST - (ang. Histogram Initialization) metoda inicjalizacji wykorzystująca histogram barw w obrazie SD - (ang. Standard Deviation Initialization) metoda inicjalizacji oparta na statystycznych parametrach chmury pikseli MC - (ang. MedianCut Initialization) metoda inicjalizacji wykorzystująca algorytm MedianCut WU - (ang. Wu Initialization) metoda inicjalizacji wykorzystująca wyniki algorytmu Wu FPGA - (ang. Field Programmable Gate Array ) programowalny układ logiczny CPU - (ang. Central Processing Unit) urządzenie cyfrowe sekwencyjne (procesor), które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy GPGPU - (ang. General-Purpose Computing on Graphics Processing Units) obliczenia ogólnego przeznaczenia na układach graficznych GPU Th - (ang. Threads) wątki programu komputerowego Cr - (ang. CPU Cores) rdzenie procesora

7

8 Rozdział 1 Wprowadzenie i geneza pracy Obraz barwny zapewnia znacznie bogatszą informację o przedstawianych obiektach, ich lokalizacji w obrazie oraz cechach niż jego achromatyczny odpowiednik. Gwałtowny postęp technologiczny sprawił, że pozyskiwanie, przetwarzanie, składowanie, transmisja czy też analiza obrazów barwnych, często wysokiej rozdzielczości, nie stanowi większego problemu. Przyczynia się to obecnie do częstszego stosowania obrazów barwnych niż achromatycznych. Obraz barwny reprezentowany jest zazwyczaj poprzez złożenie trzech obrazów monochromatycznych, z których każdy zawiera informację na temat jednej ze składowych przestrzeni barw. Najczęściej wykorzystywaną przestrzenią barw jest obecnie przestrzeń RGB, która charakteryzuje się wysokim stopniem korelacji składowych. Piksele obrazu są opisane, oprócz współrzędnych przestrzennych, przede wszystkim za pomocą składowych barwy: czerwonej - R, zielonej - G i niebieskiej - B. Techniki przetwarzania obrazu, które dają zadowalające rezultaty dla obrazów barwnych, da się z powodzeniem stosować do obrazów achromatycznych, w których składowe barwy RGB są sobie równe. Zastosowanie technik, które dobrze działają na obrazach achromatycznych do obrazów barwnych niestety nie zawsze daje dobre rezultaty ze względu na skorelowanie składowych barw oraz rozkład energii pomiędzy te składowe [4, 71]. Kwantyzacja barwy jest zagadnieniem, które powstało w wyniku ograniczeń technologicznych występujących w urządzeniach pozyskujących, drukujących i wyświetlających cyfrowe obrazy. Problem ten pomimo upływu czasu i postępu technologicznego występuje do dnia dzisiejszego. Przykładem mogą być tutaj wyświetlacze aparatów cyfrowych, telefonów komórkowych itd., w których paleta dostępnych barw jest ograniczona. W dalszym ciągu trwają poszukiwania algorytmów kwantyzacji barwy dających jak najlepsze rezultaty. Segmentacja obrazu jest nieodzownym elementem działania każdego systemu wizyjnego. Od jakości segmentacji zależy jakie decyzje wypracuje system analizujący daną sytuację. Systemy wizyjne w czasach coraz dalej idącej automatyzacji procesów wytwarzania i tworzenia systemów bezpieczeństwa, odgrywają coraz większą rolę. Techniki grupowania danych (klasteryzacji) mają bardzo szeroki zakres zastosowań. Mogą one być wykorzystywane w procesach takich jak np. grupowanie zadań, ekstrakcja informacji, eksploracja danych oraz również w cyfrowym przetwarzaniu obrazów barwnych. Stosując techniki grupowania w przetwarzaniu obrazów operujemy na pikselach, które stanowią klasteryzowane dane. Elementy jednego klastra są do siebie bardziej podobne ze względu na pewne kryteria podobieństwa np. ich barwę, położenie w obrazie itp. niż do elementów innego klastra. Klasteryzacja jest zazwyczaj procesem iteracyjnym i nienadzo-

9 1.1. CEL I TEZY PRACY 2 rowanymi, a także nie wykorzystuje wiedzy a priori na temat klasyfikowanych danych. W minionym wieku powstało wiele różnych technik klasteryzacji. Technika k-średnich (ang. k-means, KM) [2,53] jest jednym z najstarszych reprezentantów technik klasteryzacyjnych, natomiast technika k-średnich harmonicznych (ang. k-harmonic means, KHM) [95,96] zaproponowana w roku 1999 jest nowym podejściem stanowiącym rozwinięcie KM. Problematyka ta jest w dalszym ciągu intensywnie analizowana i rozwijana ze względu na dużą przydatność w klasyfikacji różnorodnych danych i szerokie spektrum zastosowań. 1.1 Cel i tezy pracy Celem pracy doktorskiej były badania nad możliwością zastosowania nowych technik klasteryzacji w przetwarzaniu obrazów barwnych. Techniki te zostały wykorzystane w operacjach kwantyzacji barwy i segmentacji obrazu [16]. Wykorzystanie techniki KHM do kwantyzacji barwy jest podejściem autorskim, nie spotykanym dotąd w literaturze. Badaniu poddane zostały różne metody inicjalizacji dla technik KM i KHM. Ze względu na dominujące w literaturze losowe podejście do etapu inicjalizacji, zaproponowane zostały nielosowe, heurystyczne metody inicjalizacji: DC, M M, HIST, SD [19,24,69] generujące dobrej jakości powtarzalne wyniki dla obrazów barwnych. Do celów inicjalizacji wykorzystano też znane algorytmy podziałowe: MedianCut oraz algorytmu Wu. Przebadano także techniki KM i KHM pod kątem zjawiska powstawania pustych klastrów w procesie klasteryzacji. Badania były prowadzone w przestrzeni barw RGB oraz w CIEL a b, która jest uważana za przestrzeń równomierną percepcyjnie. Różnica barw wyznaczana jako odległość euklidesowa w CIEL a b jest używana między innymi do oceny jakości reprodukcji obrazów barwnych. Przeprowadzone badania i uzyskane wyniki pozwoliły na sformułowanie następujących tez rozprawy doktorskiej: Technika k-średnich harmonicznych w porównaniu z klasyczną techniką klasteryzacji k-średnich, pozwala na uzyskanie lepszych wyników w kwantyzacji i segmentacji obrazów barwnych. Zastosowanie algorytmu podziałowego do inicjalizacji techniki k-średnich umożliwia poprawę efektywności klasteryzacji w stosunku do rozpatrywanych metod heurystycznych. Wykorzystanie przestrzeni barw CIEL a b zapewnia wyższą jakość klasteryzacji w porównaniu do wyników uzyskiwanych w przestrzeni RGB. 1.2 Organizacja pracy Praca składa się z siedmiu rozdziałów wraz z podrozdziałami. Rozdział pierwszy zawiera cel pracy oraz tezy rozprawy doktorskiej. Rozdział 2 omawia pojęcie klasteryzacji danych w zastosowaniu do obrazów barwnych. Została w nim opisana ogólna idea klasteryzacji pikseli. Przedstawiono także opis technik klasteryzacyjnych KM i KHM.

10 1.2. ORGANIZACJA PRACY 3 Rozdział 3 poświęcony został problemowi oceny jakości obrazu barwnego poddanego przetwarzaniu. Zostały tutaj opisane wybrane miary z zakresu teorii sygnałów stosowane do oceny jakości obrazów, a także wybrane miary uwzględniające percepcję barwy. Przedstawiono także wskaźniki jakości klasteryzacji danych i wskaźniki jakości dla obrazu posegmentowanego. Rozdział 4 opisuje problem kwantyzacji barwy. Porusza również problematykę związaną z inicjalizacją technik KM i KHM. Opisane w nim zostały zaproponowane metody inicjalizacji dla technik KM i KHM. Rozdział ten przedstawia problem powstawania pustych klastrów przy niewłaściwej inicjalizacji techniki KM. Prezentuje uzyskane wyniki badań nad zastosowaniem technik KM i KHM do kwantyzacji barwy w cyfrowych obrazach barwnych. Zawiera także porównanie osiągniętych rezultatów z wynikami uzyskanymi przy zastosowaniu innych znanych algorytmów kwantyzacji barwy. W rozdziale opisano również odporność technik KM i KHM na zakłócenia występujące w obrazach. Rozdział 5 został poświęcony operacji segmentacji cyfrowych obrazów barwnych. Przedstawiono tutaj podstawowe informacje na temat segmentacji obrazu. W rozdziale tym zamieszczono także wyniki badań nad zastosowaniem technik KM i KHM do segmentacji biomedycznych obrazów barwnych. Przedstawiono wpływ operacji przetwarzania końcowego na wyniki segmentacji. W rozdziale 6 opisano rozwiązanie pozwalające na przyśpieszenie obliczeń poprzez wykorzystanie współczesnych konstrukcji procesorów wielordzeniowych oraz ich zrównoleglenie. Zestawione zostały uzyskiwane przyśpieszenia oraz czasy obliczeń wykonanych na stacjach testowych. Pracę podsumowuje rozdział 7 zawierający najważniejsze wnioski z przeprowadzonych badań. W końcowej części zamieszczono wykaz cytowanych pozycji literaturowych, które zostały wykorzystane podczas powstawania niniejszej pracy.

11 Rozdział 2 Klasteryzacja pikseli 2.1 Idea klasteryzacji danych Klasteryzacja (ang. clustering) jest procesem podziału pewnego zbioru danych na podzbiory podobne do siebie pod względem przyjętego kryterium podobieństwa, nazywane klastrami (ang. cluster). Zadaniem klasteryzacji jest dokonanie podziału danych na klastry, których elementy są maksymalnie podobne do siebie wewnątrz podzbioru do którego należą i jednocześnie maksymalnie się różnią od elementów pozostałych podzbiorów. W literaturze można spotkać wiele różnych technik klasteryzacji danych [94]. Cyfrowy obraz barwny jest uporządkowanym zbiorem pikseli opisanych zazwyczaj za pomocą trzech składowych barwy. Różne kombinacje tych składowych definiują konkretne barwy. Barwy w obrazach naturalnych tworzą grupy (skupienia, klastry) w trójwymiarowej przestrzeni barw. Grupowanie w obrazie barwnym to proces nienadzorowanej klasyfikacji setek tysięcy lub milionów pikseli na podstawie podobieństwa ich barwy. Rozdzielczość obrazu decyduje o liczbie pikseli poddawanych grupowaniu, a ich składowe opisujące barwę (najczęściej RGB) są cechami decydującymi o przynależności do klastrów. Barwy dominujące w obrazie, ściśle korespondują z przedstawionymi obiektami i tworzą one w naturalny sposób klastry w przestrzeni barw. Piksele obrazu cyfrowego, w procesie grupowania, przypisywane są do poszczególnych klastrów. Elementy jednego klastra są do siebie bardziej podobne ze względu na pewne kryteria podobieństwa np. dla obrazów barwnych: ich barwę, położenie w obrazie itp. od elementów innych klastrów. Zakładając, że obraz barwny przedstawiony jest w trójwymiarowej przestrzeni barw oraz posiada n pikseli, otrzymujemy trójwymiarowy wektor X = {x 1,..., x n } jako dane do klasteryzacji. Na starcie algorytmu definiowana jest liczba klastrów - k oraz wartości początkowe środków klastrów (środki startowe), które tworzą trójwymiarowy wektor C = {c 1,..., c k }. Definiowane są także funkcje: przynależności m(c k x i ) oraz wagi w(x i ) [33]. Funkcje przynależności określają w jakiej części dany piksel x i należy do klastra c k. Funkcje wagi w(x i ) określają jaki udział będzie miał piksel x i w wyznaczaniu nowych współrzędnych środków klastrów c k w kolejnej iteracji. Warunek stopu dla technik klasteryzacyjnych może być zdefiniowany jako (2.1), gdzie zakładamy pewien próg δ: i = 1, 2,..., k gdzie: c k (j + 1) i c k (j) środki klastrów w iteracjach j + 1 i j. C k(j+1) C k(j) < δ, (2.1)

12 2.2. TECHNIKI KM I KHM 5 Jeżeli przemieszczenie się środków klastrów w iteracji n + 1 w stosunku do iteracji n jest mniejsze od δ, wtedy proces klasteryzacji kończy działanie. Innym spotykanym podejściem do określenia kryterium stopu jest wykonanie z góry założonej liczby iteracji. Ostatni etap klasteryzacji może polegać na zastąpieniu cech wszystkich danych należących do klastra c k cechami środka klastra c k. Dysponując zdefiniowanymi powyżej pojęciami można zaproponować ogólną ideę klasteryzacji: Ogólna idea klasteryzacji: 1. Określenie liczby k oraz początkowych środków klastrów C = {c 1,..., c k }. 2. Wyznaczenie dla każdego piksela x i funkcji przynależności m(c k x i ) oraz funkcji wagi w(x i ). 3. Wyznaczenie nowych wartości c k zgodnie ze wzorem: c k = ni=1 m(c k x i )w(x i )x i ni=1 m(c k x i )w(x i ) (2.2) 4. Sprawdzenie warunku stopu. W przypadku nie spełnienia, skok do punktu 2. Pojęcie klasteryzacji danych jest bardzo szerokim zagadnieniem i często poruszanym w literaturze [26,47] ze względu na możliwość zastosowania w różnych dziedzinach. Klasteryzacja danych może być z powodzeniem wykorzystywana w kwantyzacji barwy i segmentacji obrazów, co jest przedmiotem niniejszej rozprawy. Klasteryzacja jest także narzędziem dla eksploracji danych (ang. data mining), wyszukiwania informacji (ang. information retrieval), grupowania zadań w procesach harmonogramowania itd. W eksploracji danych klasteryzacja może być wykorzystywana do podziału klientów na pewne podgrupy. Wyszukiwanie informacji w którym mamy do czynienia z zadaniem uporządkowania i uproszczenia dostępu do informacji wykorzystuje techniki klasteryzacji np. do klasyfikacji dokumentów tekstowych, witryn internetowych, książek itd. Procesy harmonogramowania w celu zwiększenia efektywności wykorzystują klasteryzację do grupowania zadań. Zadania, które silnie się ze sobą komunikują trafiają do tych samych grup (klastrów). Tak utworzone grupy zostają przypisane do wykonania na pojedynczym procesorze bądź na grupie procesorów, które są połączone szybkimi kanałami transmisji danych. Obok pojęcia klasteryzacji w literaturze spotykane są nazwy: analiza skupień, nienadzorowana klasyfikacja. Nazwy dotyczą tej samej grupy technik analizy danych. 2.2 Techniki KM i KHM Jedną z najbardziej znanych i szybkich technik klasteryzacyjnych jest technika k-średnich (ang. k-means, KM) która została zaproponowana w latach sześćdziesiątych i została opisana przez MacQueena [53]. Podczas wykonywania pierwszego etapu techniki KM zostaje

13 2.2. TECHNIKI KM I KHM 6 określona liczba klastrów oraz ich startowe środki, które dla obrazów barwnych są wybierane z przestrzeni barw. Główna idea techniki polega na modyfikowaniu współrzędnych środków, aż do osiągnięcia minimalnej sumy kwadratów odległości wyznaczanych pomiędzy pikselami należącymi do poszczególnych klastrów i ich środkami. O przynależności pikseli do danego klastra decyduje minimalna odległość od jego środka wyznaczana zgodnie ze zdefiniowaną metryką. Po każdym przypisaniu pikseli do klastrów następuje wyznaczenie nowych środków klastrów jako średniej arytmetycznej pikseli do nich należących. Piksele w kolejnych iteracjach mogą zmieniać swoją przynależność. Algorytm KM zostaje zazwyczaj zatrzymany w przypadku kiedy różnica pomiędzy nowo wyznaczonymi środkami klastrów, a środkami z iteracji poprzedniej jest mniejsza niż wcześniej zdefiniowana wartość progową. W przypadku gdy ta wartość zostanie zostanie ustalona na poziomie równym, wówczas algorytm KM zatrzyma się, gdy żaden piksel nie zmieni przynależności do klastra w stosunku do poprzedniej iteracji. Technika KM nie zapewnia osiągnięcia globalnie optymalnego rozwiązania problemu klasteryzacji, rozwiązania uzyskane z KM są lokalnie optymalne. Wyniki klasteryzacji otrzymane z wykorzystaniem KM zależą od wielu czynników takich jak: metoda inicjalizacji czyli wyboru startowych środków klastrów, wybrana przestrzeń barw, zastosowana metryka itd. Technika KM jest jedną z najszybszych metod wykorzystywanych w klasteryzacji i jest w dalszym ciągu poddawana modyfikacjom, aby usunąć jej wady. Dla techniki KM funkcja wagi w(x i ) jest zawsze równa 1. Każdy piksel ma równy udział w obliczaniu nowych środków c k : w(x i ) = 1. (2.3) Technika ta wykorzystuje twardą przynależność (2.4) i oznacza to, że każdy z pikseli obrazu poddanego klasteryzacji może w danej iteracji należeć tylko i wyłącznie do jednego klastra. Funkcja przynależności przyjmuje wartości binarne i jest wyznaczana na podstawie zależności (2.5). Czynnikiem decydującym o przynależności do danego klastra jest minimalna odległość od jego aktualnego środka. m(c k x i ) {, 1} (2.4) m(c k x i ) = { 1 if l = arg min k x i c k 2 otherwise (2.5) Odległość piksela do środka klastra wyznaczana jest jako miara euklidesowa w przestrzeni, w której przeprowadzana jest klasteryzacja. Odległość wyznaczana pomiędzy pikselem x i i środkiem klastra c k w przestrzeni RGB wyznaczana jest zgodnie z zależnością: l RGB (x i, c k ) = (R xi R ck ) 2 + (G xi G ck ) 2 + (B xi B ck ) 2, (2.6) gdzie: R ck, G ck, B ck - składowe RGB środka klastra c k, R xi, G xi, B xi - składowe RGB piksela x i. Jeżeli proces klasteryzacji pikseli przebiega w przestrzeni RGB, to każdy środek klastra opisany jest podobnie jak piksele obrazu z wykorzystaniem składowych RGB. Wzory do wyznaczania poszczególnych składowych RGB nowych środków klastrów w iteracji n + 1

14 2.2. TECHNIKI KM I KHM 7 dla KM prezentują się następująco: C jr (n + 1) = 1 N j (n) C jg (n + 1) = 1 N j (n) C jb (n + 1) = 1 N j (n) x K j (n) x K j (n) x K j (n) x R, (2.7) x G, (2.8) x B, (2.9) gdzie: N j (n) - liczba pikseli należących do klastra K j w iteracji n, x R, x G, x B - składowe RGB pikseli należących do klastra K j. Minimalizowana funkcja celu dla techniki KM ma postać (2.1). Minimalizowana jest suma kwadratów odległości pomiędzy pikselami należącymi do klastrów i ich środkami: KM(X, C) = n i=1 min j 1...k x i c j 2. (2.1) W latach Bin Zhang zaproponował technikę k-średnich harmonicznych (ang. k-harmonic means, KHM) [95, 96]. Technika ta, będąca rozwinięciem KM, minimalizuje funkcję celu wykorzystującą średnią harmoniczną odległości punktów od środków klastrów. Technika KHM używa zmiennej funkcji wagi (2.11). Punkty mają różny wpływ podczas wyznaczania nowych środków klastrów. w(x i ) = kj=1 x i c j p 2 ( kj=1 x i c j p) 2, p 2 (2.11) KHM używa miękkiej funkcji przynależności (2.14). Wartości tej funkcji są liczbami ułamkowymi z przedziału, 1 i określają w jakim stopniu dany punkt należy do poszczególnych klastrów. Funkcja ta spełnia zależność (2.12, 2.13), co oznacza, że jej wartość maksymalna dla pojedynczego punktu jest równa jedności i może ona być rozdzielona pomiędzy poszczególne klastry. m(c j x i ) 1 (2.12) k j=1 m(c j x i ) = 1 (2.13) m(c j x i ) = x i c j p 2 kj=1 p 2, p 2 (2.14) x i c j Minimalizowana funkcja celu ma postać (2.15). Ponadto wymagane jest zdefiniowanie dodatkowego parametru p. Autor techniki Zhang proponuje stosowanie wartości niemniejszych od 2. KHM(X, C) = n k i=1 kj=1 (2.15) 1 x i c j p

15 2.2. TECHNIKI KM I KHM 8 Dla każdego piksela obrazu poddawanego klasteryzacji technikami KM lub KHM konieczne jest zatem wyznaczenie pojedynczej funkcji wagi oraz tylu funkcji przynależności, ile wynosi liczba klastrów k. Nowe środki klastrów w kolejnej iteracji wyznaczane są zgodnie z zależnością (2.2). Po każdym przeliczeniu środków klastrów następuje sprawdzenie warunku stopu. W przypadku nie spełnienia warunku stopu wyznaczane są nowe funkcje wagi i przynależności, które z kolei wpływają na dalsze przemieszczanie się środków klastrów. Technika KHM ma wbudowaną funkcję boostingową, zapożyczoną z technik uczenia nadzorowanego, gdzie służy ona do poprawy jakości klasyfikacji [47]. Funkcja boostingu zapewnia dynamikę współczynników wagi, tj. podnoszenie wartości wag dla punktów oddalonych od środków klastrów i obniżanie ich dla punktów bliskich środkom klastrów. W ostatnim czasie technika KHM przyciąga zainteresowanie badaczy, o czym świadczy jej zastosowanie do segmentacji: obrazów barwnych [32], obrazów rezonansu magnetycznego MR [14] i obrazów multispektralnych [5]. Technika KHM znalazła także zastosowanie w systemach telekomunikacyjnych [5], modelowaniu ekonomicznym [28] oraz elastycznych systemach wytwarzania [31]. Obecnie rezultaty uzyskiwane techniką KHM są dodatkowo poprawiane poprzez wykorzystanie algorytmów optymalizacyjnych takich jak symulowane wyżarzanie (ang. simulated annealing, SA) [29], przeszukiwanie tabu (ang. tabu search, TS) [3] czy optymalizacja rojowa (ang. particie swarm optimization, PSO) [86]. Ze względu na dużą uniwersalność technik klasteryzacyjnych proces klasteryzacji pikseli w obrazie barwnym może być przeprowadzony w różnych przestrzeniach barw. Najczęściej wykorzystywaną przestrzenią barw jest RGB, jednakże ze względu na jej wady i ograniczenia często sięga się do innych przestrzeni barw [67]. Szczególnie dużą rolę w obszernym zbiorze przestrzeni barw odgrywa przestrzeń CIEL a b [93]. Odległość euklidesowa wyznaczona w tej przestrzeni jest porównywalna z percepcyjną różnicą barw.

16 Rozdział 3 Wybrane metody oceny jakości obrazu 3.1 Miary pochodzące z teorii sygnałów Wyniki kwantyzacji jak i segmentacji obrazów można poddawać ocenie percepcyjnej (wizualnej). Inne podejście polega na pokazywaniu uzyskanych wyników grupie obserwatorów w celu dokonania oceny jakości i następnie wyciągnięcia wniosków na podstawie statystyki obserwacji. Oba z wymienionych podejść charakteryzuje duży subiektywizm obserwatora oceniającego wynik przetwarzania obrazu, stąd ważne jest poszukiwanie obiektywnych wskaźników jakości. Bardzo popularnym i często używanym wskaźnikiem jest błąd średniokwadratowy (ang. Mean Squared Error, M SE). Dla cyfrowych obrazów barwnych M SE wyznaczany jest pomiędzy składowymi barwy piksela w obrazie oryginalnym i składowymi piksela w obrazie powstałym w wyniku przetwarzania. M SE jest wskaźnikiem, którego wartość jest minimalizowana wraz ze wzrostem jakości obrazu wyjściowego i dla przestrzeni RGB wyznacza się go zgodnie z równaniem: MSE = 1 M N [ (R ij R 3MN i=1 j=1 ij) 2 + (G ij G ij) 2 + (B ij Bij) 2], (3.1) gdzie: M i N opisują rozdzielczość przestrzenną obrazu, R ij, G ij, B ij są składowymi barwy piksela (i, j) w obrazie oryginalnym, Rij, G ij, B ij są składowymi barwy piksela (i, j) w obrazie wynikowym. Dla obrazów barwnych wartość ta jest dodatkowo dzielona przez trzy, co wynika z liczby składowych barwy dla każdego piksela. Równie często spotykanym wskaźnikiem jakości jest P SN R - szczytowy stosunek sygnału do szumu (ang. Peak Signal-to-Noise Ratio, P SN R), który dla cyfrowych obrazów barwnych wyznaczany jest zgodnie z zależnością: t P SNR = 2log 1, (3.2) MSE

17 3.2. MIARY JAKOŚCI UWZGLĘDNIAJĄCE PERCEPCJĘ BARWY 1 gdzie: t = 2 b 1 to maksymalna możliwa wartość sygnału w obrazie przy założonej głębi bitowej b. Dla obrazów gdzie występuje głębia b = 8 bitów/kanał wartość ta wynosi 255. Wskaźnik ten wyrażany jest w decybelach (db) i jest bardzo często wykorzystywany w przetwarzaniu obrazów np. do oceny wyników uzyskiwanych podczas filtracji odszumiającej [52,79,8] czy w przetwarzaniu sekwencji obrazów [41,7,77]. Wzrost wartości P SNR oznacza poprawę jakości obrazu wynikowego. Dla dwóch identycznych obrazów wartość wskaźnika P SN R jest nieokreślona. Okazuje się jednak, że łatwo pokazać brak zgodności wskaźników takich jak MSE czy P SNR z postrzeganiem danego obrazu przez człowieka. Dobrym przykładem tego zjawiska są dwa obrazy o identycznej wartości P SN R przedstawiające tą samą scenę, a jednak mocno różniące się wizualnie [59], co obrazuje Rys. 1. W obrazie z lewej strony szum został dodany w górnej jego części, natomiast w obrazie po prawej zakłócenie występuje w dolnej części. Nie wpływa to na wartość P SNR, która w obu przypadkach wynosi 31,7 db a jednak obserwator zauważa wyraźne różnice pomiędzy tymi obrazami. Stąd w niniejszej rozprawie jakość uzyskiwanych wyników kwantyzacji i segmentacji obrazów barwnych jest oceniana przy użyciu szeregu dodatkowych wskaźników jakości, także takich, które zostały zbudowane w oparciu o wiedzę na temat postrzegania barwy przez człowieka. (a) (b) Rysunek 3.1. Dwie wizualnie różne wersje obrazu Lighthouse z jednakowym P SN R równym 31,7 db [59] 3.2 Miary jakości uwzględniające percepcję barwy W przetwarzaniu obrazów barwnych szczególnie istotną rolę odgrywają percepcyjne przestrzenie barw. Człowiekowi trudno jest opisywać postrzegane barwy posługując się składowymi RGB, natomiast znacznie łatwiej opisywać barwę za pomocą podstawowych percepcyjnych atrybutów barwy. Do atrybutów tych zaliczamy: odcień H, nasycenie S oraz intensywność I (można się też spotkać z jasnością L czy jaskrawością B). Przestrzenie barw,

18 3.2. MIARY JAKOŚCI UWZGLĘDNIAJĄCE PERCEPCJĘ BARWY 11 które bazują na tych atrybutach można nazywać percepcyjnymi przestrzeniami barw [67]. Do grupy tych przestrzeni należą HSI, HSV, HLS, różniące się się wzorami transformacji z RGB do danej przestrzeni oraz interpretacją geometryczną. Składowe definiujące odcień i nasycenie barwy są szczególnie użyteczne w systemach wizyjnych rozpoznających obiekty. Odcień i nasycenie opisują obiekty znajdujące się w scenie w sposób niezależny od zmian intensywności, które są powiązane z oświetleniem sceny. Często do opisu przestrzeni typu HSI używa się oznaczenia HSx z powodu istnienia wielu jej wariantów. Należy zaznaczyć, że w dalszym ciągu powstają nowe wersje przestrzeni barw percepcyjnych. Inna klasą przestrzeni barw są percepcyjnie równomierne przestrzenie barw. Przestrzeń barw może być uznana za percepcyjnie równomierną, jeżeli stosowana w niej miara podobieństwa barw jest zgodna z ich podobieństwem percepcyjnym. Percepcyjne przestrzenie barw nie zawsze są percepcyjnie równomiernymi przestrzeniami np. HSI, która oparta jest na zbyt uproszczonych założeniach. W 1976 roku Międzynarodowa Komisja Oświetleniowa (CIE) zaproponowała percepcyjnie równomierne przestrzenie barw CIEL a b oraz CIEL u v. Przestrzeń CIEL a b, której składowe to L a b stosowana jest głównie do światła odbitego, natomiast przestrzeń CIEL u v o składowych L u v stosowana jest głównie do światła emitowanego. Wspólną cechą obu tych przestrzeni jest niezależność od urządzeń, w których są stosowane. Przy budowie przestrzeni CIEL a b i CIEL u v CIE wykorzystała wiedzę o procesach opozycyjnych w percepcji barwy. Przestrzenie te zostały opisane wokół 3 par barw opozycyjnych: czarny-biały, czerwony-zielony i żółty-niebieski. W przetwarzaniu obrazów częściej wykorzystywaną przestrzenią jest CIEL a b. Należy mieć na uwadze, że nawet w CIEL a b równomierność percepcyjna jest w pewnym stopniu przybliżona. CIE w celu dokładniejszego przybliżenia zaproponowało wyrażanie różnicy barw za pomocą odległości nieeuklidesowych: DeltaE94 oraz DeltaE. W niniejszej rozprawie wykorzystano euklidesową różnicę barw w przestrzeni CIEL a b do oceny jakości uzyskiwanych wyników. Wskaźnik jakości E wyznaczany pomiędzy obrazem oryginalnym i przetworzonym jest wyznaczany zgodnie z zależnością (3.3), która odpowiada CIE76 [93]: E = 1 M N ( ) 2 ( ) 2 ( 2, L ij L MN i=1 j=1 ij + a ij a ij + b ij b ij) (3.3) gdzie: M i N opisują rozdzielczość przestrzenną obrazu, L ij, a ij, b ij są składowymi barwy w CIEL a b piksela (i, j) w obrazie oryginalnym, L ij, a ij, b ij są składowymi barwy CIEL a b piksela (i, j) w obrazie wynikowym. Dodatkowym wskaźnikiem wykorzystanym do oceny jakości opartym na percepcji barwy była strata barwności obrazu (3.7). Pojęcie barwności (ang. colourfulness) zostało zaproponowane przez R.W.G. Hunta w 1977 roku [4]. Używając pojęcia barwa odnosimy się zazwyczaj do pojedynczego piksela, natomiast trudno jest mówić o barwie obrazu, który jest tworzony przez zbiór pikseli o różnych barwach. Barwność nazywana chromatycznością (ang. chromaticness) jest szerszym pojęciem opisującym chromatyczność powierzchni (posiadanie odcienia). Barwność obrazu (ang. image colourfulness) jest powiązana z obecnością w obrazie pikseli o wysokonasyconych barwach i różnych odcieniach [17]. W celu ilościowej oceny barwności obrazu konieczna jest transformacja z przestrzeni RGB do percepcyjnej przestrzeni barw. Przeglądając pozycje literaturowe można spotkać różne podejścia do problemu wyznaczania barwności obrazu. W ostatnich latach zaproponowano nową miarę barwności,

19 3.3. WSKAŹNIKI JAKOŚCI KLASTERYZACJI DANYCH 12 która została oparta na statystycznych parametrach rozkładu składowych opozycyjnych RG i Y B [34]. Autorzy tej miary przeprowadzili badania psychofizyczne na grupie 2 osób. Uczestnicy badania klasyfikowali zbiór 84 obrazów do 7 zaproponowanych grup oceniając ich barwność. Na podstawie uzyskanych wyników Hasler i Suesstrunk zaproponowali miarę barwności obrazów M, która jak się okazuję jest stosunkowo prosta do wyznaczenia i silnie skorelowana z danymi eksperymentalnymi (95%): M = σ 2 rg + σ 2 yb +, 3 µ 2 rg + µ 2 yb, (3.4) gdzie: σ rg, σ yb - to odpowiednio odchylenia standardowe składowych opozycyjnych RG i Y B, µ rg, µ yb - to wartości średnie składowych opozycyjnych RG i Y B pikseli obrazu. Aby wyznaczyć barwność obrazu dokonuje się transformacji z przestrzeni trójwymiarowej RGB do przestrzeni dwuwymiarowej RG i Y B. Po wyznaczeniu składowych opozycyjnych dla wszystkich pikseli obrazu wyznacza się odpowiednio średnie i odchylenia standardowe w przestrzeni RG i Y B. Barwność obrazu można zaliczyć do takich wskaźników jakości obrazu jak ostrość czy naturalność. Składowe opozycyjne dla pikseli obrazu barwnego wyznaczane są zgodnie z zależnościami: RG ij = R ij G ij, (3.5) gdzie: R ij - składowa czerwona piksela (i, j), G ij - składowa zielona piksela (i, j), gdzie: B ij - składowa niebieska piksela (i, j). Y B ij =, 5(R ij + G ij ) B ij, (3.6) Wskaźnik jakości oparty na stracie barwności obrazu M jest minimalizowany podczas podczas wielu operacji przetwarzania obrazu: M = M oryg M przetw, (3.7) gdzie: M oryg - barwność obrazu oryginalnego, M przet - barwność obrazu po przetwarzaniu. Wychodzi się tutaj z założenia, że barwność obrazu w wyniku przetwarzania nie powinna ulec zmianie, natomiast im większa strata barwności w stosunku do oryginału, tym gorsza jakość obrazu. W niniejszej pracy strata barwności M była wykorzystywana do oceny wyników kwantyzacji, ale wskaźnik ten może być z powodzeniem wykorzystywany również do oceny innych operacji przetwarzania obrazów takich jak np. kompresja stratna (JPEG, JPEG) czy filtracja obrazów barwnych [65]. W pracy [64] wykorzystano stratę barwności M jako wskaźnik jakości dla operacji kwantyzacji. 3.3 Wskaźniki jakości klasteryzacji danych Oceniając wynik segmentacji z punktu widzenia klasteryzacji danych można skorzystać z miar odnoszących się bezpośrednio do klasteryzacji stosowanej nie tylko w przetwarzaniu obrazów. Założenia w procesach klasteryzacji są bardzo podobne do tych, którymi się

20 3.3. WSKAŹNIKI JAKOŚCI KLASTERYZACJI DANYCH 13 kierujemy w segmentacji obrazów barwnych. W klasteryzacji danych dąży się do maksymalnej kompaktowości klastrów, a także do maksymalnie możliwej ich separowalności. Dobry wynik segmentacji podobnie powinien się charakteryzować obszarami, które są jednorodne w miarę możliwości, a z drugiej strony na tyle kontrastowe, aby w łatwy sposób można było wyodrębnić ich granice. Podczas walidacji klasteryzacji danych operuje się zazwyczaj dwiema miarami: odległością wewnątrzklastrową (ang. intra-cluster distance), która może być liczona jako suma odległości punktów klastra do jego środka i świadczyć o kompaktowości klastra, a także odległością miedzyklastrową (ang. inter-cluster distance), która może być wyznaczona jako suma odległości wszystkich środków klastrów od siebie i świadczyć o wzajemnej separowalności klastrów. W pracy [73] została zaproponowana miara walidująca jakość klasteryzacji (ang. Validity Measure, V M), która została także wykorzystane w niniejszej rozprawie w dwóch wersjach (3.8) i (3.9) do oceny jakości segmentacji obrazu: V M 1 = Intra Inter 1, (3.8) V M 2 = Intra Inter 2, (3.9) gdzie: Intra - średnia odległość wewnątrzklastrowa, Inter 1 i Inter 2 wielkości reprezentujące odległość międzyklastrową. Średnia odległość wewnątrzklastrowa opisująca kompaktowość klastrów może być wyznaczona jako: Intra = 1 k x C j 2, (3.1) MN j=1 x K j gdzie: M i N- opisują rozdzielczość obrazu w pikselach, k - liczba klastrów, x - piksel należący do klastra K j, C j jest środkiem klastra K j. Separowalność klastrów była wyznaczana dwoma sposobami. Pierwszy z nich opisany jest jako suma odległości wszystkich środków klastrów: Inter 1 = k 1 k i=1 j=i+1 gdzie: C i, C j - środki odpowiednich klastrów. C i C j 2, (3.11) Drugi sposób wyznaczania separowalności bierze pod uwagę minimalną odległość pomiędzy środkami klastrów: gdzie: i = 1, 2,..., k 1 i j = i + 1,..., k. Inter 2 = min( C i C j 2 ), (3.12) Wartość wskaźnika V M jest minimalizowana w celu osiągnięcia dobrych wyników klasteryzacji i może być także z powodzeniem wykorzystywana do określenia prawidłowej liczby klastrów dla danego zbioru danych.

21 3.4. WSKAŹNIKI JAKOŚCI OBRAZU POSEGMENTOWANEGO 14 W obszernej pracy dotyczącej klasteryzacji danych [26] autorzy zamieścili cały rozdział dotyczący miar walidacyjnych dla klasteryzacji - tzw. indeksy walidacyjne (ang. validity indices). Jednym z wymienianych tam indeksów walidacyjnych jest indeks Daviesa- Bouldina [11], wyrażony za pomocą zależności: DB = 1 k n i=1 { } Sn (C i ) + S n (C j ) max i=1,i j, (3.13) S(C i, C j ) gdzie: k - liczba klastrów, S n (C i ) - średnia odległość punktów należących do klastra i do jego środka C i, S n (C j ) - średnia odległość punktów należących do klastra j do jego środka C j, S(C i, C j ) - odległość pomiędzy środkami klastrów C i i C j. Mała wartość DB odpowiada sytuacji klastrów zwartych i wzajemnie separowanych. Stosując wielkość DB do oceny jakości segmentacji obrazu dąży się zatem do minimalizowania tego wskaźnika. 3.4 Wskaźniki jakości obrazu posegmentowanego W wyniku segmentacji obrazu dążymy do wyodrębnienia z obrazu interesujących obszarów odpowiadających istniejącym obiektom, czyli dokonujemy swojego rodzaju uproszczenia obrazu. Niemniej jednak zależy nam na tym, aby to uproszczenie zachowywało w jak największej mierze cechy oryginału. Ocena jakości uzyskanego wyniku segmentacji obrazu jest znacznie bardziej złożona niż ocena wyników kwantyzacji barwy. Z jednej strony dążymy do maksymalnego uproszczenia segmentowanego obrazu, czyli do zredukowania liczby obszarów powstałych w wyniki segmentacji, a z drugiej strony chcemy zachować jak najlepsze odwzorowanie obiektów i ich cech (np. barwy, kształtu, położenia, krawędzi). Z jednej strony źle dobierając parametry segmentacji można otrzymać wynik, który charakteryzuje się tzw. nadsegmentacją - zbyt duża liczba obszarów, a z drugiej strony można doprowadzić do niedosegmentacji - zbyt mała liczba obszarów w obrazie wynikowym. Obecnie mamy do czynienia z brakiem powszechnie akceptowalnych kryteriów, czy też procedur oceny wyników segmentacji. Przeglądając pozycje literaturowe pod kątem metod oceny wyników segmentacji można znaleźć w pracy [97] podział metod oceny na analityczne i eksperymentalne. Brak ogólnej teorii dotyczącej segmentacji obrazu powoduje, że metody analityczne są słabo rozwinięte. Oczywiście można tutaj także prowadzić oceny eksperymentalne posiłkując się ocenami wyników segmentacji dokonanymi przez eksperta lub grupę ekspertów, jednakże zawsze będą to wyniki w dość dużym stopniu subiektywne. W pracy [6] została zaproponowana empiryczna funkcja oceny jakości segmentacji dla klasteryzacyjnych technik segmentacji. Borsotti i in. sformułowali funkcję oceny jakości jako: Q(I) = 1 R (MN) R [ i=1 e 2 i 1 + log A i + ( ) R (Ai ) 2 ], (3.14) gdzie: I - obraz po segmentacji, M, N - rozdzielczość obrazu w pikselach, R - liczba obszarów w posegmentowanym obrazie, A i - pole obszaru z indeksem i, R(A i ) - liczba obszarów o polu równym A i a e i - błąd barwy obszaru z indeksem i. A i

22 3.4. WSKAŹNIKI JAKOŚCI OBRAZU POSEGMENTOWANEGO 15 Błąd barwy w wyrażeniu (3.14) jest liczony jako suma odległości euklidesowych pomiędzy składowymi barwy pikseli obrazu i składowymi średniej barwy, która jest cechą obszaru do którego należą piksele w posegmentowanym obrazie. W różnych przestrzeniach barw błędy trudno ze sobą porównywać. Dlatego przed obliczeniem Q(I) dokonuje się z powrotem transformacji do przestrzeni RGB. Równanie (3.14) składa się z czterech czynników. Pierwszy czynnik jest czynnikiem normalizującym, który dzieli wartość wskaźnika przez rozmiar obrazu i dodatkową wartość skalującą. Drugi czynnik podnosi wartość Q(I) dla wyników segmentacji, w których mamy do czynienia ze zbyt dużą liczbą obszarów (nadsegmentacja), które z kolei charakteryzują się małym błędem barwy. Trzeci czynnik bierze pod uwagę obszary niejednorodne charakteryzujące się dużym błędem barwy także podnosząc wartość Q(I). Ponieważ wynik segmentacji powinien charakteryzować się maksymalnie małą możliwą do osiągnięcia liczbą obszarów przy zachowaniu wymaganych szczegółów, to występuje tutaj jeszcze ostatni czynnik, gdzie mamy do czynienia z dzieleniem przez powierzchnię obszaru. Funkcja oceny Q(I) jest minimalizowana dla osiągnięcia dobrych wyników segmentacji. Im lepszy wynik segmentacji, tym mniejsza wartość Q(I).

23 Rozdział 4 Technika KHM w kwantyzacji barwy 4.1 Pojęcie kwantyzacji barwy Każdy naturalny obraz barwny zawiera pewną ograniczoną liczbę barw. Liczba ta stanowi jedynie podzbiór wszystkich możliwych do uzyskania barw, co jest z kolei ograniczone poprzez liczbę bitów na kanał za pomocą której zapisywana jest informacja barwna. Obecnie najczęściej wykorzystuje się 8 bitów dla każdego z kanałów przestrzeni barw, w rezultacie daje to sumaryczną, maksymalną do osiągnięcia liczbę barw równą Można oczywiście wygenerować grafikę komputerową, która zawierałaby pełną paletę barw. Obraz taki musiałby posiadać rozdzielczość przestrzenną, co najmniej równą pikseli i wtedy każdy z pikseli posiadałby inną barwę. W naturalnych obrazach barwnych liczba barw jest zazwyczaj ograniczona poprzez rozdzielczość przestrzenną samego obrazu jak również poprzez samą treść, którą dany obraz reprezentuje. Kwantyzacja barwy jest jedną z typowych operacji wykonywanych w przetwarzaniu obrazów barwnych. Wiele programów służących do cyfrowego przetwarzania obrazów posiada wbudowane algorytmy kwantyzacji. Kwantyzacja barwy jest procesem redukcji liczby barw w obrazie połączonym z zachowaniem maksymalnego podobieństwa pomiędzy oryginałem, a obrazem kwantowanym. Podczas kwantyzacji barwy mamy do czynienia z procesem transformacji obrazu opisanego przy pomocy 24 bitów/piksel (ang. true color image) na obraz barwny posiadający znacznie mniejszą, specjalnie dobraną liczbę barw (paleta barw). Paleta barw może być stała (uniwersalna) lub adaptacyjna (dostosowywana do każdego obrazu). Jakość kwantyzacji barwy z wykorzystaniem palety stałej jest znacznie gorsza niż w przypadku wykorzystania palety dopasowanej do danego obrazu. Kwantyzacja barwy to właściwe rekwantyzacja, gdyż przeprowadzana jest na cyfrowych obrazach barwnych, które powstały w wyniku operacji próbkowania i kwantyzacji zachodzących w urządzeniach rejestrujących obraz. Kwantyzacja barwy jest zagadnieniem, które pojawiło się jako wynik ograniczeń technologicznych występujących w urządzeniach pozyskujących, drukujących i wyświetlających cyfrowe obrazy barwne. Kluczowym problemem w procesie kwantyzacji jest poszukiwanie optymalnej palety barw, która zostanie użyta do prezentacji wyniku - obrazu po kwantyzacji. Problem ten nie jest trywialny, ponieważ obrazy naturalne zawierają zazwyczaj dużą liczbę barw, a tym samym trudne jest ich przedstawienie za pomocą sil-

24 4.1. POJĘCIE KWANTYZACJI BARWY 17 nie zredukowanej palety zachowując przy tam maksymalne podobieństwo do oryginału. Zdecydowana większość algorytmów kwantyzacji nie wykorzystuje informacji o strukturze obrazu. Kwantyzacja barwy jest szeroko opisywana w wielu podręcznikach omawiających przetwarzanie obrazów barwnych [8, 13]. Nowe barwy w procesie kwantyzacji są wybierane w taki sposób, aby zminimalizować różnicę barwy pomiędzy obrazem oryginalnym i wynikiem kwantyzacji. W celu osiągnięcia minimalnej różnicy barw (błędu kwantyzacji) konieczne jest adaptacyjne budowanie zredukowanej palety barw. Błąd kwantyzacji silnie zależy od liczby barw występujących w przetwarzanym obrazie, liczby barw w palecie wynikowej (np. 8, 16, 32, 64, 256 barw), metody wyboru barw, które znajdą się w palecie i od techniki klasyfikacji pikseli obrazu. Proces kwantyzacji barwy jest traktowany jako pomocnicza operacja w przetwarzaniu obrazów, widzeniu i grafice komputerowej. Jednym z przykładów zastosowań kwantyzacji barwy jest etap presegmentacji, który redukuje złożony proces segmentacji obrazu [12]. Innym przykładem jest zastosowanie kwantyzacji w procesie wstawiania znaków wodnych w obrazach barwnych (ang. color image watermarking) [84]. Systemy wyszukiwania obrazów w bazach danych (ang. content-based image retrieval, CBIR) wykorzystują histogramy o możliwe zredukowanych skalach barw, powstałe w wyniku kwantyzacji barwy [88]. Kwantyzacja barwy jest pewnym rodzajem stratnej kompresji obrazu. Algorytmy kwantyzacji barwy są także ciągle używane do prezentacji prawdziwego obrazu barwnego w urządzeniach z ograniczonymi możliwościami wyświetlania barw. Przykładem takiego zastosowania mogą być wyświetlacze telefonów komórkowych lub aparatów cyfrowych, których zdecydowana większość nie posiada jeszcze możliwości wyświetlania milionów różnych barw. W kwantyzacji barwy nie ma mowy o uniwersalności palety barw. Obrazuje to Rys. 4.1, gdzie obraz przedstawiający cytryny został poddany kwantyzacji na 256 barw. Stosunkowo liczna paleta, która jest odpowiednia dla obrazu przedstawiającego cytryny nie nadaje się dla innych obrazów - wyniki są nie do zaakceptowania. W czasach kiedy komputery nie były w stanie wyświetlać palety liczniejszej niż 256 barw, dość popularna była paleta stała licząca 216 barw nazywana paletą bezpieczną (ang. Web-Safe palette). Paleta ta zapewniała jednakowe wyświetlanie się barw na wszystkich komputerach przy występujących ograniczeniach sprzętowych. Szczególną cechą tej palety jest to, że każda składowa barwy RGB może przyjąć tylko jedną z sześciu wartości szesnastkowych: x, x33, x66, x99, xcc lub xff. W obecnych czasach wielu programów graficznych w dalszym ciągu umożliwia kwantyzację barw obrazu do palety W eb Safe. Kwantyzacja może być traktowana jako problem grupowania (klasteryzacji) pikseli - poszukujemy klastrów, które najlepiej reprezentują barwy obrazu. W takich procesach liczba klastrów k utożsamiana jest z liczbą barw jaką chcemy osiągnąć w obrazie po kwantyzacji. Zwykle k = 2 n, gdzie n = 1, 2, 3,..., 8 i więcej. Adaptacyjne techniki kwantyzacji barwy można podzielić na dwie klasy. Pierwszą z nich stanowią techniki podziałowe, natomiast drugą techniki klasteryzacyjne. Techniki podziałowe dokonują podziału przestrzeni barw obrazu poddawanego kwantyzacji na odpowiednio mniejsze podprzestrzenie barw. Poszukiwana paleta barw jest budowana poprzez wybór barw reprezentatywnych z uzyskanych podprzestrzeni. MedianCut (MC) [35] i algorytm Wu [91, 92] są doskonałymi przykładami tej klasy technik. Do znanych algorytmów należą też: Popularity algorithm [35], Variance-Minimization algorithm [87] i Octree algorithm [27]. Drugą klasę adaptacyjnych technik kwantyzacji stanowią techniki klasteryzacyjne takie jak KM i KHM.

25 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 18 Rysunek 4.1. Brak uniwersalności wyznaczonej palety barw 4.2 Metody inicjalizacji technik KM i KHM Zasadniczą wadą najpopularniejszej techniki grupowania KM zależność uzyskanego wyniku od inicjalizacji procesu grupowania, na którą składa się określenie liczby klastrów k, zadanie początkowych środków klasterów i kryterium stopu. W celu określenia liczby klasterów można korzystać, albo z wiedzy a priori o obrazie, albo z analizy histogramu obrazu, albo z wielokrotnego grupowania z różnymi wartościami k. Głównym problemem inicjalizacji jest jednak sposób zadania początkowych środków klastrów. Zastosowanie technik klasteryzacyjnych w przetwarzaniu obrazów wiąże się z wyborem barw dla startowych środków klastrów. W większości opisywanych w literaturze zastosowań technik KM proponowany jest losowy wybór środków klasterów; np. dla obrazów w postaci losowania współrzędnych pikseli w obrazie. Wynik losowania ma więc decydujący wpływ na ilość iteracji w procesie klasteryzacji i uzyskaną jakość grupowania. Losowe metody inicjalizacji często prowadzą też do niepożądanego zjawiska powstawania tzw. pustych klastrów, co zostanie omówione w dalszej części rozprawy. Z punktu widzenia teorii optymalizacji należy mieć na uwadze, że nie istnieje metoda inicjalizacji, która gwarantuje dla każdego zbioru danych osiągnięcie globalnego minimum optymalizowanej funkcji celu. Zarówno technika KM jak i KHM potrzebują automatycznych metod inicjalizacji, które prowadzą do osiągnięcia jak najlepszego rezultatu, który zazwyczaj jest wynikiem optymalnym lokalnie. Poszukiwanie coraz lepszych metod inicjalizacji dla technik klasteryzacyjnych jest nadal przedmiotem badań [9, 44]. Metody inicjalizacji technik klasteryzacyjnych można dzielić na wiele różnych sposobów. Wydaje się jednak, że najistotniejszy jest podział ze względu na trzy przyjęte kryteria, które jasno określają właściwości osiągniętych wyników klasteryzacji:

26 4.2. METODY INICJALIZACJI TECHNIK KM I KHM Podział ze względu na powtarzalność klasteryzacji: inicjalizacja losowa, inicjalizacja deterministyczna. 2. Podział ze względu na zależność od danych: inicjalizacja arbitralna, inicjalizacja adaptacyjna. 3. Podział ze względu na udział człowieka: inicjalizacja automatyczna, inicjalizacja ręczna. Tekstem pogrubionym zostały zaznaczone metody inicjalizacji o największej wartości użytkowej. Oczywiście wybrana metoda inicjalizacji może jednocześnie należeć do kilku grup z wymienionego podziału. Problem inicjalizacji może zostać pominięty poprzez stosowanie wspomnianego podejścia losowego do tego etapu klasteryzacji. Wartości opisujące startowe środki klastrów są wtedy wybierane losowo ze zadanego zbioru danych różnymi metodami - np. poprzez losowanie funkcji przynależności m(c j x i ) i wyliczeniu ich pozycji lub wprost poprzez losowanie współrzędnych. Techniki klasteryzacyjne takie jak KM są bardzo wrażliwe na wybór startowych środków klastrów. Losowa inicjalizacja powoduje, że bardzo często otrzymuje się różne rezultaty. Sytuacja taka została przedstawiona na Rys. 4.2 i Rys 4.3, gdzie wybór startowych środków klastrów drastycznie wpływa na osiągane rezultaty podczas klasteryzacji tych samych danych. Zbiór danych o cechach x i y został poddany klasteryzacji z k=3 i przeprowadzono 5 iteracji [49]. Barwy punktów na płasz- (a) (b) (c) (d) (e) Rysunek 4.2. Klasteryzcja danych o cechach x i y przy inicjalizacji losowej z k=3

27 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 2 (a) (b) (c) (d) (e) Rysunek 4.3. Klasteryzcja danych z Rys. 4.2 przy innym losowym wyborze startowych środków klastrów dla k=3 czyźnie cech x, y wskazują na przynależność do klastra. Niektórzy badacze proponują, aby wykonywać klasteryzację z inicjalizacją losową wielokrotnie, wybierając najlepszy rezultat. Podejście takie wymaga odpowiednio długiego czasu przetwarzania, co jest szczególnie uciążliwe dla dużych zbiorów danych poddawanych klasteryzacji. Długi czas oczekiwania na zadowalający wynik eliminuje to podejście z możliwości wykorzystania w systemach wizyjnych pracujących w przemyśle. Należy szukać metod inicjalizacji dających przede wszystkim dobre, ale i powtarzalne rezultaty, co powoduje, że metody losowe nie są dobrym rozwiązaniem. Dodatkowe wymagania stawiane metodom inicjalizacji to możliwość dopasowywania się do zmiennego zbioru danych. Cyfrowe obrazy barwne mogą prezentować najróżniejsze treści, co powoduje, że metoda inicjalizacji musi dopasowywać się do nowego problemu klasteryzacji. Postępująca automatyzacja minimalizuje udział człowieka w różnych procesach i tutaj sytuacja jest podobna. Poszukuje się inicjalizacji automatycznych, które prawidłowo wyznaczą startowe środki klastrów bez konieczności udziału człowieka, którego cechy osobnicze i subiektywne postrzeganie wpływają znacznie na wybór startowych środków. Zakładając, że postawione zostało zadanie klasteryzacji bardzo prostego obrazu wygenerowanego komputerowo, przyjęto k=5 ze względu na dokładnie taką liczbę barw występującą w tym obrazie i taką samą liczbę obiektów wliczając niebieskie tło. Obiekty posiadają idealnie taką samą barwę i są reprezentowane w przestrzeni RGB jako pojedyncze punkty. W wyniku spodziewano się otrzymania rezultatu w postaci idealnie takiej samej jak oryginał. Zastosowano trzy różne położenia dla startowych środków klastrów, a następnie wykonano klasteryzację technikami KM i KHM wykorzystując dla obu technik te same środki klastrów. Opisywana sytuacja została przedstawiona na Rys Jak się okazuje wynik dla techniki KM nie jest najlepszy, a dodatkowo za każdym razem jest inny.

28 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 21 (a) (b) (c) (d) (e) (f) (g) Rysunek 4.4. Obraz oryginalny (a) i wyniki klasteryzacji technikami KM (b, c, d) i KHM (e, f, g). Dla par: (b) (e), (c) (f), (d) (g) wykorzystano te same startowe środki klastrów Technika KHM wypada w tej sytuacji wręcz wzorowo. Wynik jest stabilny i dokładnie taki jak można się było spodziewać. Dostajemy obraz identyczny z oryginałem. Wrażliwość na inicjalizację, szczególnie dla techniki KM powoduje, że ciągle poszukiwane są nowe metody wyboru startowych środków klastrów. Ze względu na duży wpływ etapu inicjalizacji na proces klasteryzacji, duży nacisk w niniejszej rozprawie został położony na poszukiwanie metod inicjalizacji gwarantujących osiągnięcie wysokiej jakości powtarzalnych rezultatów. Inicjalizacje losowe zostały zatem odsunięte na dalszy plan. Zaproponowano deterministyczny wybór startowych środków klastrów DC i szereg inicjalizacji adaptacyjnych: HIST, MM, SD. Dokonano także syntezy algorytmów podziałowych takich jak MedianCut (MC) i algorytm Wu (WU) z technikami klasteryzacyjnymi. Barwy, które zostały znalezione w wyniku działania algorytmu podziałowego były używane jako startowe środki klastrów. W naturalnych obrazach barwnych można znaleźć barwy dominujące, które w sposób naturalny tworzą klastry w przestrzeni barw. Rys. 4.5 przedstawia obraz testowy oraz jego interpretację w przestrzeni barw RGB. W układzie współrzędnych, odpowiednich do rozpatrywanej przestrzeni barw piksele tworzą chmurę punktów. W jej skład wchodzą mniejsze skupiska pikseli odpowiadające obiektom znajdującym się w przetwarzanym obrazie. Chmura obrazu niesie informację na temat występujących w nim barw, natomiast nie zawiera informacji o ich liczebności i przestrzennej lokalizacji. Dla obrazów generowanych komputerowo chmura pikseli jest zazwyczaj znacznie uboższa, a w skrajnych przypadkach mamy do czynienia z pojedynczymi punktami w przestrzeni barw. Chmura obrazu w procesie kwantyzacji zostaje zredukowana do pojedynczych punktów, które jednoznacznie reprezentują zredukowaną paletę barw. Dla technik klasteryzacji punktami tymi są końcowe położenia środków klastrów. Do celów badawczych zostały stworzone odpowiednie skrypty w oprogramowaniu Matlab, które pozwalają na wizualizację procesu klasteryzacji dla obrazów barwnych. W sze-

29 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 22 (a) (b) Rysunek 4.5. Obraz oryginalny (a) i jego reprezentacja graficzna w sześcianie RGB (b) - chmura pikseli ścianie RGB można obserwować aktualne położenia środków klastrów, a także ścieżki po których przemieszczają się w kolejnych iteracjach. Wizualizacja ta może być wykorzystywana do badania przebiegu klasteryzacji nie tylko danych obrazowych. Ograniczeniem jest tutaj rozmiar przestrzeni cech, który nie może być większy od 3. Wizualizacja klasteryzacji danych o dłuższych wektorach cech jest co najmniej trudna do wyobrażenia. W dalszej części niniejszej pracy zostały opisane zaproponowane metody inicjalizacji dla technik KM i KHM. Wykonane wizualizacje powstały w wyniku klasteryzacji obrazu z Rys Dla zachowania czytelności wizualizacji proces klasteryzacji był przeprowadzany z niskim k = 8 i wykonano 1 iteracji; dla techniki KHM przyjęto parametr p = 2. Chmura obrazu zostaje przedstawiona jako punkty o współrzędnych (R, G, B) o odpowiadających tym współrzędnym barwom. Środki klastrów zaznaczone są kółkami o czarnych krawędziach. Wnętrza tych kółek mają barwę wynikającą z aktualnego położenia danego środka klastra. Niebieskimi liniami wykreślono ścieżki po których przemieszają się klastry w kolejnych iteracjach. Zmiany położenia klastrów skutkują zmianą ich barwy, co także obrazują przedstawione wizualizacje. Inicjalizacja DC jest podejściem deterministycznym niezależnym od treści obrazu. Podejście to polega na podziale przekątnej sześcianu (ang. diagonal of cube) będącego graficzną reprezentacją przestrzeni RGB na k segmentów. Podziałowi podlega zatem linia łącząca punkt idealnej czerni o składowych RGB: (,, ), z punktem idealnej bieli o składowych: (255, 255, 255). W następnym etapie środki tych segmentów zostają wybrane jako startowe środki klastrów. W podejściu tym startowe środki są zatem zawsze achromatyczne. Zastosowano takie podejście mając na celu dobre odseparowanie klastrów przynajmniej w początkowej fazie klasteryzacji. Przebieg procesu klasteryzacji z inicjalizacją DC dla techniki KM przedstawia Rys. 4.6, zaś dla techniki KHM Rys Dla techniki KM można tutaj zaobserwować brak zmian położeń jednego z środków klastrów w procesie, który jest umieszczony najbliżej barwy białej na osi szarości. Brak zmian położeń środków klastrów bardzo często wskazuje na to, że są to tzw. puste klastry. Problem pustych klastrów zostanie poruszony w dalszej części niniejszej rozprawy. Dla techniki KHM zjawisko to nie

30 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 23 występuje. Dodatkowo można zaobserwować, że technika KM dość gwałtowanie modyfikuje położenia środków klastrów w kolejnych iteracjach w porównaniu z KHM. Dla KHM ścieżki po których poruszają się środki są znacznie gładsze. 15 BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek 4.6. Proces klasteryzacji techniką KM z inicjalizacją DC: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów Metoda inicjalizacji MM jest w założeniu podobna do inicjalizacji DC, ale bierze już pod uwagę rozkład pikseli przetwarzanego obrazu w przestrzeni barw. Obserwując rozkład pikseli dla obrazów naturalnych w sześcianie RGB można zauważyć, że zazwyczaj nie są one lokowane równomiernie wzdłuż osi szarości. Dodatkowo często zdarza się tak, że obraz nie zawiera barw bliskich idealnej czerni bądź bieli. Zaproponowano zatem podejście, które opisuje prostopadłościan na pikselach obrazu w sześcianie RGB. Położenie tego prostopadłościanu jest ściśle powiązane z treścią obrazu. Jeden z wierzchołków tego prostopadłościanu ulokowany jest w punkcie odpowiadającym pikselowi obrazu o minimalnych składowych RGB. Poruszając się po przekątnej od tego punktu docieramy do wierzchołka, który odpowiada barwie obrazu o maksymalnych składowych RGB. Punkty te są łączone linią, która tworzy przekątną prostopadłościanu opartą na wartościach minimalnych i maksymalnych składowych RGB. W wyniku podziału opisywanej linii na k równych segmentów otrzymuje się startowe środki klastrów, które lokowane są na ich koń-

31 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek 4.7. Proces klasteryzacji techniką KHM z inicjalizacją DC: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

32 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 25 cach. Ta metoda inicjalizacji może dawać dobre rezultaty dla obrazów, których chmura pikseli nie jest ułożona równomiernie wzdłuż osi szarości. Proces klasteryzacji z wykorzystaniem inicjalizacji MM został przedstawiony dla techniki KM na Rys. 4.8, zaś dla techniki KHM na Rys Dla KM zachodzi podobna sytuacja jak przy inicjalizacji DC. Jeden ze klastrów nie zmienia swojego położenia i zachodzi duże prawdopodobieństwo, że będzie to pusty klaster. Dla inicjalizacji MM można wyciągnąć podobne wnioski co do dynamiki techniki KM. Zmiany położeń środków są gwałtowniejsze w stosunku do KHM. 15 BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek 4.8. Proces klasteryzacji techniką KM z inicjalizacją MM: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów Inne podejście do wyboru startowych środków klastrów wykorzystuje histogram barw, stąd zostało nazwane HIST. Obrazy naturalne prezentują zazwyczaj pewne obszary utożsamiane z obiektami. Obiekty te są opisywane za pomocą cech takich jak np. barwa, kształt, tekstura itd. Można by się zatem spodziewać, że lokowanie startowych środków klastrów w punktach odpowiadających najczęściej występującym barwom w obrazie może przynieść dość dobre rezultaty. Niestety głębsza analiza każdego obrazu naturalnego prowadzi do stwierdzenia, że dany obiekt składa się z pikseli o zbliżonym odcieniu i nie posiada tej samej barwy na całej powierzchni. Powoduje to, że bardzo często startowe środki klastrów wyznaczone zgodnie z podejściem HIST są lokowane bardzo blisko siebie.

33 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek 4.9. Proces klasteryzacji techniką KHM z inicjalizacją MM: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

34 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 27 Przebieg klasteryzacji z wykorzystaniem metody inicjalizacji HIST dla startowych środków klastrów przedstawiają Rys 4.1 i Rys W tym wypadku zarówno dla techniki KM i KHM wszystkie środki klastrów zmieniają swoje położenie, przy czym dynamika tych zmian jest podobna do wcześniej opisywanych inicjalizacji. 15 BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek 4.1. Proces klasteryzacji techniką KM z inicjalizacją HIST: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów Adaptacyjna metoda inicjalizacji SD została zbudowana bazując na statystycznych parametrach rozkładu chmury pikseli w przestrzeni barw. Wyznaczany jest środek geometryczny S RGB = (S R, S G, S B ) chmury tworzonej przez piksele obrazu zgodnie z zależnościami: S R = 1 N N i=1 R i (4.1) S G = 1 N N i=1 G i (4.2) S B = 1 N N i=1 B i (4.3) gdzie: N - liczba pikseli w obrazie, R i, G i, B i - składowe RGB piksela i.

35 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KHM z inicjalizacją HIST: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

36 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 29 W kolejnym kroku wyznaczane są odchylenia standardowe składowych barw pikseli obrazu. Dla chmury pikseli wyznaczono odchylenia standardowe dla każdej ze składowych przestrzeni barw jako: N Ri 2 i=1 σ R = N S R 2, (4.4) N G 2 i i=1 σ G = N S G 2, (4.5) N Bi 2 i=1 σ B = N S B 2, (4.6) gdzie: µ R, µ G, µ B - wartości średnie dla składowych RGB. Dysponując odchyleniem standardowym dla poszczególnych składowych przestrzeni barw, buduje się otoczenie środka geometrycznego chmury o punktach skrajnych: (S R σ R, S G σ G, S B σ B ) i (S R +σ R, S G +σ G, S B +σ B ). Punkty te tworzą przekątną prostopadłościanu, która dzielona jest na k równych segmentów. Środki tych segmentów wskazują na położenie startowych środków klastrów. Rys i Rys 4.13 prezentują przebieg klasteryzacji odpowiednio dla techniki KM i KHM, przy wykorzystaniu inicjalizacji SD. Algorytm podziałowy MedianCut należy do najczęściej wykorzystywanych algorytmów kwantyzacji barwy. Jego idea polega na dzieleniu przestrzeni barw na mniejsze części. Każda z tych części reprezentuje jakąś grupę pikseli, którym w końcowym etapie przypisana zostaje ta sama barwa. Podział przestrzeni barw dokonywany przez MedianCut oparty jest o wartość mediany: docelowo w każdej powstałej części ma znaleźć się podobna liczba pikseli. Wyznaczenie mediany ze zbioru n danych rozpoczyna się od sortowania ich w kolejności od najmniejszej do największej i ponumerowania od 1 do n. Jeśli n jest nieparzyste, medianą jest wartość środkowa, czyli o numerze n+1 2. W przypadku kiedy n jest parzyste, wynikiem jest średnia arytmetyczna między dwiema wartościami środkowymi o numerach n 2 i n Idea algorytmu MedianCut dla przestrzeni barw: wybieramy prostopadłościan o największej liczbie pikseli opisany na chmurze pikseli. wybieramy najdłuższy bok tego prostopadłościanu. punkt tego boku, który jest wartością mediany decyduje o podziale prostopadłościanu. do listy prostopadłościanów dodajemy dwie nowe połówki, usuwając jednocześnie dzielony prostopadłościan. procedura jest powtarzana, aż do momentu osiągnięcia liczby prostopadłościanów równej liczbie barw szukanej palety.

37 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 3 15 BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KM z inicjalizacją SD: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

38 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KHM z inicjalizacją SD: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

39 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 32 w końcowym etapie barwy pikseli należących do poszczególnych prostopadłościanów są zazwyczaj zamieniane na ich średnią barwę. Na Rys pokazano działanie algorytmu MedianCut dla punktów na płaszczyźnie. Dla naturalnych obrazów barwnych taka sytuacja wystąpiłaby w przypadku, kiedy wszystkie piksele charakteryzowały się stałą wartością jednej ze składowych barwy, co praktycznie nie występuje. Idea algorytmu Median Cut (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) Rysunek Kolejne etapy algorytmu MedianCut dla danych dwuwymiarowych - zbiór danych zostaje zredukowany do 5 punktów Inicjalizacja MC wykorzystuje wyniki algorytmu MedianCut. Otrzymane w wyniku jego działania barwy zostają użyte jako startowe środki klastrów. Rys przedstawia przebieg procesu klasteryzacji dla techniki KM w z wykorzystaniem inicjalizacji MC, natomiast Rys dla techniki KHM. Wykorzystano te same parametry klasteryzacji dla KM i KHM jak dla inicjalizacji DC, MM, HIST, SD i ten sam obraz testowy. Ścieżki po których przemieszczają się klastry w kolejnych iteracjach są znacznie krótsze niż w opisywanych dotychczas metodach inicjalizacji. Środki klastrów tylko nieznacznie zmieniają swoją pozycję, co wskazuje na to, że inicjalizacja MC zapewnia technikom KM i KHM szybką zbieżność do ich rozwiązań optymalnych. Algorytm podziałowy Wu [91, 92] jest bardzo podobny do MedianCut. Różnica tkwi

40 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KM z inicjalizacją MC: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

41 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KHM z inicjalizacją MC: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

42 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 35 tutaj w metodzie wyboru płaszczyzny podziału dzielonego prostopadłościanu. Jest znajdowany maksymalny prostopadłościan Ω, o największej zdefiniowanej w odpowiedni sposób wariancji E(Ω), opisany na pikselach obrazu i cyklicznie dokonuje się jego podziału na mniejsze Ω 1 i Ω 2, aż do osiągnięcia liczby prostopadłościanów równej liczbie barw w poszukiwanej palecie. Podział dokonywany jest w ten sposób, aby za każdym razem minimalizować sumę: E(Ω 1 ) + E(Ω 2 ). Podobnie jak dla MedianCut do listy prostopadłościanów dopisuje się dwa nowopowstałe, jednocześnie usuwając dzielony. Wielkości E(Ω) wyznaczane są zgodnie z zależnościami: E(Ω) = c Ω P (c)(c q(ω)) 2, (4.7) cp (c) c Ω q(ω) = P (c), (4.8) c Ω gdzie: c - barwa piksela należącego do danego prostopadłościanu, q(ω) - średnia barwa w Ω, P (c) - gęstość występowania barwy c. Podobnie jak dla MedianCut, w wyniku działania algorytmu podziałowego Wu, otrzymuje się w rezultacie pewną paletę barw. Barwy z tej palety w inicjalizacji Wu zostają wykorzystane jako startowe środki klastrów. Na Rys przedstawiono przebieg procesu klasteryzacji dla techniki KM z inicjalizacją Wu. Można zauważyć tylko niewielkie przemieszczenia środków klastrów w kolejnych iteracjach. Podobnie sytuacja wygląda na Rys przedstawiającym proces klasteryzacji KHM z opisywaną inicjalizacją. W porównaniu do KM zmiany położeń środków klastrów są nieznacznie większe. Metoda inicjalizacji WU zapewnia bardzo szybką zbieżność zarówno dla technik KM i KHM. Rys przedstawia wyniki kwantyzacji na 8 barw dla obrazu wykorzystywanego podczas opisywania metod inicjalizacji. Poddając wyniki ocenie wizualnej można zauważyć, że dla 3 metod inicjalizacji: DC, MM, HIST, wyniki dla KM są znacznie gorsze niż dla KHM. Dla naturalnych obrazów barwnych najlepsze rezultaty uzyskiwano łącząc algorytmy podziałowe z technikami klasteryzacyjnymi. Nieznacznie gorsze wyniki uzyskiwano dla inicjalizacji SD i MM. Odpowiednie metody inicjalizacji, które zapewniają szybką zbieżność technik klasteryzacyjnych są szczególnie przydatne dla dużych zbiorów danych (obrazy wysokiej rozdzielczości). W dalszej części pracy zostaną przedstawione szczegółowe wyniki badań nad metodami inicjalizacji przeprowadzone na reprezentatywnej grupie obrazów testowych. W procesach klasteryzacji osobny problem stanowi wybór liczby klastrów k odpowiedniej do zadanego zbioru danych. Problem ten nie zostaje tutaj poddany badaniom ze względu na stosowanie technik klasteryzacyjnych do kwantyzacji barwy i segmentacji obrazu, gdzie liczba k jest niejako z góry określona (liczba barw w palecie, liczba barwnych obiektów). Należy tutaj podkreślić, że dobór prawidłowej wartości k, gdy nie jest to liczba z góry narzucona przez cel klasteryzacji, także nie jest zadaniem łatwym. Najczęściej wybór odpowiedniej wartości k odbywa się poprzez wielokrotne uruchamianie procesu klasteryzacyjnego z różnymi wartościami k i wyznaczaniu wskaźników walidacyjnych [45].

43 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KM z inicjalizacją Wu: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

44 4.2. METODY INICJALIZACJI TECHNIK KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Proces klasteryzacji techniką KHM z inicjalizacją Wu: (a) startowe położenia środków klastrów, (b) chmura pikseli i przemieszczenia środków klastrów w 1 iteracjach, (c) przemieszczenia środków klastrów w 1 iteracjach, (d) końcowe położenia środków klastrów

45 4.2. METODY INICJALIZACJI TECHNIK KM I KHM 38 (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) Rysunek Wyniki kwantyzacji na 8 barw obrazu z Rys. 4.5(a): (a) KM i DC, (b) KHM i DC, (c) KM i MM, (d) KHM i MM, (e) KM i HIST, (f) KHM i HIST, (g) KM i SD, (h) KHM i SD, (i) KM i MC, (j) KHM i MC, (k) KM i WU, (l) KHM i WU

46 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM Wyniki kwantyzacji barwy dla KM i KHM Badania porównawcze technik KM i KHM zostały przeprowadzone między innymi na obrazie Chart, powstałym przez akwizycję obrazu wzornika barw nazywanego ColorChecker Chart Rys. 4.2 (X-Rite, USA). Wzornik ten został zaproponowany ponad trzydzieści lat temu na potrzeby badań technik obrazowania barwnego w dziedzinach takich jak: fotografia, telewizja, grafika [58]. ColorChecker w połączeniu z oprogramowaniem do profilowania aparatów cyfrowych stosowany jest do tworzenia profili aparatów cyfrowych oraz do kalibracji. Wzorzec składa się z 24 specjalnie dobranych pól barwnych umieszczonych na czarnym tle. Pola cechuje kolorystyka naturalnych obiektów. Cyfrowy obraz barwny reprezentujący omawiany Chart (64 x 48 pikseli) został pozyskany w dobrych warunkach oświetleniowych. Obraz ten został poddany operacji kwantyzacji barwy w celu osiągnięcia palety 25 barw, co w naturalny sposób odpowiada jego treści. Rysunek 4.2. Obraz testowy Chart powstały przez akwizycję wzornika barw ColorChecker Rys i Rys prezentują wyniki kwantyzacji uzyskane w przestrzeniach RGB i CIEL a b technikami KM i KHM z wykorzystaniem inicjalizacji DC i SD. Wyniki zostały poddane ocenie wizualnej: wszystkie pola barwne charakteryzujące się dużym błędem percepcyjnym zostały zaznaczone symbolem X. Dokonując zliczenia oznakowanych pól barwnych można rozstrzygnąć, która z technik pozwala na osiągnięcie lepszych rezultatów. Okazuje się, że znaczą przewagę uzyskała technika KHM - 5 pól charakteryzujących się percepcyjnym błędem barwy. Dla techniki KM liczba ta była znacznie większa - 29 pól, co wskazuje na gorsze wyniki kwantyzacji. Ocena wizualna dowolnej operacji cyfrowego przetwarzania obrazów jest zawsze w pewnym stopniu subiektywna. Poza oceną wizualną uzyskanych wyników kwantyzacji obrazu wyznaczono także miary i wskaźniki jakości w celu dokonania oceny obiektywnej otrzymanych rezultatów. Tab. 4.1 zawiera cztery wskaźniki walidacyjne oceniające jakość klasteryzacji, wyznaczone dla wyników KM i KHM. Wszystkie te wskaźniki dla dobrych rezultatów są minimalizowane. Porównując parami odpowiadające sobie komórki tabeli, można zauważyć, że za każdym razem mniejsza wartość występuje dla KHM, co świadczy o przewadze tej techniki nad KM.

47 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 4 (a) (b) (c) (d) Rysunek Wynik kwantyzacji KM dla obrazu Chart (k=25): (a) przestrzeń RGB, inicjalizacja DC, (b) przestrzeń CIEL a b, inicjalizacja DC, (c) przestrzeń RGB, inicjalizacja SD, (d) przestrzeń CIEL a b, inicjalizacja SD

48 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 41 (a) (b) (c) (d) Rysunek Wynik kwantyzacji KHM dla obrazu Chart image (k=25): (a) przestrzeń RGB, inicjalizacja DC, (b) przestrzeń CIEL a b, inicjalizacja DC, (c) przestrzeń RGB, inicjalizacja SD, (d) przestrzeń CIEL a b, inicjalizacja SD

49 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 42 Tab. 4.2 prezentuje kolejny zestaw miar i wskaźników jakości. Wyznaczono wartości P SN R, E, M i Q(I). P SNR jest wskaźnikiem maksymalizowanym, a trzy pozostałe są minimalizowane wraz ze wzrostem jakości. Tabela 4.1. Wskaźniki jakości dla obrazu Chart KM Intra V M 1 V M 2 DB RGB L a b RGB L a b RGB L a b RGB L a b Chart DC ,538, ,592,9 Chart SD 27 71,321, ,568 1,46 KHM Intra V M 1 V M 2 DB RGB L a b RGB L a b RGB L a b RGB L a b Chart DC 3,11, ,398,696 Chart SD ,16, ,431,475 Tabela 4.2. Błędy kwantyzacji barwy dla obrazu Chart KM P SN R E M Q(I) RGB L a b RGB L a b RGB L a b RGB L a b Chart DC 25,35 24,51 8,43 3,99 3,73 5, Chart SD 28,57 24,37 5,26 2,3 3,77 6, KHM P SN R E M Q(I) RGB L a b RGB L a b RGB L a b RGB L a b Chart DC 32,96 28,13 3,19,57,99 3, Chart SD 33,25 31,72 2,76,56,66 2, W kolejnym badaniu operacji kwantyzacji poddano zestaw pięciu znanych obrazów testowych przedstawionych na Rys. 4.23, które są bardzo często wykorzystywane podczas badań nad przetwarzaniem obrazów cyfrowych. Obrazy o tej samej rozdzielczości przestrzennej (512x512 pikseli) były kwantowane na 8 i 16 barw w przestrzeniach RGB oraz CIEL a b. Tab prezentują porównanie miar i wskaźników jakości dla technik KM i KHM wykorzystanych do operacji kwantyzacji barwy. Można tutaj zauważyć pewną zależność: jeżeli do oceny jakości zostanie użyty P SN R (wskaźnik bazujący na składowych RGB), to wyniki kwantyzacji w przestrzeni RGB zgodnie z P SNR są lepsze od wyników kwan-

50 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM (a) 43 (b) (c) (d) (e) Rysunek Obrazy testowe wykorzystane podczas badań: (a) Airplane, (b) Baboon, (c) Boats, (d) Lena, (e) Peppers Tabela 4.3. Błędy kwantyzacji dla techniki KM, k = 8 KM P SN R E M RGB L a b RGB L a b RGB L a b Airplane 27,86 27, 5,1 4,66 8,29 5,39 Baboon 22,42 2,24 14,5 12,97 7,51 5,68 Boats 26,85 25,76 7,26 6,56 8,19 3,45 Lena 26,87 25,75 8,39 7,24 5,26 3,6 Peppers 24,62 22,96 1,59 9,59 4,65 3,84 Overall 25,72 24,34 9,15 8,2 6,78 4,28

51 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 44 Tabela 4.4. Błędy kwantyzacji dla techniki KHM, k = 8 KHM P SNR E M RGB L a b RGB L a b RGB L a b Airplane 29,69 28,84 4,57 4,35 4,49 3,84 Baboon 22,32 2,33 14,72 12,88 6,55 5,8 Boats 26,74 25,56 7,28 6,73 8,5 3,23 Lena 26,44 25,7 8,45 7,33 6,38 2,7 Peppers 24,59 22,93 1,62 9,64 4,19 4,38 Overall 25,96 24,67 9,13 8,19 5,93 3,85 Tabela 4.5. Błędy kwantyzacji dla techniki KM, k = 16 KM P SNR E M RGB L a b RGB L a b RGB L a b Airplane 31,34 3,9 3,87 3,46 3,46 3,37 Baboon 24,84 23,18 11,6 1,1 4,33 3,56 Boats 29,88 28,2 5,53 4,95 3,77 1,9 Lena 29,49 27,8 6,3 5,51 2,71 1,57 Peppers 27,11 25,46 8,32 7,33 2,45 2,27 Overall 28,53 26,95 7,12 6,25 3,34 2,53 Tabela 4.6. Błędy kwantyzacji dla techniki KHM, k = 16 KHM P SNR E M RGB L a b RGB L a b RGB L a b Airplane 32,36 31,25 3,72 3,31 3,43 3,14 Baboon 24,76 22,58 11,61 1,2 4,4 3,47 Boats 29,74 28,43 5,39 4,86 3,92 1,81 Lena 29,32 27,87 6,34 5,42 2,97 1,77 Peppers 27,1 25,7 8,25 7,23 2,62 2,6 Overall 28,66 27,4 7,6 6,2 3,47 2,45

52 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 45 tyzacji w przestrzeni CIEL a b. Jeżeli jako miara jakości zostanie wybrana E (miara bazująca na przestrzeni CIEL a b ), to mniejsze wartości E, a tym samym wyższa jakość kwantyzacji zostaje osiągnięta w przestrzeni CIEL a b. Użycie dodatkowej miary jakości M jest tutaj decydujące. Zarówno dla techniki KM i KHM strata barwności obrazu M jest mniejsza w przestrzeni CIEL a b, co świadczy o wyższej jakości kwantyzacji w tej przestrzeni w stosunku do RGB. Porównując wyniki kwantyzacji technikami KM i KHM można zaobserwować, że dla wszystkich wartości średnich kryteriów oceny jakości, technika KHM daje lepsze rezultaty w stosunku do KM. Podczas badań została wykorzystana inicjalizacja SD, a dla techniki KHM parametr p = 2,7. Podobne wnioski na temat wysokiej jakości kwantyzacji w przestrzeni CIEL a b przedstawiono w pracy [18]. W badaniach wykorzystano zbiór 1 obrazów testowych: Airplane, Baboon, Boats, Lena, P eppers, Butterf ly, F ruits, Goldhill, T able, Zelda. Rys przedstawia dodatkowe obrazy. Obrazy testowe były poddawane operacji kwan- (a) (b) (d) (c) (e) Rysunek Dodatkowe obrazy testowe wykorzystane podczas badań: (a) Butterfly, (b) Fruits, (c) Goldhill, (d) Table, (e) Zelda tyzacji w celu wyznaczenia palety barw (16, 64, 256). Wykorzystano klasyczny algorytm MedianCut [8, 13] (MC) oraz jego modyfikację Optimized Median Cut (OMC) z aplikacji JASC Paint Shop Pro v.9. Dla technik klasteryzacyjnych wykorzystano inicjalizację SD. Dla kwantyzacji KHM przyjęto p = 2, 7. Wybrane wyniki zostały zaprezentowane w Tab. 4.7, gdzie można zauważyć, że najlepszy wynik otrzymano dla KHM w przestrzeni CIEL a b, a następnie dla KM w tej samej przestrzeni barw. Algorytm MedianCut znalazł się w tym zestawieniu na końcu. W pracy [68] wykorzystano te same obrazy testo-

53 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 46 we. Wyniki M, które tam zostały przedstawione również pokazują, że lepsze rezultaty kwantyzacji uzyskuje się w przestrzeni CIEL a b. Tabela 4.7. Wskaźnik E dla obrazów testowych po kwantyzacji z k = 256 E MC OMC KM(RGB) KM(L a b ) KHM(RGB) KHM(L a b ) Airplane 2,28 1,73 1,55 1,17 1,46 1,13 Baboon 8,62 4,57 3,98 3,49 4,9 4,15 Boats 3,72 3,15 2,43 2,12 2,7 1,95 Butterfly 4,83 3,42 2,56 2,46 2,68 2,31 Fruits 4,33 2,74 2,28 2,49 1,99 1,98 Goldhill 4,3 3,2 2,43 2,3 2,78 2,33 Lena 3,54 2,97 2,35 2,15 2,4 2,5 Peppers 5,65 4,48 4,1 4,1 4,1 3,79 Table 6,11 3,69 2,97 2,99 2,58 2,55 Zelda 4, 3,71 2,98 2,75 2,61 2,51 Średnio 4,71 3,37 2,75 2,58 2,76 2,48 Przedstawiane dotychczas rezultaty wskazują, że najlepszą metodą inicjalizacji jest SD. Przeprowadzony został jeszcze jeden eksperyment, aby ostatecznie potwierdzić to stwierdzenie. Postawione zostało zadanie kwantyzacji barwy dla 5 przedstawionych już obrazów testowych: Airplane, Baboon, Boats, Lena i P eppers. Kwantyzacja była przeprowadzona technikami klasteryzacyjnymi KM i KHM z k = 8, 16, 32 przy 15 iteracjach. Dla KHM przyjęto parametr p = 2, 7. Wyniki były oceniane za pomocą trzech wskaźników jakości: P SNR, E i M. Ponieważ P SNR jest maksymalizowany wraz ze wzrostem jakości obrazu wynikowego, a dwa pozostałe wskaźniki jakości są minimalizowane, zbudowano ocenę punktową. Metoda inicjalizacji, która dawała najlepszy rezultat z punktu widzenia danego wskaźnika jakości otrzymywała 4 punkty. Druga pod względem jakości - 3 punkty następna - 2 punkty i najgorszy wynik otrzymywał 1 punkt. Dla 5 obrazów testowych suma punktów dla każdego wskaźnika jakości wynosi zatem 5. Tab. 4.8 prezentuje ocenę punktową uzyskanych wyników kwantyzacji dla techniki KM, zaś Tab. 4.9 dla techniki KHM. Wyniki potwierdzają wyższość inicjalizacji SD dla KM nad pozostałymi we wszystkich przypadkach. Dla techniki KHM dla niskich wartości k sytuacja jest podobna. Dla k = 32 w technice KHM niewielką przewagę uzyskuje inicjalizacja DC. W celu określenia wrażliwości na inicjalizację dokonano wyznaczenia rozpiętości (różnica wartości maksymalnych i minimalnych) oceny punktowej dla rozpatrywanych inicjalizacji. Otrzymane wyniki dla techniki KM i KHM prezentuje Tab Wartości rozpiętości wyników dla KHM są na ogół mniejsze od KM, co wskazuje na większą odporność techniki KHM względem metody inicjalizacji. Podobne badania porównujące metody inicjalizacji i wrażliwość KM i KHM zostały przeprowadzone na zbiorze 3 obrazów testowych pozyskanych z obrazowej bazy danych dostępnej na stronie WWW University of Berkeley (USA) [56]. Wybrane obrazy z tego zbioru naturalnych obrazów barwnych przedstawia Rys Obrazy te posiadają rozdzielczość przestrzenną 481x321 pikseli i przedstawiają sceny naturalne. Ocena punktowa dla 4 me-

54 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 47 Tabela 4.8. Ocena punktowa uzyskiwanych wyników kwantyzacji KM dla różnych inicjalizacji - 5 obrazów testowych k = 8 k = 16 k = 32 DC HIST MM SD P SN R E M P SN R E M P SN R E M DC HIST MM SD k = k = k = Tabela 4.9. Ocena punktowa uzyskiwanych wyników kwantyzacji KHM dla różnych inicjalizacji - 5 obrazów testowych k = 8 k = 16 k = 32 DC HIST MM SD P SN R E M P SN R E M P SN R E M DC HIST MM SD k = k = k = tod inicjalizacji dla technik KM i KHM została przedstawiona kolejno w Tab i Tab Wyniki są bezdyskusyjne i przemawiają na korzyść inicjalizacji SD zarówno dla KM i KHM. Również w tym przypadku wyznaczono rozpiętość uzyskiwanych ocen w celu

55 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 48 Tabela 4.1. Ocena wrażliwości na inicjalizację dla 5 obrazów testowych (rozpiętość punktów) KM KHM P SNR E M P SNR E M (a) (b) (c) (d) (e) (f) Rysunek Wybrane obrazy testowe pozyskane z bazy danych dostępnej na stronie WWW University of Berkeley (USA) [56] określenia, która z technik jest bardziej wrażliwa na sposób wyboru startowych środków klastrów. Wyniki przedstawione w Tab ponownie potwierdzają mniejszą wrażliwość techniki KHM w stosunku do KM. Przedstawiane tutaj wyniki zostały zaprezentowane w pracy [19]. Analizując przedstawione wcześniej graficzne wizualizacje przebiegu klasteryzacji dla różnych inicjalizacji i przedstawione powyżej wyniki dla obrazu Chart przy inicjalizacjach SD i DC można stwierdzić, że KM jest znacznie bardziej wrażliwą techniką na proces inicjalizacji. Dla zaproponowanych inicjalizacji (DC, MM, HIST, SD) technika KM okazała się bardziej wrażliwa od KHM w przypadku testów na 3 obrazach. Należy zatem szczególnie dla KM poszukiwać odpowiednich metod wyboru startowych środków klastrów, gdyż etap ten bardzo silnie wpływa na otrzymane wyniki. Tab prezentują kolejno wskaźniki jakości: M SE, E, M, dla różnych inicjalizacji i różnych wartościach k. Kolumna

56 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 49 Tabela Ocena punktowa uzyskiwanych wyników kwantyzacji KM dla różnych inicjalizacji - 3 obrazów testowych k = 8 k = 16 k = 32 DC HIST MM SD P SN R E ?M P SN R E M P SN R E M DC DC MM SD k = k = k = barwy oznacza liczbę barw w poszukiwanej palecie, czyli odpowiada wartości k. Dodatkowo wyniki KM zostały zestawione z algorytmami MedianCut i Wu. Badania zostały przeprowadzone na przedstawionych już obrazach testowych: Airplane, Baboon, Boats, Lena, P eppers. Otrzymane rezultaty potwierdzają znany z literatury fakt mówiący o lepszych wynikach kwantyzacji uzyskiwanych algorytmem Wu w stosunku do MedianCut. Zauważyć także można przewagę inicjalizacji SD w stosunku do DC [19, 25]. Wykorzystując inicjalizacje oparte na szybkich algorytmach podziałowych otrzymuje się najlepsze rezultaty, przy czym wyraźna jest przewaga inicjalizacji Wu nad MC. Startując z palety wygenerowanej przez MedianCut lub Wu technika KM dokonuje jej modyfikacji za każdym razem jeszcze bardziej poprawiając końcowy rezultat, co potwierdzają przedstawione tutaj wskaźniki jakości. Porównując metody inicjalizacji oparte na algorytmach MedianCut i Wu z zaproponowanymi można stwierdzić, że wyniki uzyskane z połączenia MedianCut i KM (MC+KM) są podobnej jakości do uzyskiwanych dla inicjalizacji SD. Wyniki klasteryzacji z inicjalizacją Wu (Wu+KM) są zdecydowanie najlepsze spośród wszystkich badanych inicjalizacji. Wyniki te zostały także przedstawione w pracy [69]. Obecnie istnieje ogromny zbiór różnorodnych aplikacji graficznych umożliwiających przetwarzanie cyfrowych obrazów barwnych. Kwantyzacja barwy jest jedną z podstawowych operacji przetwarzania obrazu wobec czego jest zazwyczaj dostępna w większości aplikacji. Przeprowadzono badania konfrontujące uzyskiwane wyniki kwantyzacji technikami KM i KHM z wynikami otrzymanymi przy użyciu popularnych aplikacji IrfanView (IF) oraz Paint Shop Pro 9. Uzyskane rezultaty zostały przedstawione w Tab Obrazy testowe, przedstawione na Rys. 4.26, były poddane operacji kwantyzacji na 16 barw. W aplikacji Paint Shop Pro 9 wykorzystano do kwantyzacji algorytmy takie jak Optimized Median Cut (OMC) i Optimized Octree (OCT). Jako punkt odniesienia dla prezentowa-

57 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 5 Tabela Ocena punktowa uzyskiwanych wyników kwantyzacji KHM dla różnych inicjalizacji - 3 obrazów testowych k = 8 k = 16 k = 32 DC HIST MM SD P SN R E M P SN R E M P SN R E M DC DC MM SD k = k = k = Tabela Ocena wrażliwości na inicjalizację dla 3 obrazów testowych (rozpiętość punktów) KM KHM PSNR E M PSNR E M nych wyników przedstawiono także wyniki kwantyzacji osiągnięte z paletą stałą: Windows Palette (WP). Programiści aplikacji IrfanView nie wskazują jaki algorytm został przez nich wykorzystany w kwantyzacji. Kwantyzację barwy poprzez techniki klasteryzacyjne wykonano w przestrzeni barw CIEL a b, co znacznie poprawiło jakość uzyskiwanych wyników. Jakość uzyskanej kwantyzacji mierzono za pomocą wskaźników P SN R, E76 oraz M.Wskaźnik PSNR, który jest maksymalny dla najlepszego wyniku kwantyzacji przemawia wyraźnie na korzyść techniki KHM. Strata barwności oraz średni błąd barwy, które powinny być minimalizowane również obrazują przewagę techniki KHM nad pozostałymi. Na drugiej pozycji ze względu wskaźniki jakości plasuje się technika KM. Aby pokazać, że nie tylko wartości wskaźników przemawiają na korzyść technik klaste-

58 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 51 Tabela Wartości wskaźnika M SE dla różnych metod inicjalizacji Barwy Obraz MC Wu KM(DC) KM(SD) MC+KM Wu+KM 16 Airplane Baboon Boats Lena Peppers Średnia Airplane Baboon Boats Lena Peppers Średnia Airplane Baboon Boats Lena Peppers Średnia Airplane Baboon Boats Lena Peppers Średnia Airplane Baboon Boats Lena Peppers Średnia

59 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 52 Tabela Wartości wskaźnika E dla różnych metod inicjalizacji Barwy Obraz MC Wu KM(DC) KM(SD) MC+KM Wu+KM 16 Airplane 4,9 3,73 3,8 3,7 3,77 3,54 16 Baboon 12,77 11,7 11,53 11,58 11,39 11,32 16 Boats 6,12 5,57 5,64 5,48 5,36 5,22 16 Lena 6,82 6,47 6,33 6,3 6,5 6,15 16 Peppers 8,86 8,5 8,12 8,16 8,19 8,2 Średnia 7,89 7,19 7,8 7,4 6,95 6,89 32 Airplane 3,83 2,96 3,22 2,87 3, 2,87 32 Baboon 9,8 9,55 9,57 9,37 9,37 9,34 32 Boats 4,57 4,19 4,27 4,5 4,9 4,7 32 Lena 5,44 5,19 5,19 4,81 4,87 4,83 32 Peppers 6,83 6,73 6,57 6,46 6,43 6,51 Średnia 6,9 5,72 5,76 5,51 5,55 5,52 64 Airplane 3,15 2,59 2,58 2,47 2,5 2,46 64 Baboon 8,1 7,74 7,57 7,57 7,6 7,55 64 Boats 3,67 3,34 3,45 3,21 3,21 3,22 64 Lena 4,35 4,15 4,25 3,94 3,93 3,99 64 Peppers 5,56 5,24 5,3 5,4 5,6 4,98 Średnia 4,95 4,61 4,58 4,45 4,46 4, Airplane 2,54 2,18 2,26 2,11 2,13 2, Baboon 6,55 6,36 6,31 6,13 6,15 6, Boats 2,97 2,72 2,9 2,67 2,66 2, Lena 3,51 3,38 3,53 3,21 3,24 3, Peppers 4,43 4,2 4,3 3,97 3,96 3,98 Średnia 4, 3,77 3,81 3,62 3,63 3, Airplane 2, 1,87 1,92 1,83 1,8 1, Baboon 5,29 5,1 5,1 4,95 4,96 4, Boats 2,45 2,32 2,4 2,28 2,25 2, Lena 2,84 2,75 2,95 2,71 2,65 2, Peppers 3,52 3,29 3,34 3,2 3,13 3,13 Średnia 3,22 3,7 3,14 2,99 2,96 2,93

60 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 53 Tabela Wartości wskaźnika M dla różnych metod inicjalizacji Barwy Obraz MC Wu KM(DC) KM(SD) MC+KM Wu+KM 16 Airplane 8,87 2,24 2,89 2,8 3,24 2,5 16 Baboon 2,67 4,41 4,62 4,33 4,22 4,25 16 Boats 6,86 3,65 4,9 3,67 3,43 3,3 16 Lena 2,73 2,84 2,48 2,6 2,28 2,48 16 Peppers 1,32 3,4 2,83 2,68 2,58 2,77 Średnia 4,49 3,31 3,38 3,21 3,15 2,97 32 Airplane 5,65 1,47 2,9 1,14 1,8 1,1 32 Baboon 2,43 3,74 2,74 2,67 2,79 2,7 32 Boats 5, 2,2 2,12 1,72 1,88 1,64 32 Lena 1,88 1,67 1,76 1,6 1,61 1,69 32 Peppers,68 1,36 1,62 1,78 1,64 1,48 Średnia 3,13 2,9 2,7 1,78 1,94 1,72 64 Airplane 3,3,72,86,83,89,71 64 Baboon 1,94 2,7 1,84 1,81 1,86 1,78 64 Boats 2,98 1,6 1,26 1,5 1,5 1,6 64 Lena 1,18 1,15 1,12,94 1,5,97 64 Peppers,24 1,5 1,17,92 1,3,75 Średnia 1,87 2,9 1,25 1,11 1,18 1,5 128 Airplane 2,57,44,57,56,67,5 128 Baboon 1,12 1,8 1,22 1,15 1,21 1, Boats 1,88,64,81,65,7, Lena,98,72,86,71,7, Peppers,2,69,68,56,62,68 Średnia 1,35,71,83,73,78, Airplane 2,5,2,4,42,48, Baboon,72,69,83,7,71, Boats 1,19,4,54,43,51, Lena,71,39,47,48,48, Peppers,21,28,41,35,35,39 Średnia,98,39,53,48,5,43

61 4.3. WYNIKI KWANTYZACJI BARWY DLA KM I KHM 54 Tabela Jakość kwantyzacji KM i KHM w porównaniu z innymi algorytmami Obraz Aeroplane Parrots Motorcross Seaside Girl Wskaźnik KHM KM IF OMC OCT WP PSNR 3,34 29,71 27,83 28,27 24,66 18,69 E76 3,38 3,67 7,2 6,3 8,65 17,35 M,99 1,2 2,5,33 6,49 26,5 PSNR 24,59 24,57 23,52 22,91 23,38 16,3 E76 7,21 7,19 13,2 12,55 1,69 26,89 M 2,33 2,75 5,47 11,42 1,77 37,23 PSNR 24,56 25,22 23,99 23,65 23,91 16,35 E76 7,11 6,81 11,14 14,48 1,78 24,69 M 6,56 4,41 3,84,91 7,67 39,34 PSNR 32,7 31,47 3,4 28,66 26,46 17,25 E76 3,24 3,24 5,3 6,33 5,3 18,21 M 1,95 1,2 2,55 2,28 3,89 15,76 PSNR 27,14 26,95 24,76 25,59 24,29 17,8 E76 5,45 5,92 9,1 1,76 8,95 22,63 M 1,93 1,82 3,36,17 5,46 23,64 (a) (b) (d) (c) (e) Rysunek Obrazy testowe: (a) Aeroplane, (b) P arrots, (c) M otocross, (d) Seaside, (e) Girl ryzacyjnych wykonano dodatkowe badanie na obrazie testowym Girl. Rys przedstawia wyniki kwantyzacji na 16 barw obrazu testowego Girl, tym razem w wersji z rozdzielczością przestrzenną 512x512 pikseli. Nieciekawe, niemal jednolite tło obrazu zostało częściowo wycięte. Pomimo, że ocena wizualna jest zawsze subiektywna, to w tym przypadku

62 4.4. PROBLEM PUSTYCH KLASTRÓW 55 wynik jest bezdyskusyjny. Najlepszy rezultat otrzymano stosując technikę klasteryzacyjną KHM z k=16. Drugi pod względem jakości wydaje się być wynik uzyskany przy użyciu algorytmu MedianCut. Następnie plasują się rezultaty uzyskane przy zastosowaniu stałych palet barw, zaś najgorszy wynik uzyskano dla algorytmu popularnościowego. Ze względu na to, że w obrazie oryginalnym najczęściej występującymi barwami są odcienie barwy brązowej, do palety 16 barw zostały wybrane właśnie te barwy jako najpopularniejsze. W celu uzyskania lepszego rezultatu przy użyciu tego algorytmu często wprowadza się pewne modyfikacje, które zapobiegają wybieraniu do palety bardzo zbliżonych barw, jednak tutaj została wykorzystana oryginalna postać algorytmu. Rysunek Wyniki kwantyzacji obrazu Girl na 16 barw i uzyskane palety barw, przy wykorzystaniu: algorytmu popularnościowego (ang. Popularity), dwóch palet stałych (Windows palette oraz Web-Safe palette) i techniki klasteryzacyjnej KHM 4.4 Problem pustych klastrów Dobra inicjalizacja (wybór startowych środków klastrów) dla technik klasteryzacyjnych powinna zapewniać wysoką jakość klasteryzacji, przy minimalnej liczbie koniecznych do wykonania iteracji. Dobra inicjalizacja powinna także eliminować zjawisko występowania pustych klastrów. Jeżeli do środka klastra c k nie został przypisany żaden punkt, to jest on uważany za pusty klaster. Przy wykorzystaniu technik klasteryzacyjnych w kwantyzacji barwy powstawanie pustych klastrów powoduje, że otrzymana w wyniku kwantyzacji paleta barw jest mniejsza od liczby klastrów k, co skutkuje pogorszeniem jakości kwantyzacji. Należy zatem wprowadzić dodatkowe procedury, które będą wykorzystywane w przypadku

63 4.4. PROBLEM PUSTYCH KLASTRÓW 56 wystąpienia pustych klastrów lub też skorzystać z metod inicjalizacji, które eliminują to zjawisko. W literaturze można spotkać różne podejścia do problemu eliminacji występowania pustych klastrów, np. takie w których ograniczana jest minimalna liczba punktów jaka może być przypisana do każdego z klastrów [7]. Na Rys przedstawiono wizualizację problemu powstawania pustych klastrów dla obrazu z Rys. 4.28, który pochodzi ze zbioru [56]. Zastosowano inicjalizację DC i wykona- (a) (b) Rysunek Obraz oryginalny Gepard (a) i jego reprezentacja graficzna w sześcianie RGB (b) - chmura pikseli no 1 iteracji dla każdej z technik. Można zaobserwować, że do klastra, który jest najbliżej barwy białej od początku nie zostaje przypisany żaden piksel z chmury. Przekłada się to także na brak przemieszczeń środka tego klastra. W przedstawionej wizualizacji zaznaczono pusty klaster za pomocą strzałki. W wyniku kwantyzacji z k = 8 dla techniki KM otrzymamy zatem obraz o 7 barwach, co ma oczywisty wpływ na pogorszenie rezultatu. Technika KHM nie generuje tutaj pustych klastrów, co można zaobserwować na Rys Podczas badań na obrazie testowym Chart sprawdzono liczbę pustych klastrów, jaka powstaje podczas klasteryzacji pikseli technikami KM i KHM. Obraz Chart został poddany klasteryzacji przyjmując k=25 i parametr p=2,7 (KHM). Tab prezentuje liczbę pustych klastrów powstałych w procesie klasteryzacji w przestrzeniach RGB i CIEL a b. Okazuje się, że technika KM, przy różnych inicjalizacjach, generuje puste klastry. Dla techniki KHM problem pustych klastrów nie występuje. Podobne badania zostały przeprowadzone na grupie obrazów testowych z Rys Tab prezentuje liczbę pustych klastrów dla KM. Dla techniki KHM liczba pustych klastrów dla inicjalizacji SD i DC była za każdym razem równa, bez względu na przestrzeń barw czy liczbę klastrów k = 8, 16, 32. Patrząc z punktu widzenia metody inicjalizacji badania pokazują, że inicjalizacja DC w połączeniu z techniką KM, dla niektórych obrazów generuje puste klastry. Jeżeli zwiększa się liczba klastrów k, to liczba pustych klastrów również rośnie. Znacznie lepsze rezultaty otrzymuje się stosując inicjalizację SD. Tab i Tab przedstawiają liczby pustych klastrów dla tej inicjalizacji dla KM i KHM w przestrzeniach RGB i CIEL a b. Badania zostały także przeprowadzone na znacznie większym zbiorze obrazów testo-

64 4.4. PROBLEM PUSTYCH KLASTRÓW BLUE 5 15 GREEN 5 5 RED 15 (a) (b) BLUE BLUE GREEN 5 5 RED GREEN 5 5 RED 15 (c) (d) Rysunek Wizualizacja problemu pustych klastrów w technice KM dla obrazu Gepard przy inicjalizacji DC: (a) chmura pikseli i przemieszczenia środków klastrów, (b) przemieszczenia środków klastrów, (c) końcowe położenia środków klastrów, (d) wskazanie pustego klastra Tabela Liczba pustych klastrów dla obrazu Chart (technika KM) KM DC, k = 25 SD, k = 25 RGB L a b RGB L a b Chart 1 wych, pozyskanych z bazy danych dostępnej na stronie WWW University of Berkeley (USA) [56]. Zbiór ten zawiera obrazy przedstawiające sceny naturalne. Wybrane obrazy z tego zbioru zostały przedstawione na Rys i Rys Dla zbioru 3 obrazów testowych tylko w kilku przypadkach technika KM z inicjalizacją SD wygenerowała puste klastry. Wyniki prezentuje Tab Wyniki klasteryzacji techniką KHM dla każdego z badanych obrazów były pozbawione pustych klastrów, stąd zrezygnowano z zamieszczania tabeli zawierającej liczbę pustych klastrów dla KHM, która byłaby w całości wypełniona wartościami zerowymi.

65 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM BLUE 5 15 GREEN 5 5 RED 15 (a) (b) 15 BLUE 5 15 GREEN 5 5 RED 15 (c) Rysunek 4.3. Wizualizacja procesu klasteryzacji obrazu Gepard dla techniki KHM z inicjalizacją DC: (a) chmura pikseli i przemieszczenia środków klastrów, (b) przemieszczenia środków klastrów, (c) końcowe położenia środków klastrów Tabela Liczba pustych klastrów dla znanych obrazów testowych (technika KM) KM DC, k = 8 SD, k = 8 DC, k = 16 SD, k = 16 DC, k = 32 SD, k = 32 RGB L a b RGB L a b RGB L a b RGB L a b RGB L a b RGB L a b Airplane Baboon 1 1 Boats Lena Peppers 4.5 Wpływ zakłóceń na KM i KHM Cyfrowe obrazy barwne pozyskiwane są niekiedy w niesprzyjających warunkach i przesyłane różnej jakości kanałami transmisyjnymi, co prowadzi do powstania szumu w obrazach. Szum występujący w obrazach cyfrowych, bez względu na rodzaj, jest zawsze zakłóceniem,

66 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 59 Tabela 4.2. Liczba pustych klastrów dla techniki KM - 3 obrazów testowych KM KHM k DC HIST MM SD które w znacznym stopniu utrudnia przetwarzanie i analizę obrazów. Naturalnym podejściem do problemu przetwarzania zakłóconych obrazów jest wykorzystanie metod filtracji niepożądanych zakłóceń. Badania wpływu zakłóceń na wyniki KM i KHM przeprowadzono na pozyskanych obrazach barwnych dobrej jakości, a także na obrazach zakłóconych pozyskanych w niesprzyjających warunkach oświetleniowych oraz obrazach zaszumionych sztucznie. Uzyskane wyniki pokazały przewagę techniki KHM nad KM zarówno dla obrazów dobrej jakości, jak również w obecności szumu. W celu porównania odporności technik KM i KHM przygotowano dwie pary obrazów testowych. Każda para przedstawia obrazy sceny zawierającej kilka prostych obiektów barwnych usytuowanych na jednolitym tle. Obrazy zostały wykonane aparatem cyfrowym Panasonic DMC-FZ38 z rozdzielczością 4x3 pikseli. Podczas badań wykorzystano ich wersje pomniejszone do 8x6 pikseli. Obrazy przedstawiono na Rys i Rys Pierwszy obraz każdej pary został pozyskany w bardzo dobrych warunkach oświetleniowych, a drugi w znacznie gorszych warunkach, stąd zawiera więcej szumu. Pokazują to dane przedstawione w Tab Obrazy zaszumione mają większą liczbę barw rozumianych jako trójki RGB i jednocześnie wykazują inną barwność obrazu. Wyższa wartość P SNR dla obrazu zaszumionego z drugiej pary wskazuje na jej niższy poziom szumu. Tabela Dane 2 par obrazów testowych pozyskanych przy w dobrych i w niesprzyjających warunkach oświetleniowych Liczba barw M P SN R Para 1 Obraz ,39 Obraz 2 (zaszumiony) ,6 25,22 Para 2 Obraz ,44 Obraz 2 (zaszumiony) ,7 27,96 Przedstawione wyniki uzyskane z kwantyzacji KM i KHM odniesiono do obrazu poddawanego kwantyzacji, którym jest albo pierwszy obraz pary, albo drugi obraz pary (zaszumiony), albo drugi obraz pary po filtracji filtrem V M F [3] lub filtrem Kuwahary- Nagao [48, 6]. Dla technik KM i KHM użyto k=1, przeprowadzono 15 iteracji, korzystano z tej samej metody inicjalizacji SD opartej na parametrach statystycznych chmury pikseli w przestrzeni RGB [19]. Dla techniki KHM przyjęto wartość parametru p=2,7.

67 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 6 (a) (b) (c) (d) Rysunek Obrazy testowe: pierwsza para: (a) obraz dobrej jakości, (b) obraz zaszumiony; druga para: (c) obraz dobrej jakości, (d) obraz zaszumiony Tabela Wskaźniki oceny dla pierwszej pary pozyskanych obrazów: P SN R, E i M P SN R E M Obraz 1 Obraz po KM 3,95 2,34,97 Obraz po KHM 31,61 2,17,76 Obraz 2 (zaszumiony) Obraz po KM 3,36 2,85 1,6 Obraz po KHM 31,39 2,68 1,8 Obraz 2 po filtracji filtrem VMF Obraz po KM 31,6 2,34 1,35 Obraz po KHM 32,61 2,23,65 Obraz 2 po filtracji filtrem Kuwahary-Nagao Obraz po KM 29,89 3,93 2,16 Obraz po KHM 32,1 2,9,76

68 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 61 (a) (b) (c) (d) Rysunek Powiększone fragmenty obrazów testowych: pierwsza para: (a) obraz dobrej jakości, (b) obraz zaszumiony; druga para: (c) obraz dobrej jakości, (d) obraz zaszumiony Tabela Wskaźniki oceny dla drugiej pary pozyskanych obrazów: P SNR, E i M P SNR E M Obraz 1 Obraz po KM 25,55 6,85 5,81 Obraz po KHM 27,32 4,78 3 Obraz 2 (zaszumiony) Obraz po KM 23,46 8,82 8,8 Obraz po KHM 26,53 5,26 3,3 Obraz 2 po filtracji filtremvmf Obraz po KM 23,83 8,55 8,39 Obraz po KHM 26,88 4,94 3,11 Obraz 2 po filtracji filtrem Kuwahary-Nagao Obraz po KM 24,53 7,81 7,22 Obraz po KHM 26,74 5,4 3,21 Analiza danych zawartych w Tab Tab pokazuje, że technika KHM daje lepsze rezultaty zarówno dla obrazów zawierających naturalny szum, jak i ich odfiltrowanych wersji. Tab świadczy o większej niezmienności wskaźników oceny w przypadku KHM.

69 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 62 Tabela Zakres zmienności wskaźników oceny z Tab i Tab Zmiana P SN R Zmiana E Zmiana M Para 1 KM 1,17 1,59 1,19 KHM 1,22,59,43 Para2 KM 2,9 1,97 2,99 KHM,79,48,3 Dla wielu technik klasteryzacji danych, do których należą KM i KHM, typowa jest wrażliwość na punkty odstające (ang. outliers). Można tutaj rozważać barwy odstające. Te mało liczne punkty, leżące w oddaleniu od środków powstających klastrów, nie powinny wpływać na wyniki procesu klasteryzacji. W celu sprawdzenia odporności obu technik kwantyzacji na barwy odstające stworzono obrazy zakłócone poprzez piksele o barwach odstających. Do obrazu wyjściowego (pierwszy obraz pierwszej pary) wprowadzono pikseli o barwach odstających od barw występujących w obrazie, co przestawia Rys W jednym przypadku były to piksele o barwie purpurowej (255,, 128), w innym piksele zielone (, 255, ) a w jeszcze innym piksele brązowe (128, 64, ). Tak zakłócone obrazy zostały poddane kwantyzacji barwy poprzez zastosowanie technik KM i KHM. Wyniki uzyskane w odniesieniu do każdego z obrazów zakłóconych przedstawiono w Tab. 4.25, a zakresy zmienności dla 3 obrazów zakłóconych w Tab Wyniki działania technik KM i KHM dla obrazu Rys. 4.33(b) przedstawia Rys Dwa skrajne obiekty na tym rysunku są jednakowej barwy (piksele z jednego klastra) różnej od barw występujących w obrazie wyjściowym. Wizualnie można tutaj dostrzec przewagę KHM, co znajduje również potwierdzenie w wyznaczanych wskaźnikach jakości. Tabela Wartości kryteriów oceny dla 3 obrazów z pikselami o barwach odstających P SNR E M Obraz 1 zakłócony przez pikseli (255,,128) Obraz po KM 29,69 2,64 1,6 Obraz po KHM 3,57 2,42 1,53 Obraz 1 zakłócony przez pikseli (,255,) Obraz po KM 25,88 4,91 5,24 Obraz po KHM 3,82 2,41,95 Obraz 1 zakłócony przez pikseli (128,64,) Obraz po KM 29,24 3,9 2,16 Obraz po KHM 3,94 2,28 1,11 Analiza wyników zawartych w Tab Tab pokazuje, że technika KHM jest znacznie bardziej odporna na występowanie w obrazach barw odstających niż technika KM. Pozyskane obrazy zostały dodatkowo zaszumione szumem impulsowym achromatycznym oraz barwnym. Wynik zaszumienia szumem 6% przedstawia Rys Na tak przy-

70 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 63 (a) (b) (c) Rysunek Obrazy zakłócone przez pikseli o barwach odstających: (a) (255,, 128); (b) (, 255, ); (c) (128, 64, ) (a) (b) Rysunek Wyniki kwantyzacji obrazu z Rys. 4.33(b) na 1 barw technikami: (a) KM; (b) KHM

71 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 64 Tabela Zakresy zmienności kryteriów oceny dla 3 obrazów z pikselami o barwach odstających KM KHM Zmiana PSNR 3,81,37 Zmiana E 2,27,14 Zmiana M 3,64,58 gotowanych obrazach przeprowadzono technikami KM i KHM kwantyzację obrazów na 1 barw. Przykłady uzyskiwanych rezultatów dla szumu 1% pokazuje Rys (a) (b) (c) (d) Rysunek Szum impulsowy 6% dodany do obrazów testowych: (a), (c) szum achromatyczny; (b), (d) szum barwny Rezultaty uzyskiwane techniką KHM są wizualnie znacznie lepsze. Potwierdzają to też w większości przypadków otrzymane wartości wskaźników jakości. Tab zawiera wyniki uzyskane technikami KM i KHM dla obrazu z Rys. 4.31(a) zakłóconego szumem impulsowym achromatycznym typu sól i pieprz, natomiast Tab prezentuje wyniki dla tego samego obrazu zakłóconego szumem impulsowym barwnym. Tab prezentuje wyniki uzyskane na obrazie z Rys. 4.31(c) po zakłóceniu go szumem impulsowym achromatycznym, zaś Tab. 4.3 zawiera wyniki dla tego obrazu i zakłóceń powstałych przez wprowadzenie szumu impulsowego barwnego. Tab przedstawia uzyskane wskaźniki jakości dla obrazu z Rys. 4.31(a) zaszumio-

72 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 65 Tabela Wskaźniki jakości dla obrazu z Rys.4.31(a) w obecności dodanego zakłócenia achromatycznego sól i pieprz po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 2,16 2,4 4,61 3,67 2,71 1,5 6% 15,55 15,87 7,48 5,48 6,5 3,8 1% 13,51 13,69 9,47 7,39 7,51 4,38 2% 1,64 1,69 12,9 12,82 7,45 7,49 Tabela Wskaźniki jakości dla obrazu z Rys. 4.31(a) zakłóconego szumem impulsowym barwnym po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 23,41 26,28 5,47 3,14,79,98 6% 2,22 2,39 7,1 5,5 7,52 12,17 1% 17,91 18,45 1,8 6,72 15,51 19,2 2% 15,38 15,56 12,63 11,16 35,21 35,46 nego szumem impulsowym barwnym po przefiltrowaniu filtrem VMF i poddanego kwantyzacji technikami KM i KHM, natomiast Tab przestawia te same dane dla obrazu z Rys. 4.31(c). Wskaźniki jakości zostały wyznaczone względem obrazów wyjściowych. Również w tym przypadku rezultaty dla techniki KHM są wyraźnie lepsze od wyników dla KM. Przedstawione wyniki zostały także zaprezentowane w pracy [22]. Tabela Wskaźniki jakości dla obrazu z Rys. 4.31(c) w obecności dodanego zakłócenia achromatycznego sól i pieprz po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 21,28 2,41 7,71 5,98 7,3 3,92 6% 15,82 16,14 1,21 7,9 7,9 4,91 1% 13,78 14,1 12,11 9,88 8,63 6,12 2% 1,98 11,9 16,19 14,88 11,2 8,96

73 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 66 Tabela 4.3. Wskaźniki jakości dla obrazu z Rys. 4.31(c) zaszumionego szumem impulsowym barwnym po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 23,54 24,17 7,7 5,4 3,15 1,51 6% 19,36 21,9 8,99 6,72 5,8 1,6 1% 17,74 2,4 11,24 7,87 12,46 3,82 2% 16,16 15,76 15,12 13,25 15,98 32,67 Tabela Wskaźniki jakości dla obrazu z Rys. 4.31(a) zaszumionego szumem impulsowym barwnym poddanemu filtracji VMF oraz po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 25,48 27,19 6,86 4,79 5,81 2,76 6% 25,38 27,5 6,89 4,82 5,9 2,93 1% 25,32 26,95 6,87 4,79 5,99 2,8 2% 24,56 25,88 6,98 4,96 6,17 3,4 Tabela Wskaźniki jakości dla obrazu z Rys. 4.31(c) zaszumionego szumem impulsowym barwnym poddanemu filtracji VMF po kwantyzacji KM i KHM Szum imp. P SNR E M KM KHM KM KHM KM KHM 2% 25,5 27,21 6,86 4,8 5,8 2,82 6% 25,48 27,19 6,86 4,79 5,8 2,74 1% 25,45 27,14 6,85 4,81 5,68 2,82 2% 25,38 27,5 6,89 4,83 5,71 2,91

74 4.5. WPŁYW ZAKŁÓCEŃ NA KM I KHM 67 (a) (b) (c) (d) (e) (f) (g) (h) Rysunek Wyniki kwantyzacji na 1 barw obrazów zakłóconych szumem 1%: (a), (e) KM szum achromatyczny; (c), (g) KM szum barwny; (b), (f) KHM szum achromatyczny; (d), (h) KHM szum barwny

75 Rozdział 5 Technika KHM w segmentacji obrazu 5.1 Segmentacja obrazu Techniki segmentacji obrazu odgrywają podstawową rolę w różnych zastosowaniach systemów wizyjnych [1,66]. Systemy wizyjne opierają swoje działanie w zakresie podejmowania decyzji na komputerowej analizie obrazu [83]. Komputerowa analiza obrazu wykorzystuje wyniki uzyskane z segmentacji. Procesy te są zbliżone do działania człowieka, który obserwując daną sceną za pomocą układu wzrokowego dokonuje nieświadomie automatycznej segmentacji i lokalizacji obserwowanych obiektów. Odruchowo pierwsze działanie polega na dostrzeżeniu pewnych obiektów jako całości i ich zlokalizowaniu poprzez krawędzie, średnią barwę czy też kształt. W dalszym etapie analizowane są szczegóły, które te obiekty współtworzą. Segmentacja obrazu polega na jego podziale na obszary odpowiadające obiektom lub ich częściom, znajdującym się w scenie. Od jakości segmentacji zależą rezultaty rozpoznawania i śledzenia obiektów, przeszukiwania obrazowych baz danych itd. Segmentacja obrazu w postaci nadsegmentacji - zbyt duża liczba obszarów (ang. oversegmentation) lub niedosegmentacji - zbyt mała liczba obszarów (ang. undersegmentation) pociąga za sobą błędy w dalszych etapach przetwarzania obrazu. Uniwersalna metoda segmentacji obrazu barwnego prawdopodobnie nie istnieje. Głównie spowodowane jest to tym, że cele segmentacji wyraźne zależą od zadania, którego elementem jest proces segmentacji. Rosnące możliwości obliczeniowe sprzętu komputerowego sprawiają, że wzrasta również możliwość stosowania coraz bardziej złożonych technik segmentacji i uzupełnianie segmentacji procesami przetwarzania wstępnego i końcowego. Lata dziewięćdziesiąte przynoszą pierwsze artykułu przeglądowe dotyczące tematyki segmentacji obrazów barwnych [1, 42, 51, 78]. Początkowo do segmentacji obrazów barwnych adaptowano techniki opracowane wcześniej dla obrazów achromatycznych [63]. Rozdziały dotyczące segmentacji obrazów barwnych pojawiają się także w pierwszych podręcznikach przetwarzania obrazów barwnych [71,74]. Rozwój technologiczny i wzrastająca liczba działających systemów wizyjnych, wykorzystujących techniki przetwarzania obrazu sprawia, że techniki przetwarzania obrazu barwnego a w tym metody segmentacji są w dalszym ciągu badane i rozwijane. W wyniku segmentacji otrzymuje się zawsze obraz znacznie prostszy, co ułatwia jego analizę. Wydzielone obszary spełniają pewne kryteria jednorodności, którymi mogą być

76 5.1. SEGMENTACJA OBRAZU 69 barwa obszaru lub jego poziom jasności. Ponadto w przeciwieństwie do pojedynczych pikseli można im przypisywać właściwości takie jak np. kształt, tekstura itp. Rozpatrując segmentację obrazu można spotkać się z podejściem globalnym, kiedy cały obraz poddawany jest podziałowi na obszary, a także lokalnym w przypadku kiedy wystarczająca jest segmentacja częściowa. Segmentacja częściowa polega na wydzieleniu z obrazu tylko pewnych obszarów zainteresowania (ang. region of interest ROI ). W dalszym etapie otrzymane w wyniku segmentacji obszary poddawane są operacji etykietowania (ang. labelling) zwanej też indeksacją. Etykietowanie polega na przypisaniu pikselom należącym do danego obszaru wspólnej etykiety. Każdy obszar posiada unikalną etykietę, za pomocą której można zidentyfikować piksele do niego należące. Dzięki etykietowaniu można dowolnie dekomponować nawet bardzo złożone obrazy sprowadzając ich analizę do sytuacji pojedynczego obiektu i tła. Istnieje wiele różnych metod segmentacji obrazu [66]. Metody te klasyfikowane są głównie ze względu na rodzaj informacji, który jest wykorzystywany w procesie segmentacji. Właściwy zatem wydaje się być podział na: metody pikselowe: progowanie najczęściej wynikiem jest obraz binarny, który zależy od dobranego progu dla obrazów achromatycznych bądź progów dla obrazów barwnych, klasteryzacyjne wykorzystujące techniki klasteryzacyjne takie jak KM i KHM operujące na cechach pikseli np. barwie, metody obszarowe: rozrost obszarów (ang. region growing), łączenie obszarów (ang. region merging), podział obszarów (ang. region splitting), metoda podziału i łączenia (ang. split and merge), segmentacja wododziałowa (ang. watershed segmentation), metody krawędziowe - wykorzystujące algorytmy wykrywania krawędzi np. za pomocą metod: Robertsa, Prewitta, Sobela, Canny ego, Scharra itd., metody hybrydowe łączące dwa lub więcej wymienionych podejść (najczęściej łączone są metody pikselowe z obszarowymi oraz obszarowe z krawędziowymi). Proces segmentacji obrazu jest krytycznym etapem przetwarzania w systemach wizyjnych. Błędnie przeprowadzona segmentacja prowadzi do błędnych decyzji wypracowywanych przez system, bądź podejmowanych przez eksperta. Zazwyczaj jest to spowodowane tym, że w wyniku segmentacji otrzymuje się zbyt dużą liczbę obszarów lub zbyt małą liczbę obszarów, które mają odwzorowywać rzeczywiste obiekty przedstawione na obrazie. Oba zjawiska są dość uciążliwe, chociaż w przypadku wystąpienia nadsegmentacji możliwe jest jeszcze przeprowadzanie przetwarzania końcowego (ang. postprocessing) i uzyskanie zadowalającego rezultatu. Przy niedosegmentacji odzyskanie utraconych szczegółów jest niemożliwe i wiąże się z koniecznością przeprowadzenia procesu od początku dla innych parametrów segmentacji. Przyczynami nadsegmentacji obok złego doboru parametrów segmentacji bardzo często jest zaszumienie przetwarzanego obrazu. Nawet bardzo

77 5.1. SEGMENTACJA OBRAZU 7 dobrej jakości obraz może posiadać na krawędziach obiektów bardzo dużą ilość małych obszarów. Przetwarzanie końcowe mające na celu wyeliminowanie nadsegmentacji najczęściej sprowadza się do usunięcia zbędnych obszarów, które nie wnoszą użytecznej informacji o analizowanej scenie. Usuwanie polega zazwyczaj na dołączaniu obszarów o bardzo małym polu powierzchni do sąsiednich, najbardziej zbliżonych. Miarą podobieństwa obszarów może być różnica ich średnich barw [67] lub bardziej złożone obliczeniowo cechy takie jak np: histogramy barw obszarów [81] z wyrażeniem podobieństwa barw poprzez przecięcie histogramów (ang. histogram intersection technique) [43], wyrażenia zależne m.in. od średniego gradientu barwy obliczonego dla pikseli należących do tych obszarów [61], odległość Fishera pomiędzy przylegającymi obszarami dla jednej składowej barwy [76]. Techniki segmentacji wykorzystują różnorodny aparat matematyczny w tym np. techniki grafowe, morfologię matematyczną, techniki rozmyte [1, 63], sieci neuronowe [1, 51] i inne. Poszczególne metody segmentacji w różnym stopniu wykorzystują informację apriori o scenie przedstawionej na obrazie. Dodatkowa wiedza w postaci np. liczby obiektów w scenie, barwa obiektów, barwa tła, kształt i wielkość poszukiwanych obiektów pozwala efektywnie stosować nawet najprostsze algorytmy segmentacji. Posiadanie dodatkowej wiedzy pozwala na znaczne przyspieszenie metod segmentacji poprzez odpowiedni dobór wykorzystywanych parametrów. W wielu przypadkach bardzo istotną i użyteczną informacją jest wiedza na temat barwy tła na którym umieszczone są poszukiwane obiekty. Wiedza na temat tła wykorzystywana jest w większości systemów dozoru wizyjnego. Kamery przemysłowe zazwyczaj obserwują scenę w sposób ciągły, natomiast w odpowiednim urządzeniu rejestrującym obraz zaimplementowane są odpowiednie algorytmy przetwarzania obrazu. Statyczne tło nie ulega gwałtownym zmianom w poszczególnych obrazach sekwencji video, co znacznie ułatwia lokalizację i segmentację przemieszczających się obiektów. W ramach tak znalezionych obiektów można w następnej fazie poszukiwać interesującego szczegółu np. w przypadku samochodów obraz segmentuje się w poszukiwaniu numerów tablicy rejestracyjnej. Zadanie to jest dodatkowo ułatwione jeżeli dostępna jest apriori informacja na temat np. gabarytów i barwy poszukiwanego szczegółu. Jeżeli informacja apriori o przetwarzanym obrazie barwnym jest niedostępna to powoduje to, że automatyczna segmentacja takiego obrazu jest trudna. Sięga się wtedy po bardzo złożone zintegrowane metody segmentacji obszarowej i krawędziowej [39]. W wyniku przeprowadzonej segmentacji uzyskuje się informację o przynależności pikseli obrazu do powstałych obszarów. Dla prawidłowo przeprowadzonej segmentacji obszary te odpowiadają naturalnym obiektom. Lokalizacja i identyfikacja obiektów w systemach widzenia komputerowego odbywa się poprzez wyznaczenie dla obszarów pewnych cech je opisujących. W literaturze spotyka się wiele różnych cech kształtowych wykorzystywanych do rozpoznawania i rozróżniania obiektów charakteryzujących się różnym stopniem przydatności [36, 54, 55]. Przykładowym reprezentantem cech geometrycznych jest współczynnik kompaktowości [82]: K = 4πA O 2, (5.1)

78 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 71 gdzie: O - obwód obszaru, A - pole obszaru. Należy przy tym zauważyć, że dla obrazów cyfrowych, które są pewnym sygnałem dyskretnym dość uciążliwa jest operacja wyznaczanie obwodu. Istotną rolę odgrywają też niezmienniki momentowe zaproponowane w początkowym etapie rozwoju przetwarzania obrazów [38]. Wśród wielu technik segmentacji obrazu istotne miejsce zajmują również techniki wykorzystujące grupowanie pikseli takie jak k-means, mean-shift i inne [85]. Spowodowało to zainteresowanie możliwością wykorzystania techniki KHM do segmentacji obrazów barwnych [15]. Techniki klasteryzacyjne stosowane do segmentacji obrazu nie wykorzystują informacji apriori o przetwarzanym obrazie i należą do grupy metod pikselowych. 5.2 Wyniki segmentacji obrazu dla KM i KHM W pracy [44] podczas badania metod inicjalizacji dla techniki FCM (ang. fuzzy c-means) zaprezentowano otrzymane wyniki segmentacji obrazów. Na Rys. 5.1 zestawiono najlepszy wynik z rezultatami jakie można otrzymać stosując techniki klasteryzacyjne KM i KHM z inicjalizacją SD w przestrzeni CIEL a b. Oceniając obrazy wynikowe wizualnie można stwierdzić, że technika KHM daje obraz prawie identyczny jak najlepszy wynik w [44], natomiast dla KM obszar reprezentujący odzież postaci z obrazu Clown odznacza się dużym błędem barwy. W obecnych czasach przetwarzanie obrazów cyfrowych jest coraz częściej wykorzystywane w zastosowaniach biomedycznych. Pozyskiwanie obrazów biomedycznych jest możliwe dzięki wykorzystaniu różnego rodzaju oddziaływania fizycznego na badaną tkankę bądź komórkę. Do obrazowania biomedycznego często wykorzystywane są: promieniowanie rentgenowskie, promieniowanie izotopów promieniotwórczych, własności pola magnetycznego, własności ultradźwięków czy promieniowanie cieplne. Analiza tak pozyskanych obrazów może uwidaczniać zmiany patologiczne typu: ropnie, torbiele, obszary niedokrwienia i martwicy, obrzęki, zmiany nowotworowe, zmiany zanikowe i zwyrodnieniowe, wady rozwojowe narządów wewnętrznych i innego typu patologie występujące w organizmie bądź komórkach. Obrazy takie jak RTG, TK, PET, NMR, USG bardzo często poddawane są dodatkowemu przetwarzaniu w celu podkreślenia szczegółów. co ma ułatwić ich analizę. W pracy [23] wykorzystano techniki KM i KHM do segmentacji obrazów biomedycznych. Rys. 5.2 przedstawia zbiór 8 obrazów testowych na których były przeprowadzone badania. Obrazy te pochodzą z wideoendoskopu fluorescencyjnego. Technika fluorescencyjna wykorzystuje światło lasera do oświetlania obserwowanego miejsca. W takich warunkach zdrowe tkanki samoistnie świecą (fluoryzują) zielonkawym światłem, natomiast zmiany patologiczne - dysplazje i nowotwory - wyraźnie odcinają się na ich tle, świecąc na czerwono. Dzięki temu dużo łatwiej niż w świetle białym można wykryć tkanki chorobowo zmienione, nawet jeśli zmiana jest bardzo mała. Obrazy posiadały tę samą rozdzielczość przestrzenną (768x576 pikseli) i 24-bitową głębię barwy. Podczas badań wykorzystano następujące parametry klasteryzacji: przestrzeń barw - RGB, liczba klastrów k=5, 6 i 7, liczba iteracji - 15, metoda inicjalizacji - SD, dla KHM p=2,5. Wartość parametru p została wybrana eksperymentalnie dla tego typu obrazów. Celem segmentacji było wyodrębnienie na przetwarzanych obrazach obszarów odpowiadających za tło, tkanki zdrowe i tkanki patologiczne. Ocena wizualna uzyskiwanych

79 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 72 (a) (b) (c) (d) Rysunek 5.1. Obraz Clown i wyniki jego segmentacji: (a) obraz oryginalny, (b) najlepszy wynik segmentacji uzyskany techniką FCM w pracy [44], (c) wynik dla techniki KM w CIEL a b dla: k = 6 i SD, (d) wynik dla techniki KHM w CIEL a b dla: k = 6, p = 2, 7 i SD wyników segmentacji jest tutaj bardzo trudna. Przykładowe wyniki segmentacji technikami KM i KHM dla obrazu I 8 przedstawiono na Rys. 5.3, gdzie wykonano klasteryzację z inicjalizacją SD w przestrzeni RGB przy k = 5 i k = 7. Wyniki te powinny być oceniane przez ekspertów od tego typu obrazów biomedycznych. Wizualne porównanie jakości uzyskiwanej segmentacji byłoby ułatwione w przypadku, gdy dostępne byłyby wyniki segmentacji ręcznej (obrysy obszarów), dokonane przez eksperta bądź ekspertów, w celu zdobycia szerszego zbioru odniesienia. Niemniej jednak można wyznaczyć wartości wskaźników jakości pomiędzy obrazem oryginalnym i jego przetworzonym odpowiednikiem. W Tab przedstawiono wskaźniki jakości V M 2 (I) oraz Q(I). Oba wskaźniki są mi-

80 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 73 (a) (b) (c) (d) (e) (f) (g) (h) Rysunek 5.2. Obrazy biomedyczne wykorzystane podczas badań: (a) - (h) przedstawiają kolejno obrazy I1 - I8 nimalizowane dla dobrego rezultatu i ich wartości przemawiają na korzyść techniki KHM. Wyniki te zostały także zaprezentowane w pracy [2]. Należy tutaj podkreślić, że błędna decyzja podczas wyznaczania granic obszarów odpowiadających za tkanki zdrowe i chore, może zaważyć na życiu lub zdrowiu pacjenta. Systemy wizyjne stosowane w medycynie jedynie wspierają pracę lekarza (eksperta) do którego należy podejmowanie ostatecznej decyzji. Wykorzystanie technik klasteryzacyjnych do segmentacji obrazu wymaga w końcowej fazie przeprowadzenia etykietowania obszarów (ang. region labelling). Często wykonuje się także przetwarzanie końcowe (ang. postprocessing) mające na celu usunięcie nadsegmentacji. Jedną z z najbardziej efektywnych metod przetwarzania końcowego jest usuwanie małych obszarów z obrazu poprzez dołączanie ich do obszarów sąsiadujących podobnych pod względem barwy. Zadanie to jest ułatwione poprzez proces etykietowania, gdzie otrzymuje się zazwyczaj listę powstałych obszarów wraz z informacją o przynależności pikseli. Pojedynczy piksel może współtworzyć tylko jeden obszar. Pole obszaru wyrażone jest dla cyfrowych obrazów barwnych poprzez liczbę pikseli tworzących ten obszar. Znalezienie obszarów o polu powierzchni mniejszym od zadanego nie jest zatem zadaniem trudnym.

81 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 74 (a) (b) (c) (d) Rysunek 5.3. Przykładowe wyniki segmentacji obrazu endoskopowego I 8 : (a) technika KM: k = 5, (b) technika KHM: k = 5 i p = 2, 5, (c) technika KM: k = 7, (d) technika KHM: k = 5 i p = 2, 5 Tabela 5.1. Porównanie wyników segmentacji technikami KM i KHM (k = 5) V M(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Q(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Próg ten ściśle zależy od przetwarzanego obrazu i musi być dobierany indywidualnie do danej grupy przetwarzanych obrazów i zamierzonego celu segmentacji. Niewłaściwy dobór wartości progowej lub stosowanie tej samej wartości do różnych grup obrazów powoduje, że oprócz usuwania niepożądanych artefaktów takich jak np. odblaski, szumy, zakłócenia i niepotrzebne detale utrudniające dalszą analizę obrazu, usuwane są także detale ważne, kluczowe dla analizy obrazu. Podczas dołączania małych obszarów do większych sąsiadów za każdym razem średnia barwa opisująca obszar do którego następuje dołączanie jest na

82 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 75 Tabela 5.2. Porównanie wyników segmentacji technikami KM i KHM (k = 6) V M(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Q(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Tabela 5.3. Porównanie wyników segmentacji technikami KM i KHM (k = 7) V M(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Q(I) I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM nowo przeliczana. Piksele, które są dołączane do obszaru większego otrzymują jego etykiety i lista obszarów ulega skróceniu. Obrazy endoskopowe są silnie zaszumione, co skutkuje tym, że wynik segmentacji charakteryzuje się dość dużą nadsegmentacją. W trakcie badań nad obrazami przedstawionymi na Rys. 5.2, wartość progu określającego przynależność do obszarów małych określono jako pikseli. Spowodowało to znaczny spadek liczby uzyskiwanych obszarów w wyniku segmentacji. Uzyskane wyniki przy k = 7 prezentują Tab. 5.4 i Tab Analizując wartości wskaźnika Q(I) stwierdzono, że zarówno przed jak i po operacji przetwarzania końcowego technika KHM pozwala na uzyskanie segmentacji o wyższej jakości w stosunku do KM. Tabela 5.4. Liczba obszarów przed (R 1 ) i po postprocessingu (R 2 ) R 1 I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM R 2 I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 KM KHM Pominięcie operacji segmentacji podczas budowania systemów wizyjnych spowodowałoby znaczne komplikacje w możliwości analizy pozyskanych obrazów. Bez informacji o przynależności do obszaru odpowiadającemu rzeczywistemu obiektowi w scenie, w skrajnym przypadku każdy piksel musiałby być traktowany indywidualnie, co uniemożliwia wypracowywanie decyzji. Na Rys. 5.4 przedstawiono obraz oryginalny I 4 oraz przeprowadzono jego etykietowanie z pominięciem segmentacji. Powstały w ten sposób

83 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 76 Tabela 5.5. Wartości wskaźnika jakości Q(I) przed (Q1 (I)) i po postprocessingu (Q2 (I)) Q1 (I) KM KHM Q2 (I) KM KHM I I1 413 I I I I I I I I I I I I I I obszary, które przedstawiono za pomocą losowo wygenerowanych barw. Taki obraz nie nadaje się do dalszej analizy. Wartość wskaźnika Q(I) jest w tym przypadku ekstremalnie wysoka i wynosi ponad Lokalizacja obiektów, czy też wyznaczenie ich cech jest wręcz niemożliwe. Segmentacja powoduje znaczne uproszczenie badanego obrazu, co (a) (b) (c) Rysunek 5.4. Analiza obrazu I4 : (a) obraz oryginalny, (b) chmura pikseli w RGB, (c) wynik etykietowania z pominięciem segmentacji obszary przedstawia Rys. 5.5, gdzie ponownie rozpatrywany jest obraz I4. Wyniki segmentacji zostały przedstawione w pseudokolorach. Liczba obszarów, które w dalszym przetwarzaniu takiego obrazu będą poddawane analizie ulega znacznemu zmniejszeniu i wynosi dla

84 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 77 KM, zaś 2952 dla KHM. Wskaźnik Q(I) także odzwierciedla działanie procesu segmentacji, gdyż jego wartość spada do Q(I) = dla KM i Q(I) = 228 dla KHM. Ocena wizualna wyników też wydaje się przeważać na korzyść techniki KHM. Dalej jednak występuje dość znaczna nadsegmentacja obrazu. Po zastosowaniu przetwarzania końcowego (a) (b) (c) (d) Rysunek 5.5. Segmentacja obrazu I 4 : (a) technika KM, (b) technika KHM, (c) technika KM (pseudokolory), (d) technika KHM (pseudokolory) opartego na usuwaniu małych obszarów przez dołączanie, z wartością progową pikseli uzyskuje się dalszą poprawę wyniku segmentacji, co przedstawia Rys Liczba obszarów zostaje zredukowana do KM i 23 - KHM. Powoduje to dalsze obniżanie się wskaźnika Q(I) do wartości 629 i 222 odpowiednio dla KM i KHM, co świadczy o poprawieniu jakości uzyskiwanych wyników. Na każdym z opisywanych etapów segmentacji jakość wyników okazuje się lepsza dla KHM, co potwierdza wskaźnik Q(I), a także wskaźnik V M 2, które prezentowane są w Tab Znacznie lepsze rezultaty segmentacji osiągane dla KHM w stosunku do KM potwierdzają większą odporność tej techniki na zakłócenia występujące w obrazie. Przetwarzane obrazy endoskopowe charakteryzowały się dość dużym zaszumieniem, co widać gołym okiem. Dla KM zakłócenia te są szczególnie widoczne na czarnym tle z czym zdecydowanie lepiej radzi sobie KHM. Obrazy biomedyczne ogólnie charakteryzują się dość dużym zaszumieniem ze względu na warunki w jakich są pozyskiwane.

85 5.2. WYNIKI SEGMENTACJI OBRAZU DLA KM I KHM 78 (a) (b) (c) (d) Rysunek 5.6. Wynik segmentacji obrazu I 4 po przetwarzaniu końcowym: (a) technika KM, (b) technika KHM, (c) technika KM (pseudokolory), (d) technika KHM (pseudokolory)

86 Rozdział 6 Akceleracja obliczeń 6.1 Układy wielordzeniowe i programowanie równoległe Procesory, które stosowane są we współczesnych komputerach, są układami wielordzeniowymi. Liczba rdzeni jednostki obliczeniowej wraz z częstotliwością taktowania, przy zapewnieniu wystarczającej wielkości pamięci operacyjnej, to główne cechy decydujące o wydajności danej platformy. Wprowadzenie architektury 64-bitowej do powszechnie dostępnych jednostek obliczeniowych i systemów operacyjnych wykorzystujących te rozwiązania spowodowało, że można korzystać ze znacznie większej przestrzeni adresowej pamięci operacyjnej. Teoretycznie istnieje 2 64 wariacji 64-bitowego adresu, czyli bezpośrednio można adresować komórek, przy czym komórki mają rozmiar 1 bajta. Dla architektury 32-bitowej teoretycznie możliwe było zaadresowanie bezpośrednio zaledwie 2 32 komórek. Współczesne ogólnie dostępne jednostki obliczeniowe są taktowane z częstotliwością około 3 GHz i obecnie wartość ta nie wzrasta już tak dynamicznie jak miało to miejsce w niedalekiej przeszłości. Firmy takie jak AMD czy Intel, będące czołowymi producentami jednostek obliczeniowych, skupiają się aktualnie na wprowadzaniu rozwiązań wielordzeniowych. Okazuje się, że rozwiązania wielordzeniowe mają znacznie większy potencjał w stosunku do rozwiązań bazujących na zwiększaniu częstotliwości pracy układu jednordzeniowego. Wprowadzenie układów wielordzeniowych wymaga od programistów innego podejścia do tworzenia oprogramowania. Głównie chodzi tutaj o podział problemu obliczeniowego na pewne mniejsze zadania do rozwiązania, które mogą być realizowane równolegle na poszczególnych rdzeniach jednostki obliczeniowej. Zazwyczaj niemożliwe jest całkowite zrównoleglenie procesu, dlatego bardzo często wykorzystuje się podejście hybrydowe. Polega to na tym, że część programu wykonywana jest na pojedynczym rdzeniu, natomiast pewne partie kodu, które można wykonywać równolegle, wykonywane są na kilku rdzeniach. Aktualnie najnowsze, ogólnodostępne jednostki obliczeniowe firmy Intel wyposażone są w 6 fizycznych rdzeni (CORE i7 99X) z których każdy taktowany jest z częstotliwością 3,2 GHz. Firma AMD nie pozostaje w tyle. W serii AMD PHENOM II najmocniejszy model (AMD PHENOM II X6 1T) posiada także 6 fizycznych rdzeni, z których każdy taktowany jest z częstotliwością 3,3 GHz. Obie firmy posiadają też w swojej ofercie jednostki specjalizowane pod kątem pracy w serwerach: Intel XEON, AMD OPTERON, przy czym tutaj najwydajniejsze układy też mają po 6 rdzeni. Na bazie wydajnych jednostek obliczeniowych tworzy się superkomputery (Blue Gene, Roadrunner, Jaguar, Tianhe-IA). Rynek zawsze reaguje z pewnym opóźnieniem w stosunku do nowych rozwiązań. Powo-

87 6.1. UKŁADY WIELORDZENIOWE I PROGRAMOWANIE RÓWNOLEGŁE 8 duje to, że najpopularniejszymi konstrukcjami, wykorzystywanymi powszechnie, są obecnie jednostki centralne wyposażone w dwa rdzenie: tzw. Dual Core, chociaż spotyka się coraz częściej także układy czterordzeniowe, czyli tzw. Quad Core. Oczywiście w zastosowaniach specjalistycznych stosuje się jednostki centralne o znacznie większej liczbie rdzeni w celu osiągnięcia jak największej mocy obliczeniowej. W zależności od producenta danego układu występują pewne różnice konstrukcyjne pomiędzy przedstawicielami konstrukcji o danej liczbie rdzeni. Platformy wyposażone w procesory wielordzeniowe są jednak bezużyteczne bez odpowiednio napisanego oprogramowania, które jest w stanie wykorzystać drzemiącą w tych układach moc obliczeniową. Podobną tendencję można zauważyć przyglądając się układom graficznym. Szczególnie dużą popularnością cieszy się technologia CUDA promowana przez firmę NVIDIA, gdzie znaczną akcelerację obliczeń uzyskuje się poprzez wykorzystanie mocy przetwarzania równoległego wielu rdzeni procesora graficznego [46]. Rozwój oprogramowania wspierającego równoległą implementację zadań sprawia, że rozwijany typ architektury równoległej w układach graficznych jest coraz łatwiejszy do wykorzystania, co wiąże się z podobieństwem stylu programowana, który upodabnia się do stylu wykorzystywanego dla procesorów ogólnego zastosowania. Technologia obliczeń ogólnego przeznaczenia na układach graficznych (GPGPU, ang. General-Purpose Computing on Graphics Processing Units) bardzo dynamicznie się rozwija i obejmuje swoim zasięgiem najróżniejsze dziedziny komputerowej analizy danych. NVIDIA zrewolucjonizowała GPGPU w latach 6-7, kiedy to zaprezentowała swoją nową, masowo dostępną, równoległą architekturę CUDA. Stosunkowo niski koszt wielordzeniowych układów graficznych wspierających CUDA, możliwość łączenia mocy obliczeniowej wielu kart graficznych oraz uzyskiwane bardzo wysokie przyspieszenia procesów obliczeniowych sprawiają, że technologia ta cieszy się coraz większą popularnością. Technologia ta znalazła już zastosowanie w: obliczeniowej mechanice strukturalnej, obliczeniach finansowych, bioinformatyce i naukach biologicznych, obliczeniach dynamiki płynów, przetwarzaniu obrazów i ich sekwencji, obrazowaniu medycznym, dynamice molekularnej, modelowaniu zachowania się atmosfery i zjawisk pogodowych, akceleracji oprogramowania (Matlab) i wielu innych. Najnowsze rozwiązania firmy NVIDIA wspierające CUDA to układy graficzne Tesla M29 wyposażone w 512 rdzeni przetwarzania równoległego osiągające maksymalną wydajność 655 GFLOPS (ang. Giga Floating Point Operations Per Second) w operacjach zmiennoprzecinkowych z podwójną precyzją. Cztery układy graficzne Tesla M29 współpracujące z czterema procesorami centralnymi (CPU) osiągnęły rekordową wydajność w aplikacji AMBER 11 - jednym z najpopularniejszych narzędzi do symulacji biomolekuł [62]. Projektanci superkomputerów, mając świadomość dużej mocy obliczeniowej obecnych układów graficznych, włączają te układy także do swoich rozwiązań. Superkomputer Tianhe- IA, który został stworzony przez National Supercomputing Center dla użytkownika w Chinach posiada w swojej strukturze procesorów Xeon X567 i 7168 procesorów NVIDIA Tesla M25. Jego teoretyczna maksymalna wydajność to 4,71 PFLOPS (ang. Peta Floating Point Operations Per Second) przy 262 TB pamięci operacyjnej i zapotrzebowaniu na moc zasilania 4,4 MW [89]. Algorytmy dające bardzo dobre rezultaty są zazwyczaj bardzo czasochłonne. Techniki klasteryzacyjne, przede wszystkim ze względu na iteracyjny charakter, także są procesami czasochłonnymi. Spotyka się różne podejścia do problemu akceleracji obliczeń czasochłonnych algorytmów. Jednym z podejść jest realizacja sprzętowa algorytmów np. w układach FPGA [57] lub z wykorzystaniem procesorów sygnałowych DSP [72], innym podejściem

88 6.2. ZRÓWNOLEGLENIE OBLICZEŃ W KM I KHM 81 jest próba napisania programu wielowątkowego i wykorzystania pełnej mocy obliczeniowej oferowanej przez współczesne jednostki obliczeniowe. Barwne obrazy cyfrowe reprezentowane są w pamięci platform obliczeniowych jako trójwymiarowe tablice. Trójwymiarowość wynika z sposobu reprezentacji barwy w systemach komputerowych, gdzie zazwyczaj mamy do czynienia z przestrzenią barw RGB. Wymiar tablicy jest także zdeterminowany rozmiarami obrazu cyfrowego, czyli jego rozdzielczością. Dla przykładu obraz o rozmiarach 512x512 pikseli posiada rozdzielczość przestrzenną pikseli. Każdy piksel obrazu opisany jest za pomocą trzech składowych barwy, gdzie najczęściej stosowany jest zapis 8 bitów na kanał, co w rezultacie daje 24 bity na każdy piksel. Wraz ze wzrostem rozdzielczości przestrzennej obrazu rośnie zapotrzebowanie na pamięć operacyjną. Wprowadzenie układów 64-bitowych rozwiązuje aktualnie problemy z niedoborem pamięci operacyjnej nawet w przypadku przetwarzania obrazów cyfrowych wysokich rozdzielczości, gdzie rozdzielczość przestrzenna pojedynczego obrazu może przekraczać 3 Mpix. Przykładem może być tutaj standard telewizji bardzo wysokiej rozdzielczości (UHDTV, ang. Ultra High Definition Television) opracowany przez japońską telewizję publiczną NHK, brytyjską BBC i włoską RAI, gdzie mamy do czynienia z rozdzielczością pojedynczej klatki równą 768x432 pikseli. Nieskompresowany film w formacie UHDTV wymaga około 35 GB/min [9]. W zastosowaniach przemysłowych zazwyczaj mamy do czynienia z obrazami cyfrowymi o stosunkowo niskiej rozdzielczości przestrzennej. Rozdzielczość ta jest zazwyczaj odpowiednio dobrana do danego procesu i jest ustalona na poziomie niezbędnego minimum, które daje nam możliwość uzyskania pożądanych informacji z analizowanej sceny przy jednoczesnej analizie minimalnej liczby danych (pikseli). Mała liczba przetwarzanych pikseli powoduje, że system wizyjny jest w stanie działać bardzo szybko, co jest w zastosowaniach przemysłowych pożądane. Bardzo często systemy wizyjne stosowane w przemyśle opierają swoje działanie na obrazach achromatycznych, gdzie każdy piksel opisany jest tylko za pomocą jednej składowej reprezentującej jasność, co także wpływa na skrócenie czasu przetwarzania obrazu. Czas potrzebny do uzyskania wyniku może być znacznie skrócony dzięki wykorzystaniu programowania wielowątkowego i układów wielordzeniowych. Każda aplikacja działająca pod kontrolą systemu operacyjnego tworzy w nim proces. W ramach procesu programista może tworzyć wiele wątków. Każdy z wątków dysponuje swoim obszarem pamięci operacyjnej oraz może uzyskać dostęp do zmiennych procesu. Pewne problemy pojawiają się w przypadku, gdy kilka wątków próbuje uzyskać dostęp do tej samej zmiennej, aby ją zmodyfikować, co jest sygnalizowane zazwyczaj błędem aplikacji. W takim przypadku należy posługiwać się szeregiem dostępnym mechanizmów zabezpieczających (semafory, sekcje krytyczne itd.). Nowoczesne aplikacje posiadają zazwyczaj obok wątku głównego wchodzącego w ich proces, szereg wątków dodatkowych realizujących czasochłonne obliczenia. Wątek główny dba o komunikację z użytkownikiem i agreguje wyniki cząstkowe. 6.2 Zrównoleglenie obliczeń w KM i KHM Klasteryzacja jest procesem iteracyjnym, co oznacza, że w celu osiągnięcia zadanego warunku stopu należy wykonać pewną (często bardzo dużą) liczbę iteracji. W każdej iteracji wykonuje się szereg obliczeń numerycznych na poszczególnych pikselach przetwarzanego obrazu, co w rezultacie przekłada się na wydłużenie czasu obliczeń. Dodatkowo czas ten

89 6.2. ZRÓWNOLEGLENIE OBLICZEŃ W KM I KHM 82 (a) (b) Rysunek 6.1. Propozycje podziału obrazu dla jednostki czterordzeniowej: (a) podział na ćwiartki, (b) podział na pasy

90 6.2. ZRÓWNOLEGLENIE OBLICZEŃ W KM I KHM 83 Wczytanie obrazu Określenie parametrów: k (k i p dla KHM), warunku stopu i startowych środków c k Wątek główny Wątek główny i wątki obliczeniowe Podział macierzy obrazowej na równe części i przydział do rdzeni procesora Wyznaczenie odległości pikseli do klastrów c k w poszczególnych częściach macierzy obrazowej Wyznaczenie lokalnych funkcji przynależności m (c j x i ) i wagi w(x i ) Wyznaczenie globalnych funkcji przynależności m (c j x i ) i wagi w(x i ) oraz nowych położeo c k Sprawdzenie warunku stopu nie tak Użycie koocowych pozycji c k jako palety i przypisanie pikselom obrazu barwy z palety stosując globalną funkcję przynależności m (c j x i ) Rysunek 6.2. Schemat blokowy procesu zrównoleglenia obliczeń w technikach klasteryzacyjnych

91 6.2. ZRÓWNOLEGLENIE OBLICZEŃ W KM I KHM 84 znacznie rośnie wraz ze wzrostem rozdzielczości przestrzennej obrazu oraz zwiększeniem liczby klastrów k. W każdej iteracji dla technik KM i KHM konieczne jest wyznaczanie odległości pikseli x i od środków klastrów c k. Bazując na wyznaczonych odległościach obliczane są funkcje przynależności m(c j x i ) i wagi w(x i ). Dla KM czas obliczeń jest znacznie krótszy ze względu na stałą funkcję wagi w(x i ) = 1 i znacznie prostsze wyznaczanie funkcji przynależności. Dla KHM dla każdego piksela wyznaczana jest pojedyncza funkcja wagi i funkcje przynależności w liczbie równej liczbie klastrów k. Postać samej funkcji przynależności jest znacznie bardziej złożona w stosunku do KM. Występują tutaj dodatkowe zależności potęgowe powiązane z parametrem p, co także ma bardzo duży udział w ogólnym czasie przetwarzania badanego obrazu. Pikselowe techniki klasteryzacyjne (KM i KHM) nie wykorzystują informacji przestrzennej w obrazie, a mimo to uzyskuje się dzięki nim bardzo dobre rezultaty w zakresie kwantyzacji barwy i segmentacji obrazu. Odpowiednio dzieląc macierz obrazową można zatem wykonywać niezależnie obliczenia na jej poszczególnych częściach nie martwiąc się o synchronizację. Dlatego można zaproponować zrównoleglenie obliczeń poprzez równomierny podział macierzy obrazowej zależny od liczby rdzeni. Dla procesora czterordzeniowego w każdej iteracji wątek główny programu dzieli obraz na cztery części tworząc dodatkowe 4 wątki obliczeniowe. System operacyjny dbając o równomierne obciążenie rdzeni procesora przydziela do każdego rdzenia po jednym wątku. Po zakończeniu obliczeń przez poszczególne rdzenie wątek główny dokonuje agregacji obliczeń, sprawdza warunek stopu i jeżeli nie jest on spełniony wywołuje kolejną iterację. Po osiągnięciu warunku stopu wątek główny zapisuje obraz wynikowy i prezentuje otrzymane wyniki. Propozycje przyśpieszenia technik KM i KHM i uzyskane wyniki zostały przedstawione w [21]. Programista w celu efektywnego skrócenia czasu obliczeń musi ocenić jakie etapy algorytmu da się zrównoleglić. Zazwyczaj próbę zrównoleglenia obliczeń wykonuje się na najbardziej czasochłonnych operacjach, gdyż przynosi to najlepsze efekty. Patrząc z punktu widzenia technik KM i KHM można zauważyć, że w każdej iteracji trzeba wyznaczać funkcję przynależności m(c j x i ) oraz funkcję wagi w(x i ). Obie te funkcje funkcje wykorzystują odległości pomiędzy poszczególnymi pikselami obrazu a środkami klastrów. Okazuje się, że te operacje są najbardziej czasochłonne. Stosując podział macierzy obrazowej i tworząc wątki obliczeniowe odpowiadające liczbie rdzeni procesora uzyskujemy znaczne przyspieszenie. Rys. 6.2 przedstawia szczegółowy schemat blokowy zaproponowanego zrównoleglenia obliczeń dla technik KM i KHM. Rozpatrywano dwa różne podejścia do podziału macierzy obrazowej, co przedstawia Rys Znacznie bardziej uniwersalnym podejściem jest rozwiązanie przedstawione na Rys. 6.1 (b). Obraz dzielony jest na równe pasy w zależności od liczby rdzeni jednostki obliczeniowej. Podejście to może być z powodzeniem wykorzystane dla układów o dowolnej, także nieparzystej, liczbie rdzeni. Równomierny rozdział pikseli obrazu na poszczególne wątki obliczeniowe jest bardzo ważny, gdyż w tej sytuacji obliczenia na poszczególnych rdzeniach procesora w danej iteracji są wykonywane w prawie identycznym czasie. Minimalizowany jest czas oczekiwania wątku głównego na zakończenie obliczeń przez poszczególne rdzenie. W przypadku, kiedy macierz obrazowa nie zostałaby podzielona równomiernie występuje sytuacja nierównomiernego obciążenia rdzeni procesora. Wątek główny traciłby wtedy czas ze względu na oczekiwanie, aż w danej iteracji zakończą się obliczenia na wszystkich rdzeniach. Wskutek podziału macierzy obrazowej, czasochłonne wyznaczanie odległości oraz funkcji m(c j x i ) i w(x i ) jest realizowane przez poszczególne wątki na partiach obrazu. Każdy wątek wykonywany jest na innym rdzeniu przy znacznie mniejszej liczbie przetwarzanych danych. System operacyjny

92 6.3. BADANIA DOŚWIADCZALNE 85 zapewnia odpowiedni przydział poszczególnych wątków obliczeniowych do rdzeni jednostki obliczeniowej dbając o równomierne ich obciążenie. 6.3 Badania doświadczalne Główna aplikacja realizująca problemy poruszane w niniejszej rozprawie, została utworzona w środowisku programistycznym CodeGear TM C++ Builder 7 przy użyciu języka C++. C++ Builder to narzędzie programistyczne typu RAD do tworzenia aplikacji w języku C++. Środowisko to wspiera także programowanie aplikacji wielowątkowych. Istnieje obszerna literatura dotycząca programowania przy użyciu C++ Builder np. [37]. Implementacja wielu wątków obliczeniowych została wykonana w oparciu o klasę TThread. Klasa ta pozwala w dogodny sposób tworzyć wątki oraz zarządzać nimi. Wątek główny programu tworzył wątki obliczeniowe i uruchamiał je. Agregacja wyników cząstkowych następowała w momencie zakończenia obliczeń przez wszystkie wątki obliczeniowe. Każdy z wątków obliczeniowych dokonywał obliczeń na ściśle określonej partii obrazu, co eliminowało powstawanie konfliktów w dostępie do zmiennych. Badania były przeprowadzane na 2 stacjach roboczych nazwanych St 1 i St 2, których parametry zostały przedstawione w Tab Tabela 6.1. Parametry stacji roboczych St 1 i St 2 Parametry St 1 St 2 CPU Dual Core AMD QuadCore Intel ATHLON X2 Core 2 Quad Q945 Częstotliwość 2x3 MHz 4x2666 MHz RAM 2GB DDR3 166 MHz 2 GB DDR2 667 MHz System operacyjny Windows XP Windows Vista Profesional SP3 Business SP1 Kompilacja finalnej wersji aplikacji odbyła się na stacji St 2. Badania przeprowadzono na grupie 5 barwnych obrazów testowych: Aeroplane, P arrots, Motocross, Seaside, Girl, o rozdzielczości 768x512x24 (szerokość, wysokość, głębia bitowa barwy), przedstawionych na Rys Obrazy te były poddawane operacji kwantyzacji barwy. Dla uproszczenia notacji przyjęto, że liczba aktywnych rdzeni procesora będzie oznaczana Cr, zaś liczba wątków obliczeniowych T h. Techniki KM i KHM wymagają zdefiniowania startowych środków klastrów c k. Zastosowano ideę polegającą na równomiernym, zależnym od k podziale osi szarości lokując na niej startowe środki (DC). Jako warunek stopu ustalono liczbę 15 iteracji. Dla techniki KHM parametr p przyjęto jako 2,7 (dobrano doświadczalnie). Postęp technologiczny w dziedzinie konstrukcji procesorów przyniósł układy wielordzeniowe. Niestety, aby móc wykorzystać zalety takich rozwiązań potrzebne jest stworzenie odpowiedniego oprogramowania lub dostosowanie już istniejącego do maszyn wielordzeniowych. Jeden z przeprowadzonych eksperymentów miał na celu pokazanie, że bez

93 6.3. BADANIA DOŚWIADCZALNE (a) 86 (b) (d) (c) (e) Rysunek 6.3. Obrazy testowe: (a) Aeroplane, (b) P arrots, (c) M otocross, (d) Seaside, (e) Girl wsparcia ze strony aplikacji, potencjał maszyn wielordzeniowych nie może być wykorzystany. Ponieważ stacje St1 i St2 wyposażone są odpowiednio w jednostki centralne dwui czterordzeniowe, więc w celu przeprowadzenia tego badania wykorzystane zostały możliwości systemu operacyjnego WINDOWS. Posługując się menadżerem zadań (ang. task manager ) można zlokalizować proces, który powstał w wyniku działania uruchomionej aplikacji. Menadżer zadań daje możliwość ustawienia tzw. koligacji (ang. affinity). Każdy proces znajdujący się w kolejce ma swój własny identyfikator oznaczający preferowany procesor. Podczas przydziału czasu procesora następuje przypisanie zadania do preferowanej jednostki przetwarzającej. Posługując się koligacją można wymusić, aby dany proces i jego wątki korzystały tylko i wyłącznie z danego rdzenia lub rdzeni procesora. Badania zostały przeprowadzone zarówno na St1 jak i St2. Przetwarzane obrazy posiadały jednakową rozdzielczość przestrzenną. Dla KM i KHM wykorzystano identyczne parametry klasteryzacji: stała liczba iteracji, metoda inicjalizacji równego podziału (DC), która jest niezależna od treści obrazu. Czas przetwarzania był mierzony od momentu wczytania obrazu do chwili wyświetlenia rezultatu. Różnice czasowe, występujące pomiędzy czasami przetwarzania poszczególnych obrazów, mieszczą się w granicach błędu pomiarowego spowodowanego działaniem samego systemu operacyjnego i jego usług. Tab. 6.2 zawiera uzyskane czasy przetwarzania w sekundach dla aplikacji jednowątkowej uruchamianej na różnej liczbie rdzeni procesora stacji St1 i St2. Aplikacje wielowątkowe zazwyczaj działają również na maszynach wyposażonych w procesory jednordzeniowe. Jest to ściśle powiązane z wielozadaniowością (ang. multitasking), która od dłuższego czasu jest obecna w systemach operacyjnych. Dla systemu WINDOWS pierwsze próby wprowadzenia wielozadaniowości miały miejsca wraz z pojawieniem się wersji Windows NT 3.1 w latach dziewięćdziesiątych. Przeprowadzono badania mające na celu pokazanie, iż starania programistów w celu tworzenia aplikacji korzystających z wielu wątków służących przyśpieszeniu obliczeń nie przynoszą wymiernych efektów bez wsparcia technologicznego. Ze względu na brak maszy-

94 6.3. BADANIA DOŚWIADCZALNE 87 Tabela 6.2. Czasy przetwarzania (w sekundach) dla pojedynczego wątku przy różnej liczbie wykorzystanych rdzeni, k=16 St 1 St 2 Th1 KM KHM KM KM KM KHM KHM KHM Cr2 Cr2 Cr2 Cr3 Cr4 Cr2 Cr3 Cr4 Aeroplane 9,5 62,5 9,2 9, 9, 69,4 69,3 69,3 Parrots 9,3 62,6 8,9 8,9 9,2 69,3 69,3 69,1 Motocross 9,3 62,8 8,9 8,8 9, 69,2 69,1 69,1 Seaside 9,3 62,6 8,9 8,9 8,9 69,8 69,2 69, Girl 9,3 62,5 8,9 8,9 8,9 69,2 69,1 69,1 ny wyposażonej w procesor jednordzeniowy w trakcie badań po raz kolejny skorzystano z menadżera zadań systemu WINDOWS. Zastosowano możliwość zmiany koligacji, aby wymusić na stacjach roboczych pracę z pojedynczym rdzeniem. Tab. 6.3 przedstawia czasy przetwarzania obrazów testowych w sekundach. Wyniki obrazują brak korzyści z aplikacji wielowątkowych w sytuacji kiedy aplikacja uruchamiana jest na jednostce wyposażonej w pojedynczy rdzeń. Można wręcz zaobserwować nieznaczne wydłużenie czasu obliczeń przy zwiększaniu liczby wątków obliczeniowych. Jest to związane z pewną, niewielką stratą czasu na tworzenie wątków obliczeniowych podczas każdej iteracji. Obie stacje robocze pomimo wymuszenia pracy z wykorzystaniem jednego rdzenia pozwalały na przetwarzanie obrazów testowych z wykorzystaniem wielu wątków obliczeniowych. Tabela 6.3. Czasy przetwarzania (w sekundach) przy wykorzystaniu jednego rdzenia, k=16 St1 Cr1 KM KHM Th1 Th2 Th Th1 Th2 Th4 Aeroplane 9,5 9,5 9,5 62,7 63,5 64,6 Parrots 9,2 9,2 9,3 62,8 63,6 64,8 Motocross 9,2 9,2 9,3 62,9 63,8 64,8 Seaside 9,2 9,3 9,3 62,8 63,8 64,8 Girl 9,2 9,3 9,3 62,7 63,5 64,8 St2 Cr1 Th1 Th2 Th4 Th1 Th2 Th4 Aeroplane 9,2 9,2 9,3 69,4 67,3 66,3 Parrots 8,9 9, 9,1 69,5 67,3 66,3 Motocross 8,9 8,9 9,1 69,4 67,5 66,6 Seaside 8,9 8,9 9,1 69,8 67,4 66,4 Girl 8,9 8,9 8,9 69,5 67,3 66,4 Opisywane wyniki badań przekonują, że postęp technologiczny w dziedzinie procesorów musi być wspierany rozwojem oprogramowania. Tylko połączenie aplikacji wielowątkowych

95 6.3. BADANIA DOŚWIADCZALNE 88 z układami wielordzeniowymi może przynieść wymierne efekty. Przebadano wszystkie obrazy testowe pod kątem czasu przetwarzania w przypadku 1 i 2 rdzeni dla St 1 oraz 1, 2 i 4 rdzeni dla stacji St 2. Na stacji St 1 dla techniki KM uzyskano średnie przyśpieszenie na poziomie 1,85. Dla stacji St 2 przy 2 aktywnych rdzeniach średnie przyśpieszenie wynosiło 1,9. Po uruchomieniu wszystkich rdzeni na St 2 średnie przyśpieszenie KM wzrosło do 2,8. Stacja St 1 pozwoliła na średnie przyspieszenie techniki KHM na poziomie 1,93 przy wykorzystaniu obu jej rdzeni. Stacja St 2 dla 2 rdzeni dała przyśpieszenie na poziomie 1,98 zaś po aktywowaniu wszystkich jej rdzeni uzyskano akcelerację blisko czterokrotną: średnio 3,9. Wyniki te prezentują Tab. 6.4 oraz Tab Tabele te zawierają czasy przetwarzania w sekundach (kolumny: T h1, T h2, T h4) oraz uzyskane przyspieszenia (kolumny: AT h2, AT h4), które są wielkościami bezwymiarowymi wyznaczonymi zgodnie z zależnością: A T hx = Czas T h x Czas T h 1, (6.1) gdzie: Czas T h x - czas przetwarzania obrazu w sekundach z wykorzystaniem x wątków obliczeniowych, Czas T h 1 - czas przetwarzania obrazu w sekundach z wykorzystaniem pojedynczego wątku obliczeniowego. Tabela 6.4. Czas przetwarzania (w sekundach) i uzyskane przyspieszenia dla KM, k=16 KM St1 Cr2 St2 Cr4 T h1 T h2 AT h2 T h1 T h2 T h4 AT h2 AT h4 Aeroplane 9,52 5,17 1,84 9,3 4,76 3,35 1,9 2,7 Parrots 9,34 4,98 1,88 9,16 4,66 3,15 1,97 2,91 Motocross 9,28 5,5 1,84 9,3 4,8 3,45 1,88 2,62 Seaside 9,33 5,9 1,83 8,85 4,71 3,21 1,88 2,76 Girl 9,27 4,98 1,86 8,85 4,66 3,2 1,9 2,77 Tabela 6.5. Czas przetwarzania (w sekundach) i uzyskane przyspieszenia dla KHM, k=16 KHM St1 Cr2 St2 Cr4 T h1 T h2 AT h2 T h1 T h2 T h4 AT h2 AT h4 Aeroplane 62,51 32,52 1,92 69,33 34,74 17,8 2, 3,89 Parrots 62,62 32,28 1,94 69,14 34,74 17,77 1,99 3,89 Motocross 62,81 32,45 1,94 69,11 35,12 17,88 1,97 3,87 Seaside 62,55 32,45 1,93 69,3 34,76 17,72 1,99 3,9 Girl 62,52 32,34 1,93 69,1 34,8 17,72 1,99 3,9 Techniki klasteryzacyjne KM i KHM są procesami iteracyjnymi. Zbadano na obrazie testowym Girl jaki wpływ na czas obliczeń ma rosnąca liczba iteracji oraz jakie przyśpieszenia uzyskuje się stosując zrównoleglenie obliczeń. Okazuje się, że czas przetwarzania obrazu jest w przybliżeniu liniową funkcją zadanej liczby iteracji. Średnia wartość przyspieszenia dla St 1 i techniki KM wynosi 1,94, a dla techniki KHM 1,91. Przyspieszenie

96 KHM - czas przetwarzania [s] KM - czas przetwarzania [s] 6.3. BADANIA DOŚWIADCZALNE 89 średnie na stacji roboczej St 2 dla techniki KM wyniosło 2,86, a dla KHM 3,89. W idealnym przypadku przy całkowitym zrównolegleniu obliczeń wartości średnie przyspieszenia dla St 1 zmierzałyby do liczby 2, natomiast dla St 2 dążyły by do czterokrotnego przyśpieszenia. Wynika to z liczby rdzeni w poszczególnych stacjach. Czas dowolnej operacji przetwarzania cyfrowego obrazu barwnego ściśle zależy od jego rozdzielczości przestrzennej. Na obrazie testowym Girl sprawdzono zależność czasu przetwarzania dla KM i KHM od liczby wykonanych iteracji. Uzyskane wyniki prezentuje Rys Można zauważyć, że czas przetwarzania dla ustalonego k (k=16) oraz metody inicjalizacji (DC), jest w przybliżeniu liniową funkcją liczby iteracji, w ramach ustalonej liczby wątków obliczeniowych i liczby aktywnych rdzeni procesora. 45, 4, 35, 3, 25, 2, 15, 1, 5,, St1Cr2Th1 St1Cr2Th2 St2Cr4Th1 St2Cr4Th Liczba iteracji 6 75 (a) 35, 3,,, 15,, 5,, St1Cr2Th1 St1Cr2Th2 St2Cr4Th1 St2Cr4Th Liczba iteracji 6 75 (b) Rysunek 6.4. Wpływ liczby iteracji na czas przetwarzania: (a) technika KM, (b) technika KHM Dla technik klasteryzacyjnych liczba klastrów k jest głównym parametrem wejściowym. Liczba klastrów w procesie kwantyzacji barwy jest wprost utożsamiana z liczbą barw w

97 Przyśpieszenie Przyśpieszenie 6.3. BADANIA DOŚWIADCZALNE 9 poszukiwanej palecie. Zmieniając liczbę klastrów k oraz przestrzenną rozdzielczość obrazu testowego Girl zbadano jakie przyspieszenia można uzyskać stosując zrównoleglenie obliczeń. Rys. 6.5 obrazuje uzyskane wyniki dla technik KM i KHM. Można zaobserwować, że im bardziej czasochłonny jest proces przetwarzania obrazu, co jest związane z dużą rozdzielczością przestrzenną (liczba pikseli) i rosnącą liczbą klastrów, tym bardziej następuje zbliżenie uzyskanego przyspieszenia do wartości maksymalnych możliwych do osiągnięcia. Związane to jest z malejącym udziałem błędu pomiarowego czasu oraz z malejącym udzia- 1,95 1,9 1,85 1,8 1,75 1,7 1,65 St1k8KM St1k16KM St1k32KM St1k8KHM St1k16KHM St1k32KHM Liczba pikseli (a) 4 3,5 3 2,5 2 1,5 St2k8KM St2k16KM St2k32KM St2k8KHM St2k16KHM St2k32KHM Liczba pikseli (b) Rysunek 6.5. Przyspieszenia uzyskane przy różnym rozmiarze obrazu testowego: (a) wyniki dla stacji St 1, (b) wyniki dla stracji St 2 łem działających usług systemu operacyjnego w tym czasie. Dla stacji St 1 maksymalna, teoretyczna wartość przyspieszenia wynosi 2, natomiast dla stacji St 2, wartość ta wynosi 4. Przy niskiej rozdzielczości obrazu i małej liczbie k, uzyskiwane przyspieszenia przyjmują mniejsze wartości, szczególnie dla KM. Dla techniki KHM na obu stacjach następuje zbli-

Strata barwności obrazu w procesie kwantyzacji barwy

Strata barwności obrazu w procesie kwantyzacji barwy Henryk Palus Instytut Automatyki Politechniki Śląskiej Mariusz Frąckiewicz Instytut Automatyki Politechniki Śląskiej Strata barwności obrazu w procesie kwantyzacji barwy STRESZCZENIE W artykule przedstawiono

Bardziej szczegółowo

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu

Bardziej szczegółowo

Aproksymacja funkcji a regresja symboliczna

Aproksymacja funkcji a regresja symboliczna Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą

Bardziej szczegółowo

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych. Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą

Bardziej szczegółowo

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Grupowanie Grupowanie 7 6 5 4 y 3 2 1 0-3 -2-1 0 1 2 3 4 5-1 -2-3 -4 x Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Wprowadzenie Celem procesu grupowania jest podział zbioru

Bardziej szczegółowo

SCENARIUSZ LEKCJI. TEMAT LEKCJI: Zastosowanie średnich w statystyce i matematyce. Podstawowe pojęcia statystyczne. Streszczenie.

SCENARIUSZ LEKCJI. TEMAT LEKCJI: Zastosowanie średnich w statystyce i matematyce. Podstawowe pojęcia statystyczne. Streszczenie. SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:

Bardziej szczegółowo

Akwizycja obrazów. Zagadnienia wstępne

Akwizycja obrazów. Zagadnienia wstępne Akwizycja obrazów. Zagadnienia wstępne Wykorzystane materiały: R. Tadeusiewicz, P. Korohoda, Komputerowa analiza i przetwarzanie obrazów, Wyd. FPT, Kraków, 1997 A. Przelaskowski, Techniki Multimedialne,

Bardziej szczegółowo

Hierarchiczna analiza skupień

Hierarchiczna analiza skupień Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym

Bardziej szczegółowo

Programowanie celowe #1

Programowanie celowe #1 Programowanie celowe #1 Problem programowania celowego (PC) jest przykładem problemu programowania matematycznego nieliniowego, który można skutecznie zlinearyzować, tzn. zapisać (i rozwiązać) jako problem

Bardziej szczegółowo

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Kompresja danych Streszczenie Studia Dzienne Wykład 10, 1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny

Bardziej szczegółowo

Analiza składowych głównych. Wprowadzenie

Analiza składowych głównych. Wprowadzenie Wprowadzenie jest techniką redukcji wymiaru. Składowe główne zostały po raz pierwszy zaproponowane przez Pearsona(1901), a następnie rozwinięte przez Hotellinga (1933). jest zaliczana do systemów uczących

Bardziej szczegółowo

Grafika komputerowa. Dla DSI II

Grafika komputerowa. Dla DSI II Grafika komputerowa Dla DSI II Rodzaje grafiki Tradycyjny podział grafiki oznacza wyróżnienie jej dwóch rodzajów: grafiki rastrowej oraz wektorowej. Różnica pomiędzy nimi polega na innej interpretacji

Bardziej szczegółowo

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Piotr Dalka Przykładowe algorytmy decyzyjne Sztuczne sieci neuronowe Algorytm k najbliższych sąsiadów Kaskada klasyfikatorów AdaBoost Naiwny

Bardziej szczegółowo

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335 Sztuczne sieci neuronowe Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335 Wykład 10 Mapa cech Kohonena i jej modyfikacje - uczenie sieci samoorganizujących się - kwantowanie wektorowe

Bardziej szczegółowo

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat BIBLIOTEKA PROGRAMU R - BIOPS Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat Biblioteka biops zawiera funkcje do analizy i przetwarzania obrazów. Operacje geometryczne (obrót, przesunięcie,

Bardziej szczegółowo

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar... 1. Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar... 1. Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16 Spis treści Przedmowa.......................... XI Rozdział 1. Pomiar: jednostki miar................. 1 1.1. Wielkości fizyczne i pozafizyczne.................. 1 1.2. Spójne układy miar. Układ SI i jego

Bardziej szczegółowo

Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania

Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania Analiza skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania Analiza Skupień Elementy składowe procesu grupowania obiekt Ekstrakcja cech Sprzężenie zwrotne Grupowanie klastry Reprezentacja

Bardziej szczegółowo

Kompresja danych DKDA (7)

Kompresja danych DKDA (7) Kompresja danych DKDA (7) Marcin Gogolewski marcing@wmi.amu.edu.pl Uniwersytet im. Adama Mickiewicza w Poznaniu Poznań, 22 listopada 2016 1 Kwantyzacja skalarna Wprowadzenie Analiza jakości Typy kwantyzatorów

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej

Bardziej szczegółowo

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego

Bardziej szczegółowo

Algorytm grupowania danych typu kwantyzacji wektorów

Algorytm grupowania danych typu kwantyzacji wektorów Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, problemem często spotykanym w zagadnieniach eksploracji danych (ang. data mining) jest zagadnienie grupowania danych

Bardziej szczegółowo

przetworzonego sygnału

przetworzonego sygnału Synteza falek ortogonalnych na podstawie oceny przetworzonego sygnału Instytut Informatyki Politechnika Łódzka 28 lutego 2012 Plan prezentacji 1 Sformułowanie problemu 2 3 4 Historia przekształcenia falkowego

Bardziej szczegółowo

Charakterystyki liczbowe (estymatory i parametry), które pozwalają opisać właściwości rozkładu badanej cechy (zmiennej)

Charakterystyki liczbowe (estymatory i parametry), które pozwalają opisać właściwości rozkładu badanej cechy (zmiennej) Charakterystyki liczbowe (estymatory i parametry), które pozwalają opisać właściwości rozkładu badanej cechy (zmiennej) 1 Podział ze względu na zakres danych użytych do wyznaczenia miary Miary opisujące

Bardziej szczegółowo

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej GRAFIKA RASTROWA WYKŁAD 1 Wprowadzenie do grafiki rastrowej Jacek Wiślicki Katedra Informatyki Stosowanej Grafika rastrowa i wektorowa W grafice dwuwymiarowej wyróżnia się dwa rodzaje obrazów: rastrowe,

Bardziej szczegółowo

Inteligentna analiza danych

Inteligentna analiza danych Numer indeksu 150946 Michał Moroz Imię i nazwisko Numer indeksu 150875 Grzegorz Graczyk Imię i nazwisko kierunek: Informatyka rok akademicki: 2010/2011 Inteligentna analiza danych Ćwiczenie I Wskaźniki

Bardziej szczegółowo

Zmienne zależne i niezależne

Zmienne zależne i niezależne Analiza kanoniczna Motywacja (1) 2 Często w badaniach spotykamy problemy badawcze, w których szukamy zakresu i kierunku zależności pomiędzy zbiorami zmiennych: { X i Jak oceniać takie 1, X 2,..., X p }

Bardziej szczegółowo

METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA

METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA AMFETAMINY Waldemar S. Krawczyk Centralne Laboratorium Kryminalistyczne Komendy Głównej Policji, Warszawa (praca obroniona na Wydziale Chemii Uniwersytetu

Bardziej szczegółowo

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna.

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna. Politechnika Świętokrzyska Laboratorium Cyfrowe przetwarzanie sygnałów Ćwiczenie 8 Filtracja uśredniająca i statystyczna. Cel ćwiczenia Celem ćwiczenia jest zdobycie umiejętności tworzenia i wykorzystywania

Bardziej szczegółowo

Sposoby opisu i modelowania zakłóceń kanałowych

Sposoby opisu i modelowania zakłóceń kanałowych INSTYTUT TELEKOMUNIKACJI ZAKŁAD RADIOKOMUNIKACJI Instrukcja laboratoryjna z przedmiotu Podstawy Telekomunikacji Sposoby opisu i modelowania zakłóceń kanałowych Warszawa 2010r. 1. Cel ćwiczeń: Celem ćwiczeń

Bardziej szczegółowo

Zamiana reprezentacji wektorowej na rastrową - rasteryzacja

Zamiana reprezentacji wektorowej na rastrową - rasteryzacja MODEL RASTROWY Siatka kwadratów lub prostokątów stanowi elementy rastra. Piksel - pojedynczy element jest najmniejszą rozróŝnialną jednostką powierzchniową, której własności są opisane atrybutami. Model

Bardziej szczegółowo

Wykład 5: Statystyki opisowe (część 2)

Wykład 5: Statystyki opisowe (część 2) Wykład 5: Statystyki opisowe (część 2) Wprowadzenie Na poprzednim wykładzie wprowadzone zostały statystyki opisowe nazywane miarami położenia (średnia, mediana, kwartyle, minimum i maksimum, modalna oraz

Bardziej szczegółowo

Wykład 4: Statystyki opisowe (część 1)

Wykład 4: Statystyki opisowe (część 1) Wykład 4: Statystyki opisowe (część 1) Wprowadzenie W przypadku danych mających charakter liczbowy do ich charakterystyki można wykorzystać tak zwane STATYSTYKI OPISOWE. Za pomocą statystyk opisowych można

Bardziej szczegółowo

Metody systemowe i decyzyjne w informatyce

Metody systemowe i decyzyjne w informatyce Metody systemowe i decyzyjne w informatyce Laboratorium JAVA Zadanie nr 2 Rozpoznawanie liter autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się z problemem klasyfikacji

Bardziej szczegółowo

Grafika na stronie www

Grafika na stronie www Grafika na stronie www Grafika wektorowa (obiektowa) To grafika której obraz jest tworzony z obiektów podstawowych najczęściej lini, figur geomtrycznych obrazy są całkowicie skalowalne Popularne programy

Bardziej szczegółowo

SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization

SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization Wrocław University of Technology SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization Jakub M. Tomczak Studenckie Koło Naukowe Estymator jakub.tomczak@pwr.wroc.pl 4.1.213 Klasteryzacja Zmienne

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11, 1 Kwantyzacja skalarna Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11, 10.05.005 Kwantyzacja polega na reprezentowaniu dużego zbioru wartości (być może nieskończonego) za pomocą wartości

Bardziej szczegółowo

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka. Wstęp teoretyczny Zmienne losowe Zmienne losowe

Bardziej szczegółowo

INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ

INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ Przygotowała mgr Joanna Guździoł e-mail: jguzdziol@wszop.edu.pl WYŻSZA SZKOŁA ZARZĄDZANIA OCHRONĄ PRACY W KATOWICACH 1. Pojęcie grafiki komputerowej Grafika komputerowa

Bardziej szczegółowo

Analiza składowych głównych

Analiza składowych głównych Analiza składowych głównych Wprowadzenie (1) W przypadku regresji naszym celem jest predykcja wartości zmiennej wyjściowej za pomocą zmiennych wejściowych, wykrycie związku między wielkościami wejściowymi

Bardziej szczegółowo

PODSTAWY BARWY, PIGMENTY CERAMICZNE

PODSTAWY BARWY, PIGMENTY CERAMICZNE PODSTAWY BARWY, PIGMENTY CERAMICZNE Barwa Barwą nazywamy rodzaj określonego ilościowo i jakościowo (długość fali, energia) promieniowania świetlnego. Głównym i podstawowym źródłem doznań barwnych jest

Bardziej szczegółowo

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska. SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska INFORMACJE WSTĘPNE Hipotezy do uczenia się lub tworzenia

Bardziej szczegółowo

LABORATORIUM PODSTAW TELEKOMUNIKACJI

LABORATORIUM PODSTAW TELEKOMUNIKACJI WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego w Warszawie Wydział Elektroniki LABORATORIUM PODSTAW TELEKOMUNIKACJI Grupa Podgrupa Data wykonania ćwiczenia Ćwiczenie prowadził... Skład podgrupy:

Bardziej szczegółowo

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane

Bardziej szczegółowo

Teoria światła i barwy

Teoria światła i barwy Teoria światła i barwy Powstanie wrażenia barwy Światło może docierać do oka bezpośrednio ze źródła światła lub po odbiciu od obiektu. Z oka do mózgu Na siatkówce tworzony pomniejszony i odwrócony obraz

Bardziej szczegółowo

Rozpoznawanie obrazów

Rozpoznawanie obrazów Rozpoznawanie obrazów Laboratorium Python Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba, J. Kaczmar Cel zadania Celem zadania jest implementacja liniowego zadania

Bardziej szczegółowo

Co to jest grupowanie

Co to jest grupowanie Grupowanie danych Co to jest grupowanie 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Szukanie grup, obszarów stanowiących lokalne gromady punktów Co to jest grupowanie

Bardziej szczegółowo

W kolejnym kroku należy ustalić liczbę przedziałów k. W tym celu należy wykorzystać jeden ze wzorów:

W kolejnym kroku należy ustalić liczbę przedziałów k. W tym celu należy wykorzystać jeden ze wzorów: Na dzisiejszym wykładzie omówimy najważniejsze charakterystyki liczbowe występujące w statystyce opisowej. Poszczególne wzory będziemy podawać w miarę potrzeby w trzech postaciach: dla szeregu szczegółowego,

Bardziej szczegółowo

Założenia i obszar zastosowań. JPEG - algorytm kodowania obrazu. Geneza algorytmu KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG

Założenia i obszar zastosowań. JPEG - algorytm kodowania obrazu. Geneza algorytmu KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG Założenia i obszar zastosowań KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG Plan wykładu: Geneza algorytmu Założenia i obszar zastosowań JPEG kroki algorytmu kodowania obrazu Założenia: Obraz monochromatyczny

Bardziej szczegółowo

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI Autoreferat do rozprawy doktorskiej OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI Michał Mazur Gliwice 2016 1 2 Montaż samochodów na linii w

Bardziej szczegółowo

Analiza głównych składowych- redukcja wymiaru, wykł. 12

Analiza głównych składowych- redukcja wymiaru, wykł. 12 Analiza głównych składowych- redukcja wymiaru, wykł. 12 Joanna Jędrzejowicz Instytut Informatyki Konieczność redukcji wymiaru w eksploracji danych bazy danych spotykane w zadaniach eksploracji danych mają

Bardziej szczegółowo

Uczenie sieci typu MLP

Uczenie sieci typu MLP Uczenie sieci typu MLP Przypomnienie budowa sieci typu MLP Przypomnienie budowy neuronu Neuron ze skokową funkcją aktywacji jest zły!!! Powszechnie stosuje -> modele z sigmoidalną funkcją aktywacji - współczynnik

Bardziej szczegółowo

i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk

i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk System śledzenia oczu, twarzy i ruchów użytkownika komputera za pośrednictwem kamery internetowej i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Mirosław ł Słysz Promotor:

Bardziej szczegółowo

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH 1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Co to znaczy eksploracja danych Klastrowanie (grupowanie) hierarchiczne Klastrowanie

Bardziej szczegółowo

166 Wstęp do statystyki matematycznej

166 Wstęp do statystyki matematycznej 166 Wstęp do statystyki matematycznej Etap trzeci realizacji procesu analizy danych statystycznych w zasadzie powinien rozwiązać nasz zasadniczy problem związany z identyfikacją cechy populacji generalnej

Bardziej szczegółowo

Implementacja filtru Canny ego

Implementacja filtru Canny ego ANALIZA I PRZETWARZANIE OBRAZÓW Implementacja filtru Canny ego Autor: Katarzyna Piotrowicz Kraków,2015-06-11 Spis treści 1. Wstęp... 1 2. Implementacja... 2 3. Przykłady... 3 Porównanie wykrytych krawędzi

Bardziej szczegółowo

Elementy statystyki wielowymiarowej

Elementy statystyki wielowymiarowej Wnioskowanie_Statystyczne_-_wykład Spis treści 1 Elementy statystyki wielowymiarowej 1.1 Kowariancja i współczynnik korelacji 1.2 Macierz kowariancji 1.3 Dwumianowy rozkład normalny 1.4 Analiza składowych

Bardziej szczegółowo

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny.

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny. Filtracja nieliniowa może być bardzo skuteczną metodą polepszania jakości obrazów Filtry nieliniowe Filtr medianowy Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy

Bardziej szczegółowo

Obraz jako funkcja Przekształcenia geometryczne

Obraz jako funkcja Przekształcenia geometryczne Cyfrowe przetwarzanie obrazów I Obraz jako funkcja Przekształcenia geometryczne dr. inż Robert Kazała Definicja obrazu Obraz dwuwymiarowa funkcja intensywności światła f(x,y); wartość f w przestrzennych

Bardziej szczegółowo

WYKŁAD 9 METODY ZMIENNEJ METRYKI

WYKŁAD 9 METODY ZMIENNEJ METRYKI WYKŁAD 9 METODY ZMIENNEJ METRYKI Kierunki sprzężone. Metoda Newtona Raphsona daje dobre przybliżenie najlepszego kierunku poszukiwań, lecz jest to okupione znacznym kosztem obliczeniowym zwykle postać

Bardziej szczegółowo

9. OBRAZY i FILTRY BINARNE 9.1 Erozja, dylatacja, zamykanie, otwieranie

9. OBRAZY i FILTRY BINARNE 9.1 Erozja, dylatacja, zamykanie, otwieranie 9. OBRAZY i FILTRY BINARNE 9.1 Erozja, dylatacja, zamykanie, otwieranie Obrazy binarne to takie, które mają tylko dwa poziomy szarości: 0 i 1 lub 0 i 255. ImageJ wykorzystuje to drugie rozwiązanie - obrazy

Bardziej szczegółowo

Wykład II. Reprezentacja danych w technice cyfrowej. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład II. Reprezentacja danych w technice cyfrowej. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład II Reprezentacja danych w technice cyfrowej 1 III. Reprezentacja danych w komputerze Rodzaje danych w technice cyfrowej 010010101010 001010111010

Bardziej szczegółowo

Przetwarzanie obrazów wykład 4

Przetwarzanie obrazów wykład 4 Przetwarzanie obrazów wykład 4 Adam Wojciechowski Wykład opracowany na podstawie Komputerowa analiza i przetwarzanie obrazów R. Tadeusiewicz, P. Korohoda Filtry nieliniowe Filtry nieliniowe (kombinowane)

Bardziej szczegółowo

Analiza obrazów. Segmentacja i indeksacja obiektów

Analiza obrazów. Segmentacja i indeksacja obiektów Analiza obrazów. Segmentacja i indeksacja obiektów Wykorzystane materiały: R. Tadeusiewicz, P. Korohoda, Komputerowa analiza i przetwarzanie obrazów, Wyd. FPT, Kraków, 1997 Analiza obrazu Analiza obrazu

Bardziej szczegółowo

Wyszukiwanie obrazów 1

Wyszukiwanie obrazów 1 Wyszukiwanie obrazów 1 Wyszukiwanie według zawartości Wyszukiwanie wg zawartości jest procesem wyszukiwania w bazach danych (zbiorach dokumentów ) obiektów o treści najbardziej zbliżonej do zadanego wzorca.

Bardziej szczegółowo

Do opisu kolorów używanych w grafice cyfrowej śluzą modele barw.

Do opisu kolorów używanych w grafice cyfrowej śluzą modele barw. Modele barw Do opisu kolorów używanych w grafice cyfrowej śluzą modele barw. Każdy model barw ma własna przestrzeo kolorów, a co za tym idzie- własny zakres kolorów możliwych do uzyskania oraz własny sposób

Bardziej szczegółowo

Weryfikacja hipotez statystycznych

Weryfikacja hipotez statystycznych Weryfikacja hipotez statystycznych Hipoteza Test statystyczny Poziom istotności Testy jednostronne i dwustronne Testowanie równości wariancji test F-Fishera Testowanie równości wartości średnich test t-studenta

Bardziej szczegółowo

Spacery losowe generowanie realizacji procesu losowego

Spacery losowe generowanie realizacji procesu losowego Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z

Bardziej szczegółowo

CLUSTERING. Metody grupowania danych

CLUSTERING. Metody grupowania danych CLUSTERING Metody grupowania danych Plan wykładu Wprowadzenie Dziedziny zastosowania Co to jest problem klastrowania? Problem wyszukiwania optymalnych klastrów Metody generowania: k centroidów (k - means

Bardziej szczegółowo

Algorytm grupowania danych typu kwantyzacji wektorów

Algorytm grupowania danych typu kwantyzacji wektorów Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, rozważane dotychczas problemy koncentrowały się na nauczeniu na podstawie zbioru treningowego i zbioru etykiet klasyfikacji

Bardziej szczegółowo

Kwantyzacja wektorowa. Kodowanie różnicowe.

Kwantyzacja wektorowa. Kodowanie różnicowe. Kwantyzacja wektorowa. Kodowanie różnicowe. Kodowanie i kompresja informacji - Wykład 7 12 kwietnia 2010 Kwantyzacja wektorowa wprowadzenie Zamiast kwantyzować pojedyncze elementy kwantyzujemy całe bloki

Bardziej szczegółowo

Grafika rastrowa (bitmapa)-

Grafika rastrowa (bitmapa)- Grafika komputerowa Grafika rastrowa Grafika rastrowa (bitmapa)- sposób zapisu obrazów w postaci prostokątnej tablicy wartości, opisujących kolory poszczególnych punktów obrazu (prostokątów składowych).

Bardziej szczegółowo

Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2.

Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2. Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2. Technika obrazu 24 W.3. Normalizacja w zakresie obrazu cyfrowego

Bardziej szczegółowo

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta www.michalbereta.pl Sieci radialne zawsze posiadają jedną warstwę ukrytą, która składa się z neuronów radialnych. Warstwa wyjściowa składa

Bardziej szczegółowo

Systemy uczące się Lab 4

Systemy uczące się Lab 4 Systemy uczące się Lab 4 dr Przemysław Juszczuk Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny 26 X 2018 Projekt zaliczeniowy Podstawą zaliczenia ćwiczeń jest indywidualne wykonanie projektu uwzględniającego

Bardziej szczegółowo

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV Klasyfikatory: k-nn oraz naiwny Bayesa Agnieszka Nowak Brzezińska Wykład IV Naiwny klasyfikator Bayesa Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną

Bardziej szczegółowo

GRAFIKA. Rodzaje grafiki i odpowiadające im edytory

GRAFIKA. Rodzaje grafiki i odpowiadające im edytory GRAFIKA Rodzaje grafiki i odpowiadające im edytory Obraz graficzny w komputerze Może być: utworzony automatycznie przez wybrany program (np. jako wykres w arkuszu kalkulacyjnym) lub urządzenie (np. zdjęcie

Bardziej szczegółowo

FORMATY PLIKÓW GRAFICZNYCH

FORMATY PLIKÓW GRAFICZNYCH FORMATY PLIKÓW GRAFICZNYCH Różnice między nimi. Ich wady i zalety. Marta Łukasik Plan prezentacji Formaty plików graficznych Grafika wektorowa Grafika rastrowa GIF PNG JPG SAV FORMATY PLIKÓW GRAFICZNYCH

Bardziej szczegółowo

Marcin Wilczewski Politechnika Gdańska, 2013/14

Marcin Wilczewski Politechnika Gdańska, 2013/14 Algorytmy graficzne Marcin Wilczewski Politechnika Gdańska, 213/14 1 Zagadnienia, wykład, laboratorium Wykład: Światło i barwa. Modele barw. Charakterystyki obrazu. Reprezentacja i opis. Kwantyzacja skalarna

Bardziej szczegółowo

Przetwarzanie obrazu

Przetwarzanie obrazu Przetwarzanie obrazu Przekształcenia kontekstowe Liniowe Nieliniowe - filtry Przekształcenia kontekstowe dokonują transformacji poziomów jasności pikseli analizując za każdym razem nie tylko jasność danego

Bardziej szczegółowo

Przetwarzanie obrazów rastrowych macierzą konwolucji

Przetwarzanie obrazów rastrowych macierzą konwolucji Przetwarzanie obrazów rastrowych macierzą konwolucji 1 Wstęp Obrazy rastrowe są na ogół reprezentowane w dwuwymiarowych tablicach złożonych z pikseli, reprezentowanych przez liczby określające ich jasność

Bardziej szczegółowo

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO. Rzeczywistość (istniejąca lub projektowana).. Model fizyczny. 3. Model matematyczny (optymalizacyjny): a. Zmienne projektowania

Bardziej szczegółowo

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L, Klasyfikator Jedną z najistotniejszych nieparametrycznych metod klasyfikacji jest metoda K-najbliższych sąsiadów, oznaczana przez K-NN. W metodzie tej zaliczamy rozpoznawany obiekt do tej klasy, do której

Bardziej szczegółowo

Elementy modelowania matematycznego

Elementy modelowania matematycznego Elementy modelowania matematycznego Modelowanie algorytmów klasyfikujących. Podejście probabilistyczne. Naiwny klasyfikator bayesowski. Modelowanie danych metodą najbliższych sąsiadów. Jakub Wróblewski

Bardziej szczegółowo

Statystyka opisowa. Wykład I. Elementy statystyki opisowej

Statystyka opisowa. Wykład I. Elementy statystyki opisowej Statystyka opisowa. Wykład I. e-mail:e.kozlovski@pollub.pl Spis treści Elementy statystyku opisowej 1 Elementy statystyku opisowej 2 3 Elementy statystyku opisowej Definicja Statystyka jest to nauka o

Bardziej szczegółowo

Analiza obrazów - sprawozdanie nr 2

Analiza obrazów - sprawozdanie nr 2 Analiza obrazów - sprawozdanie nr 2 Filtracja obrazów Filtracja obrazu polega na obliczeniu wartości każdego z punktów obrazu na podstawie punktów z jego otoczenia. Każdy sąsiedni piksel ma wagę, która

Bardziej szczegółowo

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j Kompresja transformacyjna. Opis standardu JPEG. Algorytm JPEG powstał w wyniku prac prowadzonych przez grupę ekspertów (ang. Joint Photographic Expert Group). Prace te zakończyły się w 1991 roku, kiedy

Bardziej szczegółowo

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych Parametryzacja obrazu na potrzeby algorytmów decyzyjnych Piotr Dalka Wprowadzenie Z reguły nie stosuje się podawania na wejście algorytmów decyzyjnych bezpośrednio wartości pikseli obrazu Obraz jest przekształcany

Bardziej szczegółowo

Wektory, układ współrzędnych

Wektory, układ współrzędnych Wektory, układ współrzędnych Wielkości występujące w przyrodzie możemy podzielić na: Skalarne, to jest takie wielkości, które potrafimy opisać przy pomocy jednej liczby (skalara), np. masa, czy temperatura.

Bardziej szczegółowo

Wprowadzenie do analizy korelacji i regresji

Wprowadzenie do analizy korelacji i regresji Statystyka dla jakości produktów i usług Six sigma i inne strategie Wprowadzenie do analizy korelacji i regresji StatSoft Polska Wybrane zagadnienia analizy korelacji Przy analizie zjawisk i procesów stanowiących

Bardziej szczegółowo

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je. Problem porządkowania zwanego również sortowaniem jest jednym z najważniejszych i najpopularniejszych zagadnień informatycznych. Dane: Liczba naturalna n i ciąg n liczb x 1, x 2,, x n. Wynik: Uporządkowanie

Bardziej szczegółowo

Wyszukiwanie binarne

Wyszukiwanie binarne Wyszukiwanie binarne Wyszukiwanie binarne to technika pozwalająca na przeszukanie jakiegoś posortowanego zbioru danych w czasie logarytmicznie zależnym od jego wielkości (co to dokładnie znaczy dowiecie

Bardziej szczegółowo

METODY INŻYNIERII WIEDZY

METODY INŻYNIERII WIEDZY METODY INŻYNIERII WIEDZY WALIDACJA KRZYŻOWA dla ZAAWANSOWANEGO KLASYFIKATORA KNN ĆWICZENIA Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej

Bardziej szczegółowo

Agnieszka Nowak Brzezińska Wykład III

Agnieszka Nowak Brzezińska Wykład III Agnieszka Nowak Brzezińska Wykład III Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną niezależność zmiennych niezależnych (tu naiwność) Bardziej opisowe

Bardziej szczegółowo

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH 1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Algorytmy klastujące Problem 3 Mając daną chmurę punktów chcielibyśmy zrozumieć ich

Bardziej szczegółowo

WYKŁAD 10. kodem pierwotnym krzywej jest ciąg par współrzędnych x, y kolejnych punktów krzywej: (x 1, y 1 ), (x 2, y 2 ),...

WYKŁAD 10. kodem pierwotnym krzywej jest ciąg par współrzędnych x, y kolejnych punktów krzywej: (x 1, y 1 ), (x 2, y 2 ),... WYKŁAD 10 Kompresja krzywych dyskretnych Kompresja krzywych dyskretnych KP SK = KW SK - stopień kompresji krzywej. KP [bajt] - obszar pamięci zajmowany przez kod pierwotny krzywej. KW [bajt] - obszar pamięci

Bardziej szczegółowo

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji Jacek Szcześniak Jerzy Błaszczyński Roman Słowiński Poznań, 5.XI.2013r. Konspekt Wstęp Wprowadzenie Metody typu wrapper Nowe metody

Bardziej szczegółowo

Stochastyczne Metody Analizy Danych. PROJEKT: Analiza kluczowych parametrów turbin wiatrowych

Stochastyczne Metody Analizy Danych. PROJEKT: Analiza kluczowych parametrów turbin wiatrowych PROJEKT: Analiza kluczowych parametrów turbin wiatrowych Projekt jest wykonywany z wykorzystaniem pakietu statystycznego STATISTICA. Praca odbywa się w grupach 2-3 osobowych. Aby zaliczyć projekt, należy

Bardziej szczegółowo