PRACA DYPLOMOWA MAGISTERSKA

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

Download "PRACA DYPLOMOWA MAGISTERSKA"

Transkrypt

1 POLITECHNIKA WARSZAWSKA Wydzał Elektronk Technk Informacyjnych Instytut Radoelektronk Rok akademck 2003/2004 PRACA DYPLOMOWA MAGISTERSKA Domnk Rves Optymalzacja stopna znekształceń progresywnej kompresj w standardze JPEG 2000 Kerownk Pracy dr nż. Artur Przelaskowsk Ocena Podps Przewodnczącego Komsj Egzamnu Dyplomowego

2 Streszczene W pracy przedstawono mnmalzację znekształceń oraz precyzyjną kontrolę stopna kompresj zastosowaną w standardze kompresj obrazów JPEG Opsano dwa praktyczne algorytmy regulacj stopna kompresj w koderze standardu JPEG 2000, orygnalny oraz opracowany przez autora pracy, który został zoptymalzowany czasowo. Pracę uzupełna zestaw testów porównawczych obu algorytmów. Testy przeprowadzono wykorzystując aplkację JPER Dstorton Optmzaton of Progressve Compresson Scheme n the JPEG 2000 Standard Summary The mnmzaton of dstorton and precse rate control used n the JPEG 2000 mage compresson standard s ntroduced. Two practcal algorthms of rate regulaton n JPEG 2000 coder are then descrbed. The frst algorthm s orgnal, the second one was developed by author of ths work. Fnally, a good few comparatve tests are presented and analyzed. The tests were carred out wth JPER 2000 applcaton.

3 Składam serdeczne podzękowana dr nż. Arturow Przelaskowskemu za cenne wskazówk oraz pomoc w realzacj nnejszej pracy.

4 Sps treśc:. Wprowadzene 3. Problem optymalzacj 4.2 Cel przebeg pracy 5 2. Podstawy teor kompresj 6 2. Modelowane danych Transformacja kolorów Transformacja falkowa 2.2 Kwantyzacja Kodowane danych 9 3. Optymalzacja stopeń kompresj pozom znekształceń w JPEG Stopeń kompresj Elementy teor znekształceń źródeł nformacj Podstawowe pojęca Operacyjna teora znekształceń źródeł nformacj Sformułowane problemu optymalzacj Optymalzacja metodą mnożnków Lagrange a Idea regulacj stopna kompresj w JPEG Struktura danych Kodowane arytmetyczne Selekcja przebegów Warstwy Praktyczne realzacje algorytmów optymalnej selekcj w JPEG Algorytm zastosowany w bblotece JasPer Algorytm opracowany przez autora pracy Program JPER Założena Realzacja Bblotek JasPer IJG JPEG GFL Praca z programem Uwag końcowe 6

5 5. Testy Pomar czasu kompresj Badane stopna kompresj Badane pozomu znekształceń Wnosk Podsumowane 7 Dodatek A Standard JPEG A. Schemat kompresj 74 A.2 Struktura plku JP2 80 Dodatek B Kod źródłowy 82 Dodatek C Bblografa 9 Dodatek D Obrazy testowe 93 Dodatek E Płyta CD-ROM 94 2

6 Rozdzał Wprowadzene Komunkacja odgrywa obecne kluczową rolę w funkcjonowanu naszej cywlzacj. Jest znakem dzsejszego śwata. Jednym z głównych problemów komunkacj jest efektywny transfer nformacj od nadawcy do odborcy poprzez kanał transmsyjny. Przez kanał transmsyjny można rozumeć ne tylko połączene dwóch odległych punktów, ale równeż medum przechowujące dane (pamęć masowa, płyty CD-ROM tp.). Efektywny transfer oznacza możlwe szybke przesyłane nformacj zawartej w pewnym zborze danych przy jednocześne mnmalnych znekształcenach tej nformacj. Jedną z metod poprawy efektywnośc transmsj jest kompresja, czyl proces mający na celu redukcję długośc zboru danych (w optymalnym przypadku rozmar danych redukuje sę do lośc nformacj). Uzyskwane stopne kompresj najczęścej są jednak newystarczające. Okazuje sę, że w wększośc przypadków kompresj sygnałów pochodzena naturalnego udaje sę uzyskać współczynnk kompresj oscylujący wokół 2, co oznacza, że lość danych skompresowanych (tzw. strumena kodowego) jest zaledwe o połowę mnejsza od lośc danych orygnalnych. Jedynym rozwązanem w takch przypadkach jest zastosowane kompresj stratnej. Cechą charakterystyczną nektórych metod kompresj stratnej jest możlwość precyzyjnej kontrol welkośc strumena kodowego. Właścwość ta wynka z tego, że deą kompresj stratnej jest odrzucene pewnej częśc nformacj. Stosunek welkośc częśc odrzuconej do całej nformacj zawartej w zborze danych można dowolne kształtować, co pozwala na uzyskane praktyczne dowolnego stopna kompresj. Odrzucene częśc nformacj może być realzowane na etape kwantyzacj poprzez regulację welkośc przedzału kwantyzacj (stosowaną na etape modelowana danych) lub w procese selekcj danych (proces porządkowana kodu bnarnego otrzymanego w wynku kodowana danych). Algorytmy redukcj lośc nformacj rozumane jako wyznaczene podzboru danych przeznaczonych do transmsj znajdują zastosowane także w kodowanu progresywnym metodze umożlwającej maksymalne skrócene czasu oczekwana odborcy danych (nformacj) na przyblżoną ch postać. W tym przypadku dane są dzelone na pewną lczbę kolejno wysyłanych fragmentów, przy czym każdy przesłany -ty fragment danych jest wyznaczany w tak sposób, aby zmnmalzować D znekształcena rekonstrukcj, czyl maksymalzować stosunek:, gdze D to R przyrost wernośc rekonstruowanego obrazu uzyskany po zdekodowanu -tego fragmentu danych o długośc R (każdy fragment powoduje węc możlwe duże zmnejszene błędu rekonstrukcj D). Jeśl metoda kompresj jest bezstratna, to po przesłanu ostatnego fragmentu, dane zrekonstruowane są dentyczne z danym orygnalnym. Transmsja ne mus oczywśce obejmować wszystkch fragmentów w takm przypadku zrekonstruowana nformacja ne będze oczywśce dokładne taka sama, jak orygnalna. Należy równeż pamętać, że kodowane progresywne może być stosowane tylko w przypadku danych o określonym charakterze (np. obrazów, dokumentów złożonych z tekstów, grafk, wykresów tp.). 3

7 Do kompresj obrazów najczęścej stosuje sę obecne kompresje stratną (jeśl jest to dopuszczalne). Kodowane progresywne jest stosowane względne rzadko ze względu na brak wsparca ze strony powszechne stosowanych metod kompresj (ogranczone możlwośc kodowana progresywnego posada klka standardów, m.n. JPEG, GIF oraz PNG). Rozwązanem, które doskonale łączy efektywną stratną oraz bezstratną kompresję obrazów z kodowanem progresywnym jest standard JPEG Uzyskano to dzęk zastosowanu w standardze algorytmu PCRD (ang. Post Compresson Rate Dstorton).. Problem optymalzacj Problem optymalzacj można sformułować następująco: dla założonej średnej btowej (czyl długośc bnarnego strumena kodowego będącego skompresowaną wersją obrazu) zmnmalzować znekształcena zrekonstruowanej nformacj. Problem można też przedstawć odwrotne: dla ustalonego pozomu znekształceń znaleźć mnmalną średną btową. Oba wyżej przedstawone problemy są blźnacze można je rozwązywać za pomocą tych samych narzędz. Efektywność kompresj może być przedstawana na wykrese BR(D), gdze BR to średna btowa (średna lczba btów w skompresowanym zborze danych przypadająca na jeden symbol danych źródłowych, np. próbkę lub pksel), natomast D oznacza znekształcena w zrekonstruowanym obraze. Krzywa BR(D) to zbór najlepszych rozwązań problemu optymalzacj. Wyznacza ona mnmalną welkość średnej btowej (BR) możlwą do osągnęca przy określonym stopnu znekształceń (D). BR rozwązana rozwązana optymalne krzywa BR(D) 0 D Rys.. Krzywa BR(D). Na rysunku. przedstawono przykładową krzywą BR(D) oraz punkty stanowące rozwązana problemu optymalzacj. Punkty leżące na krzywej BR(D) stanową rozwązane optymalne: mnmalzują średną btową dla danego pozomu znekształceń. 4

8 .2 Cel przebeg pracy W nnejszej pracy omówona została mnmalzacja znekształceń kompresowanych źródeł nformacj oraz precyzyjna regulacja stopna kompresj w standardze JPEG Przedstawono równeż praktyczne rozwązana zastosowane w bblotece JasPer będącej jedną z klku ofcjalnych realzacj programowych kodera JPEG Kluczowym problemem pracy jest optymalzacja czasowa algorytmu zastosowanego w koderze standardu JPEG 2000 mnmalzującego pozom znekształceń dla zadanej welkośc plku wyjścowego (zawerającego obraz skompresowany). Ostateczne opracowany został nowy algorytm, który został następne zamplementowany w bblotece JasPer. Obok optymalzacj algorytmu selekcj nformacj celem pracy było także udoskonalene własnego kodera JPER 2000 bazującego na standardze JPEG Do zrozumena standardu JPEG 2000 (omówonego w dodatku A) koneczna okazała sę wedza z zakresu teor kompresj, a w szczególnośc wedza ogólna (pojęca dane, nformacja, stopeń kompresj, mary znekształceń; modelowane oraz kodowane danych) oraz szczegółowe poznane praktycznych technk obróbk danych stosowanych w kompresj obrazów (transformacja kolorów, transformacja falkowa, kwantyzacja, kodowane arytmetyczne). Podstawom teor kompresj został pośwęcony rozdzał 2. W rozdzale 3, będącym najważnejszą częścą pracy, przyblżono teorę mnmalzacj znekształceń źródeł nformacj oraz kontrol stopna kompresj (redukcj nformacj). Przedstawono schemat kodowana EBCOT (zawerający algorytm optymalzacj PCRD). Rozdzał zawera także praktyczny algorytm zastosowany w bblotece JasPer (bbloteka ta jest praktyczną mplementacją standardu JPEG 2000 znajduje sę w jego częśc 3) oraz algorytm opracowany przez autora nnejszej pracy. Ważnym etapem pracy była praktyczna mplementacja metody umożlwająca weryfkację opracowanego algorytmu oraz jego porównane z algorytmem orygnalnym zastosowanym w bblotece JasPer. Zmodyfkowana bbloteka JasPer została wykorzystana w programe JPER 2000, który został napsany w ramach pracy nżynerskej poprzedzającej nnejszą prace magsterską. Program JPER 2000 służy do zaawansowanej kompresj oraz dekompresj obrazów wykorzystującego standard JPEG 2000 uwzględnającego specyfkę obrazów medycznych (został przystosowany do pracy z plkam o dowolnej lczbe btów na próbkę komponentów oraz z możlwoścą dodana opsu do plku w formace XML). Aplkacja została wyposażona w możlwe dużo opcj pozwalających na zmanę parametrów kompresj. Nowa wersja programu, oprócz zamplementowanej drugej metody optymalzacj PCRD, zawera szereg nowych możlwośc (m.n. dodano nową transformację komponentów, zamplementowano narzędze statystycznego porównywana obrazów, uzupełnono okenko właścwośc obrazu o klka nowych nformacj). Poprawono także nterfejs aplkacj (dodano pask narzędz oraz stanu, znaczne poprawono sposób prezentacj obrazów). Program został opsany w rozdzale 4. Rozdzał 5 to porównane obu algorytmów PCRD: zastosowanego w bblotece JasPer oraz zamplementowanego przez autora pracy. W rozdzale 6 znalazło sę krótke podsumowane pracy. W dodatkach przyblżono standard JPEG 2000, podano bblografe oraz przedstawono obrazy testowe wykorzystane podczas opracowywana programu oraz jego testów. 5

9 Rozdzał 2 Podstawy teor kompresj Kompresja to proces tworzena możlwe oszczędnej reprezentacj danych [3, 4, 5, 3]. Dane są w tym znaczenu rozumane jako uporządkowany cąg symbol będący nośnkem pewnej nformacj. Grancznym stopnem kompresj jest węc przypadek, w którym welkość zboru danych odpowada lośc nformacj zawartej w tym zborze. Ponżej przedstawono wzór określający autonformację (I, ang. selfnformaton), lość nformacj przekazywaną w wynku pojawena sę jednego symbolu (zdarzena) s ze zboru wszystkch zdarzeń S, o prawdopodobeństwe wystąpena s : P S () I () s = logb. (2.) P Podstawa logarytmu b określa jednostkę nformacj, jeśl b = 2 to jest ną bt. Entropa H cągu S składającego sę z M nezależnych zdarzeń s (czyl wygenerowanych przez model bez pamęc, DMS, ang. dscrete memoryless source) określa średna lość nformacj przypadającej na jedno zdarzene (jeden symbol) dana jest wzorem: H M ( S) = P ( s ) = S S S ( s ) () s M log b = PS ( s ) I( s ). (2.2) P W rzeczywstośc częścej spotykanym źródłem są modele z pamęcą (CSM, ang. condtonal source model), w których prawdopodobeństwo zajśca zdarzena zależy od zdarzeń wcześnej zastnałych (lczbę zdarzeń mających wpływ na beżące zdarzene określa rząd takego źródła). Skuteczność algorytmu kompresj (tzn. skuteczność redukcj objętośc danych) jest określana stopnem kompresj (CR, ang. compresson rato), o postac: L L D = O CR =, (2.3) gdze: LO objętość danych orygnalnych, LD objętość danych skompresowanych. Inną często stosowana marą jest procent kompresj (CP, ang. compresson percentage): [%] CP = 00. (2.4) CR Stopeń kompresj oraz jego zastosowane w praktyce zostało bardzej szczegółowo opsane w podrozdzale 3.. Drugą stotną własnoścą charakteryzującą jakość algorytmu kompresj jest stopeń znekształcena (ang. dstorton) zrekonstruowanych danych w stosunku do 6

10 orygnalnych. Oczywśce mara ta dotyczy wyłączne kompresj stratnej. Najczęścej do oceny znekształceń stosuje sę błąd średnokwadratowy (MSE, ang. mean squared error). Jeśl wartość x to M-elementowy zbór danych orygnalnych (w przypadku obrazów są to wartośc wszystkch próbek), natomast wartość x~ reprezentuje zbór danych zrekonstruowanych, to błąd średnokwadratowy można wyznaczyć ze wzoru: MSE = M M ( ~ x x ) = 2. (2.5) Ponżej zdefnowano klka nnych mar znekształceń: perwastek błędu średnokwadratowego (RMSE, ang. root mean squared error): RMSE = MSE = M M ~ ( x x ) = 2, (2.6) średn błąd absolutny (MAE, ang. mean absolute error): MAE = M M = ~ x x, (2.7) szczytowy błąd absolutny (PAE, ang. peak absolute error): PAE = max ~ x x = K M, (2.8) szczytowy stosunek sygnału do szumu (PSNR, ang. peak sgnal to nose rato): PSNR max 2 2 ( x ) max( x ) = K M = K M = = M MSE M ~ ( x x ) = 2 (2.9) lub [ db] 0log PSNR PSNR = 0. (2.0) Cały proces kompresj można podzelć na dwa zasadncze etapy: modelowane oraz kodowane danych. Oba etapy zostaną krótko omówone. 2. Modelowane danych W faze modelowana tworzona jest pośredna reprezentacja danych, która może być kodowana efektywnej, nż dane orygnalne [3, 4, 5, 3]. W nnejszym rozdzale przez modelowane będze rozumany proces prowadzący do dekorelacj, czyl usuwana nadmarowośc z danych. 7

11 Operacja ta polega na znalezenu takego modelu danych, który możlwe najdoskonalej opsze kompresowane dane. W przypadku danych jednowymarowych, najprostszym modelem może być równane prostej. Wynkowym cągem danych będze wtedy ops prostej oraz zbór różnc mędzy wartoścą rzeczywstą a wskazywaną przez dany punkt na prostej (rysunek 2.). Innym przykładem modelowana danych jest zastąpene próbek sygnału wolnozmennego cągem różnc mędzy wartoścą beżącą oraz poprzedną uzupełnonym wartoścą początkową lub średną (rysunek 2.2). x, x' 5 n + 5 x Cąg danych: Równane prostej: Cąg różnc: x(n) = (n+5) + ε(n) n ε Rys. 2. Modelowane danych. Zamana wartośc sygnału na ops prostej oraz cąg różnc. x, x' 5 0 x Cąg danych: Wartość początkowa oraz cąg różnc: n x(), ε Rys. 2.2 Modelowane danych. Zamana wartośc sygnału na wartość początkową oraz cąg różnc. Modelowane danych sprowadza sę węc w tym przypadku do podzału orygnalnego zboru danych na dwe częśc: ops modelu oraz cąg różnc lczb o ogranczonej dynamce, które w mogą być reprezentowane mnejszą lczbą btów. 2.. Transformacja kolorów W przypadku kompresj obrazów kolorowych najczęścej stosowaną metodą dekorelacj jest transformacja przestrzen kolorów (jest to przypadek szczególny, dotyczący obrazów o trzech komponentach: R, G oraz B; można sobe wyobrazć 8

12 transformację opracowaną dla obrazów o dowolnej, wększej od jednośc, lczne komponentów) [6]. Transformacja przestrzen kolorów wzajemne dekoreluje komponenty obrazu. Pomysł dekorelacj obrazu kolorowego opera sę na założenu, że jasność (lumnancja), w przecweństwe do chromnancj (nformacj o odcenu nasycenu barwy), poszczególnych punktów obrazu jest nformacją wspólną dla wszystkch trzech składowych RGB. Dekorelację można zatem przeprowadzć poprzez wydzelene z wartośc RGB nformacj o jasnośc oraz chromnancj danego pksela. Modelem nformacj jest w tym przypadku jasność (jako cecha wspólna wszystkch składowych R, G B), a różncą chromnancja. Najczęścej stosuje sę transformację z przestrzen RGB na YCbCr, gdze składowa Y to jasność danego pksela, natomast Cb oraz Cr to chromnancje (odpowedno barwy nebeskej oraz czerwonej). Transformata RGB na YCbCr ma następującą postać: Y = + 0, 2989R + 0, 5866G + 0, 45B, Cb = 0, 687R 0, 332G + 0, 5000B, (2.) Cr = + 0, 5000R 0, 483G 0, 086B. Transformatę odwrotną (YCbCr na RGB) określają równana: R = Y +, 4022Cr, G = Y 0, 3456Cb 0, 745Cr, (2.2) B = Y +, 770Cb. Na rysunku 2.3 przedstawono obraz testowy kredk oraz rodznę składowych RGB oraz YCbCr. R Y G Cb obraz orygnalny B Cr składowe RGB składowe YCbCr Rys. 2.3 Rodzna składowych RGB oraz YCbCr obrazu testowego kredk. 9

13 Podane wyżej przekształcena są neodwracalne (ze względu na zmennoprzecnkową reprezentacje składowych). Ponżej przedstawono odwracalna wersję przekształcena RGB na YCbCr: Y Cb Cr = = = R + G B G, R G, 4 B, (2.3) oraz YCbCr na RGB: G R B = = = Y Cb + Cr, 4 4 Cr + G, Cb + G. (2.4) Przedstawony sposób dekorelacj obrazów kolorowych daje najlepsze efekty tylko dla obrazów naturalnych (w ogólnośc takch, w których nformacja o jasnośc domnuje nad nformacją o odcenu nasycenu barwy). Nżej podano defncje klku nnych popularnych transformacj: transformacja RGB na YIQ oraz YIQ na RGB RGB na YIQ Y I Q = = = 0,299R + 0,587G + 0,4B, 0,569R 0,274G 0,322B, 0,2R 0,523G 0,3B, (2.5) YIQ na RGB R G B = = =,000Y + 0,956I + 0,62Q,,000Y 0,272I 0,647Q,,000Y,05I + 0,702Q, (2.6) transformacja RGB na XYZ oraz XYZ na RGB RGB na XYZ X Y Z = = = 0,43R + 0,342G + 0,78B, 0,222R + 0,707G + 0,07B, 0,020R + 0,30G 0,939B, (2.7) XYZ na RGB R G B = = = 3,063X,393Y 0,476Z, 0,969X +,876Y + 0,042Z, 0,068X 0,229Y + 0,069Z, (2.8) 0

14 transformacja RGB na CMY oraz CMY na RGB RGB na CMY C M Y = = = R, G, B, (2.9) CMY na RGB R G B = = = C, M, Y. (2.20) 2..2 Transformacja falkowa Kolejnym narzędzem, które służy do dekorelacj sygnału jest transformata falkowa (ang. wavelet transform). Opsana wyżej transformacja przestrzen kolorów dekorelowała nformację pomędzy komponentam obrazu. Transformata falkowa służy do rozdzelena nformacj zawartych w jednym komponence na klka częśc (pasm) o różnym zakrese częstotlwośc (rozdzelczośc) oraz różnej skal jednocześne malej wzajemnej korelacj [3, 4, 5, 7, 8, 3]. Transformacja falkowa jest procesem przekształcającym daną funkcję na superpozycję funkcj bazowych falek. W przecweństwe do funkcj bazowych transformaty Fourera snusów cosnusów, falk są funkcjam o zwykle skończonym, zwartym nośnku oraz ogranczonej energ. Funkcje te muszą spełnać także warunek ψ, t są zerowej wartośc średnej, który wymusza oscylacyjny przebeg funkcj. Falk s τ ( ) uzyskwane z funkcj macerzystej ( t) ψ poprzez jej przeskalowywane w funkcj czasu (parametr s) oraz przesunece (parametr τ ): gdze s,τ R; s 0. Element t τ ψ s, τ () t = ψ, s s (2.5) s gwarantuje zachowane takej samej energ wszystkch falek nezależne od parametru s. Dla tak zdefnowanych funkcj bazowych cągłe przekształcene falkowe (ang. contnuous wavelet transform) ω s, τ ma postać:, s, τ s, () t ψ () t = f () t ψ () t ϖ s, τ = f τ dt. (2.6) Zauważyć należy, ze parametram transformaty są wymar położene falk. Dzęk temu transformata falkowa sygnału (w przecweństwe do transformaty Fourera) daje bezpośredn dostęp do nformacj o położenu przestrzennym poszczególnych składowych częstotlwoścowych. Funkcję orygnalną można odtworzyć korzystając z odwrotnej transformaty falkowej o postac:

