Algorytmy graficne Kwantyaca wektorowa obraów cyfrowych
Kwantyaca wektorowa Kwantyaca wektorowa est uogólnieniem kwantyaci skalarne. W takim prypadku wielowymiarowe prestrenie (np. trówymiarowa prestreń RGB) są dielone na obsary decyyne (prediały kwantyaci), a następnie w każdym takich obsarów wynacany est ego repreentant (poiom rekonstrukci). a Amplituda mienne b komórka/ klaster R worec/ repreentant Y funkca rokładu Amplituda mienne Rys. (a) histogram dwuwymiarowy prykładowego obrau cyfrowego (składowe R ora G). Prykład pokaue korelace pomiędy składowymi barwy. (b) - prykład podiału dwuwymiarowe prestreni danych na klastry grupuące się wokół swoich worców wektorów kodowych. Rysunek (a) predstawia typową sytuacę w które uasadnione est wykorystanie kwantyaci wektorowe.
Kwantyaca wektorowa a b Dane weściowe kwantyatora Podiał obrau na wektory (bloki) koder wektor danych wektor danych wektor danych wektor danych i wektor danych K Porównanie weścia wektorami słownika i generowani e indeksu worec worec worec worec p Cytanie danych weściowych (indeksu) dekoder Formowanie obrau strumień: ciąg indeksów Rys. Kwantyaca wektorowa. a) ogólny schemat pracy kwantyatora; b) porównywanie wektorów danych wektorami kodu książki kodowe (słownika) i generowanie strumienia łożonego indeksów słownika. Kwantyaca wektorowa est procesem niesymetrycnym: dekodowanie est dużo prostse od procesu kodowania. Etapy pracy kwantyatora wektorowego Formowanie danych weściowych do postaci N wektorów n-wymiarowych (etap wstępny). Faa klasteryaci: podiał wsystkich wektorów weściowych i konstrukca książki kodowe (słownika) awieraące K nabardie repreentatywnych wektorów całego bioru danych, tw. wektorów kodowych. Konstrukca książki kodowe może być wykonana w faie wstępne na podstawie bioru treningowego lub dynamicnie we właściwe faie kwantyaci. Faa klasteryaci est klucowym etapem kwantyaci wektorowe! Faa indeksowania: pryporądkowanie każdemu wektorowi weściowemu ednego wektora e słownika i repreentowanie wektora weściowego indeksem słownika. Wektorowi weściowemu ostae pryporądkowany ten wektor słownika, który spełnia relacę: gdie d(x,y) est pryętą funkcą odległości w prestreni wielowymiarowe. Problemy: Wybór odpowiednie funkci odległości w prestreni wektorowe. Struktura książki kodowe (prosta struktura w postaci tablicy est nieefektywna do preglądania).
Prykład: algorytm popularności Prostym algorytmem generaci książki kodowe est algorytm popularności (popularity algorithm): wektorami kodowymi stae się ustalona licba wektorów danych występuących w obraie nacęście (koniecne est ustalenie progu licby wystąpień) algorytm wyróżnia się stosunkowo małą łożonością obliceniową i prostotą implementaci Wadą podstawowe wersi algorytmu popularności est wprowadanie do książki kodowe podobnych barw (dominuących). Redukcę romiaru książki uyskać można pre usunięcie bliskich (w sensie pryęte metryki) wektorów i wprowadenie kolenego wektora pod wględem licby wystąpień. a b c d Rys. Prykład kwantyaci wektorowe preprowadone książką kodową skonstruowaną godnie algorytmem popularności. a) - obra oryginalny x pikseli; b) d) efekt kwantyaci wektorowe książkami kodowymi romiaru odpowiednio: 6, ora 6. W tym prypadku, książki tworone były pry użyciu analiy cęstości wystąpień wektorów koloru po wceśniese równomierne kwantyaci skalarne całego obrau do 8 poiomów na każdą składową.
Prykład: algorytm popularności Obra oryginalny Obra skwantowany, sie =. % Obra skwantowany, sie =.8 % a b c d Obra skwantowany, sie =.6 % e i y 7 7 8 8 9 9 6 6 k 6 6 { Rys. Prykład kwantyaci wektorowe preprowadone książką kodową skonstruowaną godnie algorytmem popularności. (a) - obra oryginalny x pikseli; (b) - wynik kwantyaci książką kodową o romiare 9, predstawioną na rysunku (e); (c), (d) kwantyaca książką awieraącą odpowiednio ora 6 wektory. W tym prypadku weściowy obra monochromatycny ostał w faie wstępne podielony na dwuelementowe bloki (wektory) awieraące pary sąsiaduących e sobą w obraie pikseli.
Wektorowa kwantyaca blokowa (BTC) W prypadku podstawowe wersi metody BTC każdy skwantowany blok obrau repreentowany est w strumieniu bitowym pre mapę bitową awieraącą n =n x n bitów ora dwa baty repreentuące poiomy rekonstrukci. W takim prypadku:. licba wsystkich możliwych map bitowych est równa n =66,. nie wsystkie nich występuą w każdym obraie cyfrowym, np. e wględu na romiar obrau ora korelace danych obraowych,. różne mapy bitowe mogą prowadić do podobnego wrażenia wrokowego. Jednym możliwych sposobów wykorystania powyżsych obserwaci do kompresi obrau est kwantyaca wektorowa map bitowych, tn. repreentaca bioru wsystkich możliwych map bitowych pre niewielki ego podbiór (słownik). W faie indeksaci, każda map bitowych stworonych dla kolenych bloków obrau porównywana est e biorem map w słowniku. Prostą miarą podobieństwa map est licba miesc na których porównywane mapy różnią się. Mapą nabardie podobną do adane est mapa minimaliuąca tak definiowaną miarę. Wykorystanie bioru map stanowiących słownik więksa stopień kompresi. Prykład: w prypadku bloków x ora elementowego słownika 6 bitów repreentuących elementy oryginalne mapy można astąpić bitowym indeksem słownika. Zwięksa to stopień kompresi CR=. do CR=6.9. i y k { i y k { i y k { i y k { i y k { i y k { i y k { i y k { i y k { i y k { Rys. Baa map bitowych służących do wygenerowania bioru map (Ammarunnishad, Govindan, Mathew, 7). W prypadku stosowania bioru predefiniowanych map nie ma koniecności ich włącania do strumienia bitowego ponieważ koder i dekoder używaą góry określonego bioru. W innych prypadkach (ak opisany na następne stronie) słownik musi być włącony do strumienia bitowego, co mniesa efektywność metody.
Wektorowa kwantyaca blokowa (BTC). Prykład a b MSE=9. c MSE=.8 d e Rys. Kwantyaca wektorowa BTC. W tym prypadku mapy bitowe stanowiące słownik ostały wybrane na podstawie kryterium cęstości wystąpienia w obraie (algorytm popularności). Rysunek (a) predstawia obra oryginalny. Rysunki (b) i (c) predstawiaą wynik kwantyaci wektorowe e słownikiem romiaru odpowiednio 8 ora. Słowniki predstawione są na rysunkach (d) ora (e). Wykorystanie algorytmu popularności wiąże się koniecnością włącenia do strumienia bitowego całego słownika. Pod wględem efektywności kompresi est to rowiąanie mnie efektywne od rowiąania słownika standaryowanego (awieraącego predefiniowane elementy).
Algorytm Lindego-Bua-Graya (LBG, 98) Algorytm Lindego-Bua-Graya (LBG, modyfikowany algorytm Lloyda) generaci książki kodowe. Określ wektory danych bioru ucącego. Spośród wsystkich N wektorów weściowych wybier losowo K wektorów stanowiących wstępną wersę słownika.. Korystaąc metryki euklidesowe, d(x,y), dokona klasteryaci wektorów danych wokół słów kodowych bieżące wersi słownika. Wynac globalny błąd kwantyaci popełniony w bieżące iteraci. Sprawdź cy popełniany błąd spadł poniże ustalone granicy. Jeśli tak to atryma algorytm. W preciwnym wypadku predź do punktu.. Wynac centroidy każdego regionu decyynego i ucyń e wektorami kodowymi kolene iteraci słownika. Predź do kroku. Problemy: wrażliwość algorytmu na inicalną postać książki kodowe (problem inicaliaci); problem pustych podiałów.
Algorytm Lindego-Bua-Graya prykład / a Prykladowy obra d Prestreń wektorow obrau e b I= i y k { (,) (,) c I= 88, <, 8, <, 8, <, 8, <, 8, <, 8, << Wektor danych Wektor kodowy Rys. a) prykładowy obra cyfrowy x piksele; b) postać macierowa obrau; c) ciąg dwuwymiarowych wektorów obrau; d) wektory obrau ako punkty dwuwymiarowe prestreni wektorowe; e) prestreń wektorowa naniesionymi wektorami kodowymi.
Algorytm Lindego-Bua-Graya prykład / error=8. a b c error=8. Iteraca : (.;.7) (,) (,) Wynacanie centroidów (,) d error=8. e error=6.7 f error=6.7 Iteraca : (.;.7) (.67;). Wynacanie centroidów (,) (.67;.) Rys. Prykład diałania algorytmu LGB..
Algorytm Lindego-Bua-Graya prykład / g error=6.7 h error=6. i error=6. Iteraca : (.67;) (.67;) (;.) Wynacanie centroidów (.67;.) (.67;.) (.7;.) error=6. k error=6. STOP l Iteraca : (;.) (.7;.) (.7;.) (;.) Kolene iterace nie wprowadaą żadnych mian! Błąd atrymue się na ustalonym poiomie: error=6.. Rys. Zmiany położeń wektorów kodowych w kolenych iteracach algorytmu LGB.
Książka kodów - prykład Rys. Książka kodowa awieraąca 6x6=6 wektorów kodowych dla recywistego obrau cyfrowego, uyskana dla prypadku podiału obrau na bloki o romiare x piksele.
Inicaliaca słownika Rowiąania na wektory kodowe nadowane pre algorytm LGB są wrażliwe na inicalną postać książki kodowe podawane na weściu algorytmu. Istnieą try podstawowe, różne metody inicowania słownika (prygotowania wersi erowe): Metoda losowania. Sprowada się do wylosowania w ednym kroku całe ksiąki kodowe o adanym romiare, K. Metoda grupowania nabliżsych sąsiądów (PNN pairwise nearest neighbour). Konstrukca książki ropocyna się od książki o romiare K=N awieraące wsystkie wektory bioru ucącego. Stopniowo redukue się romiar książki pre grupowanie par wektorów sąsiednich. Metoda rodielania (splitting). Konstrukca ropocyna się od poedyncego wektora centroidu bioru ucącego. W m-tym kroku dokonywany est (w drode dodawania aburenia) podiał każdego wektorów kodowych na dwa wektory. Po takim rodieleniu uyskana konfiguraca regionów decyynych est optymaliowana pre algorytm LBG, po cym dokonywany est koleny rodiał, etc. a b c d e Y Y-e Y Y+e Rys. Konstrukca słownika metodą rodialania. a) idea podiału wektora kodowego; b), c), d), e) kolene etapy konstrukci wektorów kodowych (anacone cerwonymi punktami) na biore ucącym (anacony kolorem ielonym).