15 f C () t = ϖ ψ () t, ψ s, τ s, τ dsdτ 2 s (2.7) 2 Ψ( ω) C = dω, a ( ω) gdze ψ Ψ jest transformatą Fourera funkcj ψ () t. Aby całka ω 0 C była skończona, funkcja macerzysta ψ ( t) mus spełnać wymenony wcześnej ψ warunek o zerowej wartośc średnej, co odpowada zachodzenu równośc Ψ ( 0 ) = 0. Warunek ten jest nazywany warunkem dopuszczalnośc (ang. admssblty condton). Poneważ przetwarzane dane są dyskretne, bardzej nteresującą wersją przekształcena jest dyskretna transformata falkowa. Z punktu wdzena teor cyfrowego przetwarzana sygnałów transformata falkowa stanow zestaw dwóch fltrów: dolnoprzepustowego (na wyjścu którego powstaje cąg średnch) oraz górnoprzepustowego (generującego cąg różnc), uzupełnonych o proces bnarnej decymacj (ang. downsamplng) sygnału wynkowego. Najczęścej stosuje sę fltry bortogonalne. Jeśl s n jest jednowymarowym sygnałem (cągem) składającym sę z n próbek oznaczonych (gdze wartość 2 to skala (wymar, rozdzelczość) sygnału s n, l n sn, natomast l = 0,K 2 jest numerem danej próbk sygnału sn ), to prostą transformatę falkową (analzę) można w ogólnym przypadku przedstawć następująco:, l h sn, l+, (2.8) sn = 2 n 2 d n, l = g j sn, 2l+ j j, (2.9) gdze h oraz g to odpowedno współczynnk fltru dolnoprzepustowego oraz j górnoprzepustowego. Sygnał orygnalny jest dzelony na dwa sygnały (pasma) oraz ; oba o dwa razy mnejszej lczbe wartośc (a węc o wymarach 2 ). Sygnał jest cągem średnch, natomast jest cągem różnc. Poszczególne wartośc sygnałów oraz d n są nazywane współczynnkam. Sygnał średnch s n to nskorozdzelcza (nskoczęstotlwoścowa) reprezentacja sygnału (czyl model sygnału orygnalnego), natomast sygnał sn sn d n n s n d n s n d n, cąg różnc umożlwający bezstratne odtworzene sygnału orygnalnego, jest wysokorozdzelczą reprezentacją sygnału perwszy pozom rozkładu (dekompozycj) sygnału s n. Nskorozdzelcza reprezentacja sygnału orygnalnego s n s n. Sygnały te stanową także może być poddana transformacj. W wynku podzału powstają dwa sygnały: oraz, o lczbe współczynnków równej 2 n 2 każdy. Proces dekompozycj sygnału może być oczywśce powtarzany n -krotne (rysunek 2.4) co jest cechą charakterystyczną każdej transformacj falkowej. Sygnał jest sygnałem o najnższej rozdzelczośc składa sę z jednego współczynnka s 0 s 0,0 s n sn sn 2 d n 2, który jest po prostu wartoścą średną 2

16 (składową stałą) sygnału orygnalnego. W praktyce, o rozmarze ostatnego podpasma decyduje rozmar fltru. g () x, 2 d n- () x, 2 d n-2 () 2 g g x, g() x, 2 d d 0 s n s n- s n-2 s s 0 h x, h () x, 2 h () x, 2 h() x, 2 () 2 Rys. 2.4 Analza. Odwrotna transformacja (synteza) falkowa ma postać: ~ h g~ sn, 2 l = 2+ sn, l+ + 2 j+ d n, l+ j j ~ h g~ sn, 2 l+ = 2sn, l+ + 2 jd n, l+ j j,, (2.20) gdze h ~ oraz g ~ j to współczynnk fltrów odpowedno dolnoprzepustowego oraz górnoprzepustowego syntezy, które zostały wyznaczone przez odwrócene macerzy współczynnków fltrów analzy. Schemat procesu syntezy przedstawono na rysunku 2.5. d 0 d d n-2 d n- g~ x, g ~ x, g ~ () x, 2 g~ () x, 2 () 2 () 2 s 0 ~ s ~ s n-2 ~ s n- h x, h x, () ~ h x, 2 h() x, 2 () 2 () 2 s n Rys. 2.5 Synteza. W przypadku dekompozycj obrazów (sygnałów dwuwymarowych), proces jest dentyczny, ale mus być przeprowadzany dwukrotne (kolejno rozkładane są wersze oraz kolumny obrazu). W efekce takego rozkładu powstają 4 przefltrowane wersje obrazu orygnalnego pasma, każde odpowadające nnej częstotlwośc przestrzennej po każdej ze współrzędnych. Pasma te są zazwyczaj oznaczane LL, LH, HL oraz HH. Przykładowo, pasmo oznaczone HL to obraz powstały przez przefltrowane obrazu orygnalnego wzdłuż współrzędnych x przez fltr górnoprzepstowy (stąd oznaczene H, ang. hgh) a następne przefltrowane go wzdłuż współrzędnych y przez fltr dolnoprzepustowy (oznaczene L, ang. low). Na rysunku 2.6 przedstawono schemat dekompozycj (analzy) obrazu o jeden pozom natomast na rysunku 2.7 jego syntezę. 3

17 pasmo L (x/2 na y) pasmo LL (x/2 na y/2) obraz orygnalny (x na y) g(x) 2 x g(y) 2 y h(y) 2 y pasmo LH (x/2 na y/2) pasmo HL (x/2 na y/2) g(y) 2 y h(x) 2 x h(y) 2 y pasmo H (x/2 na y) pasmo HH (x/2 na y/2) Rys. 2.6 Analza obrazu. pasmo LL (x/2 na y/2) pasmo L (x/2 na y) 2 y 2 y ~ g(y) ~ h(y) + 2 ~ x g(x) obraz zrekonstruowany (x na y) pasmo LH (x/2 na y/2) pasmo HL (x/2 na y/2) 2 ~ y g(y) ~ + 2 x h(x) ~ h(y) 2 y + pasmo HH (x/2 na y/2) pasmo H (x/2 na y) Rys. 2.7 Synteza obrazu. 4

18 2.2 Kwantyzacja W technce przetwarzana danych cyfrowych przez kwantyzację rozumane jest przekształcene cągłego zboru wartośc (lub zboru o ogranczonej, ale stosunkowo dużej lczbe elementów) w zbór dyskretny o newelkej lczbe elementów [4, 5, 3]. Zbór ten zawera pewne wartośc, z których każda reprezentuje określony przedzał wartośc zboru cągłego (kwantyzowanego) jednocześne do tego przedzału należy. Kwantyzacja, funkcja mająca cągłą dzedznę oraz dyskretny zbór wartośc, będze oznaczana przez x~ ( x). Elementy zboru dyskretnego są najczęścej zastępowane przez lczby o bardzej zwartej reprezentacj zwane słowam kodowym (rysunek 2.8). Zamana słów kodowych na wartośc ze zboru dyskretnego jest nazywana, ne do końca poprawne, dekwantyzacją słowa kodowe -3,0-2,0 -,0 0,0,0 2,0 3,0 zbór wartośc cągłych Rys. 2.8 Idea kwantyzacj. Z powyższej defncj można wysnuć dwa bardzo stotne wnosk. Po perwsze, proces kwantyzacj sygnału prowadz do zmnejszena sę dynamk danych (mnej lczny zbór symbol to krótsza ch reprezentacja). Po druge, kwantyzacja powoduje utratę częśc nformacj zawartej w orygnalnym cągu danych. Z powyższych powodów kwantyzacja może być stosowana do regulacj stopna kompresj. Projektowane kwantyzatora sprowadza sę do takego podzału zboru cągłego na przedzały oraz wyboru wartośc te przedzały reprezentujących, aby zagwarantowały one mnmalne znekształcena danych przy zadanej lczbe przedzałów (a węc słów kodowych). Pozom znekształceń może być określony na podstawe błędu średnokwadratowego. Jeśl źródło danych x modelowane jest cągłą zmenną losową X o funkcj gęstośc prawdopodobeństwa f X ( x), natomast ~ x = ~ x( x), to średnokwadratowy błąd kwantyzacj (MSQE) określa wzór: MSQE = ~ dx. (2.2) ( ) 2 x x f ( x ) X Jeśl zmenna losowa jest dyskretna, wzór przyjmuje postać: M = ( ~ 2 x x ) P ( x, MSQE = ) (2.22) X 5

19 przy czym M oznacza lczbę symbol w alfabece źródła modelującego zmenną losową X. Sens uzależnena średnokwadratowego błędu kwantyzacj od funkcj gęstośc prawdopodobeństwa wyjaśna rysunek 2.9, na którym pokazano funkcję gęstośc f X ( x) nałożoną na zbór wartośc kwantyzowanych danych x. W zakresach, w których funkcja gęstośc prawdopodobeństwa przyjmuje duże wartośc, przedzały kwantyzacj pownny meć stosunkowo małą szerokość, na odwrót: tam, gdze funkcja gęstośc ma małą wartość, szerokość przedzałów należy zwększyć. (a) f X () x x (b) f X () x przedzały kwantyzacj Rys. 2.9 Równomerny (a) oraz nerównomerny (b) podzał na przedzały kwantyzacj. Zastosowane podzału nerównomernego zmnejsza błąd kwantyzacj dzęk lepszemu dopasowanu przedzałów do funkcj gęstośc prawdopodobeństwa f X x. ( ) x W praktyce rzeczywsta funkcja gęstośc prawdopodobeństwa ne jest znana. Jeśl projektowany kwantyzator ma służyć do kwantyzacj welu różnych obrazów, funkcja gęstośc prawdopodobeństwa może być modelowana rozkładem równomernym. Jeśl typ obrazów jest z góry znany (np. są to obrazy medyczne określonej modalnośc) funkcja gęstośc prawdopodobeństwa może być zastąpona znormalzowanym hstogramem wylczonym na podstawe ser obrazów testowych danej modalnośc. Najlepszym rozwązanem jest wyznaczane przedzałów kwantyzacj w oparcu o hstogram kompresowanego obrazu, czyl zastosowane adaptacyjnego algorytmu wyznaczana przedzałów. Oczywstą zaletą takego rozwązana jest maksymalne dopasowane przedzałów do statystyk danego obrazu a węc zmnmalzowane błędu średnokwadratowego. Wadą natomast jest zwększene czasu kompresj oraz komplkacja algorytmu, który należy uzupełnć procedurą wyznaczana przedzałów. Jedną z metod wyznaczana przedzałów kwantyzacj (oraz reprezentowanych przez te przedzały wartośc) jest algorytm Lloyda-Max a. Jest to metoda teracyjnej optymalzacj początkowej postac przedzałów. Ne jest nestety optymalna w sense globalnym, zależy od wyboru początkowego rozkładu przedzałów. 6

20 Najprostszym typem kwantyzatora jest kwantyzator równomerny schematu UTQ (ang. unform threshold quantsaton), który charakteryzuje sę tym że wszystke przedzały (z wyjątkem zewnętrznych, w pewnych przypadkach) mają taką samą długość. Mmo, że tak kwantyzator ne jest najczęścej optymalny (poneważ rzeczywste dane rzadko mają rozkład równomerny); ze względu na swoją prostotę jest często stosowany. Jeśl x oznacza dane orygnalne, a długość przedzału (krok kwantyzacj), to tak kwantyzator można opsać wzorem: natomast opowadający mu dekwantyzator ma postać: x d = Q( x) = sgn( x), (2.23) ~ = x Q d ( d ) = ( d δ sgn( )), (2.24) przy czym współczynnk δ określa przesunęce dekwantyzowanych wartośc (ang. bas) jest najczęścej równy 2. Na rysunku 2.0 przedstawono przykład obrazujący dzałane kwantyzatora równomernego o kroku kwantyzacj = x~ x Rys. 2.0 Wykres przedstawający dzałane kwantyzatora równomernego. Krok kwantyzacj =, współczynnk δ =. 2 Szczególną cechą ( jednocześne wadą) powyższego kwantyzatora jest fakt, że zero ne jest jednym z pozomów reprezentacj danych. Tak kwantyzator jest nazywany kwantyzatorem ze skokem z zerze (ang. mdrse quantser). 7

21 Nżej przedstawono przykłady kwantyzatorów stałych w zerze (ang. mdtread quantser). Kwantyzator równomerny stały w zerze według schematu UTQ (ang. unform threshold quantsaton, rysunek 2.) defnowany jest wzorem: Odpowadający mu dekwantyzator ma postać: x + 0,5 d = Q( x) = sgn( x). (2.25) gdze [ 0,5;0,5 ) ~ = 0 dla d x Q ( d ) = ( d + δ sgn( d )) dla d δ, najczęścej δ = 0. = 0, 0 (2.26) x~ x Rys. 2. Wykres obrazujący dzałane kwantyzatora równomernego stałego w zerze. Krok kwantyzacj =, współczynnk δ = 0. Innym kwantyzatorem stałym w zerze jest kwantyzator schematu DUTQ (ang. deadzone unform threshold quantzaton). Jest to kwantyzator, w którym poszerzony został przedzał zerowy (rysunek 2.2). Kwantyzator defnują wzory: oraz: x ( x) = ( x) d = Q sgn (2.27) ~ = 0 dla d x Q ( d ) = ( d + δ sgn( d )) dla d = 0, 0 (2.28) 8

22 Współczynnk δ [ 0; ), najczęścej δ = x~ x Rys. 2.2 Wykres obrazujący kwantyzator nerównomerny. Krok kwantyzacj =, współczynnk δ = Kodowane danych Modelowane ma na celu dekorelację danych, dzęk kwantyzacj możlwe jest wstępne ogranczene dynamk danych, ewentualne, kontrola stopna kompresj. Kodowane natomast jest statystyczną metodą przyporządkowywana danym otrzymanym w wynk procesu modelowana mnmalnego kodu bnarnego. Kodowane entropjne może polegać na przyporządkowanu symbolom alfabetu danych orygnalnych cągów bnarnych (tzn. każdemu symbolow alfabetu źródła jest przypsywany unkalny cąg btów) [4, 5, 3]. Zbór kodów bnarnych tworzy kod. Cąg bnarne są nazywane słowam kodowym. Charakterystyczną cechą słów kodowych jest to, że mogą meć one różną długość. Poneważ kod bnarny to kod o alfabece składającym sę z dwóch elementów, symbol źródła może być reprezentowany przez słowo kodowe o długośc będącej welokrotnoścą jednego btu. Idea zastosowana kodowana danych w technkach kompresj polega węc na takm zaprojektowanu kodu, aby symbole często występujące w kompresowanych danych były reprezentowane przez krótke słowa kodowe, natomast symbole występujące rzadko przez długe. Jakość takego kodu może być określona przez średną długość kodu (średną btową) l, która określa średną lczbę btów przypadającą na jeden symbol kodowanego cągu: ( S) P( A ) n( ), l = A (2.29) 9

23 n ( A ) przy czym suma przebega po wszystkch symbolach alfabetu, natomast jest lczbą btów użytych do reprezentacj danego symbolu. Sam proces kodowana polega na wyznaczenu słów kodowych o zmennej długośc stosowne do statystyk kompresowanych danych (optymalnym algorytmem generacj takch słów kodowych jest algorytm Huffmana) oraz właścwym kodowanu, tzn. zamane cągu symbol na cąg słów kodowych. Tak sposób kodowana danych ma jednak pewną wadę. Jeśl alfabet źródła ma stosunkowo mały rozmar a prawdopodobeństwa wystąpeń poszczególnych symbol alfabetu są slne zróżncowane, wyżej podana procedura jest wysoce neefektywna. Rozwązanem tego problemu może być specyfczne potraktowane danych wejścowych. W perwotnym ujęcu kompresowane dane to uporządkowany cąg symbol należących do alfabetu źródła. Taka organzacja danych ne jest jednak oblgatoryjna z punktu wdzena kodowana danych może być zmenona. Jedną z metod poprawy efektywnośc kodowana może być sztuczne powększene lczebnośc alfabetu źródła przez łączene symbol w grupy. W przypadku zboru dwuelementowego zgrupowane ośmu symbol pozwala zwększyć lczebność alfabetu z 2 do 256 ( 2 8 = 256 ) elementów. Proces grupowana może jednak nszczyć lokalny kontekst w zborze kodowanych danych (o le ne został on śwadome usunęty w faze modelowana). Inna nekorzystną cechą takego kodowana jest welkość alfabetu, który mus być przekazany do dekodera. Kodowane take to kodowane z alfabetem rozszerzonym. Inną metodą kodowana danych, jest kodowane arytmetyczne, które polega na potraktowanu kompresowanych danych jako jednego, dużego symbolu, a węc nejako na grancznym rozszerzenu alfabetu, jednak bez konecznośc jego wyznaczana przekazywana do dekodera. Sekwencj symbol zostaje przyporządkowana jedna unkalna lczba ułamkowa należąca do zakresu [0;). Lczba ta jest w pewnym sense prawdopodobeństwem wystąpena danego cągu symbol jest nazywana lczbą kodową. Jako że lczba kodowa jest wyznaczana na podstawe prawdopodobeństw symbol alfabetu źródła, aby jednoznaczne zdekodować dane dekoder mus dysponować zborem prawdopodobeństw powązanych odpowedno z symbolam oraz lczbą kodową. Kodowane Huffmana oraz kodowane arytmetyczne były oparte na statystyce źródła. Trzeca popularna metoda kodowana, kodowane słownkowe, ne jest metodą entropjną. Koncepcja kodowana słownkowego jest odwrotna w stosunku do kodowana Huffmana. W kodowanu Huffmana, symbolom źródła są przyporządkowywane kody bnarne o różnej długośc. W przypadku kodowana słownkowego, cąg symbol o różnej długośc są zastępowane kodam o stałej długośc ndeksam słownka cągów symbol. Algorytm kodowana słownkowego polega na kolejnym czytanu cągów symbol ze źródła przeglądanu słownka w celu znalezena dentycznej sekwencj symbol. 20

24 Rozdzał 3 Optymalzacja stopeń kompresj pozom znekształceń w JPEG 2000 W poprzednm rozdzale zostały omówone metody przekształcana danych stosowane podczas kompresj. Z wyjątkem kwantyzacj, metody te ne prowadzły do redukcj nformacj zawartej w tych danych, ne pozwalały węc na kontrolę stopna kompresj. Pomjany jest tu problem znekształceń, których źródłem może być proces modelowana danych (w szczególnośc: neodwracalne wersje transformacj komponentów oraz transformaty falkowej), poneważ są one skutkem ubocznym tego procesu. Jedną z metod redukcj nformacj, obok kwantyzacj, jest selekcja danych, której poddawany jest bnarny strumeń kodowy. Proces ten polega na odrzucenu pewnego fragmentu kodu nosącego nformację uznaną za mnej znaczącą. Selekcja danych jest przeprowadzana po kodowanu arytmetycznym przez algorytm optymalzacj PCRD (ang. Post Compresson Rate Dstorton), dzęk któremu znekształcena powstałe w wynku redukcj danych są najmnejsze z możlwych do osągnęca. Kwantyzacja w ujęcu klasycznym została krótko opsana w rozdzale 2.2. W tym rozdzale zostane przedstawona metoda optymalnej selekcj. W podrozdzale 3. zostane krótko wyjaśnone pojęce stopna kompresj od strony teoretycznej oraz praktycznej. Podrozdzał 3.2 zawera podstawowe pojęca zwązane z teorą znekształceń źródeł nformacj. W podrozdzale 3.3 ujęto deę kontrol stopna kompresj wg standardu JPEG 2000, natomast w podrozdzale 3.4 szczegółowo opsano dwa praktyczne algorytmy optymalnej selekcj opracowane, odpowedno, przez twórców bblotek JasPer (jednej z ofcjalnych realzacj standardu JPEG 2000) oraz autora tej pracy. 3. Stopeń kompresj Jak to już zostało krótko wspomnane w rozdzale 2, stopeń kompresj defnuje skuteczność, z jaką dany zbór danych został skompresowany przy pomocy pewnego algorytmu kompresj. Dla przypomnena, wzór na stopeń kompresj ma następującą postać: L L O CR =, (3.) D Przy czym LO oraz LD to odpowedno welkość danych orygnalnych oraz danych skompresowanych. Najczęścej wartośc te są podawane w bajtach, czasem, w szczególnych przypadkach, w btach. W praktyce, dane skompresowane muszą być uzupełnone nagłówkem (ang. header). Nagłówek jest zborem parametrów kompresj umożlwającym poprawne 2

25 zrekonstruowane skompresowanego zboru danych. Po uwzględnenu nagłówka wzór (3.) przyjmuje następującą postać: CR L L O O = =, (3.2) C L H L + L D gdze L C jest welkoścą zboru (plku) zawerającego nagłówek oraz skompresowane L H dane, natomast jest welkoścą nagłówka. W algorytme kontrolującym stopeń kompresj w standardze JPEG 2000 parametrem odnesena jest welkość danych skompresowanych L D, jeśl zatem określona jest welkość danych orygnalnych oraz żądany stopeń kompresj, to wartość jest wyznaczona ze wzoru: L D L D L CR O = LH. (3.3) Neprzekraczalny lmt stopna kompresj jest węc określony przez welkość nagłówka, która w skrajnych przypadkach może okazać sę znacząca w stosunku do żądanej welkośc danych skompresowanych. 3.2 Elementy teor znekształceń źródeł nformacj W przypadku kompresj bezstratnej, mnmalna średna btowa BR (ang. bt rate) rozumana jako średna lczba btów w skompresowanym zborze danych przypadającą na jeden symbol danych źródłowych, jest jednoznaczne określona przez lość nformacj zawartej w tym zborze. Jeśl kompresja jest stratna, pojawa sę pytane o zależność średnej btowej od pozomu znekształceń D (ang. dstorton) wnoszonego przez proces redukcj nformacj. Na pytane to stara sę odpowedzeć teora znekształceń źródeł nformacj (ang. rate dstorton theory) będąca dzałem teor nformacj zajmującym sę m.n. efektywnoścą metod kodowana lub przesyłana danych w których zachodz znekształcene kodowanej lub przesyłanej nformacj [4, 5, 9, 3] Podstawowe pojęca W rozdzale podano defncję entrop H ( S), jako średnej nformacj o jednej realzacj (zdarzenu, wartośc) zmennej losowej S, przenoszonej przez jedną realzację tej zmennej. Innym słowy, H ( S) jest średną nepewnoścą o realzacj zmennej ~ losowej S usuwaną przez jej realzację. Podobne, entropa warunkowa H ( S S ) (ang. condtonal entropy), to średna nepewność o realzacj zmennej losowej S usuwana przez kontekst zmennej losowej S ~. Entropę warunkową dla zmennych losowych modelowanych jako DMS defnuje zależność: N M ~ ( S S ) = P ( ~ ) (, ~ ~ s P ~ s s ) H log S j S S j 2 (3.4) P j= = ~ S S ( s, ~ s ), j 22

26 przy czym M oraz N oznaczają lczbę symbol w alfabece źródeł modelujących odpowedno zmenną losową S oraz S ~. Informacja wzajemna I (ang. mutual nformaton) mędzy zmennym losowym ~ S oraz S jest średną nformacją o realzacj zmennej losowej S przekazywaną przez realzację zmennej losowej S ~ ~. Lub naczej, nformacja wzajemna I ( S, S ) jest różncą mędzy średną nepewnoścą o realzacj zmennej losowej S przed po poznanu realzacj zmennej losowej S ~. Informację wzajemną mędzy zmennym losowym S oraz S ~ defnuje wzór: I M N ~ ~ ( S S ) = H ( S) H ( S S ) = P ( s ) P ( ~ s, s ) ( ~ s j, s ) ( s ) P,. (3.5) ~ ~ Można wykazać, że I ( S S ) I( S, S ) ~ S S S S ~ S j log 2 = j= P ~ ~ S j, =, co jest także ntucyjne oczywste. Jeśl zmenna losowa S opsująca orygnalny zbór danych jest reprezentowana przez zmenną losową S ~ opsującą zrekonstruowany zbór danych, to pozom znekształceń nformacj D defnuje sę następująco: P S ( s ) D = M N = j= P S ( s ) P~ ( s, s ) d( s, ~ s ) S S ~. (3.6) Poneważ to prawdopodobeństwo wystąpena określonego symbolu alfabetu źródła, natomast P ~ ~ s, s jest prawdopodobeństwem warunkowym wystąpena S ( ) S S j danego symbolu alfabetu źródła S ~ przy wystąpenu pewnym symbolu źródła S, to wartośc P S ( s ) wynkają ze statystk źródła nformacj, natomast P ( ~ ~ s j, s ) S S charakteryzują przyjęty schemat kompresj (przesyłana) danych. Welkość d ( s, ~ s j ) jest marą różncy mędzy symbolam obu źródeł. Mogą być tutaj stosowane różne mary znekształceń, zależne od alfabetów źródeł S oraz S ~. W najprostszych przypadkach: lub d ( s ~ s ) ( s ~ s ) 2, j j j j = (3.7) ( s, ~ s j ) s s j d = ~ (3.8) nne. Dla tak zdefnowanego pozomu znekształcena, szukana wartość średnej btowej BR dla wybranego pozomu znekształceń D przyjmuje następującą postać: BR ~ ( D ) I ( S, S ) = mn, * (3.9) P ( ~ s, s ) D D ~ S S j : co oznacza, ze szukany jest tak schemat kompresj scharakteryzowany przez funkcję P ~ ~ s, s, który mnmalzuje statystyczną lość nformacj o zmennej losowej S S S ( ) j 23

27 zawartej w zmennej losowej S ~ dla pewnego pozomu znekształceń D ne przekraczającego D. Przykładowa zależność średnej btowej BR w funkcj pozomu znekształceń D została przedstawona na rysunku 3.2. Funkcja BR(D) ma dwe kluczowe własnośc: dla dowolnego pozomu znekształceń D możlwe jest znalezene metody kompresj generującej kod o średnej btowej dowolne blskej BR(D), dla dowolnego pozomu znekształceń D nemożlwe jest znalezene metody kompresj generującej kod o średnej btowej mnejszej, nż BR(D). BR rozwązana dla prostej technk kompresj rozwązana dla zaawansowanej technk kompresj teoretyczna krzywa BR(D) 0 D Rys. 3.6 Zależność teoretyczna BR(D) oraz dwa praktyczne rozwązana. Funkcja BR(D) jest węc wypukła, monotonczne malejąca określa zbór rozwązań optymalnych zadana znalezena mnmalnej średnej btowej dla danego pozomu znekształceń (lub równoważne: znalezena mnmalnego pozomu znekształceń przy danej średnej btowej). W zastosowanach praktycznych, zastosowane wyżej przedstawonej teor znekształceń nformacj ne jest łatwe ze względu na slną wzajemną korelację sąsednch próbek (pksel) unemożlwającą precyzyjne wyznaczene statystyk badanego obrazu oraz, w konsekwencj, krzywej BR(D). Na rysunku 3.6 przedstawono teoretyczna krzywą BR(D) dwa możlwe rzeczywste rozwązana lustrujące oczywstą prawdłowość, że m schemat kompresj jest bardzej zaawansowany, tym osągane rozwązane jest blższe optymalnemu Operacyjna teora znekształceń źródeł nformacj W poprzednm punkce omówona została klasyczna teora znekształceń źródeł nformacj, której głównym celem jest wyznaczene maksymalnego stopna kompresj dla danego źródła danych określonego pozomu znekształceń przy wykorzystanu dowolnego algorytmu kompresj. W rzeczywstośc ne jest jednak możlwy dobór 24

28 schematu kompresj dla każdego przypadku, najczęścej dostępny jest jedyne pewen algorytm kodowana z klkoma parametram kompresj, które są tak doberane, aby kompresja była optymalna. Optymalne parametry kodowana wyznaczane są dzęk operacyjnej teor znekształceń źródeł nformacj (ang. operatonal rate dstorton theory), natomast krzywa wyznaczona przez te parametry będze oznaczana przez OBR(D). Rozwązane problemu optymalzacj zdefnowane w poprzednm punkce jest znaczne prostsze dla ustalonego algorytmu kompresj. Jednak w wynku takego uproszczonego zadana, krzywa OBR(D) ne będze optymalną krzywą teoretyczna. Dla przykładu, rozpatrzony zostane prosty koder, którego algorytm kompresj opera sę na aproksymacj bloków obrazu składową stałą wylczoną z wartośc pksel tego bloku. Jest oczywste, że mmo znalezena najlepszego możlwego schematu kwantyzacj dla kompresowanego obrazu (dzęk czemu kompresja będze optymalna), uzyskany stopeń kompresj ne będze leżał na teoretycznej krzywej BR(D) ze względu na bardzo prostą strukturę kodera. Teora krzywej OBR(D) opera sę na skończonej lczbe parametrów lub trybów kompresj pewnego wybranego kodera. Trybam kompresj mogą być na przykład schematy kwantyzacj zoptymalzowane do źródeł modelowanych przez zmenne losowe o różnych funkcjach gęstośc prawdopodobeństwa. Podczas kodowana wyberany jest tak tryb kodowana, który pozwol uzyskać najlepsze parametry kompresj. Jeśl kodowane dane składają sę z fragmentów o różnej statystyce (lub zostały przekształcone do takej postac na etape modelowana), to koder pownen stosowne dobrać tryb kompresj do charakteru każdego fragmentu danych z osobna. Każdy przydzał poszczególnych schematów kwantyzacj do odpowednch fragmentów danych to tryb operacyjny pracy kodera. Z każdym trybem skojarzona jest pewna średna btowa BR oraz pewen pozom znekształcena D. Zestaw wszystkch par (BR, D), których jest tyle, le trybów operacyjnych, tworzy funkcję kwantyzatora QF (ang. quantser functon). Dyskretna postać funkcj kwantyzatora została przedstawona na rysunku 3.7 w postac symbol. BR punkty funkcj kwantyzatora krzywa OBR(D) krzywa OBR(D) wypukła krzywa BR(D) 0 D Rys. 3.7 Operacyjna krzywa BR(D). 25

29 Krzywa OBR(D), zaznaczona na rysunku 3.7 lną przerywaną, określa podzbór punktów funkcj kwantyzatora reprezentuje przydatne w praktyce (optymalne) tryby pracy kodera. Matematyczne, zbór punktów OBR(D) jest określony następująco: OBR ( D) = QF BR BR D D, j QF, j :, (3.0) j gdze BR, D oraz BR, D to pary średna btowa pozom znekształcena j j skojarzone odpowedno z trybam oraz j pracy kodera. Dla wygody przyjęło sę łączyć kolejne punkty OBR(D) tworząc w ten sposób krzywą OBR(D). W rzeczywstych przypadkach koder pownen operować wyłączne na punktach należących do krzywej OBR(D), jako że punkty leżące poza tą krzywą reprezentują neoptymalne operacyjne tryby pracy kodera (tzn. w trybach tych koder generuje strumeń kodowy o wększej średnej btowej nż jest możlwa do osągnęca przy danym lub mnejszym pozome znekształceń dla tego kodera na odwrót). Idea poruszana sę na krzywej OBR(D) jest dość ogólna może być stosowana przy rozwązywanu welu różnych zadań. W praktyce, sens optymalzacj średna btowa pozom znekształceń jest równoważny problemow alokacj budżetu dla źródeł nformacj o różnej statystyce dla określonego stopna kompresj (lub przepływnośc kanału transmsyjnego). Jeśl schemat alokacj odpowada trybow kodowana należącemu do zboru punktów OBR(D), to algorytm pracuje optymalne Sformułowane problemu optymalzacj Centralnym problemem optymalzacj BR(D) jest wybór takego trybu (schematu) pracy danego algorytmu kompresj, aby punkt (BR, D) skojarzony z tym trybem należał do zboru OBR(D). Jest to równoważne stwerdzenu, że ne stneje nny tryb kompresj, dzęk któremu możlwe jest osągnece mnejszych znekształceń przy założonym pozome kompresj (średnej btowej). Nech B oznacza pewen tryb pracy kodera ze zboru wszystkch możlwych trybów S B, natomast BR ( B) oraz D ( B) to skojarzone ze sobą funkcje odpowedno średnej btowej pozomu znekształcena zależne od trybu B. Problem poszukwana optymalnego trybu pracy kodera B przy ustalonej (żądanej) średnej btowej BR des można matematyczne przedstawć następująco: ( ) des ( ) D( B) D B B S B j = mn (3.) przy warunku BR B BR. Problem blźnaczy do określonego przez (3.), w którym określony jest pozom znekształceń, ma następującą postać: D des przy warunku ( B) Ddes D. BR ( B ) BR( B) = mn (3.2) B S B Okazuje sę, że oba problemy mogą być rozwązywane przy pomocy takch samych narzędz, z których jedno zostane przedstawone w kolejnym podrozdzale. 26

30 3.2.4 Optymalzacja metodą mnożnków Lagrange a Jednym ze sposobów rozwązana wyżej opsanych problemów jest zastosowane metody mnożnków Lagrange a procedury wyznaczana ekstremów funkcj (tzw. funkcj celu) przy określonym warunku (ogranczenu). Idea zastosowana tej metody wynka z tego, że umożlwa ona włączene warunku do mnmalzowanej funkcj celu, która tym samym zostaje zredefnowana nazwana funkcją Lagrange a. W technkach kodowana obrazu funkcją celu jest najczęścej funkcja pozomu znekształceń lub średnej btowej, natomast warunkem, odpowedno: żądana średna btowa lub pozom znekształceń. Metoda zostane przyblżona na przykładze problemu optymalzacj z ustalonym stopnem kompresj (średną btową), tzn. problemu (3.). W tym D B, czyl pewen optymalny punkt przypadku znajdowane będze mnmum funkcj ( ) pracy kodera B przy warunku BR( B) BRdes. Matematyczne oznacza to, że mnmalzowana funkcja Lagrange a przyjmuje następującą postać: czyl poszukwane jest: L ( B λ ) = D( B) + λbr( B) B,, (3.3) S B ( D( B) + λbr( B) ) mn, (3.4) gdze λ jest dodatną lczbą rzeczywstą, tzw. mnożnkem Lagrange a. Z (3.3) wynka, że optymalny tryb pracy kodera B jest funkcją λ, węc aby znaleźć rozwązane problemu, wystarczy wyznaczyć mnożnk λ. Poszukwane mnmum funkcj oznacza przyrównane perwszej pochodnej do zera, stąd: zatem: D BR + λ = 0, B B D =, (3.5) λ BR przy czym, ze względu na dyskretny charakter danych, praktyczny sens ma przyblżene: D. (3.6) λ BR Na wykrese BR(D) wartość jest nterpretowana jako nachylene prostej λ przechodzącej przez poszukwany punkt należący do krzywej OBR(D) wypukłej, czyl reprezentujący poszukwany optymalny tryb pracy kodera B. 27

31 Zwązek mędzy zborem punktów tworzącym krzywą OBR(D) wypukłą oraz prostym o kące nachylena został grafczne przedstawony na rysunku 3.8. Jak z λ nego wynka, każda -ta prosta skojarzona z szukanym optymalnym trybem B łączy punkt na krzywej OBR(D) wypukłej odpowadający trybow B z takm punktem reprezentującym operacyjny tryb pracy kodera, dla którego współczynnk nachylena tej prostej jest najwększy oraz który spełna warunek BR ( B ) > BR( B ). Współczynnk nachylena -tej prostej jest węc równy: D B = λ BR ( ) D( B ) ( B ) BR( B ). (3.7) BR(B) - operacyjne tryby pracy kodera (B) - optymalne tryby pracy kodera (B*) BR ( B ) B BR( B ) B B 0 0 D ( B ) D( B ) λ λ D(B) Rys. 3.8 Optymalne tryby pracy kodera oraz skojarzone z nm proste. Poneważ w praktyce problem jest rozwązywany dla pewnej żądanej średnej btowej, kluczową kwestą w rozwązywanu zadana jest znalezene takego BR des mnożnka λ, aby BR ( B ) = BR( B ( )) BRdes λ. (3.8) Jedną z możlwośc rozwązana tego zadana jest zastosowane metody bsekcj. Metoda ta polega na wstępnym wyborze dwóch wartośc λ a oraz λ b określających przedzał do którego należy szukany mnożnk λ, oraz teracyjnym zawężanu tego przedzału (poprzez podzał na dwa równe podprzedzały) do momentu spełnena warunku (3.8) z założoną dokładnoścą. 28

32 3.3 Idea regulacj stopna kompresj w JPEG 2000 Jak wcześnej wspomnano, regulacja stopna kompresj w standardze JPEG 2000 odbywa sę poprzez odpowedną selekcję (odrzucene) fragmentów strumena kodowego. Każda taka selekcja odpowada pewnemu trybow pracy B algorytmu kompresj. Oczywśce aby ten proces był możlwy, strumeń kodowy mus meć odpowedną strukturę (składać sę z możlwe welu nezależnych częśc), co wymusza zastosowane specjalnego schematu kodowana danych. Selekcja fragmentów strumena (zwanych przebegam) jest natomast realzowana w procese optymalzacj PCRD. W podrozdzałach od 3.3. do zostane przedstawony blok Ter normy JPEG 2000, w którym zdefnowano sposób kodowana arytmetycznego oraz optymalzacj PCRD. Podrozdzał zawera krótke omówene warstw. Pod tym pojęcem w standardze JPEG 2000 kryje sę logczne grupowane fragmentów strumena kodowego, dzęk czemu uzyskuje sę możlwość kodowana progresywnego. Tak rodzaj kodowana progresywnego umożlwa stopnowe zwększane jakośc rekonstruowanego obrazu. Szczegóły standardu ne mające znaczena dla kontrol stopna kompresj zostaną pomnęte. Standard kodowana JPEG 2000, w ujęcu ogólnym został przedstawony w dodatku A Struktura danych Na rysunku 3.9 przedstawono obraz w postac struktury danych uzyskanych po transformacj falkowej, a węc po ostatnm etape modelowana danych. Jest to zbór współczynnków transformaty pogrupowanych w podpasma. Taka postać struktury wynka z zastosowana dadycznego schematu dekompozycj falkowej. zbór podpasm trzecego pozomu dekompozycj 3LL 3HL 3LH 3HH 2HL HL zbór podpasm drugego pozomu dekompozycj 2LH 2HH zbór podpasm perwszego pozomu dekompozycj LH HH Rys. 3.9 Struktura podpasm po falkowej dekompozycj dadycznej dla trzech pozomów dekompozycj. 29

33 Każde podpasmo to tablca współczynnków transformaty falkowej. Współczynnk te mogą być poddane prostej kwantyzacj DUTQ (przy czym krok kwantyzacj zależy od typu podpasma, najszerszy krok jest stosowany przy kwantyzacj podpasm typu HH, natomast najwęższy przy kwantyzacj podpasm LL). Kwantyzacja ne służy do regulacj stopna kompresj, jednak zmena ona względny rozkład lośc nformacj pomędzy różnym podpasmam (ze względu na zależność kroku kwantyzacj od typu podpasma), co ma wpływ na proces optymalzacj PCRD zostane w dalszej częśc opsu uwzględnone. W przypadku kompresj bezstratnej kwantyzacja oczywśce ne jest przeprowadzana. Każde podpasmo zostaje podzelone na częśc o stosunkowo newelkch wymarach (np lub 64 64) nazwane blokam kodowym B (ang. code blocks). Każdy -ty blok kodowy jest węc newelką tablcą współczynnków transformaty falkowej przyporządkowaną do pewnego podpasma (rysunek 3.0). Blok kodowe są następne nezależne od sebe kodowane. 3LL 3HL 3LH 3HH 2LH 2HL 2HH HL blok kodowe LH HH Rys. 3.0 Podzał na blok kodowe. Lczba pozomów dekompozycj D = Kodowane arytmetyczne Każdy blok kodowy składa sę z zestawu płaszczyzn btowych (ang. btplanes). Lczba płaszczyzn jest węc równa lczbe btów w reprezentacj maksymalnej wartośc współczynnka transformaty. Kodowane płaszczyzny btowej, to dwa etapy. W perwszym etape każda płaszczyzna jest rozkładana na cąg symbol (zwanych także podpłaszczyznam, ang. subbtplanes lub przebegam, ang. passes), które w drugm etape są kodowane arytmetyczne. Etap rozkładu rozpoczyna sę od płaszczyzny najbardzej znaczącej (czyl zawerającej najbardzej znaczące bty, MSB, ang. most sgnfcant bt) kończy na płaszczyźne najmnej znaczącej (zawerającej najmnej znaczące bty, LSB, ang. least sgnfcant bt). Proces rozkładu płaszczyzny btowej na podpłaszczyzny jest przeprowadzany w trzech przebegach: sgnfcance propagaton pass, magntude refnenement pass oraz 30

34 cleanup pass. Każdy bt (zwany dalej elementem) płaszczyzny btowej może być przyporządkowany do najwyżej jednej podpłaszczyzny btowej. Przyporządkowane określonego elementu do jednej z trzech podpłaszczyzn wynka z jego położena (tzw. lokalzacj znaczącej, ang. sgnfcant localzaton), wartośc elementów sąsednch oraz wartośc tego elementu w poprzednch płaszczyznach btowych. Dany element płaszczyzny btowej ma lokalzację znaczącą, jeśl na tej lokalzacj w bardzej znaczących płaszczyznach wystąpł element o wartośc. W perwszym przebegu, sgnfcance propagaton pass, są uwzględnane elementy, które ne mają lokalzacj znaczącej jednocześne mają sąsada o takej lokalzacj. Jeśl uwzględnany element ma wartość, to nformacja o wartośc elementu jest uzupełnana nformacją o znaku współczynnka transformaty falkowej, do którego należy dany element. W drugm przebegu, magntude refnenement pass, uwzględnane są te elementy, które mają lokalzacje znaczącą. W ostatnm przebegu, cleanup pass, zostają uwzględnone wszystke te elementy, które zostały opuszczone w dwóch poprzednch przebegach. Podobne jak w przebegu sgnfcance propagaton, jeśl pewen element ma wartość, to nformacja o wartośc elementu jest uzupełnana nformacją o znaku. Jeśl w danej płaszczyźne ne znalazł sę an jeden element, to taka płaszczyzna ne zawera żadnej nformacj będze określana płaszczyzną pustą. Po wyżej opsanym rozkładze, podpłaszczyzny btowe mogą być entropjne kodowane. Do tego celu został zastosowany adaptacyjny koder bnarny, w szczególnośc użyto zmodyfkowanego kodera MQ opracowanego dla standardu kompresj obrazów bnarnych JBIG2. Podpłaszczyzny wygenerowane w przebegach cleanup są zawsze kodowane entropjne, pozostałe przebeg kodowane być ne muszą co zależy od wybranego trybu kodowana (w celu redukcj zapotrzebowana na zasoby systemu komputerowego na którym przeprowadzana jest kompresja, kodowane arytmetyczne może zostać pomnęte). W wynku procesu kodowana jednej podpłaszczyzny btowej należącej do bloku kodowego B, powstaje pewen przebeg kodowy (ang. codng pass) P n, będący skompresowaną reprezentacją tej podpłaszczyzny. Przebeg powstały z płaszczyzny pustej jest przebegem pustym. Każdy przebeg kodowy P n charakteryzuje sę dwoma stotnym parametram: długoścą L n oraz wkładem w pozom znekształceń obrazu (a zarazem werność rekonstrukcj) D n, określającym średną lość nformacj zawartą w tym przebegu kodowym. Długość przebegu L n jest wyrażona w bajtach wprost nawązuje do przyrostu BR we wzorze (3.20). Pozom znekształceń D n jest oblczany na podstawe szeregu parametrów kompresj: zastosowanej transformacj komponentów oraz typu komponentu, transformacj falkowej (w szczególnośc pozomu dekompozycj oraz podpasma), kroku kwantyzacj (o le kwantyzacja DUTQ została przeprowadzona), numeru płaszczyzny btowej oraz typu przebegu. Wartość D n jest zgodna z marą MSE odpowada welkośc D w (3.20). Jeśl dany przebeg jest pusty, to wartość D n jest oczywśce zerowa. Zestaw N przebegów kodowych P do P N, o wkładach w pozom znekształceń odpowedno D do D N oraz długoścach L do L N, odpowadających jednemu blokow kodowemu B tworzy strumeń btowy S (ang. bt N stream) o długośc = I L L n. Zbór wszystkch strumen btowych S do S tworzy n= strumeń kodowy (skompresowaną wersję obrazu) S o długośc L = L. I = 3

35 Wyżej opsany proces tworzena przebegów kodowych został schematyczne przedstawony na rysunku 3.. płaszczyzna najbardzej znaczących btów (MSB) sgnfcance propagaton magntude refnenement cleanup P P 2 blok kodowy B sgnfcance propagaton magntude refnenement cleanup kodowane arytmetyczne strumeń btowy S płaszczyzna najmnej znaczących btów (LSB) sgnfcance propagaton magntude refnenement cleanup P N płaszczyzny btowe przebeg koder MQ przebeg kodowe Rys. 3. Kolejne etapy tworzena przebegów kodowych Selekcja przebegów Informacja zawarta we wszystkch nepustych przebegach kodowych P do P N należących do pewnego strumena btowego S (czyl odpowadających danemu blokow kodowemu B ) pozwala na bezstratne odtworzene współczynnków transformaty zawartych w danym bloku kodowym (przy założenu braku wspomnanej na początku podrozdzału kwantyzacj DUTQ). Rozkład nformacj w poszczególnych nepustych przebegach kodowych utworzonych z jednego bloku kodowego ne jest jednak równomerny. Statystyczne najwększa część nformacj zawarta jest w przebegach kodowych utworzonych z płaszczyzn btowych najbardzej znaczących (tzn. w przebegach wygenerowanych na początku: P, P 2,...). Ilość nformacj w przebegach tworzonych z kolejnych płaszczyzn stopnowo maleje jest najmnejsza w przebegach odpowadających warstwom najmnej znaczącym (przebeg P N, P N,...). Na rysunku 3.2 schematyczne przedstawono zawartość nformacj w kolejnych nepustych przebegach kodowych odpowadających pewnemu blokow kodowemu B na tle odpowadającej mu krzywej BR(D). Należy podkreślć, że kolejność wynkająca z lośc nformacj D n zawartej w każdym z nepustych przebegów ne zawsze jest taka sama, jak porządek w jakm powstały. Idea kontrol stopna kompresj w standardze JPEG 2000 polegająca na wyznaczenu zboru przebegów kodowych o pewnej żądanej sumarycznej długośc opera sę na trzech, nżej podanych kluczowych własnoścach. Perwszą z nch jest możlwość zdekodowana dowolnej lczby n perwszych przebegów kodowych (należących do pewnego bloku kodowego), dzęk czemu kontrola stopna kompresj jest łatwa polega na odrzucenu pewnej lczby tych przebegów. Dwe pozostałe własnośc, to stosunkowo duża lczba przebegów tworzących jeden strumeń btowy (klkadzesąt) oraz ch względne mała welkość (ne węcej, nż paręset bajtów). 32

36 Dzęk tym dwóm pozostałym własnoścom kontrola stopna kompresj może być precyzyjna. Głównym problemem, który mus zostać rozwązany, aby można było praktyczne stosować powyższą deę kontrol stopna kompresj, jest optymalny wybór zboru przebegów kodowych przeznaczonych do utworzena poszczególnych strumen btowych. BR ostatn przebeg kodowy warstwy najmnej znaczącej P N przebeg kodowe krzywa BR(D) L 2 perwszy przebeg kodowy warstwy najbardzej znaczącej P 2 P 0 D 2 D Rys. 3.2 Symbolczne ujęte przebeg kodowe odpowadające pewnemu blokow kodowemu B wpsane w wykres BR(D). Należy pamętać, że w rzeczywstośc lczba przebegów kodowych N jest znaczne wększa nż to wynka z wykresu, natomast ch długość L n ne jest stała. Przebeg puste zostały pomnęte. W omawanym standardze taka selekcja przebegów jest przeprowadzona na podstawe wartośc parametru E n każdego z przebegów, będącego stosunkem lośc nformacj D n zawartej w danym przebegu kodowym oraz jego długośc L n : D L n E n =. (3.9) n Poneważ w przypadku przebegów pustych wartość E n ne jest oczywsta, zostaną one wzęte pod uwagę pod konec nnejszego podrozdzału, natomast teraz zostaną pomnęte. Stosunek (3.9) na wykrese BR(D) nterpretuje sę jako nachylene prostej skojarzonej z danym przebegem patrz podrozdzał Optymalnym zborem przebegów dla określonego stopna kompresj jest węc tak zbór, który zawera wszystke te przebeg, które spełnają warunek: 33

37 E n Etp, (3.20) przy czym E tp jest tzw. punktem odcęca (ang. truncaton pont) o takej wartośc, dla której sumaryczna długość wszystkch przebegów spełnających nerówność (3.20) odpowada (z określoną dokładnoścą) żądanemu stopnow kompresj. Punkt odcęca nejako defnuje węc poszukwany optymalny zbór przebegów. Jeśl przebeg skojarzone z pewnym bloku kodowym zostaną posortowane wg wartośc nachylena E n (od najwększej do najmnejszej), to optymalny zbór stanow pewna lczba perwszych przebegów (patrz rysunek 3.3). BR P N E, N P N E , N I I I P N,E N I P n E + 2, n P n+ 2, E n+ 2 < E tp P E I n+ 2, I n+2 E tp P n+, E n+ < E tp P, E 2 2 n+ n+ E tp P E I n+, I n+ P n, E n E tp P 2 2 n, E n I P I n, E n < E tp P n E, n P n E 2 2, n P, E I I n n E tp P,E 2 P 2,E I P, E I = =2 =I Rys. 3.3 Przykładowy dagram przedstawający obraz w postac zboru przebegów kodowych P n z zaznaczonym punktem odcęca E. Kolejność przebegów w każdym z bloków kodowych wynka z wartośc nachylena E n. Wszystke przebeg o parametrze E n wększym od E są dodawane do wynkowego strumena kodowego, nato- tp mast pozostałe przebeg są odrzucane. tp Tak wyznaczony optymalny zbór przebegów charakteryzuje sę pewna długoścą, będącą sumą długośc poszczególnych przebegów oraz określa stopeń znekształceń zrekonstruowanego obrazu. Sumaryczną długość przebegów L określa wzór: gdze L ( E ) tp = I k (, Etp ) L = n= n, (3.2) 34

38 ( E ) k tp = k : E Etp E k + Etp k, <. (3.22) Stopeń znekształceń obrazu D określony jest następująco: ( ) D E tp = I N D (, E ) n = n= k tp +. (3.23) Poneważ wyznaczono optymalny zbór przebegów, pozom znekształceń jest najnższy z możlwych do osągnęca. W praktyce, kolejność powstawana nepustych przebegów w ramach danego - tego bloku kodowego jest najczęścej zgodna z porządkem wynkającym z wartośc nachylena E n. Teoretyczne przypadk braku pełnej zgodnośc wynkają z podobnych powodów, dla których kolejność powstawana przebegów różn sę od kolejnośc wynkającej z przyrostu nformacj D n. Jak już wspomnano, pewnym problemem są przebeg puste. Teoretyczne wartość nachylena E n w ch przypadku jest neokreślona ze względu na zerową wartość przyrostu nformacj D n oraz długośc L n. W rzeczywstośc, przebeg pusty charakteryzuje sę pewną długoścą, węc wartość E n przebegów pustych jest zerowa. Poneważ długość takch przebegów jest bardzo newelka (w porównanu z przebegam nepustym), ne mają one stotnego wpływu na długość tworzonego strumena strumena kodowego. Z powyższych powodów, w standardze JPEG 2000 porządek wynkający z kolejnośc powstawana przebegów jest traktowany tak, jakby był porządkem wg wartośc nachylena E n Warstwy Interesującą własnoścą nektórych nowoczesnych metod kompresj jest kodowane progresywne. Dzęk nemu odborca otrzymuje część nformacj zanm zostane zdekodowany cały zbór danych. Ma to szczególne znaczene w sytuacj, kedy dane transmtowane są przez kanał o nskej przepustowośc. Jedna z rodzajów progresj polega na stopnowym wzrośce wernośc rekonstrukcj całego obrazu (poprawy jakośc) w marę stopnowej dekompresj kolejnych fragmentów strumena kodowego. Tak rodzaj kodowana progresywnego może być oparty na przedstawonej w poprzednm podrozdzale optymalnej selekcj przebegów kodowych. Jak zostało wcześnej wyjaśnone, dea optymalnej selekcj polega na wyznaczenu pewnego punktu odcęca, defnującego zbór przebegów z których E tp zostane utworzony strumeń kodowy. Punkt odcęca jednoznaczne określa zatem stopeń kompresj BR (długość strumena kodowego L ) oraz pozom znekształceń rekonstruowanego obrazu D. Kodowane progresywne ze względu na jakość rekonstrukcj opera sę na wyznaczenu pewnej lczby K punktów odcęca takch, że E > E. Każdy k -ty punkt odcęca E wyznacza zbór przebegów o pewnej długośc L oraz tpk pozom znekształceń w zrekonstruowanym obraze równy Etp k tp = k tp k KK k + D k. Każdy zbór k 35

39 przebegów defnowany przez punkt E tp k + E tpk jest podzborem zboru określanego przez, natomast zbór przebegów zawarty w całym strumenu kodowym jest określany przez ostatn punkt odcęca. Kolejne punkty odcęca E tpk E tpk wyznaczają kolejne zestawy przebegów trafających do dekodera. Tak zestaw przebegów jest nazywany warstwą (ang. layer) będze dalej oznaczany przez Yk. Zdekodowane każdej kolejnej warstwy Yk prowadz do zmnejszena pozomu znekształceń w obraze do pozomu określonego przez punkt odcęca. Rysunek 3.4 zawera dagram przedstawający logczną strukturę E tpk strumena kodowego składającego sę z 4 warstw oraz kolejne wersje rekonstruowanego obrazu. Zaznaczone zostały też pakety. S S 2 3 S E t4 P 7 3 P 7 Y 4 P 6 E t3 Y 3 P 5 E t2 P 4 Y 2 P 3 P 2 E t Y P 2 P 3 P L L2 L3 L4 Y Y,Y Y 2, Y2, Y3 Y, Y2, Y3, Y4 Rys. 3.4 Struktura strumena kodowego oraz kolejne rekonstrukcje obrazu. Zdekodowane zboru przebegów z każdej kolejnej warstwy Y k powoduje stopnową poprawę jakośc rekonstrukcj. W rzeczywstych przypadkach lczba strumen, warstw oraz przebegów kodowych jest znaczne wększa, ponadto lczba przebegów jest najczęścej różna w każdym ze strumen. Lną przerywaną zaznaczono pakety (ang. packets) zbory przebegów z tego samego strumena btowego należące do danej warstwy. 36

40 Kolejno rekonstruowane obrazy (będące coraz wernejszym przyblżenam obrazu orygnalnego) mają węc zawsze mnmalne znekształcena, poneważ każdy k - ty obraz powstaje w wynku dekompresj optymalnego zboru przebegów. Na zakończene należy dodać, ż w przypadku kompresj bezstratnej ostatn punkt odcęca ma wartość zerową, co oznacza, że wynkowy strumeń kodowy E tpk zawera wszystke przebeg kodowe. Węcej nformacj o strukturze strumena kodowego zawarto w podrozdzale A Praktyczne realzacje algorytmów optymalnej selekcj w JPEG 2000 W poprzednch podrozdzałach przyblżona została teora znekształceń źródeł nformacj oraz koncepcja optymalnej selekcj operająca sę na tej teor. Opsano także deę kodowana progresywnego. W nnejszym rozdzale zostaną przedstawone praktyczne algorytmy kontrol stopna kompresj operające sę na metodze optymalnej selekcj stosowane w bblotece JasPer (blok Ter-). Poneważ opsywana kontrola stopna kompresj opera sę na podzale strumena kodowego na wele fragmentów o newelkej długośc, uzyskwany stopeń kompresj najczęścej ne może być dokładne równy żądanemu. W zwązku z tym, przyjęto zasadę, że uzyskany stopeń kompresj ne może być mnejszy, nż żądany. Oznacza to, że długość otrzymanego strumena kodowego ne może przekroczyć wartośc wynkającej z żądanego stopna kompresj. Przed opsem praktycznych rozwązań rozpatrzony zostane prosty przykład kompresj obrazu, którego współczynnk transformaty falkowej będą zawarte w jednym bloku kodowym (co oznacza, że welkość obrazu ne jest wększa od welkośc bloku kodowego, a podczas kodowana pomnęta zostaje transformacja falkowa), natomast wynkowy strumeń kodowy będze zawerał jedną warstwę. Przykład ten zlustruje problemy, jake napotyka praktyczna realzacja metod kontrol stopna kompresj. Pomysł na kontrolę stopna kompresj obrazu którego współczynnk transformaty falkowej meszczą sę w jednym bloku kodowym B, a wynkowy strumeń kodowy ma sę składać z jednej warstwy Y, jest nezwykle prosty polega na teracyjnym sumowanu długośc Ln kolejnych przebegów kodowych Pn. Kolejność, w jakej poszczególne przebeg są dodawane do strumena btowego, odpowada porządkow z jakm przebeg zostały wygenerowane, znane są równeż długośc wszystkch przebegów kodowych. Postępowane kończy sę w momence, kedy suma długośc przebegów L k L n n= ( k ) = przekroczy długość wynkającą z żądanego stopna kompresj zatem zbór przebegów P do P, gdze k spełna warunk: k L D (3.29). Rozwązanem jest ( k) LD L, (3.30) 37

41 oraz Pozom znekształceń następującym wzorem: D( k) ( k ) LD L + >. (3.3) zrekonstruowanego obrazu, może zostać określony N D n n= k+ ( ) = D k. (3.32) Wyznaczony w powyższy sposób zbór przebegów jest optymalny, zatem dla zadanej długośc strumena kodowego L D mnmalzowany jest pozom znekształceń D ( k). Punkt odcęca E tp może przyjmować dowolną wartość z przedzału [ E k, E k + ). Wartość została jednak podana jedyne dla porządku, jako że w tym prostym E tp przypadku ne znajduje ona zastosowana. Powyższa procedura wyznaczana optymalnego zboru przebegów ma jedną wadę. Jak to zostało opsane w podrozdzale 3., plk zawerający skompresowaną wersję obrazu oprócz strumena kodowego zawera równeż nagłówek z nformacjam o parametrach kompresj. Także warstwa ne składa sę z samych przebegów (zgrupowanych w pakety), ale zawera też nagłówek zawerający nformacje o strukturze danej warstwy. Podobne pakety, które grupują przebeg w warstwe, zawerają nagłówk. Po uwzględnenu welkośc nagłówków, wzór (3.29) określający długość strumena kodowego obrazu o jednym bloku kodowym przyjmuje postać: L ( k) = LH + LH + Y T k n= L n. (3.33) gdze L to długość nagłówka warstwy, natomast to długość nagłówka paketu. H Y Okazuje sę jednak, że wyznaczene welkośc nagłówka warstwy ne jest w praktyce możlwe, poneważ zależy ona od z góry neznanej lczby przebegów kodowych zawartych w każdym z paketów (a także od pewnych parametrów kompresj, co jednak ne stanow dużego utrudnena ze względu na znany jednocześne stały narzut). Nagłówek paketu ma stałą długość. Poneważ w praktyce obrazy są na tyle duże, że zbór współczynnków transformaty jest dzelony na wele bloków kodowych, pojawają sę kolejne problemy. L H T Kluczowym z nch jest problem wyznaczena takego punktu odcęca ~ Etp ' Etp L ( E ') L L( E ') > L( E ) tp des tp tp, E tp, aby (3.32) przy czym L ( E tp ) to sumaryczna długość wszystkch przebegów kodowych w strumenu kodowym określona wzorem (3.2). Wyznaczene punktu odcęca jest zadanem netrywalnym, ze względu na E tp znaczną lczbę bloków kodowych z których składa sę obraz, a węc koneczność 38

42 wyznaczena welu podzborów przebegów kodowych o ścśle określonej sumarycznej długośc. W kolejnych podrozdzałach zostaną przedstawone za pomocą pseudokodu dwe praktyczne metody zastosowane w bblotece JasPer do wyznaczana quas-optymalnych podzborów przebegów, natomast kod źródłowy został zawarty w dodatku B. Metody te zostały zamplementowane w postac funkcj (rateallocate_def() oraz rateallocate_snd()), których jednym z argumentów jest struktura zmennych kodera (w kodze źródłowym nos ona nazwę jpc_enc_t). Struktura ta zawera parametry kompresj oraz zbór przebegów kodowych (w kodze źródłowym struktura przebegu ma nazwę jpc_enc_pass_t). Wynkem dzałana funkcj jest określene przyporządkowana przebegów do warstw. Informacja o przyporządkowanu zawarta jest w strukturze każdego przebegu. W przypadku kompresj stratnej część przebegów zostaje neprzyporządkowana do żadnej z warstw w efekce odrzucona w dalszej częśc procesu kodowana Algorytm zastosowany w bblotece JasPer Algorytm opracowany przez autorów bblotek JasPer opera sę na metodze bsekcj w której parametrem poszukwanym jest punkt odcęca. Jest to metoda teracyjna, a zatem stosunkowo wolna: w każdej pętl wylczana jest nowa wartość punktu odcęca oraz, na jego podstawe, tworzony jest fragment strumena E tpk kodowego zawerający k -tą warstwę. Cały proces jest powtarzany dla każdej warstwy, a węc K -krotne. Ponżej przedstawono omawany algorytm w postac pseudokodu. W nawasach kwadratowych podano nazwy zmennych zastosowane w kodze w języku C (kod źródłowy został zameszczony w dodatku B). Algorytm ma postać: E tpk. zresetuj przyporządkowane każdego z przebegów do warstw (krok ten polega na wpsanu do zmennej [lyrno], będącej członkem struktury przebegu jpc_enc_pass_t, wartośc, w kodze źródłowym ncjacja ta realzowana jest na etape tworzena przebegów), 2. wyznacz wartość nachylena E n [rdslope] każdego z przebegów, wartość nachylena jest stosunkem wkładu w pozom znekształceń D n oraz długośc L n (zmenna E n jest członkem struktury przebegu): E n = D L n n dla =,2 KI, n =,2KN, gdze I jest lczbą bloków kodowych, natomast N to lczba przebegów w -tym bloku, 3. otwórz bufor tymczasowy do którego wpsywany będze tworzony strumeń kodowy [out] (do bufora tego kolejno dopsywane będą fragmenty strumena kodowego, każdy fragment strumena będze stanowł jedną warstwę), 39

43 4. ncjuj lcznk warstw k [lyrno]: k =, 5. poberz żądaną długość strumena L Dk [cumlen] składającego sę z warstw Y, Y 2 KY k, 6. ustaw mnmalną E [lo] maksymalną E [h] wartość nachylena: mn max E mn = mn =,2... I n=,2... N E n oraz E max = max E n, =,2... I n=,2... N zmenne E E będą określać przedzał zawerający rozwązane mn max poszukwany punkt odcęca, E tpk 7. ustaw zmenną sukcesu C [success] (sygnalzuje ona powodzene etapu wyznaczana punktu odcęca E, C = oznacza, że poszukwane punktu odcęca tp k zakończyło sę sukcesem, C = 0 że punktu ne został wyznaczony): 8. ncjuj lcznk teracj l [numters]: C = 0, l =, 9. ustaw tymczasowy punkt odcęca [thresh] (jest to zmenna pomocncza, E x wykorzystywana podczas procesu wyznaczana właścwego punktu odcęca ): E mn + E E max x =, 2 0. zachowaj stan kodera (krok ten polega na zachowanu aktualnego przyporządkowana przebegów do warstw oraz pozycj końca danych w buforze tymczasowym, operacja ta jest koneczna, poneważ wyznaczany w każdej teracj algorytmu bsekcj punkt odcęca jest testowany, wynkem czego jest przyporządkowane pewnego, nekoneczne optymalnego zboru przebegów do beżącej warstwy, efekt takego próbnego przyporządkowana mus być oczywśce zneutralzowany), E tpk 40

44 . przyporządkuj wszystke wolne (tzn. neprzyporządkowane do żadnej warstwy) przebeg o wartośc nachylena E n Ex do beżącej, k -tej warstwy (przyporządkowane to polega na wpsanu numeru beżącej warstwy do zmennej [lyrno], będącej członkem struktury przebegu), 2. wygeneruj fragment strumena kodowego składający sę z przebegów przypsanych do beżącej warstwy dopsz go do strumena znajdującego sę w buforze tymczasowym [out], 3. poberz długość tymczasowego strumena kodowego L ( E x ) [pos], L ( E x ) > L D E k x 4. jeśl (zbyt mała wartość, przekroczony budżet ), to ustaw mnmalną wartość nachylena: 5. jeśl ( E x ) L D k E x E mn = E x, L (wartość wystarczająco duża, podjęta zostane próba wyznaczena wartośc mnejszej), to ustaw maksymalną wartość nachylena: E max = E x, L D k punkt odcęca E tpk [goodthresh]: Etp k = E x, oraz zmenną sukcesu C : C =, (ustawene zmennej sukcesu oznacza, że wyznaczony punkt odcęca E x może być wykorzystany do wyznaczena zboru przebegów dla beżącej warstwy, dlatego został przepsany do zmennej, ne przesądza to jednak o tym, że ne da sę E tpk wyznaczyć lepszego punktu odcęca, dlatego algorytm bsekcj automatyczne ne kończy w tym momence dzałana), 6. odtwórz zachowany stan kodera (w praktyce oznacza to wpsane wartośc do zmennej przyporządkowana tych przebegów, które zostały przypsane do beżącej warstwy oraz ustawene zachowanej pozycj końca danych w buforze tymczasowym, czyl nejako wymazane ostatnego fragmentu strumena kodowego odpowadającemu beżącej warstwe), 7. nkrementuj lcznk teracj: l = l +, 8. jeśl Emax Emn > 0,00 l 32, to skocz do p. 9 (kolejna teracja algorytmu bsekcj), 4

45 9. przyporządkuj wszystke wolne przebeg o wartośc nachylena E n E do warstwy beżącej ( ), Y k 20. wygeneruj strumeń kodowy składający sę z przebegów przypsanych do beżącej warstwy dodaj go do strumena w buforze tymczasowym, 2. nkrementuj lcznk warstw: k = k +, 22. jeśl k K to skocz to p. 5 (kolejna warstwa), 23. zwolnj pamęć zajmowana przez bufor tymczasowy. tp k Warto przyjrzeć sę punktow 7 przedstawonego algorytmu. Wartość punktu odcęca jest uznawana za spełnającą krytera, jeśl różnca mędzy grancam E tpk zawężanego przedzału jest wystarczająco mała lub jeśl została osągnęta maksymalna lczba teracj. Wydaje sę, że mnmalna szerokość tego przedzału została określona dośwadczalne. Także lczba teracj ne wynka z przesłanek czysto teoretycznych. W rzeczywstośc oba warunk są podobne (to, który z nch ne zostane spełnony perwszy zależy od początkowej szerokośc przedzału). W praktyce proces wyznaczana punktu odcęca kończy sę prawe zawsze z powodu nespełnena warunku maksymalnej lczby teracj. Tak skonstruowane warunk kończące etap wyznaczana punktu odcęca ne dają węc gwarancj możlwe maksymalnego dopasowana długośc generowanego strumena do żądanego stopna kompresj, jednak osągana zgodność jest stosunkowo duża (konkretne wartośc lczbowe zostały przedstawone w rozdzale 5) Algorytm opracowany przez autora pracy Algorytm opracowany przez autora nnejszej pracy opera sę na wstępnym sortowanu wszystkch przebegów względem wartośc nachylena E n. Po przeprowadzenu sortowana, długośc kolejnych przebegów są dodawane do zmennej zawerającej długość strumena. Po osągnęcu żądanej długośc proces jest zakończony wszystke uwzględnone podczas sumowana przebeg tworzą zbór optymalny o punkce odcęca równym wartośc nachylena ostatnego, E tpk uwzględnonego podczas sumowana, przebegu. Poneważ proces sortowana, który w tej metodze zajmuje najwęcej czasu, jest przeprowadzany jeden raz, a strumeń kodowy ne mus być w ogóle tworzony, metoda ta jest znaczne szybsza od opsanej w poprzednm podrozdzale. Wadą tego algorytmu jest to, że długość wyznaczonego w ten sposób fragmentu strumena kodowego ne zawsze jest tak blska żądanej, jak w przypadku algorytmu orygnalnego. Wynka to oczywśce ze wspomnanego wcześnej problemu braku nformacj o długośc nagłówków poszczególnych warstw. Opracowany algorytm ma następującą postać: 42

46 . zresetuj przyporządkowane każdego z przebegów do warstw (krok ten polega na wpsanu do zmennej [lyrno], będącej członkem struktury przebegu jpc_enc_pass_t, wartośc, w kodze źródłowym ncjacja ta realzowana jest na etape tworzena przebegów), 2. wyznacz wartość nachylena E n [rdslope] każdego z przebegów, wartość nachylena jest stosunkem wkładu w pozom znekształceń D n oraz długośc L n (zmenna E n jest członkem struktury przebegu): E n = D L n n dla =,2 KI, n =,2KN, gdze I jest lczbą bloków kodowych, natomast N to lczba przebegów w -tym bloku, 3. jeśl E n < E n+, to ustaw: E n = E n+ + 0, 000, czynność powtarzaj dla n = N, N K w ramach -tego bloku kodowego, całość powtórz dla wszystkch bloków kodowych =,2 KI (wyjaśnene ponżej), 4. ustaw długość nagłówka paketu L n [header_x] (zmenna n jest członkem struktury przebegu, zawera długość nagłówka w bajtach): H T 0 jeśl przebeg ne jest perwszy w pakece L H n T =, 2 przebeg jest perwszy w pakece dla =,2 KI, n =,2 K N, 5. określ długość nagłówka warstwy L H [header_m] (jest to przewdywana długość Y nagłówka w bajtach pomnożona przez lczbę paketów w warstwe): L HT LH Y = I, 6. ustaw długość markerów LSOP [mrk_sop] oraz LEPH [mrk_eph] (zmenne te wskazują, czy w strumenu kodowym znajdą sę dodatkowe markery SOP EPH oznaczające odpowedno początek paketu, ang. start of pocket oraz konec nagłówka paketu, ang. end of packet header, markery te uodpornają strumeń kodowy na ewentualne błędy transmsj, zmenne LSOP LEPH zawerają długość markerów w bajtach): 0 jeśl marker SOP ne jest stosowany L SOP =, 6 marker SOP jest stosowany 43

47 oraz 0 jeśl marker EPH ne jest stosowany L EPH =, 2 marker EPH jest stosowany 7. zbuduj wektor A[] [pass_ar] którego elementam będą wskaźnk do wszystkch przebegów, 8. posortuj przebeg w wektorze malejąco względem parametru E n (zastosowano efektywne sortowane szybke, ang. quck sort), 9. ncjuj lcznk warstw k [lyrno]: k =, 0. poberz żądaną długość strumena L Dk [cumlen] składającego sę z warstw Y, Y 2 KY k,. wpsz do zmennej długośc strumena kodowego L [pos] długość nagłówka oraz markerów: H ( L L ) L = L + I +, Y 2. ncjuj lcznk przebegów j [j] (w stoce jest to ndeks wektora przebegów): SOP j = 0, 3. dodaj do zmennej długośc strumena długość beżącego przebegu (tzn. przebegu o ndekse j ) oraz długość nagłówka paketu: L A[ j] EPH = L + LA [ j] LHT A[ j], L + (jest oczywste, że tylko w przypadku przebegu, który jest perwszy w pakece L HT A[ j] 0, patrz p. 4 ), 4. jeśl L > (przekroczony budżet ), to skocz do p. 8, L Dk L D k 5. jeśl j -ty (aktualny) przebeg jest wolny (tzn. ne jest przyporządkowany do żadnej warstwy), to przyporządkuj go do warstwy beżącej, 6. nkrementuj lcznk przebegów: j = j +, 7. jeśl przebeg o j -tym ndekse stneje, to skocz do p. 3 (kolejny przebeg), 44

48 8. wszystke puste przebeg przyporządkowane do beżącej warstwy, które mają ndeks wększy od przebegu nepustego o najwększym ndekse przyporządkowanego do tej warstwy, oznacz jako wolne, 9. jeśl k K, to skocz to p. 0 (kolejna warstwa), 20. zwolnj pamęć zajmowaną przez wektor przebegów. Jak to wynka z przedstawonego pseudokodu, algorytm można podzelć na dwe zasadncze częśc: przygotowane wektora wszystkch przebegów tworzących obraz (punkty 8) oraz przyporządkowywane przebegów do poszczególnych warstw (punkty 9 9). Klka słów wyjaśnena wymaga 3 krok algorytmu. Krok ten okazał sę koneczny, ze względu na stnene przebegów pustych, których wartość nachylena E n 0. W kroku tym wartość E n wszystkch pustych przebegów jest sztuczne ustawana w ten sposób, aby dla wszystkch przebegów w danym bloku kodowym spełnony był warunek: E n > E n+. Dzęk temu zabegow, proces sortowana n= K N (krok 8) ne zmena kolejnośc przebegów w ramach poszczególnych bloków kodowych, w wynku czego podczas sumowana (krok 3) uwzględnane są przebeg w takej kolejnośc, w jakej zostaną dodane do strumena kodowego. Zachowane orygnalnej kolejnośc jest ważne, ze względu na wymog standardu. Poneważ przebeg puste ne nosą żadnej nformacj, ch wartość E n jest doberana w ten sposób, aby, w ramach możlwośc, były one dodawane do strumena tylko wtedy, kedy dodawany jest przebeg nepusty o mnejszej wartośc E n (zapobega to doklejanu pustych przebegów na ostatnch pozycjach w strumenach btowych). Wydaje sę, że zalety obu algorytmów można próbować połączyć: zgrubna wartość punktów odcęca mogłaby być szybko wyznaczana przez algorytm alternatywny, natomast wartość dokładna byłaby uzyskwana w klku teracjach algorytmu bsekcj, podobne, jak w metodze orygnalnej. Co węcej, precyzja otrzymywanego stopna kompresj byłaby łatwo modyfkowalna przez określene dopuszczalnej lczby teracj algorytmu bsekcj. Szczegółowe porównane obu algorytmów zostało zawarte w rozdzale 5. 45

49 Rozdzał 4 Program JPER 2000 Program JPER 2000 jest praktyczną częścą pracy. W nnejszym rozdzale zostaną podane założena, jake zostały postawone przed realzacją programu (podrozdzał 4.), jego konstrukcja, wykorzystane narzędza programstyczne bblotek (podrozdzały 4.2, 4.3) oraz sposób pracy z programem jego możlwośc (podrozdzał 4.4). Ostatn podrozdzał to krótke podsumowane. 4. Założena Głównym celem realzacj programu jest kompresja oraz dekompresja obrazów zgodnych ze standardem JPEG 2000, przy czym program pownen umożlwać łatwą modyfkację możlwe welu parametrów kompresj. Poneważ program ma obsługwać także obrazy medyczne, założono możlwość kompresj dekompresj obrazów o nestandardowej lczbe btów na próbkę oraz dowolnej lczbe komponentów, dodana opsu obrazu do plku (w języku XML). Ponadto pownna stneć możlwość określena znekształceń w obraze zrekonstruowanym. 4.2 Realzacja Program JPER 2000 jest aplkacją z grafcznym nterfejsem użytkownka (GUI, ang. graphc user nterface) typu MDI (ang. multple document nterface); umożlwa węc wygodną pracę z weloma obrazam równocześne. Aplkacja może pracować w systeme operacyjnym MS Wndows 98 lub nowszym. Program został napsany w języku programowana C przy wykorzystanu czystego nterfejsu API Wn32 skomplowany w środowsku Mcrosoft Vsual Studo C (który został wcześnej uaktualnony zestawem Servce Pack 6 oraz Platform SDK 2003) [4, 5, 6, 7]. Podczas realzacj programu korzystano także z wygodnego edytora UltraEdt (umożlwającego zaawansowaną edycję plków w trybe tekstowym oraz szesnastkowym) oraz nnych programów narzędzowych o mnejszym znaczenu (Pant Shop Pro 6.0, Mcroangelo 5.5 n., a także klku napsanych przez autora pracy). Program nstalacyjny został przygotowany w środowsku HM NIS Edt 2.0 (będącym nakładką na komplator NSIS 2.0 tworzący programy nstalacyjne). Podczas testów korzystano m.n. z programów Fle Splt oraz Sren (posłużyły one do podzału plku zawerającego zbór przekrojów tomografcznych na fragmenty zawerające jeden obraz), Quantum Image, XnVew, Osrs (przygotowane, przeglądane, analza obrazów). 4.3 Bblotek Operacje odczytu oraz zapsu obrazu w różnych formatach grafcznych są realzowane przy pomocy bblotek. Do kompresj oraz dekompresj obrazów w 46

50 standardze JPEG 2000 program wykorzystuje zmodyfkowaną bblotekę JasPer, natomast do odczytu obrazów JPEG zastosowano bblotekę IJG JPEG. Plk w pozostałych formatach są otwerane z wykorzystanem bblotek GFL. W kolejnych rozdzałach krótko scharakteryzowano wymenone bblotek JasPer Perwotne bbloteka JasPer ( została napsana przez Mchaela Davda Adamsa przy współudzale frmy Image Power oraz The Unwersty of Brtsh Columba. Obecne jest rozwjana przez szereg osób w The Department of Electrcal and Computer Engneerng na The Unversty of Vctora. Prace nad projektem nadal koordynuje Mchael Davd Adams. JasPer jest jedną z ofcjalnych mplementacj standardu JPEG 2000 został włączony do jego 5 częśc [8]. Bbloteka jest udostępnana w postac źródłowej w języku C może być komplowana na platforme Wndows, a także praktyczne każdej platforme wywodzącym sę z systemu Unx (także Lnux oraz Mac OS X). Te dwe cechy oraz bezpłatna lberalna lcencja pozwalająca na modyfkację bblotek spowodowały o wykorzystanu bblotek JasPer w realzacj programu. W programe JPER 2000 wykorzystano zmodyfkowaną bblotekę w wersj Oprócz pełnej obsług formatu JPEG 2000 (plk o rozszerzenu JPC, J2C, JP2, J2K), JasPer posłużyl do odczytu zapsu w formace Portable Image (Portable Graymap/Pxelmap/Anymap, plk mające rozszerzene PGM, PPM, PNM) oraz w formace Portable Gray X-map (plk PGX), który jest stosowany podczas prac nad standardem JPEG Po modyfkacj (która została dalej omówona), bbloteka JasPer potraf równeż otworzyć plk należące do rodzny Portable Image stosowane przez aplkację JLS Encoder (plk te mają rozszerzene PGM lub PPM). Korzystane z bblotek JasPer polega na wywoływanu jej poszczególnych funkcj. Wszystke użyteczne z pozomu aplkacj funkcje (tworzące programowy nterfejs bblotek) można podzelć na klka grup: Funkcje ncjująca kończąca pracę bblotek. Funkcja ncjująca (jas_nt()) jest odpowedzalna za początkowe ustawene zmennych globalnych (m.n. ncjowane tabel obsługwanych formatów obrazów). Funkcja kończąca prace bblotek (jas_mage_clearfmts()) ma za zadane zwolnć pamęć zaalokowaną w momence ncjacj bblotek. Funkcje odpowedzalne za operacje plkowe. Służą m.n. do otwerana, zamykana tworzena plków. Są odpowednkam funkcj standardowych języka C. Funkcje dekodująca oraz kodująca wraz z funkcjam pomocnczym. Zestaw najważnejszych funkcj. Perwsza z nch (jas_mage_decode()) dekoduje otwarty plk wypełna strukturę obrazu (jas_mage_t, struktura ta zawera nformacje o geometr obrazu oraz sam obraz w postac btmapy). Funkcja kodująca (jas_mage_encode()) zapsuje obraz zawarty w strukturze do otwartego plku. W ten sposób może być zdekodowany/zakodowany obraz w formace obsługwanym przez bblotekę (format obrazu jest określony przez jeden z parametrów wywołana obu funkcj). Każdy format jest obsługwany przez osobny zestaw funkcj, które wywołuje funkcja dekodująca lub kodująca. Pozostałe parametry funkcj to opcje dekodowana kodowana, w tym 47

51 parametry kompresj. Uzupełnenem do obu wymenonych są funkcje zarządzające strukturą obrazu (służą one do utworzena obrazu pustego, dodana lub skasowana komponentu, kopowana komponentów mędzy obrazam tp.). Funkcje operacj na komponentach. Ta grupa funkcj umożlwa dokonane operacj na komponentach (poberana ustawana wartośc próbk, zerowana wszystkch próbek, przesuwana btowego tp.), które są reprezentowane przez tablcę próbek. Tablca taka (struktura jas_matrx_t) mus być wcześnej utworzona (przy pomocy funkcj jas_matrx_create()) oraz wypełnona wartoścam wszystkch próbek (jas_mage_readcmpt()) zawartym w strukturze jas_mage_t. Dostęp do pojedynczej próbk realzują funkcje jas_matrx_get() oraz jas_matrx_set(). Taka budowa bblotek pozwala na w marę swobodne budowane programu a także łatwą modyfkację samej bblotek. Ponżej przedstawono wszystke zmany (wraz z krótkm opsem), które zostały wprowadzone do bblotek w celu rozszerzena jej możlwośc: Modyfkacja zestawu funkcj odczytującej plk obrazów w formace PNM. Funkcja odczytująca plk PNM (pnm_getdata()) została rozszerzona w celu umożlwena odczytu plków o dowolnej lośc btów na próbkę (tak format plku PNM jest wykorzystywany przez JLS Encoder kompresujący plk do standardu JPEG-LS). Dodane możlwośc odczytu plków obrazów w formace JPEG. Bbloteka JasPer została uzupełnona o zestaw funkcj obsługujących format JPEG. Do odczytu plków w standardze JPEG, zastosowano bblotekę IJG JPEG. Rozszerzene lsty obsługwanych transformat przestrzen kolorów. Dodano transformaty przestrzen kolorów na YIQ (neodwracalna), XYZ (neodwracalna), CMY (odwracalna) oraz Predctve (odwracalna). Modyfkacja ta wymagała zman w funkcjach kodujących dekodujących kafelk (jpc_dec_tleencode() jpc_dec_tledecode()) oraz dodana funkcj przeprowadzającej transformacje przestrzen kolorów (z na przestrzeń RGB, odpowedno koda_transform() oraz koda_transform_back()). Dodane pełnej obsług (zaps odczyt danych) pudełka dane XML. Wymagało to drobnej modyfkacj funkcj zapsującej dane do plku JP2 (jp2_encode()) oraz całkowtego przeprojektowana funkcj odczytującej plk formatu JP2 (jp2_decode()). Ponadto koneczne było oczywśce napsane funkcj zapsującej pudełko dane XML do strumena (tzn. wylczającej długość pudełka, wpsującej jego nagłówek oraz właścwe dane XML, wrte_xml_box()). Odczyt pudełka dane XML jest realzowany przez zmodyfkowaną funkcję odczytującą kolejne pudełka z plku (jp2_box_get()). Modyfkacja wymenonej funkcj polegała na dodanu funkcj alokującej nezbędną pamęć na dane XML oraz kodu przepsującego dane do 48

52 zaalokowanej pamęc. Koneczne okazało sę także uzupełnene tabel defncj typów pudełek o defncję pudełka dane XML. Dodane alternatywnego algorytmu optymalnej selekcj przebegów. Kluczowa modyfkacja bblotek JasPer polegająca na drobnej zmane w głównej funkcj kodującej (jpc_enc_encodemanbody()) oraz dodanu funkcj realzującej alternatywny algorytm (rateallocate_snd()). Węcej nformacj na temat algorytmu optymalnej selekcj w bblotece JasPer zawarto w podrozdzaele 3.4 oraz dodatku B. Podczas prac nad programem JPER 2000 został wykryty błąd w bblotece JasPer, który unemożlwał otwerane plków znajdujących sę na nośnku zabezpeczonym przez zapsem. Jak sę okazało, błąd powodowała funkcja tmpfle(), która tworzy plk tymczasowy. W komplatorach środowska Unx funkcja ta zawsze tworzy plk w katalogu dla plków tymczasowych, nezależne od śceżk katalogu beżącego. tmpfle() dostarczona w pakece MS Vsual Studo C++ próbuje założyć plk ne w katalogu tymczasowym, lecz beżącym. W przypadku, kedy katalog beżący jest na nośnku tylko do odczytu, próba uwożena plku kończy sę nepowodzenem. Powyższy problem został rozwązany poprzez tymczasową zmanę katalogu beżącego na katalog dla plków tymczasowych. Drugm odkrytym błędem w bblotece JasPer była nepotrzebna podwójna konwersja parametru określającego żądany stopeń kompresj (z wartośc rzeczywstej na całkowtą, a następne z powrotem z całkowtej na rzeczywstą). Z powodu konwersj próba utworzena obrazu z welu warstw często kończyła sę nepowodzenem (dzało sę tak, jeśl po konwersj wartość stopena kompresj sąsednch warstw stawała sę taka sama), usunęce obu konwersj rozwązało problem. Na zakończene opsu bblotek należy wspomneć o jej klku wadach. JasPer ne obsługuje regonów zanteresowana (choć są prowadzone prace zmerzające do uzupełnena bblotek o taką możlwość). Ze względu na konstrukcję, JasPer ne wspera także dekompresj progresywnej (bbloteka ne rozpoczne dekompresj jeśl ne otrzyma całego skompresowanego plku, ne udostępna także obrazu przed zdekodowanem wszystkch żądanych paketów lub warstw). Ostatną wadą bblotek jest jej stosunkowo wolne dzałane (w tej konkurencj bezapelacyjne najlepsze jest oprogramowane Kakadu) IJG JPEG IJG JPEG ( jest darmową bbloteką obsługującą format JPEG napsaną w języku C przez Thomasa G. Lane. Ostatna wersja bblotek ma numer 6b ta została wykorzystana w programe JPER Wersja ta została opublkowana 27 marca 998 roku, a zatem wydaje sę, że bbloteka ne będze dalej rozwjana. Implementacja IJG wspera kodowane standardowe (JPEG baselne, tryb najpowszechnej stosowany), sekwencyjne (JPEG sequental) oraz progresywne (JPEG progressve). Ne jest natomast wsperane kodowane bezstratne (lossless JPEG). Bbloteka może kodować/dekodować obrazy o, 3 lub 4 komponentach oraz 8 lub 2 btach na próbkę. Wybór lczby btów na próbkę obrazu może być jednak dokonywany jedyne na etape komplacj bblotek, co neco zawęża obszar jej zastosowana (w programe JPER 2000 zdecydowano sę na komplację w wersj 8 btów). 49

53 W programe JPER 2000 bblotekę IJG JPEG zastosowano do odczytu oraz zapsu obrazów w formace JPEG (plk JFIF, JIF, JPE, JPEG, JPG). Obsługa ta jest realzowana za pośrednctwem bblotek JasPer GFL Bbloteka GFL ( to unwersalne narzędze do odczytu plków grafcznych. Bbloteka ta została napsana przez Perre Gougelet jest dostępna za darmo w postac skomplowanej na wele platform systemowych (MS Wndows, Unx, Mac OS X, BeOS nne). W programe JPER 2000 wykorzystano wersję 2.0. GFL występuje w dwóch wersjach: lght oraz standard. Perwsza umożlwa odczyt najpopularnejszych formatów grafcznych (w tym BMP, PNM, JPEG, GIF, TIFF, PNG). Druga wersja otwera ponad 00 różnych formatów. Nestety, w przypadku znacznej częśc formatów grafcznych, plk jest prawdłowo otwerany tylko wtedy, kedy został zapsany ze standardowym parametram kompresj (dotyczyło to m.n. formatów PNG, TIFF, Dcom, JPEG 2000). Z tego powodu w programe JPER 2000 ogranczono lczbę formatów obsługwanych przez bblotekę GFL, które mogą być otwarte. Bblotekę zastosowano do odczytu obrazów w formatach: Adobe Photoshop Image (plk PSD), Graphc Interchange Format (GIF), Dcom (ACR, DCM), Pant Shop Pro Image (PSD), Portable Network Graphcs (PNG), Sun Raster Fle (RAS, RAST, RS, SCR, SR SUN), Tagged Image Fle Format (TIF, TIFF, TIM), Truevson Targa (TGA, TARGA), Wndows OS/2 Btmap (BMP, DIB, RLE), Wndows Clpboard (CLP), Wndows Enhance Metafle (EMF). 4.4 Praca z programem Praca z programem JPER 2000 ne różn sę znacząco od pracy z nnym programam typu MDI. W nnejszym podrozdzale zostane krótko przedstawony nterfejs oraz sposób pracy z programem. Tak jak w wększośc współczesnych aplkacj MDI, nterfejs został wyposażony w pasek narzędz (ang. toolbar) oraz pasek stanu (ang. statusbar). Pasek stanu zawera dwa pola, z których perwsze nformuje o type aktualne aktywnego obrazu, natomast druge zawera pełną śceżkę do otwartego plku zawerającego dany obraz. Poszczególne polecena paska narzędz zostaną omówone w dalszej częśc, przy okazj omawana możlwośc programu. Cechą szczególną aplkacj jest fakt, że traktuje ona obrazy w różny sposób w zależnośc od ch formatu: plk w standardze JPEG 2000 są otwerane jako obrazy zrekonstruowane (okno z takm obrazem ma konę z lterą R ), natomast wszystke pozostałe obrazy jako orygnalne (kona z lterą O ), patrz rysunek 4.. Rozróżnene 50

54 wynka z tego, że obrazy orygnalne mogą być tylko kompresowane, natomast zrekonstruowane tylko dekompresowane. Od momentu uruchomena programu, użytkownk ma stały dostęp do parametrów kodera oraz dekodera (nezależne od otwartych oken obrazów). Parametry te są dostępne odpowedno w okenkach Encoder Propertes oraz Decoder Propertes. Poneważ są to okna typu modeless ne muszą być zamykane, aby użytkownk mał dostęp do poleceń aplkacj. Wydaje sę, że taka flozofa ułatwa pracę, jest oczywsta ntucyjna, jako że koder oraz dekoder są w aplkacj cały czas obecne, nezależne od tego, czy jest otwarte okno z obrazem, czy też ne. Na rysunku 4.2 przedstawono okenko kodera, natomast na rysunku 4.3 dekodera. Właścwośc obrazów są podawane w okenku Image Propertes. To okenko także jest typu modeless zawsze są w nm właścwośc obrazu będącego w aktywnym okne, zmana aktywnego okna wymusza zmanę podawanych w okne Image Propertes wartośc. Okno właścwośc obrazu zostało pokazane na rysunku 4.4. Rys. 4. Aplkacja z dwoma otwartym obrazam. Zaznaczono konę obrazu orygnalnego (a) oraz zrekonstruowanego (b). 5

55 Rys. 4.2 Okenko parametrów kompresj. Rys. 4.3 Okenko parametrów dekompresj. 52

56 Rys. 4.4 Okenko właścwośc obrazu. Ponżej przedstawono lstę właścwośc oraz możlwośc programu: Otwerane obrazu. Obraz otwera sę przy pomocy polecena menu Fle Open... lub przycsku na pasku narzędz. Obsługwane formaty obrazów zostały podane przy okazj omawana zastosowanych bblotek (podrozdzal 4.3). Aplkacja oferuje także możlwość jednoczesnego wczytana dowolnej lczby obrazów (np. ser obrazów tomografcznych) komplacj ch do jednego obrazu składającego sę z welu komponentów przy pomocy polecena Fle Open Group.... Program jest przystosowany do odczytu wyśwetlana obrazów o maksymalnej lczbe komponentów btów na próbkę przewdzanej przez standard JPEG Ponadto, obraz może być wczytany poprzez podane go jako argumentu programu; dzęk temu obsługwane przez aplkację formaty mogą być z ną skojarzone. Prezentowane obrazu. Istneje możlwość wyboru wyśwetlanego komponentu (własność szczególne przydatna w przypadku obrazów o nestandardowej lczbe komponentów). Można wyśwetlać dowolny pojedynczy komponent obrazu lub jego trzy perwsze składowe (polecena Vew st Component/Colour/Component Next /Component Prev ). Numer wybranego komponentu jest podawany na pasku tytułowym okna obrazu (perwsza lczba w nawase kwadratowym), prezentacja trzech perwszych składowych (obraz kolorowy) jest sygnalzowana lczbą. Obraz można także w szerokm zakrese skalować: powększać lub pomnejszać 53

57 (polecena Vew Zoom In/Zoom Out z menu lub rolka myszk). Do szybkego przywrócena skal : służy polecene Vew No Zoom. Aktualna skala jest podawana w procentach na pasku tytułowym (druga lczba w nawase kwadratowym). Jeśl okno jest wększe, nż obraz (np. z powodu zmnejszena skal wyśwetlana obrazu), może być ono automatyczne zmnejszone przy pomocy polecena Vew Ft Wndow. Jeśl z powodu dużej skal obraz ne meśc sę w okne dostępne jest polecene Vew Center Image, dzęk któremu można wycentrować położene obrazu względem okna. Obraz można też oczywśce przesuwać korzystając z pasów przewjana lub przecągając obraz przy pomocy myszk (przy wcśnętym jej lewym klawszu). Uzupełnenem wyżej opsanych poleceń są standardowe komendy obsług oken ( Wndow Cascade/Tle Horzontally/Tle Vercally/Arrange Icons/Close All ). Ponadto, menu Wndow zawera lstę aktualne otwartych obrazów. Wybór parametrów kompresj. Parametry kodera są dostępne po otwarcu okenka Encoder Propertes (polecene Codec Encoder propertes lub przycsk, rysunek 4.2). Dostępne parametry: rodzaj transformaty kolorów (brak, YCC R, YCC I, YIQ I, XYZ I, CMY R lub Predctve); zakładka Decorelaton transforms, ramka: Intercomponent (colour) transform ; rodzaj transformaty falkowej (5/3 lub 9/7) oraz lczba pozomów dekompozycj (...4); Decorelaton transforms Intracomponent (wavelet) transform ; lczba btów bezpeczeństwa (0...7); Quantzaton & compresson Quantzaton ; stopeń kompresj (...999) oraz algorytm optymalnej selekcj (orygnalny lub szybk); Quantzaton & compresson Set compresson ; położene obrazu na satce odnesena (określana nezależne dla obu współrzędnych); Data orderng Image orgn on reference grd ; podzał obrazu na kafelk (określany nezależne dla obu współrzędnych); Data orderng Tle parttonng on reference grd ; podzał podpasma na dzelnce (określany nezależne dla obu współrzędnych); Data orderng 2 Precncts ; podzał podpasma na blok kodowe (określany nezależne dla obu współrzędnych); Data orderng 2 Code-blocks ; lczba dodatkowych warstw oraz trend przyrostu nformacj w obraze (logarytmczny perwsze warstwy nosą węcej nformacj nż końcowe, lnowy każda warstwa nese podobną lość nformacj lub 54

58 ekspotencjalny najwęcej nformacj przynoszą końcowe warstwy); Data orderng 3 Extra Layers ; kolejność przyrostu nformacj w obraze (wg jakośc rekonstrukcj, rozdzelczośc (dwe wersje), obszaru lub komponentu); Data orderng 3 Choose progresson order ; styl kodowana; szereg opcj określających sposób kodowana arytmetycznego oraz tworzena strumena kodowego, dostępne są m.n. opcje pozwalające na uodpornene strumena na błędy transmsj; Codng style & Fle format Codng style ; format plku (czysty strumeń kodowy lub JP2); Codng style & Fle format Fle format. Ops kompresowanego obrazu. Istneje możlwość dodana do plku nformacj o kompresowanym obraze (w języku XML). Można skorzystać albo z wewnętrznego formularza (dostępnego w okenku Encoder Propertes ( Codec Encoder propertes lub ) na zakładce Metadata w ramce Use nternal form ) lub wykorzystać dowolny plk w formace XML (ramka Import data ). Wewnętrzny formularz ma szereg pól, w które można wprowadzć nformacje admnstracyjne (dotyczące pacjenta, badana, nstytucj, osoby bezpośredno przeprowadzającej badane lekarza stawającego rozpoznane) oraz temat badana, modalność dagnozę (rysunek 4.5). Informację można dodać tylko w przypadku kompresj do plku w formace JP2. Kompresja zaps obrazu do plku. Obraz można skompresować do standardu JPEG 2000 korzystając z polecena Fle Encode & Save... lub przycsku z paska narzędzowego. Parametry kompresj są oczywśce określone w okenku Encoder Propertes. Bezpośredno przed kompresją program pros o podane plku docelowego. Po zakończonej kompresj pojawa sę okno z obrazem zrekonstruowanym natomast w okenku Encoder Propertes ( Codec Encoder Propertes lub ) na zakładce Encodng statstcs w ramce Tmng są podane czasy kompresj oraz dekompresj (poneważ program pracuje w środowsku welozadanowym, a także ze względu na nterwał podawana czasu przez zegar systemowy wynoszący ponad 50 mlsekund, dokładność podawanych czasów należy traktować raczej orentacyjne), natomast w ramce Reconstructon dstorton pojawa sę szereg wartośc błędów rekonstrukcj dla poszczególnych komponentów. Wylczane są następujące mary: boolean equalty (nformacja o btowej dentycznośc obrazów), MAE, MSE, RMSE, PAE oraz PSNR. Mara PSNR jest podawana w decybelach (rysunek 4.6). 55

59 Rys. 4.5 Okenko parametrów kompresj, zakładka Metadata. Rys. 4.6 Okenko parametrów kompresj, zakładka Encodng statstcs. 56

60 Wybór parametrów dekompresj. Parametry dekodera są dostępne po otwarcu okenka Decoder propertes (polecene Codec Decoder propertes lub przycsk, rysunek 4.3). Parametry dekompresj sprowadzają sę do wybory żądanej jakośc, w jakej zostane zdekodowany obraz. Są trzy możlwośc: pełna jakość dekompresj; zakładka Qualty, opcja Full qualty ; jakość ogranczona lczbą zdekodowanych warstw ( ); Qualty Qualty by layers ; jakość ogranczona lczbą zdekodowanych paketów ( ); Qualty Qualty by packets. Dekompresja. Dekompresja obrazu formatu JPEG 2000 odbywa sę po wybranu polecena Processng Decode & Save... lub klknęcu na przycsk. Parametry dekompresj są określone we wcześnej omówonym okenku Decoder Propertes. Bezpośredno przed dekompresją program pros o wyznaczene plku docelowego jego formatu. Obraz może być zapsany w jednym z następujących formatów: Wndows Btmap (plk BMP), Portable Anymap (plk PNM), Portable Graymap (plk PGX), JPEG (plk JPG). Jednak ne zawsze dany obraz będze mógł być zapsany w każdym z wyżej przedstawonych formatów (ne zawsze wszystke wymenone formaty będą w okenku dalogowym dostępne), poneważ każdy z nch ma ogranczena dotyczące lczby komponentów oraz btów na próbkę. Po wybranu formatu zatwerdzenu wyboru, pojaw sę okno, w którym można określć tryb zapsu obrazu (zaps wszystkch komponentów do jednego plku lub do oddzelnych plków), patrz rysunek 4.7. Oczywśce, okenko to ne pojaw sę w przypadku zapsu obrazu do formatu PGX (ze względu na ogranczena formatu PGX, komponenty są w tym przypadku zawsze zapsywane do oddzelnych plków). Jeśl obraz jest zapsywany do formatu JPEG, to pojaw sę kolejne okno, które będze zawerało opcje kodera JPEG (umożlw ono ustawene kodowana progresywnego oraz stopna kompresj), rysunek 4.8. Rys. 4.7 Okno trybu zapsu obrazu. 57

61 Rys. 4.8 Okno parametrów kodera JPEG. Informacje o obraze. O każdym otwartym obraze można uzyskać podstawowe nformacje na temat jego geometr oraz struktury strumena kodowego (okenko Image propertes ( Image Image propertes lub ), zakładk Image oraz Codestream ). Jeśl dany plk jest w formace JP2 zawera dane XML mogą być one zapsane do plku w formace XML (zakładka Metadata, przycsk Save ). Jeśl dane te zostały wprowadzone przy użycu formularza dostępnego w okenku Encoder propertes, zostaną one przedstawone rysunek 4.9. Jeśl plk ne jest chronony przed zapsem, dane mogą być modyfkowane (należy jedyne pamętać, aby po modyfkacj nformacj klknąć na przycsk Update ). Rys. 4.9 Okenko właścwośc obrazu, zakładka Metadata. 58

62 Hstogram. Polecene Image Hstogram umożlwa obejrzene hstogramu obrazu prezentowanego w aktywnym okenku, rysunek 4.0. Hstogram może być przedstawony w skal lnowej lub logarytmcznej. W okne podawana jest także wartość średna oraz odchylene standardowe. Porównywane obrazów. Polecene Image Image Comparng służy do porównywana obrazów, rysunek 4.. Porównywany jest obraz, którego okno było aktywne w momence wybrana polecena Image Comparng z dowolnym nnym otwartym obrazem o takej samej welkośc oraz lczbe btów na próbkę (obrazy o różnych welkoścach lub różnej lośc btów na próbkę ne mogą być porównywane). Funkcja transferu. Funkcja transferu służy do korekcj jasnośc oraz kontrastu w pełnym zakrese wartośc (umożlwa węc ona tzw. okenkowane rozcągnęce pewnego przedzału zboru wartośc próbek obrazu na pełną skalę wartośc prezentowanych na ekrane). Rys. 4.0 Okno hstogramu. 59

63 Rys. 4.0 Okno porównywana obrazów. Rys. 4.0 Okno funkcj transferu. 60

64 4.5 Uwag końcowe Dzęk temu, że wszystke funkcje aplkacj są dostępne w pracy z obrazam o praktyczne dowolnej geometr oraz lczne btów na pksel, wykorzystane programu JPER 2000 jest w welu przypadkach jedynym możlwym rozwązanem. Na zakończene klka słów o obrazach składających sę z welu komponentów. Norma rozróżna plk zawerający obraz o welu komponentach (JP2, opsany w częśc standardu) oraz plk zawerający serę obrazów (JPM, przedstawony w 3 częśc). Program JPER 2000 umożlwa tworzene jedyne plków typu JP2, a węc kompresja obrazu zawerającego serę obrazów tomografcznych ne do końca jest zgodna z flozofą normy. Ne znaczy to oczywśce, że tworzony plk jest nezgodny z normą, a jedyne wskazuje na fakt wykorzystana standardu ne do końca zgodne z przeznaczenem. Program w wersj źródłowej, skomplowanej oraz nstalacyjnej znajduje sę na płyce CD-R dołączonej do pracy. Na płyce umeszczono też bblotek JasPer (w wersj źródłowej bnarnej), IJG JPEG (wersja źródłowa) oraz GFL (skomplowana bbloteka DLL). 6

65 Rozdzał 5 Testy W nnejszym rozdzale znajdują sę wynk testów porównawczych dwóch wcześnej opsanych dwóch algorytmów optymalnej selekcj zastosowanych w bblotece JasPer. Oprócz pomaru czasu (będącego kluczowym parametrem z punktu wdzena celu opracowana nowego algorytmu), śledzono także uzyskwany stopeń kompresj oraz badano wnoszone do obrazu znekształcena. Opsane w tym rozdzale badana zostały wykonane przy użycu opsanej w poprzednm rozdzale aplkacj JPER Wszystke testy przeprowadzono z wyłączona transformacją kolorów oraz stratnym jądrem transformaty falkowej. Wartość stopna kompresj została ustawona na 5 (wyjątek stanow test stopna kompresj, którego wynk przedstawono na wykrese 5.7). Take parametry kompresj uwypuklają wpływ badanych algorytmów optymalnej selekcj na wynk pomarów. Pozostałe opcje kompresj są domyślne ne były zmenane lub są parametram testów dotyczy to w szczególnośc lczby warstw. Należy pamętać, że całkowta lczba warstw to lczba warstw dodatkowych powększona o jedną warstwę główną. W badanach wykorzystano obrazy kolorowe o różnej welkośc: lena, droga oraz samoloty. Obrazy te zostały opsane w dodatku D oraz zameszczone na płyce CD-R dołączonej do pracy. Pomary przeprowadzono na komputerze z procesorem Athlon 900 MHz 256 MB pamęc RAM oraz systemem MS Wndows XP Professonal. Ze względu na fakt, że system MS Wndows jest systemem welozadanowym, a także z powodu małej rozdzelczośc podawanego czasu (neco przekraczającej 50 ms), pomar czasu kompresj w każdym przypadku był przeprowadzany klkakrotne, a następne wynk pomaru były uśrednane. Perwszy podrozdzał, to kluczowe, dla określena przydatnośc alternatywnego algorytmu optymalnej selekcj, badane czasu kompresj. W kolejnych dwóch podrozdzałach określono jakość algorytmu poprzez badane uzyskwanych stopn kompresj oraz pozomów znekształceń. Ostatn podrozdzał, to krótke podsumowane testów. 62

66 5. Pomar czasu kompresj Na wykresach 5., 5.2 oraz 5.3 kolejno przedstawono wynk pomaru czasu kompresj trzech obrazów w zależnośc od lczby warstw parametru tego badana. 0,6 0,5 czas kompresj [s] 0,4 0,3 0,2 0, alg. orygnalny alg. alternatywny lczba warstw Wykres 5. Czas kompresj obrazu lena w funkcj lczby warstw. 7 6 czas kompresj [s] alg. orygnalny alg. alternatywny lczba warstw Wykres 5.2 Czas kompresj obrazu droga w funkcj lczby warstw. 63

67 czas kompresj [s] lczba warstw alg. orygnalny alg. alternatywny Wykres 5.3 Czas kompresj obrazu samoloty w funkcj lczby warstw. Okazuje sę, że alternatywny algorytm optymalnej selekcj bardzo dobrze wypada na tle algorytmu orygnalnego. Z analzy wykresów wynka, że w przypadku wykorzystana algorytmu orygnalnego, czas kompresj rośne w przyblżenu lnowo razem ze wzrostem lczby warstw, w przypadku obrazów o średnej rozdzelczośc (tzn. mających rozdzelczość ok. klkaset klkaset próbek), czas kompresj podwaja sę dla każdych kolejnych 28 warstw. Czas kompresj realzowanej przez koder korzystający z algorytmu alternatywnego jest natomast w przyblżenu stały nezależny od lczby warstw, co oznacza, że alternatywny algorytm optymalnej selekcj jest nezwykle efektywny! Dla obrazów o średnej welkośc przecętnej lczbe warstw (30) oszczędność czasu przekracza 50 %, w przypadku obrazów o welkośc mnejszej lub wększej od średnej, czas kompresj jest krótszy o ok. 30 %. Cekawostką jest fakt, że w przypadku wykorzystana algorytmu orygnalnego, lczba warstw najslnej wpływa na czas kompresj dla obrazów o średnej welkośc. Zjawsko to łatwo wytłumaczyć, jeśl sę zauważy, że całkowty czas kompresj jest podzelony na trzy główne procesy (transformacj falkowej, kodowana arytmetycznego oraz optymalnej selekcj), a pozostałe etapy zaberają znkomą część czasu. W przypadku obrazów newelkch (tzn. obrazów o rozdzelczośc ne wększej, nż ok próbek), na czas kompresj najwększy wpływ ma kodowane arytmetyczne, jednak m obraz wększy, tym coraz wększą część czasu kompresj pochłana transformacja falkowa (daje sę to zauważyć dla obrazów o rozdzelczośc wększej, nż ). Dla obrazów o średnej rozdzelczośc najwększe znaczene ma czas wykorzystany na optymalną selekcję. 64

68 5.2 Badane stopna kompresj Wynk pomaru stopna kompresj przedstawono na wykresach 5.4, 5.5, 5.6. Parametrem tego testu jest lczba warstw. stopeń kompresj 6 5,8 5,6 5,4 5,2 5 4,8 4,6 4,4 4, lczba w arstw alg. orygnalny alg. alternatywny Wykres 5.4 Zależność uzyskwanego stopna kompresj od lczby warstw. Obraz lena. stopeń kompresj 6 5,8 5,6 5,4 5,2 5 4,8 4,6 4,4 4, lczba w arstw alg. orygnalny alg. alternatywny Wykres 5.5 Zależność uzyskwanego stopna kompresj od lczby warstw. Obraz droga. 65

69 stopeń kompresj 6 5,8 5,6 5,4 5,2 5 4,8 4,6 4,4 4, lczba w arstw alg. orygnalny alg. alternatywny Wykres 5.6 Zależność uzyskwanego stopna kompresj od lczby warstw. Obraz samoloty. Z danych przedstawonych na wykresach 5.4 do 5.6 wynka, że algorytm alternatywny dość dobrze radz sobe z wymogem żądanego stopna kompresj. Okazuje sę, że różnca mędzy wartoścą żądaną, a uzyskwana jest najmnejsza przy małej lczbe warstw, ale nawet przy 50 warstwach ne przekracza klku procent. Najwększe odchylena uzyskanego stopna kompresj od żądanego występują w przypadku małych obrazów (ze względu na stosunkowo małą lczbę przebegów kodowych). W żadnym z przeprowadzonych testów odchyłka stopna kompresj ne była jednak wększa, nż 5% (co jednocześne oznacza, że rzeczywsta welkość plku równeż ne będze sę różnła o węcej, nż o ok. 5% od wartośc oczekwanej). Powyżej przedstawono rezultaty badana uzyskwanego stopna kompresj przy pewnej ustalonej wartośc żądanego stopna kompresj (równej 5). Dokładność uzyskwanego stopna kompresj dla wybranego obrazu testowego została też zbadana w szerszym zakrese, a wynk zostały przedstawone na wykrese 5.7. Podczas tego testu zastosowano 30 warstw, a jego parametrem jest żądany stopeń kompresj. 66

70 uzyskany stopeń kompresj żądany stopeń kompresj alg. orygnalny alg. alternatywny Wykres 5.7 Uzyskwany stopeń kompresj w funkcj żądanego stopna kompresj. Obraz droga. Z wykresu 5.7 wynka, że w uzyskwany stopeń kompresj jest nezwykle blsk żądanemu. Wyraźny błąd pojawa sę dla stopn kompresj wększych od 00. Wynka to z tego, że duży stopeń kompresj oznacza mały plk wynkowy, co prowadz do uwypuklena błędów szacowana długośc w alternatywnym algorytme optymalnej selekcj. W przypadku algorytmu orygnalnego błąd jest mnmalny (ponżej %) ne zależy od stopna kompresj. 5.3 Badane pozomu znekształceń Ważnym uzupełnenem testów stopna kompresj jest określene pozomu znekształceń w wygenerowanych obrazach. Wynk badana przedstawono na wykresach 5.8, 5.9 oraz 5.0. Parametrem w tym badanu jest lczba warstw, jednak ze względu na ścsły zwązek pozomu znekształceń ze stopnam kompresj na wykrese powązano te właśne wartośc, a każdy pomar uzupełnono nformacją o lczbe warstw zastosowanych w danym przypadku. Marą znekształceń jest MSE, patrz wzór (2.5). 67

71 znekształcena ,8 5 5,2 5,4 5,6 5,8 stopeń kompresj alg. orygnalny alg. alternatywny Wykres 5.8 Znekształcena w funkcj stopna kompresj. Obraz lena ,5 znekształcena 98 97,5 97 alg. orygnalny alg. alternatywny 96,5 96 4,8 4,85 4,9 4,95 5 5,05 5, stopeń kompresj Wykres 5.8 Znekształcena w funkcj stopna kompresj. Obraz droga. 68

72 znekształcena 9,4 9,38 9,36 9,34 9,32 9,3 9,28 9,26 9,24 9,22 9,2 4,7 4,75 4,8 4,85 4,9 4,95 5 5,05 stopeń kompresj alg. orygnalny alg. alternatywny Wykres 5.8 Znekształcena w funkcj stopna kompresj. Obraz samoloty. Z przedstawonych wykresów wynka, że razem ze wzrostem lczy warstw, pozom znekształceń mnmalne rośne. Wzrost ten jest jednak na tyle mały, że różnce są trudno zauważalne dla człoweka, patrz rysunek 5.. (a) (b) Rys. 5. Porównane stopna znekształceń w obrazach skompresowanych z różną lczbą warstw. Obraz (a) został skompresowany z jedną warstwa ( ma pozom znekształceń MSE = 44,4), obraz (b) skompresowano z 50 warstwam (MSE = 52,87). W obu przypadkach żądany stopeń kompresj był równy 5, zastosowano algorytm alternatywny. 69

73 Ważnym spostrzeżenem jest też fakt, że w przypadku algorytmu orygnalnego, wększa lczba warstw skutkuje wzrostem znekształceń przy newelkch fluktuacjach pozomu znekształceń (co jest zjawskem pożądanym). Wynka to oczywśce z tego, że przy stałej welkośc plku, węcej warstw to węcej nformacj strukturalnych (nagłówk warstw) mnej mejsca na dane bezpośredno zwązane z treścą obrazu. W przypadku algorytmu alternatywnego, neprecyzyjne szacowane długośc strumena kodowego powoduje ne tylko zmanę znekształceń, ale także stopna kompresj (co jest nepożądane, jednak ze względu na newelke zmany ne ma praktycznego znaczena). 5.4 Wnosk Z przeprowadzonych testów wynka, że nowy algorytm optymalnej selekcj może w wększośc przypadków zastąpć algorytm orygnalny. Do ok. 40 warstw stopna kompresj ne wększego nż 90, a węc dla typowych parametrów kodowana, różnce w obrazach uzyskanych obema metodam są w nezauważalne, natomast czas kompresj koderem wykorzystującym algorytm alternatywny jest krótszy nawet o 50 % w przypadku obrazów o średnej welkośc, które stanową zdecydowaną wększość obrazów naturalnych (będących najczęścej fotografam, ale także obrazam np. medycznym) przesyłanych w sec Internet. Stosowane wększej lczby warstw nż klkadzesąt często jest celowe, poneważ przy dużej ch lczbe, może dojść do takej sytuacj, że wele warstw ne będze zawerała żadnego przebegu lub będze zawerało ch bardzo newele. Taka warstwa ne będze węc wnosła żadnej nformacj do obrazu lub nformacja ta będze pomjalne mała. Sensowna lczba warstw zależy od obrazu, m jest on wększy, tym warstw może być węcej, dla obrazu o średnej welkośc ne warto stosować węcej, nż warstw. Ilustracją pokazującą przewagę nowego algorytmu nad orygnalnym może być kompresja zboru obrazów, np. fotograf z wyceczk, w celu umeszczena ch w galer nternetowej. Przykładowy zestaw 38 obrazów o rozdzelczośc (obrazy znajdują sę na dołączonej płyce CD-R w katalogu obrazy\galera ) został skompresowany przy użycu 40 warstw ze stopnem kompresj równym 20, zapewnającym newelk, praktyczne nedostrzegalny pozom znekształceń. Kompresja wszystkch obrazów z wykorzystanem algorytmu alternatywnego trwała 4 mnut 44 sekundy. Kompresja przy użycu metody alternatywnej, trwała natomast zaledwe necałe 8 mnut, co doskonale ukazuje celowość stosowana nowego algorytmu. 70

74 Rozdzał 6 Podsumowane W pracy zaprezentowano nowy standard kompresj obrazów JPEG 2000 ze szczególnym uwzględnenem algorytmu kontrol stopna kompresj głównego tematu pracy. Wprowadzenem do zagadnena jest rozdzał 2, w którym przyblżone zostały ogólne elementy teor kompresj, a także praktyczne metody obróbk danych zastosowane w standardze JPEG Kolejny etap pracy (przedstawony w rozdzale 3), to szczegółowy ops metody kontrol stopna kompresj zastosowanej w standardze JPEG Zagadnene zostało przedstawone od strony teoretycznej oraz praktycznej. Część teoretyczna, to prezentacja teor znekształceń źródeł nformacj, a także ops de kontrol stopna kompresj w standardze JPEG W częśc praktycznej szczegółowo zaprezentowano dwe metody kontrol stopna kompresj zastosowane w standardze algorytmy optymalnej selekcj. Perwszy z algorytmów, to metoda wzorcowa, zastosowana w ofcjalnej mplementacj kodera standardu JPEG Algorytm ten, mmo, że generuje rozwązane o stosunkowo dużej jakośc (choć ne zawsze optymalne), okazał sę bardzo wolny: w przypadku stosowana klkudzesęcu warstw, wyznaczene optymalnego zboru przebegów mogło pochłonąć nawet ponad połowę całkowtego czasu kompresj. Poneważ schemat kompresj zastosowany w omawanym standardze (oparty na transformacj falkowej oraz kodowanu arytmetycznym) także jest stosunkowo wolny (np. w porównanu ze standardem JPEG), celowe okazało sę opracowane nowego, możlwe szybkego algorytmu optymalnej selekcj, co stało sę głównym celem pracy. Nowy algorytm zamplementowany został w aplkacj JPER 2000 (patrz rozdzał 4), która powstała w ramach praktycznej częśc pracy. Aplkacja służy do kompresj oraz dekompresj obrazów w standardze JPEG 2000 posłużyła do przeprowadzena testów porównawczych obu algorytmów optymalnej selekcj będących ostatnm etapem pracy. Z przeprowadzonych badań (rozdzał 5) wynka, że algorytm alternatywny okazał sę znaczne szybszy od orygnalnego, a ponadto, czas kompresj w mnmalnym stopnu zależy od lczby warstw (w przypadku algorytmu orygnalnego, czas bardzo wyraźne rośne ze wzrostem lczby warstw). W typowych warunkach pracy kodera, jakość generowanych przez nowy algorytm rozwązań, jest, ze względu na zanżany pozom kompresj, neco gorsza od jakośc rozwązań uzyskanych przez algorytmem orygnalny. Różnca jest jednak na tyle mała, że może meć to praktyczne znaczene jedyne w wyjątkowych przypadkach sztywnego, neprzekraczalnego lmtu welkośc danych przy jednoczesnym wymogu skrajnej mnmalzacj pozomu znekształceń. Wydaje sę, że stosowane nowego algorytmu optymalnej selekcj jest uzasadnone w zdecydowanej wększośc przypadków. 7

75 Dodatek A Standard JPEG 2000 W połowe lat osemdzesątych grupa specjalstów z ITU oraz ISO (znana jako Jont Photographc Experts Group) została powołana do opracowana standardu kompresj obrazów. Owocem tych prac jest format kompresj JPEG, który w 992 roku został ofcjalnym standardem mędzynarodowym. W wynku ekspansj technk komputerowych w kolejne dzedzny nauk okazało sę, że standard JPEG ma klka poważnych ogranczeń (m.n. brak bezstratnego trybu kompresj, mała elastyczność dekompresj, występowane slnych artefaktów przy wysokch stopnach kompresj), które unemożlwają jego szersze zastosowane (m.n. w medycyne, gdze kompresja stratna jest nedopuszczalna). To sprawło, że w marcu 997 rozpoczęto prace nad nowym metodam kompresj. W wynku tych prac powstał standard JPEG Standard JPEG 2000 dzel sę na następujące częśc: część, algorytm kompresj, część 2, rozszerzena (m.n. dodatkowe transformacje, profle kolorów tp.), część 3, algorytm kompresj sekwencj obrazów (Moton JPEG 2000), część 4, test kompatyblnośc, część 5, oprogramowane referencyjne (m.n. bblotek JasPer, JJ2000), część 6, format plku dla danych złożonych, część 8, bezpeczeństwo danych, część 9, secowe protokoły dostępu do danych, część 0, wolumeny (obrazy 3D), część, dostęp zdalny. Prace nad częścą 7 zostały wstrzymane. Nnejsza praca opera sę na częścach (kompresja) oraz 5 (oprogramowane). Wykorzystano także pewne elementy częśc 2. Cechą charakterystyczną standardu JPEG 2000 jest to, że umożlwa on kompresję obrazów o dowolnej geometr; tzn. składających sę z komponentów o różnych wymarach różnej lośc btów na próbkę. Lczba komponentów jest ogranczona do 24 (6384); natomast ch maksymalna szerokość wysokość to 232- próbk (przekracza 4 mlardy próbek). Lczba btów na próbkę jest ogranczona do 38 btów (ponad 4 bajty). Drugą wyjątkową cechą standardu jest progresywna dekompresja według postępującej jakośc, rozdzelczośc, położena lub kolejnego komponentu. Jednak cechą najbardzej wyróżnającą JPEG 2000 spośród nnych standardów jest elastyczność dostępu do skompresowanego obrazu. Standard umożlwa dostęp do wybranego komponentu, fragmentu obrazu, jego wersj nskorozdzelczej lub o ogranczonej jakośc, bez konecznośc dekompresj całego plku. Innym słowy, dekoder ne mus odczytywać całego plku, aby zdekompresować wybraną część obrazu. Wydaje sę to szczególne użyteczne w przypadku zdalnego dostępu do bazy danych zawerającej obrazy o szczególne dużej objętośc (np. obrazy radograf cyfrowej). Baza może oferować dostęp do obrazów w dowolnej wersj, mmo że każdy obraz będze zapsany na dysku tylko w jednym plku (rysunek A.). W przypadku żądana udostępnena obrazu w żądanej wersj, z plku wycnany jest fragment danych (proces ten ne wymaga dekompresj może być wykonywany przez parser) wysyłany 72

76 do klenta. Taka elastyczność standardu jest możlwa przede wszystkm dzęk zastosowanu transformaty falkowej (zamast Fourera) oraz schematu kodowana EBCOT. obraz orygnalny fragment obrazu obraz w ogranczonej jakośc obraz w ogranczonej rozdzelczośc komponenty obrazu Rys. A. Różne wersje tego samego obrazu. Drugą właścwoścą standardu JPEG 2000, stotną z punktu wdzena zdalnego dostępu do obrazu, jest wsparce dla regonów zanteresowana (ROI, ang. regon of nterest). Dzęk stosowanu ROI wybrany obszar obrazu (najbardzej nteresujący użytkownka) może być przesłany zdekodowany wcześnej od pozostałej częśc (rysunek A.2). Regon zanteresowana może meć dowolny kształt. Interesującą własnoścą jest możlwość nteraktywnego zaznaczana regonu zanteresowana podczas transmsj obrazu. Pozwala ona na określene przez użytkownka nteresującego fragmentu w momence, kedy jakość na to pozwala, a węc często już na początku transmsj. Po zdefnowanu ROI, do użytkownka są wysyłane tylko te dane, które są nezbędne do zdekodowana nteresującego fragmentu. Po odtworzenu ROI z orygnalną dokładnoścą, transmtowane są pozostałe dane. 73

STANDARDOWE TECHNIKI KOMPRESJI SYGNAŁÓW

STANDARDOWE TECHNIKI KOMPRESJI SYGNAŁÓW STANDARDOWE TECHNIKI KOMPRESJI SYGNAŁÓW Źródło Kompresja Kanał transmsj sek wdeo 60 Mbt 2 mn muzyk (44 00 próbek/sek, 6 btów/próbkę) 84 Mbt Dekompresja Odborca. Metody bezstratne 2. Metody stratne 2 Kodowane

Bardziej szczegółowo

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB Rozwązywane zadań optymalzacj w środowsku programu MATLAB Zagadnene optymalzacj polega na znajdowanu najlepszego, względem ustalonego kryterum, rozwązana należącego do zboru rozwązań dopuszczalnych. Standardowe

Bardziej szczegółowo

Analiza danych OGÓLNY SCHEMAT. http://zajecia.jakubw.pl/ Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

Analiza danych OGÓLNY SCHEMAT. http://zajecia.jakubw.pl/ Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja) Analza danych Dane trenngowe testowe. Algorytm k najblższych sąsadów. Jakub Wróblewsk jakubw@pjwstk.edu.pl http://zajeca.jakubw.pl/ OGÓLNY SCHEMAT Mamy dany zbór danych podzelony na klasy decyzyjne, oraz

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA SZTUCZNA INTELIGENCJA WYKŁAD 15. ALGORYTMY GENETYCZNE Częstochowa 014 Dr hab. nż. Grzegorz Dudek Wydzał Elektryczny Poltechnka Częstochowska TERMINOLOGIA allele wartośc, waranty genów, chromosom - (naczej

Bardziej szczegółowo

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW Stefan WÓJTOWICZ, Katarzyna BIERNAT ZAKŁAD METROLOGII I BADAŃ NIENISZCZĄCYCH INSTYTUT ELEKTROTECHNIKI ul. Pożaryskego 8, 04-703 Warszawa tel.

Bardziej szczegółowo

Kodowanie informacji. Instytut Informatyki UWr Studia wieczorowe. Wykład nr 2: rozszerzone i dynamiczne Huffmana

Kodowanie informacji. Instytut Informatyki UWr Studia wieczorowe. Wykład nr 2: rozszerzone i dynamiczne Huffmana Kodowane nformacj Instytut Informatyk UWr Studa weczorowe Wykład nr 2: rozszerzone dynamczne Huffmana Kod Huffmana - nemłe przypadk... Nech alfabet składa sę z 2 lter: P(a)=1/16 P(b)=15/16 Mamy H(1/16,

Bardziej szczegółowo

STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH

STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH 1 Test zgodnośc χ 2 Hpoteza zerowa H 0 ( Cecha X populacj ma rozkład o dystrybuance F). Hpoteza alternatywna H1( Cecha X populacj

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6 Stansław Cchock Natala Nehrebecka Wykład 6 1 1. Zastosowane modelu potęgowego Przekształcene Boxa-Coxa 2. Zmenne cągłe za zmenne dyskretne 3. Interpretacja parametrów przy zmennych dyskretnych 1. Zastosowane

Bardziej szczegółowo

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5 MATEMATYKA POZIOM ROZSZERZONY Krytera ocenana odpowedz Arkusz A II Strona 1 z 5 Odpowedz Pytane 1 2 3 4 5 6 7 8 9 Odpowedź D C C A B 153 135 232 333 Zad. 10. (0-3) Dana jest funkcja postac. Korzystając

Bardziej szczegółowo

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE Inormatyka Podstawy Programowana 06/07 Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE 6. Równana algebraczne. Poszukujemy rozwązana, czyl chcemy określć perwastk rzeczywste równana:

Bardziej szczegółowo

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie.

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie. Zaps nformacj, systemy pozycyjne 1 Lteratura Jerzy Grębosz, Symfona C++ standard. Harvey M. Detl, Paul J. Detl, Arkana C++. Programowane. Zaps nformacj w komputerach Wszystke elementy danych przetwarzane

Bardziej szczegółowo

WikiWS For Business Sharks

WikiWS For Business Sharks WkWS For Busness Sharks Ops zadana konkursowego Zadane Opracowane algorytmu automatyczne przetwarzającego zdjęce odręczne narysowanego dagramu na tablcy lub kartce do postac wektorowej zapsanej w formace

Bardziej szczegółowo

Natalia Nehrebecka. Zajęcia 3

Natalia Nehrebecka. Zajęcia 3 St ł Cchock Stansław C h k Natala Nehrebecka Zajęca 3 1. Dobroć dopasowana równana regresj. Współczynnk determnacj R Dk Dekompozycja warancj zmennej zależnej ż Współczynnk determnacj R. Zmenne cągłe a

Bardziej szczegółowo

Laboratorium ochrony danych

Laboratorium ochrony danych Laboratorum ochrony danych Ćwczene nr Temat ćwczena: Cała skończone rozszerzone Cel dydaktyczny: Opanowane programowej metody konstruowana cał skończonych rozszerzonych GF(pm), poznane ch własnośc oraz

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7 Stansław Cchock Natala Nehrebecka Wykład 7 1 1. Zmenne cągłe a zmenne dyskretne 2. Interpretacja parametrów przy zmennych dyskretnych 1. Zmenne cągłe a zmenne dyskretne 2. Interpretacja parametrów przy

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6 Stansław Cchock Natala Nehrebecka Wykład 6 1 1. Interpretacja parametrów przy zmennych objaśnających cągłych Semelastyczność 2. Zastosowane modelu potęgowego Model potęgowy 3. Zmenne cągłe za zmenne dyskretne

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6 Stansław Cchock Natala Nehrebecka Wykład 6 1 1. Zastosowane modelu potęgowego Model potęgowy Przekształcene Boxa-Coxa 2. Zmenne cągłe za zmenne dyskretne 3. Interpretacja parametrów przy zmennych dyskretnych

Bardziej szczegółowo

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych Zaawansowane metody numeryczne Komputerowa analza zagadneń różnczkowych 1. Układy równań lnowych P. F. Góra http://th-www.f.uj.edu.pl/zfs/gora/ semestr letn 2006/07 Podstawowe fakty Równane Ax = b, x,

Bardziej szczegółowo

Analiza rodzajów skutków i krytyczności uszkodzeń FMECA/FMEA według MIL STD - 1629A

Analiza rodzajów skutków i krytyczności uszkodzeń FMECA/FMEA według MIL STD - 1629A Analza rodzajów skutków krytycznośc uszkodzeń FMECA/FMEA według MIL STD - 629A Celem analzy krytycznośc jest szeregowane potencjalnych rodzajów uszkodzeń zdentyfkowanych zgodne z zasadam FMEA na podstawe

Bardziej szczegółowo

Modelowanie i obliczenia techniczne. Metody numeryczne w modelowaniu: Optymalizacja

Modelowanie i obliczenia techniczne. Metody numeryczne w modelowaniu: Optymalizacja Modelowane oblczena technczne Metody numeryczne w modelowanu: Optymalzacja Zadane optymalzacj Optymalzacja to ulepszane lub poprawa jakośc danego rozwązana, projektu, opracowana. Celem optymalzacj jest

Bardziej szczegółowo

XXX OLIMPIADA FIZYCZNA ETAP III Zadanie doświadczalne

XXX OLIMPIADA FIZYCZNA ETAP III Zadanie doświadczalne XXX OLIMPIADA FIZYCZNA ETAP III Zadane dośwadczalne ZADANIE D Nazwa zadana: Maszyna analogowa. Dane są:. doda półprzewodnkowa (krzemowa) 2. opornk dekadowy (- 5 Ω ), 3. woltomerz cyfrowy, 4. źródło napęca

Bardziej szczegółowo

Statystyka. Zmienne losowe

Statystyka. Zmienne losowe Statystyka Zmenne losowe Zmenna losowa Zmenna losowa jest funkcją, w której każdej wartośc R odpowada pewen podzbór zboru będący zdarzenem losowym. Zmenna losowa powstaje poprzez przyporządkowane każdemu

Bardziej szczegółowo

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4 Stansław Cchock Natala Nehrebecka Zajęca 4 1. Interpretacja parametrów przy zmennych zerojedynkowych Zmenne 0-1 Interpretacja przy zmennej 0 1 w modelu lnowym względem zmennych objaśnających Interpretacja

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka Katarzyna Rosiak-Lada. Zajęcia 3

Stanisław Cichocki. Natalia Nehrebecka Katarzyna Rosiak-Lada. Zajęcia 3 Stansław Cchock Natala Nehrebecka Katarzyna Rosak-Lada Zajęca 3 1. Dobrod dopasowana równana regresj. Współczynnk determnacj R 2 Dekompozycja warancj zmennej zależnej Współczynnk determnacj R 2 2. Zmenne

Bardziej szczegółowo

Statystyka Inżynierska

Statystyka Inżynierska Statystyka Inżynerska dr hab. nż. Jacek Tarasuk AGH, WFIS 013 Wykład DYSKRETNE I CIĄGŁE ROZKŁADY JEDNOWYMIAROWE Zmenna losowa, Funkcja rozkładu, Funkcja gęstośc, Dystrybuanta, Charakterystyk zmennej, Funkcje

Bardziej szczegółowo

Procedura normalizacji

Procedura normalizacji Metody Badań w Geograf Społeczno Ekonomcznej Procedura normalzacj Budowane macerzy danych geografcznych mgr Marcn Semczuk Zakład Przedsęborczośc Gospodark Przestrzennej Instytut Geograf Unwersytet Pedagogczny

Bardziej szczegółowo

Natalia Nehrebecka. Zajęcia 4

Natalia Nehrebecka. Zajęcia 4 St ł Cchock Stansław C h k Natala Nehrebecka Zajęca 4 1. Interpretacja parametrów przy zmennych zerojedynkowych Zmenne 0 1 Interpretacja przy zmennej 0 1 w modelu lnowym względem zmennych objaśnających

Bardziej szczegółowo

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA Krzysztof Serżęga Wyższa Szkoła Informatyk Zarządzana w Rzeszowe Streszczene Artykuł porusza temat zwązany

Bardziej szczegółowo

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np.

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np. Wykład 7 Uwaga: W praktyce często zdarza sę, że wynk obu prób możemy traktować jako wynk pomarów na tym samym elemence populacj np. wynk x przed wynk y po operacj dla tego samego osobnka. Należy wówczas

Bardziej szczegółowo

Diagonalizacja macierzy kwadratowej

Diagonalizacja macierzy kwadratowej Dagonalzacja macerzy kwadratowej Dana jest macerz A nân. Jej wartośc własne wektory własne spełnają równane Ax x dla,..., n Każde z równań własnych osobno można zapsać w postac: a a an x x a a an x x an

Bardziej szczegółowo

2012-10-11. Definicje ogólne

2012-10-11. Definicje ogólne 0-0- Defncje ogólne Logstyka nauka o przepływe surowców produktów gotowych rodowód wojskowy Utrzyywane zapasów koszty zwązane.n. z zarożene kaptału Brak w dostawach koszty zwązane.n. z przestoje w produkcj

Bardziej szczegółowo

Zmodyfikowana technika programowania dynamicznego

Zmodyfikowana technika programowania dynamicznego Zmodyfkowana technka programowana dynamcznego Lech Madeysk 1, Zygmunt Mazur 2 Poltechnka Wrocławska, Wydzał Informatyk Zarządzana, Wydzałowy Zakład Informatyk Wybrzeże Wyspańskego 27, 50-370 Wrocław Streszczene.

Bardziej szczegółowo

Funkcje i charakterystyki zmiennych losowych

Funkcje i charakterystyki zmiennych losowych Funkcje charakterystyk zmennych losowych Dr Joanna Banaś Zakład Badań Systemowych Instytut Sztucznej Intelgencj Metod Matematycznych Wydzał Informatyk Poltechnk Szczecńskej 5. Funkcje zmennych losowych

Bardziej szczegółowo

Natalia Nehrebecka. Wykład 2

Natalia Nehrebecka. Wykład 2 Natala Nehrebecka Wykład . Model lnowy Postad modelu lnowego Zaps macerzowy modelu lnowego. Estymacja modelu Wartośd teoretyczna (dopasowana) Reszty 3. MNK przypadek jednej zmennej . Model lnowy Postad

Bardziej szczegółowo

KURS STATYSTYKA. Lekcja 6 Regresja i linie regresji ZADANIE DOMOWE. www.etrapez.pl Strona 1

KURS STATYSTYKA. Lekcja 6 Regresja i linie regresji ZADANIE DOMOWE. www.etrapez.pl Strona 1 KURS STATYSTYKA Lekcja 6 Regresja lne regresj ZADANIE DOMOWE www.etrapez.pl Strona 1 Część 1: TEST Zaznacz poprawną odpowedź (tylko jedna jest prawdzwa). Pytane 1 Funkcja regresj I rodzaju cechy Y zależnej

Bardziej szczegółowo

Wykład IX Optymalizacja i minimalizacja funkcji

Wykład IX Optymalizacja i minimalizacja funkcji Wykład IX Optymalzacja mnmalzacja funkcj Postawene zadana podstawowe dee jego rozwązana Proste metody mnmalzacj Metody teracj z wykorzystanem perwszej pochodnej Metody teracj z wykorzystanem drugej pochodnej

Bardziej szczegółowo

Weryfikacja hipotez dla wielu populacji

Weryfikacja hipotez dla wielu populacji Weryfkacja hpotez dla welu populacj Dr Joanna Banaś Zakład Badań Systemowych Instytut Sztucznej Intelgencj Metod Matematycznych Wydzał Informatyk Poltechnk Szczecńskej 5. Parametryczne testy stotnośc w

Bardziej szczegółowo

APROKSYMACJA QUASIJEDNOSTAJNA

APROKSYMACJA QUASIJEDNOSTAJNA POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 73 Electrcal Engneerng 213 Jan PURCZYŃSKI* APROKSYMACJA QUASIJEDNOSTAJNA W pracy wykorzystano metodę aproksymacj średnokwadratowej welomanowej, przy

Bardziej szczegółowo

KURS STATYSTYKA. Lekcja 1 Statystyka opisowa ZADANIE DOMOWE. www.etrapez.pl Strona 1

KURS STATYSTYKA. Lekcja 1 Statystyka opisowa ZADANIE DOMOWE. www.etrapez.pl Strona 1 KURS STATYSTYKA Lekcja 1 Statystyka opsowa ZADANIE DOMOWE www.etrapez.pl Strona 1 Część 1: TEST Zaznacz poprawną odpowedź (tylko jedna jest prawdzwa). Pytane 1 W statystyce opsowej mamy pełne nformacje

Bardziej szczegółowo

WSPOMAGANE KOMPUTEROWO POMIARY CZĘSTOTLIWOŚCI CHWILOWEJ SYGNAŁÓW IMPULSOWYCH

WSPOMAGANE KOMPUTEROWO POMIARY CZĘSTOTLIWOŚCI CHWILOWEJ SYGNAŁÓW IMPULSOWYCH Metrologa Wspomagana Komputerowo - Zegrze, 9-22 05.997 WSPOMAGANE KOMPUTEROWO POMIARY CZĘSTOTLIWOŚCI CHWILOWEJ SYGNAŁÓW IMPULSOWYCH dr nż. Jan Ryszard Jask, dr nż. Elgusz Pawłowsk POLITECHNIKA lubelska

Bardziej szczegółowo

Portfele zawierające walor pozbawiony ryzyka. Elementy teorii rynku kapitałowego

Portfele zawierające walor pozbawiony ryzyka. Elementy teorii rynku kapitałowego Portel nwestycyjny ćwczena Na podst. Wtold Jurek: Konstrukcja analza rozdzał 5 dr chał Konopczyńsk Portele zawerające walor pozbawony ryzyka. lementy teor rynku kaptałowego 1. Pożyczane penędzy amy dwa

Bardziej szczegółowo

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda BADANIA OPERACYJNE Podejmowane decyzj w warunkach nepewnośc dr Adam Sojda Teora podejmowana decyzj gry z naturą Wynk dzałana zależy ne tylko od tego, jaką podejmujemy decyzję, ale równeż od tego, jak wystąp

Bardziej szczegółowo

Pattern Classification

Pattern Classification attern Classfcaton All materals n these sldes were taken from attern Classfcaton nd ed by R. O. Duda,. E. Hart and D. G. Stork, John Wley & Sons, 000 wth the permsson of the authors and the publsher Chapter

Bardziej szczegółowo

I. Elementy analizy matematycznej

I. Elementy analizy matematycznej WSTAWKA MATEMATYCZNA I. Elementy analzy matematycznej Pochodna funkcj f(x) Pochodna funkcj podaje nam prędkość zman funkcj: df f (x + x) f (x) f '(x) = = lm x 0 (1) dx x Pochodna funkcj podaje nam zarazem

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7 Stansław Cchock Natala Nehrebecka Wykład 7 1 1. Interakcje 2. Przyblżane model nelnowych 3. Założena KMRL 1. Interakcje 2. Przyblżane model nelnowych 3. Założena KMRL W standardowym modelu lnowym zakładamy,

Bardziej szczegółowo

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni.

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni. Zestaw zadań : Przestrzene wektorowe podprzestrzene. Lnowa nezależność. Sumy sumy proste podprzestrzen. () Wykazać, że V = C ze zwykłym dodawanem jako dodawanem wektorów operacją mnożena przez skalar :

Bardziej szczegółowo

Za: Stanisław Latoś, Niwelacja trygonometryczna, [w:] Ćwiczenia z geodezji II [red.] J. Beluch

Za: Stanisław Latoś, Niwelacja trygonometryczna, [w:] Ćwiczenia z geodezji II [red.] J. Beluch Za: Stansław Latoś, Nwelacja trygonometryczna, [w:] Ćwczena z geodezj II [red.] J. eluch 6.1. Ogólne zasady nwelacj trygonometrycznej. Wprowadzene Nwelacja trygonometryczna, zwana równeż trygonometrycznym

Bardziej szczegółowo

Klasyfkator lnowy Wstęp Klasyfkator lnowy jest najprostszym możlwym klasyfkatorem. Zakłada on lnową separację lnowy podzał dwóch klas mędzy sobą. Przedstawa to ponższy rysunek: 5 4 3 1 0-1 - -3-4 -5-5

Bardziej szczegółowo

Analiza danych. Analiza danych wielowymiarowych. Regresja liniowa. Dyskryminacja liniowa. PARA ZMIENNYCH LOSOWYCH

Analiza danych. Analiza danych wielowymiarowych. Regresja liniowa. Dyskryminacja liniowa.   PARA ZMIENNYCH LOSOWYCH Analza danych Analza danych welowymarowych. Regresja lnowa. Dyskrymnacja lnowa. Jakub Wróblewsk jakubw@pjwstk.edu.pl http://zajeca.jakubw.pl/ PARA ZMIENNYCH LOSOWYCH Parę zmennych losowych X, Y możemy

Bardziej szczegółowo

Zaawansowane metody numeryczne

Zaawansowane metody numeryczne Wykład 9. jej modyfkacje. Oznaczena Będzemy rozpatrywać zagadnene rozwązana następującego układu n równań lnowych z n newadomym x 1... x n : a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 + a 22 x

Bardziej szczegółowo

WPŁYW PARAMETRÓW DYSKRETYZACJI NA NIEPEWNOŚĆ WYNIKÓW POMIARU OBIEKTÓW OBRAZU CYFROWEGO

WPŁYW PARAMETRÓW DYSKRETYZACJI NA NIEPEWNOŚĆ WYNIKÓW POMIARU OBIEKTÓW OBRAZU CYFROWEGO Walenty OWIECZKO WPŁYW PARAMETRÓW DYSKRETYZACJI A IEPEWOŚĆ WYIKÓW POMIARU OBIEKTÓW OBRAZU CYFROWEGO STRESZCZEIE W artykule przedstaono ynk analzy nepenośc pomaru ybranych cech obektu obrazu cyfroego. Wyznaczono

Bardziej szczegółowo

± Δ. Podstawowe pojęcia procesu pomiarowego. x rzeczywiste. Określenie jakości poznania rzeczywistości

± Δ. Podstawowe pojęcia procesu pomiarowego. x rzeczywiste. Określenie jakości poznania rzeczywistości Podstawowe pojęca procesu pomarowego kreślene jakośc poznana rzeczywstośc Δ zmerzone rzeczywste 17 9 Zalety stosowana elektrycznych przyrządów 1/ 1. możlwość budowy czujnków zamenających werne każdą welkość

Bardziej szczegółowo

Badanie współzależności dwóch cech ilościowych X i Y. Analiza korelacji prostej

Badanie współzależności dwóch cech ilościowych X i Y. Analiza korelacji prostej Badane współzależnośc dwóch cech loścowych X Y. Analza korelacj prostej Kody znaków: żółte wyróżnene nowe pojęce czerwony uwaga kursywa komentarz 1 Zagadnena 1. Zwązek determnstyczny (funkcyjny) a korelacyjny.

Bardziej szczegółowo

Problemy jednoczesnego testowania wielu hipotez statystycznych i ich zastosowania w analizie mikromacierzy DNA

Problemy jednoczesnego testowania wielu hipotez statystycznych i ich zastosowania w analizie mikromacierzy DNA Problemy jednoczesnego testowana welu hpotez statystycznych ch zastosowana w analze mkromacerzy DNA Konrad Furmańczyk Katedra Zastosowań Matematyk SGGW Plan referatu Testowane w analze mkromacerzy DNA

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

Statystyka Opisowa 2014 część 2. Katarzyna Lubnauer

Statystyka Opisowa 2014 część 2. Katarzyna Lubnauer Statystyka Opsowa 2014 część 2 Katarzyna Lubnauer Lteratura: 1. Statystyka w Zarządzanu Admr D. Aczel 2. Statystyka Opsowa od Podstaw Ewa Waslewska 3. Statystyka, Lucjan Kowalsk. 4. Statystyka opsowa,

Bardziej szczegółowo

Model ASAD. ceny i płace mogą ulegać zmianom (w odróżnieniu od poprzednio omawianych modeli)

Model ASAD. ceny i płace mogą ulegać zmianom (w odróżnieniu od poprzednio omawianych modeli) Model odstawowe założena modelu: ceny płace mogą ulegać zmanom (w odróżnenu od poprzedno omawanych model) punktem odnesena analzy jest obserwacja pozomu produkcj cen (a ne stopy procentowej jak w modelu

Bardziej szczegółowo

5. Pochodna funkcji. lim. x c x c. (x c) = lim. g(c + h) g(c) = lim

5. Pochodna funkcji. lim. x c x c. (x c) = lim. g(c + h) g(c) = lim 5. Pocodna funkcj Defncja 5.1 Nec f: (a, b) R nec c (a, b). Jeśl stneje granca lm x c x c to nazywamy ją pocodną funkcj f w punkce c oznaczamy symbolem f (c) Twerdzene 5.1 Jeśl funkcja f: (a, b) R ma pocodną

Bardziej szczegółowo

Cyfrowe przetwarzanie i kompresja danych

Cyfrowe przetwarzanie i kompresja danych Cyfrowe przetwarzanie i kompresja danych dr inż.. Wojciech Zając Wykład 5. Dyskretna transformata falkowa Schemat systemu transmisji danych wizyjnych Źródło danych Przetwarzanie Przesył Przetwarzanie Prezentacja

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

PROSTO O DOPASOWANIU PROSTYCH, CZYLI ANALIZA REGRESJI LINIOWEJ W PRAKTYCE

PROSTO O DOPASOWANIU PROSTYCH, CZYLI ANALIZA REGRESJI LINIOWEJ W PRAKTYCE PROSTO O DOPASOWANIU PROSTYCH, CZYLI ANALIZA REGRESJI LINIOWEJ W PRAKTYCE Janusz Wątroba, StatSoft Polska Sp. z o.o. W nemal wszystkch dzedznach badań emprycznych mamy do czynena ze złożonoścą zjawsk procesów.

Bardziej szczegółowo

5. CHARAKTERYSTYKI CZĘSTOTLIWOŚCIOWE

5. CHARAKTERYSTYKI CZĘSTOTLIWOŚCIOWE 5. CHARAKTERYSTYKI CZĘSTOTLIWOŚCIOWE Oprócz transmtancj operatorowej, do opsu członów układów automatyk stosuje sę tzw. transmtancję wdmową. Transmtancję wdmową G(j wyznaczyć moŝna dzęk podstawenu do wzoru

Bardziej szczegółowo

Wprowadzenie do Sieci Neuronowych Sieci rekurencyjne

Wprowadzenie do Sieci Neuronowych Sieci rekurencyjne Wprowadzene do Sec Neuronowych Sec rekurencyjne M. Czoków, J. Persa 2010-12-07 1 Powtórzene Konstrukcja autoasocjatora Hopfelda 1.1 Konstrukcja Danych jest m obrazów wzorcowych ξ 1..ξ m, gdze każdy pojedynczy

Bardziej szczegółowo

Proste modele ze złożonym zachowaniem czyli o chaosie

Proste modele ze złożonym zachowaniem czyli o chaosie Proste modele ze złożonym zachowanem czyl o chaose 29 kwetna 2014 Komputer jest narzędzem coraz częścej stosowanym przez naukowców do ukazywana skrzętne ukrywanych przez naturę tajemnc. Symulacja, obok

Bardziej szczegółowo

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

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311 Sztuczne sec neuronowe Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyk, p. 311 Wykład 6 PLAN: - Repetto (brevs) - Sec neuronowe z radalnym funkcjam bazowym Repetto W aspekce archtektury: zajmowalśmy

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 WARTOŚCI POLA MAGNETYCZNEGO W POBLIŻU LINII NAPOWIETRZNEJ Z WYKORZYSTANIEM ALGORYTMU GENETYCZNEGO

OPTYMALIZACJA WARTOŚCI POLA MAGNETYCZNEGO W POBLIŻU LINII NAPOWIETRZNEJ Z WYKORZYSTANIEM ALGORYTMU GENETYCZNEGO POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 81 Electrcal Engneerng 015 Mkołaj KSIĄŻKIEWICZ* OPTYMALIZACJA WARTOŚCI POLA MAGNETYCZNEGO W POLIŻU LINII NAPOWIETRZNEJ Z WYKORZYSTANIEM ALGORYTMU

Bardziej szczegółowo

Pokazać, że wyżej zdefiniowana struktura algebraiczna jest przestrzenią wektorową nad ciałem

Pokazać, że wyżej zdefiniowana struktura algebraiczna jest przestrzenią wektorową nad ciałem Zestaw zadań : Przestrzene wektorowe. () Wykazać, że V = C ze zwykłym dodawanem jako dodawanem wektorów operacją mnożena przez skalar : C C C, (z, v) z v := z v jest przestrzeną lnową nad całem lczb zespolonych

Bardziej szczegółowo

RUCH OBROTOWY Można opisać ruch obrotowy ze stałym przyspieszeniem ε poprzez analogię do ruchu postępowego jednostajnie zmiennego.

RUCH OBROTOWY Można opisać ruch obrotowy ze stałym przyspieszeniem ε poprzez analogię do ruchu postępowego jednostajnie zmiennego. RUCH OBROTOWY Można opsać ruch obrotowy ze stałym przyspeszenem ε poprzez analogę do ruchu postępowego jednostajne zmennego. Ruch postępowy a const. v v at s s v t at Ruch obrotowy const. t t t Dla ruchu

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

Zjawiska masowe takie, które mogą wystąpid nieograniczoną ilośd razy. Wyrazów Obcych)

Zjawiska masowe takie, które mogą wystąpid nieograniczoną ilośd razy. Wyrazów Obcych) Statystyka - nauka zajmująca sę metodam badana przedmotów zjawsk w ch masowych przejawach ch loścową lub jakoścową analzą z punktu wdzena nauk, do której zakresu należą.

Bardziej szczegółowo

architektura komputerów w. 3 Arytmetyka komputerów

architektura komputerów w. 3 Arytmetyka komputerów archtektura komputerów w. 3 Arytmetyka komputerów Systemy pozycyjne - dodawane w systeme dwójkowym 100101011001110010101 100111101000001000 0110110011101 1 archtektura komputerów w 3 1 Arytmetyka bnarna.

Bardziej szczegółowo

NAFTA-GAZ marzec 2011 ROK LXVII. Wprowadzenie. Tadeusz Kwilosz

NAFTA-GAZ marzec 2011 ROK LXVII. Wprowadzenie. Tadeusz Kwilosz NAFTA-GAZ marzec 2011 ROK LXVII Tadeusz Kwlosz Instytut Nafty Gazu, Oddzał Krosno Zastosowane metody statystycznej do oszacowana zapasu strategcznego PMG, z uwzględnenem nepewnośc wyznaczena parametrów

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7 Stansław Cchock Natala Nehrebecka Wykład 7 . Zmenne dyskretne Kontrasty: efekty progowe, kontrasty w odchylenach Interakcje. Przyblżane model nelnowych Stosowane do zmennych dyskretnych o uporządkowanych

Bardziej szczegółowo

STATECZNOŚĆ SKARP. α - kąt nachylenia skarpy [ o ], φ - kąt tarcia wewnętrznego gruntu [ o ],

STATECZNOŚĆ SKARP. α - kąt nachylenia skarpy [ o ], φ - kąt tarcia wewnętrznego gruntu [ o ], STATECZNOŚĆ SKARP W przypadku obektu wykonanego z gruntów nespostych zaprojektowane bezpecznego nachylena skarp sprowadza sę do przekształcena wzoru na współczynnk statecznośc do postac: tgφ tgα = n gdze:

Bardziej szczegółowo

V. TERMODYNAMIKA KLASYCZNA

V. TERMODYNAMIKA KLASYCZNA 46. ERMODYNAMIKA KLASYCZNA. ERMODYNAMIKA KLASYCZNA ermodynamka jako nauka powstała w XIX w. Prawa termodynamk są wynkem obserwacj welu rzeczywstych procesów- są to prawa fenomenologczne modelu rzeczywstośc..

Bardziej szczegółowo

ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH

ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH Potr Mchalsk Węzeł Centralny OŻK-SB 25.12.2013 rok ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH Celem ponższej analzy jest odpowedź na pytane: czy wykształcene radnych

Bardziej szczegółowo

5. OPTYMALIZACJA GRAFOWO-SIECIOWA

5. OPTYMALIZACJA GRAFOWO-SIECIOWA . OPTYMALIZACJA GRAFOWO-SIECIOWA Defncja grafu Pod pojęcem grafu G rozumemy następującą dwójkę uporządkowaną (defncja grafu Berge a): (.) G W,U gdze: W zbór werzchołków grafu, U zbór łuków grafu, U W W,

Bardziej szczegółowo

Evaluation of estimation accuracy of correlation functions with use of virtual correlator model

Evaluation of estimation accuracy of correlation functions with use of virtual correlator model Jadwga LAL-JADZIAK Unwersytet Zelonogórsk Instytut etrolog Elektrycznej Elżbeta KAWECKA Unwersytet Zelonogórsk Instytut Informatyk Elektronk Ocena dokładnośc estymacj funkcj korelacyjnych z użycem modelu

Bardziej szczegółowo

65120/ / / /200

65120/ / / /200 . W celu zbadana zależnośc pomędzy płcą klentów ch preferencjam, wylosowano kobet mężczyzn zadano m pytane: uważasz za lepszy produkt frmy A czy B? Wynk były następujące: Odpowedź Kobety Mężczyźn Wolę

Bardziej szczegółowo

Komputerowe generatory liczb losowych

Komputerowe generatory liczb losowych . Perwszy generator Komputerowe generatory lczb losowych 2. Przykłady zastosowań 3. Jak generuje sę lczby losowe przy pomocy komputera. Perwszy generator lczb losowych L. H. C. Tppet - 927 Ksąż ążka -

Bardziej szczegółowo

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup Jednoczynnkowa Analza Waranc (ANOVA) Wykład 11 Przypomnene: wykłady zadana kursu były zaczerpnęte z podręcznków: Statystyka dla studentów kerunków techncznych przyrodnczych, J. Koronack, J. Melnczuk, WNT

Bardziej szczegółowo

V. WPROWADZENIE DO PRZESTRZENI FUNKCYJNYCH

V. WPROWADZENIE DO PRZESTRZENI FUNKCYJNYCH Krs na Stdach Doktoranckch Poltechnk Wrocławskej wersja: lty 007 34 V. WPROWADZENIE DO PRZESTRZENI FUNKCYJNYCH. Zbór np. lczb rzeczywstych a, b elementy zbor A a A b A, podzbór B zbor A : B A, sma zborów

Bardziej szczegółowo

Diagnostyka układów kombinacyjnych

Diagnostyka układów kombinacyjnych Dagnostyka układów kombnacyjnych 1. Wprowadzene Dagnostyka obejmuje: stwerdzene stanu układu, systemu lub ogólne sec logcznej. Jest to tzw. kontrola stanu wykrywająca czy dzałane sec ne jest zakłócane

Bardziej szczegółowo

(M2) Dynamika 1. ŚRODEK MASY. T. Środek ciężkości i środek masy

(M2) Dynamika 1. ŚRODEK MASY. T. Środek ciężkości i środek masy (MD) MECHANIKA - Dynamka T. Środek cężkośc środek masy (M) Dynamka T: Środek cężkośc środek masy robert.szczotka(at)gmal.com Fzyka astronoma, Lceum 01/014 1 (MD) MECHANIKA - Dynamka T. Środek cężkośc środek

Bardziej szczegółowo

0 0,2 0, p 0,1 0,2 0,5 0, p 0,3 0,1 0,2 0,4

0 0,2 0, p 0,1 0,2 0,5 0, p 0,3 0,1 0,2 0,4 Zad. 1. Dana jest unkcja prawdopodobeństwa zmennej losowej X -5-1 3 8 p 1 1 c 1 Wyznaczyć: a. stałą c b. wykres unkcj prawdopodobeństwa jej hstogram c. dystrybuantę jej wykres d. prawdopodobeństwa: P (

Bardziej szczegółowo

METODA UNITARYZACJI ZEROWANEJ Porównanie obiektów przy ocenie wielokryterialnej. Ranking obiektów.

METODA UNITARYZACJI ZEROWANEJ Porównanie obiektów przy ocenie wielokryterialnej. Ranking obiektów. Opracowane: Dorota Mszczyńska METODA UNITARYZACJI ZEROWANEJ Porównane obektów przy ocene welokryteralnej. Rankng obektów. Porównane wybranych obektów (warantów decyzyjnych) ze względu na różne cechy (krytera)

Bardziej szczegółowo

Minimalizacja globalna, algorytmy genetyczne i zastosowanie w geotechnice

Minimalizacja globalna, algorytmy genetyczne i zastosowanie w geotechnice Mnmalzacja globalna, algorytmy genetyczne zastosowane w geotechnce Metoda sejsmczna Metoda geoelektryczna Podstawowy podzał ZAGADNIENIE PROSTE (ang. forward problem) model + parametry modelu dane (ośrodek,

Bardziej szczegółowo

METODY PLANOWANIA EKSPERYMENTÓW. dr hab. inż. Mariusz B. Bogacki

METODY PLANOWANIA EKSPERYMENTÓW. dr hab. inż. Mariusz B. Bogacki Metody Planowana Eksperymentów Rozdzał 1. Strona 1 z 14 METODY PLANOWANIA EKSPERYMENTÓW dr hab. nż. Marusz B. Bogack Marusz.Bogack@put.poznan.pl www.fct.put.poznan.pl/cv23.htm Marusz B. Bogack 1 Metody

Bardziej szczegółowo

Rozkład dwupunktowy. Rozkład dwupunktowy. Rozkład dwupunktowy x i p i 0 1-p 1 p suma 1

Rozkład dwupunktowy. Rozkład dwupunktowy. Rozkład dwupunktowy x i p i 0 1-p 1 p suma 1 Rozkład dwupunktowy Zmenna losowa przyjmuje tylko dwe wartośc: wartość 1 z prawdopodobeństwem p wartość 0 z prawdopodobeństwem 1- p x p 0 1-p 1 p suma 1 Rozkład dwupunktowy Funkcja rozkładu prawdopodobeństwa

Bardziej szczegółowo

D Archiwum Prac Dyplomowych - Instrukcja dla studentów

D Archiwum Prac Dyplomowych - Instrukcja dla studentów Kraków 01.10.2015 D Archwum Prac Dyplomowych - Instrukcja dla studentów Procedura Archwzacj Prac Dyplomowych jest realzowana zgodne z zarządzenem nr 71/2015 Rektora Unwersytetu Rolnczego m. H. Kołłątaja

Bardziej szczegółowo

Modele wieloczynnikowe. Modele wieloczynnikowe. Modele wieloczynnikowe ogólne. α β β β ε. Analiza i Zarządzanie Portfelem cz. 4.

Modele wieloczynnikowe. Modele wieloczynnikowe. Modele wieloczynnikowe ogólne. α β β β ε. Analiza i Zarządzanie Portfelem cz. 4. Modele weloczynnkowe Analza Zarządzane Portfelem cz. 4 Ogólne model weloczynnkowy można zapsać jako: (,...,,..., ) P f F F F = n Dr Katarzyna Kuzak lub (,...,,..., ) f F F F = n Modele weloczynnkowe Można

Bardziej szczegółowo

TEORIA PORTFELA MARKOWITZA

TEORIA PORTFELA MARKOWITZA TEORIA PORTFELA MARKOWITZA Izabela Balwerz 28 maj 2008 1 Wstęp Teora portfela została stworzona w 1952 roku przez amerykańskego ekonomstę Harry go Markowtza Opera sę ona na mnmalzacj ryzyka nwestycyjnego

Bardziej szczegółowo

8. Optymalizacja decyzji inwestycyjnych

8. Optymalizacja decyzji inwestycyjnych dr nż. Zbgnew Tarapata: Optymalzacja decyzj nwestycyjnych, cz.ii 8. Optymalzacja decyzj nwestycyjnych W rozdzale 8, część I przedstawono elementarne nformacje dotyczące metod oceny decyzj nwestycyjnych.

Bardziej szczegółowo

TRANZYSTOR BIPOLARNY CHARAKTERYSTYKI STATYCZNE

TRANZYSTOR BIPOLARNY CHARAKTERYSTYKI STATYCZNE POLITHNIKA RZSZOWSKA Katedra Podstaw lektronk Instrkcja Nr4 F 00/003 sem. letn TRANZYSTOR IPOLARNY HARAKTRYSTYKI STATYZN elem ćwczena jest pomar charakterystyk statycznych tranzystora bpolarnego npn lb

Bardziej szczegółowo

Dobór zmiennych objaśniających

Dobór zmiennych objaśniających Dobór zmennych objaśnających Metoda grafowa: Należy tak rozpąć graf na werzchołkach opsujących poszczególne zmenne, aby występowały w nm wyłączne łuk symbolzujące stotne korelacje pomędzy zmennym opsującym.

Bardziej szczegółowo

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że Twerdzene Bezouta lczby zespolone Javer de Lucas Ćwczene 1 Ustal dla których a, b R można podzelć f 1 X) = X 4 3X 2 + ax b przez f 2 X) = X 2 3X+2 Oblcz a b Z 5 jeżel zak ladamy, że f 1 f 2 s a welomanam

Bardziej szczegółowo

Realizacja logiki szybkiego przeniesienia w prototypie prądowym układu FPGA Spartan II

Realizacja logiki szybkiego przeniesienia w prototypie prądowym układu FPGA Spartan II obert Berezowsk Natala Maslennkowa Wydzał Elektronk Poltechnka Koszalńska ul. Partyzantów 7, 75-4 Koszaln Mchał Bałko Przemysław Sołtan ealzacja logk szybkego przenesena w prototype prądowym układu PG

Bardziej szczegółowo

Metody gradientowe poszukiwania ekstremum. , U Ŝądana wartość napięcia,

Metody gradientowe poszukiwania ekstremum. , U Ŝądana wartość napięcia, Metody gradentowe... Metody gradentowe poszukwana ekstremum Korzystają z nformacj o wartośc funkcj oraz jej gradentu. Wykazując ch zbeŝność zakłada sę, Ŝe funkcja celu jest ogranczona od dołu funkcją wypukłą

Bardziej szczegółowo

( ) ( ) 2. Zadanie 1. są niezależnymi zmiennymi losowymi o. oraz. rozkładach normalnych, przy czym EX. i σ są nieznane. 1 Niech X

( ) ( ) 2. Zadanie 1. są niezależnymi zmiennymi losowymi o. oraz. rozkładach normalnych, przy czym EX. i σ są nieznane. 1 Niech X Prawdopodobeństwo statystyka.. r. Zadane. Zakładamy, że,,,,, 5 są nezależnym zmennym losowym o rozkładach normalnych, przy czym E = μ Var = σ dla =,,, oraz E = μ Var = 3σ dla =,, 5. Parametry μ, μ σ są

Bardziej szczegółowo