Kodowanie predykcyjne

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

Download "Kodowanie predykcyjne"

Transkrypt

1 Studia Wieczorowe Wrocław, Kodowanie informacji Wykład 5 Kodowanie predykcyjne Idea: przewidujemy następny element ciągu i kodujemy różnicę między wartością przewidywaną i rzeczywistą, w oparciu o kontekst (wybrane symbole spośród wcześniej zakodowanych, w sąsiedztwie kodowanego), określamy rozkład prawdopodobieństwa stosowany przy kodowaniu bieżącego symbolu, zazwyczaj przy użyciu algorytmów dla ciągów niezależnych wartości. Przykład: Słowo prawdopodobieństwo, zakodowana część to prawdopo, rozkład dla następnej litery w kontekście prawdopo NA PEWNO preferuje d. WADA: np. kontekstów 8-literowych jest 26 8 czyli kolosalnie dużo. Predykcja z częściowym dopasowaniem (ppm=prediction with partial matching) Autorzy: Cleary, Witten Rok: 1984 Idea: stosujemy kodowanie arytmetyczne (właściwie implementację całkowitoliczbową) rozkłady prawdopodobieństwa zależne od kontekstu kodowanej litery, rozkłady ustalane dynamicznie, w oparciu o przeczytane dane! znamy rozkłady TYLKO dla kontekstów, które już wystąpiły, rozważamy konteksty o różnych długościach, ale nie większe od ustalonego maksimum. Pojęcia: Kontekst: Dany tekst prawdopod Dla ostatniej litery: Rząd kontekstu Kontekst 0 Pusty 1 o 2 po 3 opo Konteksty nietypowe: kontekst rzędu 0 liczba wystąpień litery,

2 kontekst rzędu 1 oznacza rozkład jednostajny na wszystkich symbolach alfabetu (rozważany, gdy litera nie wystąpiła w tekście w ogóle). Licznik kontekstu dla litery t i kontekstu k: określa ile razy t wystąpiła (w dotychczas przeczytanej części tekstu) w kontekście k. W przypadku kontekstu k rzędu 0 licznik określa liczbę wystąpień litery t w tekście. Symbol Escape wirtualny symbol w każdym kontekście, który kodujemy gdy symbol kodowany NIE wystąpił jeszcze w danym kontekście. UWAGA: przyjmujemy, że w każdym kontekście symbol Escape wystąpił jeden raz. Tablica częstości dla kontekstu k: zawiera liczniku kontekstu k dla wszystkich liter t, które wystąpiły w kontekście k, i dla symbolu Escape: Tablica kontekstów długości j: zawiera wszystkie konteksty o długości j, które wystąpiły w tekście, wraz z ich licznikami kontekstu. ALGORYTM KODOWANIA: Dane: Kodowany tekst x=x 1..x n Maksymalna długość kontekstu m. Algorytm (uwaga w praktyce używana całkowitoliczbowa wersja kodowania arytmetycznego): lw := 0; pr := 1; Dla każdego j=0,1,..,m Tablica kontekstów długości j - PUSTA Dla i = 1,2,...,n (kodowanie x i ): Niech p m to maksymalna wartość taka, że tablica kontekstu dla x i-p..x i-1 jest niepusta znaleziony = false Dla j = p, p-1,...2,1,0: y = x i-j..x i-1 zmodyfikuj licznik kontekstu y dla litery x i ; Jeśli (znaleziony=false oraz x i wystąpiło wcześniej w kontekście y): o wybierz podprzedział odpowiadający x i, zmodyfikuj lw, pr; o znaleziony := true Jeśli (znaleziony=true oraz x i NIE wystąpiło wcześniej w kontekście y): o wybierz podprzedział odpowiadający symbolowi Escape w kontekście y, zmodyfikuj lw, pr. Zakodowana postać tekstu to wartość znacznika (zaokrąglana tak jak w klasycznym kodowaniu arytmetycznym). DEKODOWANIE: analogicznie do dekodowania w przypadku kodowania arytmetycznego, z tym, że po każdym odkodowanym symbolu modyfikowane są tablice kontekstów, tak samo jak w procesie kodowania. Przykład sposób ustalania podprzedziałów:

3 Maksymalna długość kontekstu m=2 (w praktyce stosuje się co najmniej 5): Kodujemy fragment est, dokładniej literę t. Zakładamy, że tablica kontekstów długości 2 zawiera następującą tablicę częstości dla kontekstu es: Kontekst: es Litera Licznik s 3 y 2 Escape 1 Widzimy więc, że: t nie wystąpiło w kontekście es, kodujemy symbol Escape kodowanie Escape: prawdopodobieństwo równe 1/(3+2+1)=1/6, w podziale przedziału oryginalnego zajmuje ostatnią część [5/6; 1), modyfikujemy przedział. Dodajemy do tablicy kontekstu es wystąpienie t: Kontekst: es Litera Licznik s 3 t 1 y 2 Escape 1 Przechodzimy do kontekstów rzędu 1, dla s tablica zawiera: Kontekst: s Litera Licznik y 5 s 4 u 1 t 2 Escape 1 Zatem: kodujemy t: jego prawdopodobieństwo to 2/( )=2/13, odpowiada mu przedział [10/13,12/13), wg tych proporcji dzielimy aktualny podprzedział; zwiększamy licznik t o jeden. Kontekst: s Litera Licznik y 5 s 4 u 1 t 3 Escape 1 modyfikujemy też tabelę kontekstu pustego! UWAGI: rozważane różne modyfikacje inaczej traktujące symbol Escape (ppma, ppmb, ppmc). wzrost długości kontekstu tylko do pewnego momentu zwiększa kompresję (dla długich

4 kontekstów będziemy być może musieli wielokrotnie kodować symbol Escape); zasada wyłączania: jeśli odrzuciliśmy dłuższy kontekst, to w krótszym nie uwzględniamy liter, które pojawiły się w dłuższym (PRZYKŁAD może być powyższy), co zwiększa prawdopodobieństwo symbolu kodowanego.

5 Algorytm Burrowsa-Wheelera (BWT) Autor: Burrows (1994) w oparciu o transformatę Wheelera (1983). Cechy: nie jest możliwe kodowanie on-line algorytm dekompresji mało oczywisty, ale wymaga mniej obliczeń niż kompresja. KODOWANIE: Dane: Tekst x=x 1..x n o długości n. Wynik: ciąg y 1..y n oraz liczba j z przedziału [1,n] Algorytm: 1. Niech X 1, X 2,...,X n to wszystkie przesunięcia cykliczne x 2. Niech Y 1, Y 2,...,Y n oznacza uporządkowany leksykograficznie zbiór {X 1,..,X n } 3. y i to ostatni znak napisu Y i 4. j to pozycja ciągu x w ciągu Y. Przykład. Dane (przyjmujemy, że kolejność liter alfabetu jest następująca ; < O < T < U): x=oto;tu;to X1 X2 X3 X4 X5 X6 X7 X8 X9 OTO;TU;TO TO;TU;TOO O;TU;TOOT ;TU;TOOTO TU;TOOTO; U;TOOTO;T ;TOOTO;TU TOOTO;TU; OOTO;TU;T Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 Y9 ;TOOTO;TU ;TU;TOOTO O;TU;TOOT OOTO;TU;T OTO;TU;TO TO;TU;TOO TOOTO;TU; TU;TOOTO; U;TOOTO;T Zakodowana postać tekstu: [UOTTOO;;T 5]. DEKODOWANIE: Dane: [y 1..y n j] Wynik: odkodowany ciąg D[1]..D[n] 1. Posortuj y 1..y n : niech z 1..z n to posortowany ciąg y 1..y n 2. Wartości 1..n oznacz jako WOLNE 3. Dla i = 1..n a. wyznacz minimalne k takie, że y i = z k i k WOLNE b. oznacz k jako zajęte c. T[i]:=k 4. D[n]:= y j 5. k := j 6. Dla i=1..n-1 a. k := T[k]

6 b. D[n-i] := y k PRZYKŁAD: Dane: [ UOTTOO;;T 5 ] Ciąg y 1..y n U O T T O O ; ; T oryginalny z 1..z n ; ; O O O T T T U posortowany T D O T O ; T U ; T O k = PYTANIA: 1. Jaki cel kodowania skoro brak kompresji: Uzyskujemy długie ciągi powtórzeń tego samego symbolu a następnie wykorzystujemy metody kompresji bazujące na takiej zależności. 2. Skąd biorą się te ciągi powtórzeń? Przykład: jaki symbol występować będzie (często) na ostatniej pozycji cyklicznych przesunięć zaczynających się od est? Odpowiedź na to pytanie wyjaśnia, że w postaci zakodowanej będą występować ciągi powtórzeń tego samego znaku! 3. Czy ten algorytm jest poprawny czy dekompresja zawsze prowadzi do odtworzenia oryginalnego tekstu? Uzyskanie kompresji kodowanie ciągu wynikowego metodą mtf (move to front). Dane: ciąg x = x 1..x n Algorytm: 1. Przyporządkowanie kolejnych liczb naturalnych symbolom występującym w danych (od zera). 2. Dla i=1,..,n a. zakoduj x i za pomocą liczby odpowiadającej jego numerowi (i prześlij kod) b. przenieś x i na pozycję 0 (a symbole występujące przed nim o jedną pozycję niżej) Efekt: ciągi powtórzeń tego samego symbolu zostają zamienione na ciągi zer; dla wynikowego ciągu stosujemy metodę dla ciągów niezależnych wartości (np. kodowanie arytmetyczne). POPRAWNOŚĆ ALGORYTMU Burrowsa-Wheelera (dekodowanie): Obserwacje: 1. Traktujemy ciąg do zakodowania jako słowo cykliczne, w szczególności przyjmujemy, że ostatni symbol poprzedza pierwszy. 2. Wtedy relacja poprzedzania jest taka sama na wszystkich ciągach będących cyklicznymi przesunięciami ciągu oryginalnego. 3. Zauważmy, że

7 o ostatni symbol ciągu kodowanego (czyli x n ) znamy z jego postaci zakodowanej y (jest na pozycji j), o a pierwszy symbol ciągu x to j-ty symbol po posortowaniu y, czyli j-ty symbol ciągu z (tak samo jest dla innych ciągów!). 4. Gdybyśmy dla j-tego wiersza wśród wierszy posortowanych potrafili znaleźć POZYCJĘ j, jego cyklicznego przesunięcia o jeden w prawo to znalibyśmy przedostatni symbol tekstu, ponieważ - ostatni symbol stałby się pierwszym, przedostatni będzie ostatnim symbolem w j, który możemy prosto wyznaczyć z ciągu y (jest y[j ]). 5. Pozycje cyklicznych przesunięć wierszy w prawo wyznacza właśnie tablica T. Dowód: Niech y ciąg ostatnich pozycji w tablicy posortowanej, z ciąg pierwszych pozycji (czyli posortowany) Zauważmy, że cykliczne przesunięcie w prawo o jeden wiersza j - zaczyna się od ostatniego znaku wiersza j (powiedzmy a), - zatem jest na jednej z pozycji, na której w słowie z występuje litera a. Skoro jednak ciągi są posortowane, to dwa ciągi zaczynające się od a posortowane są względem pozostałych pozycji wobec tego przesunięcie w prawo pierwszego ciągu kończącego się na a jest na pozycji pierwszego a w słowie z, drugiego na pozycji drugiego a, itd. 6. W oparciu o powyższe obserwacje najpierw wyznaczamy ostatni symbol ciągu dekodowanego równy y j, jest on pierwszym symbolem w ciągu na pozycji T[j], więc poprzedza go ostatni w T[j] symbol y[t[j]], ten z kolei jest pierwszy w T[T[j]] więc poprzedza go y[t[t[j]]] itd. Przykład: [UOTTOO;;T 5] y= UOTTOO;;T z=;;oootttu PRZESUNIECIA: Y1 ;TOOTO;TU Y2 ;TU;TOOTO Y3 O;TU;TOOT Y4 OOTO;TU;T Y5 OTO;TU;TO Y6 TO;TU;TOO Y7 TOOTO;TU; Y8 TU;TOOTO; Y9 U;TOOTO;T

8 Bezstratny JPEG (JPEG-LS) JPEG=Joint Photographic Experts Group JPEG-LS: standard starszy statyczny i wieloprzebiegowy: KROK 1. wybieramy jeden z ośmiu trybów predykcji (np. najlepszy po sprawdzeniu wszystkich): I (i,j)= I(i-1,j) 3 I(i,j-1) 4 I(i-1,j-1) 5 I(i,j-1) + I(i-1, j) I(i-1, j-1) 6 I(i,j-1) + (I(i-1,j)-I(i-1, j-1))/2 7 I(i-1,j) + (I(i,j-1) I(i-1, j-1))/2 8 (I(i,j-1) + I(i-1,j))/2 KROK 2. Dla kolejnych pikseli kodujemy różnice między wartością predykcji i faktyczną wartością piksela: I (i,j)-i(i,j). KROK 3. Ciąg utworzony w kroku 2 kodujemy algorytmem kodowania ciągów niezależnych wartości (np. kodowanie arytmetyczne). JPEG-LS: standard nowszy podejście dynamiczne, jednoprzebiegowe (podobne do CALIC) NN NNE NW N NE WW W X Krok 1: Dla piksela X wyznaczamy wartość przewidywaną wg algorytmu: 1. Jeśli NW max(w, N) to X = max(w,n), w przeciwnym razie: 2. Jeśli NW min(w, N) to X = min(w,n) 3. Jeśli nie zachodzi 1. ani 2. : X = W+N-NW Krok 2: X =X +S, gdzie S średnia wartość błędu predykcji w aktualnym kontekście Krok 3: Kodujemy różnicę między X a rzeczywistą wartość piksela X. Używamy kodu Golomba (adaptacyjnego!) najlepszego dla rozkładu geometrycznego zakładamy że przy liniowym wzroście błędu predykcji prawdopodobieństwo maleje wykładniczo.

9 Konteksty: Niech: D1 = NE-N D2 = N-NW D3 = NW-W W oparciu o parametry T 1, T 2, T 3 (które można dowolnie modyfikować może to robić nawet użytkownik ) określamy wektor kontekstu Q=(Q 1, Q 2, Q 3 ), gdzie Q i {-4, -3, -2, -1, 0, 1, 2, 3, 4} jeśli D i =0 to Q i =0 jeśli D i >0 to Q i =c takie, że T c-1 D i T c jeśli D i <0 to Q i =-c takie, że T c D i -T c-1. Liczba kontekstów = 9 3 =729 Redukcja liczby kontekstów: kontekst (Q 1, Q 2, Q 3 ) z Q 1 <0 zastępujemy przez (-Q 1, -Q 2, -Q 3 ) i ustawiamy SIGN:= -1 (w dalszym etapie do pierwotnej wartości przewidywanej dodajemy błąd predykcji mnożony przez SIGN) Odwzorowanie (Q 1, Q 2, Q 3 ) {1, 2,..., 365} Wiele poziomów rozdzielczości Metoda HINT: X X X X X X X X X X X X Kolejność kodowania: - kodujemy obraz złożony z pikseli - kodujemy obraz złożony z pikseli, korzystając z wartości, stosując predykcję i kodując różnice między wartością predykcji i rzeczywistą - kodujemy kolejno: X, i

10 Progresywna transmisja obrazu z kompresją schemat hierarchiczny Idea: najpierw przesyłamy wersje obrazu o mniejszej rozdzielczości, następnie o większej; wersje o większej rozdzielczości uzyskujemy z tych o mniejszej rozdzielczości. Metoda oszczędnego przejścia z obrazu o rozdzielczości mxm do rozdzielczości 2m x 2m: - na poziomie m x m jeden piksel reprezentuje średnią arytmetyczną czterech pikseli, do odbiorcy przesyłamy sumę wartości tych 4 pikseli; - przy przejściu do rozdzielczości 2mx2m przesyłamy wartości 3 pikseli, czwarty wyznaczamy jako różnicę między sumą wszystkich pikseli (znaną z poprzedniego poziomu rozdzielczości) i sumą trzech pikseli przesłanych.

Kodowanie predykcyjne

Kodowanie predykcyjne Kodowanie i kompresja informacji - Wykład 5 22 marca 2010 Motywacje W tekstach naturalnych symbole bardzo często zależa od siebie. Motywacje W tekstach naturalnych symbole bardzo często zależa od siebie.

Bardziej szczegółowo

Kodowanie informacji

Kodowanie informacji Kodowanie informacji Tomasz Wykład 4: kodowanie arytmetyczne Motywacja Podstawy i własności Liczby rzeczywiste Motywacje 1 średnia długość kodu Huffmana może odbiegać o p max + 0.086 od entropii, gdzie

Bardziej szczegółowo

Kompresja Kodowanie arytmetyczne. Dariusz Sobczuk

Kompresja Kodowanie arytmetyczne. Dariusz Sobczuk Kompresja Kodowanie arytmetyczne Dariusz Sobczuk Kodowanie arytmetyczne (lata 1960-te) Pierwsze prace w tym kierunku sięgają początków lat 60-tych XX wieku Pierwszy algorytm Eliasa nie został opublikowany

Bardziej szczegółowo

Kody Tunstalla. Kodowanie arytmetyczne

Kody Tunstalla. Kodowanie arytmetyczne Kody Tunstalla. Kodowanie arytmetyczne Kodowanie i kompresja informacji - Wykład 3 8 marca 2010 Kody Tunstalla Wszystkie słowa kodowe maja ta sama długość ale jeden kod może kodować różna liczbę liter

Bardziej szczegółowo

mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. GOLOMBA I RICE'A

mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. GOLOMBA I RICE'A mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. KOMPRESJA ALGORYTMEM ARYTMETYCZNYM, GOLOMBA I RICE'A Idea algorytmu arytmetycznego Przykład kodowania arytmetycznego Renormalizacja

Bardziej szczegółowo

Temat: Algorytm kompresji plików metodą Huffmana

Temat: Algorytm kompresji plików metodą Huffmana Temat: Algorytm kompresji plików metodą Huffmana. Wymagania dotyczące kompresji danych Przez M oznaczmy zbiór wszystkich możliwych symboli występujących w pliku (alfabet pliku). Przykład M = 2, gdy plik

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

Algorytmy kodowania predykcyjnego

Algorytmy kodowania predykcyjnego Algorytmy kodowania predykcyjnego 1. Zasada kodowania 2. Algorytm JPEG-LS 3. Algorytmy CALIC, LOCO-I 4. Algorytmy z wielokrotn rozdzielczoci. Progresywna transmisja obrazów Kompresja obrazów - zestawienie

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 1 Kody Tunstalla Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 14.04.2005 Inne podejście: słowa kodowe mają ustaloną długość, lecz mogą kodować ciągi liter z alfabetu wejściowego o różnej

Bardziej szczegółowo

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład 13 1 Kody liniowe - kodowanie w oparciu o macierz parzystości Przykład Różne macierze parzystości dla kodu powtórzeniowego. Co wiemy z algebry

Bardziej szczegółowo

2 Kryptografia: algorytmy symetryczne

2 Kryptografia: algorytmy symetryczne 1 Kryptografia: wstęp Wyróżniamy algorytmy: Kodowanie i kompresja Streszczenie Wieczorowe Studia Licencjackie Wykład 14, 12.06.2007 symetryczne: ten sam klucz jest stosowany do szyfrowania i deszyfrowania;

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

Algorytmy kompresji. Kodowanie Huffmana, kodowanie arytmetyczne

Algorytmy kompresji. Kodowanie Huffmana, kodowanie arytmetyczne Algorytmy kompresji Kodowanie Huffmana, kodowanie arytmetyczne Kodowanie arytmetyczne Peter Elias 1923-2001 Kodowanie arytmetyczne to metoda kodowania źródłowego dyskretnych źródeł sygnałów, stosowana

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

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

Bardziej szczegółowo

Transformaty. Kodowanie transformujace

Transformaty. Kodowanie transformujace Transformaty. Kodowanie transformujace Kodowanie i kompresja informacji - Wykład 10 10 maja 2009 Szeregi Fouriera Każda funkcję okresowa f (t) o okresie T można zapisać jako f (t) = a 0 + a n cos nω 0

Bardziej szczegółowo

Złożoność obliczeniowa zadania, zestaw 2

Złożoność obliczeniowa zadania, zestaw 2 Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze

Bardziej szczegółowo

KODY SYMBOLI. Kod Shannona-Fano. Algorytm S-F. Przykład S-F

KODY SYMBOLI. Kod Shannona-Fano. Algorytm S-F. Przykład S-F KODY SYMBOLI Kod Shannona-Fano KODOWANIE DANYCH, A.Przelaskowski Metoda S-F Kod Huffmana Adaptacyjne drzewo Huffmana Problemy implementacji Kod Golomba Podsumowanie Kod drzewa binarnego Na wejściu rozkład:

Bardziej szczegółowo

Nierówność Krafta-McMillana, Kodowanie Huffmana

Nierówność Krafta-McMillana, Kodowanie Huffmana Nierówność Krafta-McMillana, Kodowanie Huffmana Kodowanie i kompresja informacji - Wykład 2 1 marca 2010 Test na jednoznaczna dekodowalność Kod a jest prefiksem kodu b jeśli b jest postaci ax. x nazywamy

Bardziej szczegółowo

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0, 2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d

Bardziej szczegółowo

Granica kompresji Kodowanie Shannona Kodowanie Huffmana Kodowanie ciągów Kodowanie arytmetyczne. Kody. Marek Śmieja. Teoria informacji 1 / 35

Granica kompresji Kodowanie Shannona Kodowanie Huffmana Kodowanie ciągów Kodowanie arytmetyczne. Kody. Marek Śmieja. Teoria informacji 1 / 35 Kody Marek Śmieja Teoria informacji 1 / 35 Entropia Entropia określa minimalną statystyczną długość kodowania (przyjmijmy dla prostoty że alfabet kodowy A = {0, 1}). Definicja Niech X = {x 1,..., x n }

Bardziej szczegółowo

Entropia Kodowanie. Podstawy kompresji. Algorytmy kompresji danych. Sebastian Deorowicz

Entropia Kodowanie. Podstawy kompresji. Algorytmy kompresji danych. Sebastian Deorowicz Algorytmy kompresji danych 2007 02 27 Plan wykładu 1 Modelowanie i kodowanie 2 Modelowanie i kodowanie Plan wykładu 1 Modelowanie i kodowanie 2 Modelowanie i kodowanie definicja stowarzyszona ze zbiorem

Bardziej szczegółowo

Optymalizacja ciągła

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

Bardziej szczegółowo

Macierze. Rozdział Działania na macierzach

Macierze. Rozdział Działania na macierzach Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy

Bardziej szczegółowo

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. Jarosław Wróblewski Matematyka dla Myślących, 008/09. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. 15 listopada 008 r. Uwaga: Przyjmujemy,

Bardziej szczegółowo

PRZELICZANIE JEDNOSTEK MIAR

PRZELICZANIE JEDNOSTEK MIAR PRZELICZANIE JEDNOSTEK MIAR Kompleks zajęć dotyczący przeliczania jednostek miar składa się z czterech odrębnych zajęć, które są jednak nierozerwalnie połączone ze sobą tematycznie w takiej sekwencji,

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 6

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 6 Kodowanie i kompresja Streszczenie Studia dzienne Wykład 6 1 Kody cykliczne: dekodowanie Definicja 1 (Syndrom) Niech K będzie kodem cyklicznym z wielomianem generuja- cym g(x). Resztę z dzielenia słowa

Bardziej szczegółowo

Wygra Polska czy Brazylia, czyli o tym jak zwięźle zapisywać informacje

Wygra Polska czy Brazylia, czyli o tym jak zwięźle zapisywać informacje Wygra Polska czy Brazylia, czyli o tym jak zwięźle zapisywać informacje Witold Tomaszewski Instytut Matematyki Politechniki Śląskiej e-mail: Witold.Tomaszewski@polsl.pl Je n ai fait celle-ci plus longue

Bardziej szczegółowo

Przetwarzanie i transmisja danych multimedialnych. Wykład 3 Kodowanie Shannona Fano i Huffmana. Przemysław Sękalski.

Przetwarzanie i transmisja danych multimedialnych. Wykład 3 Kodowanie Shannona Fano i Huffmana. Przemysław Sękalski. Przetwarzanie i transmisja danych multimedialnych Wykład 3 Kodowanie Shannona Fano i Huffmana Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych

Bardziej szczegółowo

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!! Zestaw 1-1 1. Napisz program pobierający od użytkownika liczbę całkowitą R (R>1) i liczbę rzeczywistą dodatnią S, a następnie informujący ile kolejnych liczb z ciągu 1, R-1, R 2-2, R 3-3, R 4-4, należy

Bardziej szczegółowo

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia

Bardziej szczegółowo

Kompresja bezstratna. Entropia. Kod Huffmana

Kompresja bezstratna. Entropia. Kod Huffmana Kompresja bezstratna. Entropia. Kod Huffmana Kodowanie i bezpieczeństwo informacji - Wykład 10 29 kwietnia 2013 Teoria informacji Jeśli P(A) jest prawdopodobieństwem wystapienia informacji A to niech i(a)

Bardziej szczegółowo

Kodowanie informacji

Kodowanie informacji Tomasz Wykład 4: kodowanie słownikowe Motywacja Motywacje 1 kodowane dane nie tworza ciagu wartości niezależnych, rozkład prawdopodobieństwa zależy od symboli poprzedzajacych symbol kodowany; 2 pewne sekwencje

Bardziej szczegółowo

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

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

Bardziej szczegółowo

Ćwiczenia z metodyki nauczania rachunku prawdopodobieństwa

Ćwiczenia z metodyki nauczania rachunku prawdopodobieństwa Ćwiczenia z metodyki nauczania rachunku prawdopodobieństwa 25 marca 209 Zadanie. W urnie jest b kul białych i c kul czarnych. Losujemy n kul bez zwracania. Jakie jest prawdopodobieństwo, że pierwsza kula

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia Wieczorowe Wykład 10, 2007

Kodowanie i kompresja Streszczenie Studia Wieczorowe Wykład 10, 2007 1 Kompresja wideo Kodowanie i kompresja Streszczenie Studia Wieczorowe Wykład 10, 2007 Dane wideo jako sekwencja skorelowanych obrazów (ramek). Specyfika danych wideo: drobne zmiany kolorów w kolejnych

Bardziej szczegółowo

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for. Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9

Bardziej szczegółowo

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG Kodowanie transformacyjne Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG Zasada Zasada podstawowa: na danych wykonujemy transformacje która: Likwiduje korelacje Skupia energię w kilku komponentach

Bardziej szczegółowo

Proste metody przetwarzania obrazu

Proste metody przetwarzania obrazu Operacje na pikselach obrazu (operacje punktowe, bezkontekstowe) Operacje arytmetyczne Dodanie (odjęcie) do obrazu stałej 1 Mnożenie (dzielenie) obrazu przez stałą Operacje dodawania i mnożenia są operacjami

Bardziej szczegółowo

Aproksymacja funkcji a regresja symboliczna

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

Bardziej szczegółowo

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

AKD Metody słownikowe

AKD Metody słownikowe AKD Metody słownikowe Algorytmy kompresji danych Sebastian Deorowicz 2009 03 19 Sebastian Deorowicz () AKD Metody słownikowe 2009 03 19 1 / 38 Plan wykładu 1 Istota metod słownikowych 2 Algorytm Ziva Lempela

Bardziej szczegółowo

Zadanie 1. Suma silni (11 pkt)

Zadanie 1. Suma silni (11 pkt) 2 Egzamin maturalny z informatyki Zadanie 1. Suma silni (11 pkt) Pojęcie silni dla liczb naturalnych większych od zera definiuje się następująco: 1 dla n = 1 n! = ( n 1! ) n dla n> 1 Rozpatrzmy funkcję

Bardziej szczegółowo

Układy równań i nierówności liniowych

Układy równań i nierówności liniowych Układy równań i nierówności liniowych Wiesław Krakowiak 1 grudnia 2010 1 Układy równań liniowych DEFINICJA 11 Układem równań m liniowych o n niewiadomych X 1,, X n, nazywamy układ postaci: a 11 X 1 + +

Bardziej szczegółowo

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje

Bardziej szczegółowo

ZADANIE 1. Rozwiązanie:

ZADANIE 1. Rozwiązanie: EUROELEKTR Ogólnopolska Olimpiada Wiedzy Elektrycznej i Elektronicznej Rok szkolny 200/20 Rozwiązania zadań dla grupy teleinformatycznej na zawody II. stopnia ZNIE ramka logiczna w technologii MOS składa

Bardziej szczegółowo

Wybrane metody kompresji obrazów

Wybrane metody kompresji obrazów Wybrane metody kompresji obrazów Celem kodowania kompresyjnego obrazu jest redukcja ilości informacji w nim zawartej. Redukcja ta polega na usuwaniu informacji nadmiarowej w obrazie, tzw. redundancji.

Bardziej szczegółowo

Kodowanie transformujace. Kompresja danych. Tomasz Jurdziński. Wykład 11: Transformaty i JPEG

Kodowanie transformujace. Kompresja danych. Tomasz Jurdziński. Wykład 11: Transformaty i JPEG Tomasz Wykład 11: Transformaty i JPEG Idea kodowania transformujacego Etapy kodowania 1 Wektor danych x 0,...,x N 1 przekształcamy (odwracalnie!) na wektor c 0,...,c N 1, tak aby: energia była skoncentrowana

Bardziej szczegółowo

KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG

KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG Joint Photographic Expert Group - 1986 ISO - International Standard Organisation CCITT - Comité Consultatif International de Téléphonie et Télégraphie Standard

Bardziej szczegółowo

LZ77 LZ78. Kompresja danych. Tomasz Jurdziński. Wykład 5: kodowanie słownikowe

LZ77 LZ78. Kompresja danych. Tomasz Jurdziński. Wykład 5: kodowanie słownikowe Tomasz Wykład 5: kodowanie słownikowe Motywacja Motywacje 1 zazwyczaj dane nie tworza ciagu wartości niezależnych, kolejny symbol jest zależny od poprzedzajacych go; 2 pewne sekwencje (słowa) często się

Bardziej szczegółowo

0 + 0 = 0, = 1, = 1, = 0.

0 + 0 = 0, = 1, = 1, = 0. 5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,

Bardziej szczegółowo

Teoria Informacji i Metody Kompresji Danych

Teoria Informacji i Metody Kompresji Danych Teoria Informacji i Metody Kompresji Danych 1 Przykładowe zadania (dodatkowe materiały wykładowe) 2 Robert Susmaga Instytut Informatyki ul. Piotrowo 2 Poznań kontakt mail owy Robert.Susmaga@CS.PUT.Poznan.PL

Bardziej szczegółowo

Rozwiązywanie układów równań liniowych

Rozwiązywanie układów równań liniowych Rozwiązywanie układów równań liniowych Marcin Orchel 1 Wstęp Jeśli znamy macierz odwrotną A 1, to możęmy znaleźć rozwiązanie układu Ax = b w wyniku mnożenia x = A 1 b (1) 1.1 Metoda eliminacji Gaussa Pierwszy

Bardziej szczegółowo

Teoria Informacji - wykład. Kodowanie wiadomości

Teoria Informacji - wykład. Kodowanie wiadomości Teoria Informacji - wykład Kodowanie wiadomości Definicja kodu Niech S={s 1, s 2,..., s q } oznacza dany zbiór elementów. Kodem nazywamy wówczas odwzorowanie zbioru wszystkich możliwych ciągów utworzonych

Bardziej szczegółowo

3.3.1. Metoda znak-moduł (ZM)

3.3.1. Metoda znak-moduł (ZM) 3.3. Zapis liczb binarnych ze znakiem 1 0-1 0 1 : 1 0 0 1 1 0 1 1 0 1 0 0 0 0 1 0 0 0 1 reszta 0 0 0 0 0 0 0 1 3.3. Zapis liczb binarnych ze znakiem W systemie dziesiętnym liczby ujemne opatrzone są specjalnym

Bardziej szczegółowo

Metody numeryczne I Równania nieliniowe

Metody numeryczne I Równania nieliniowe Metody numeryczne I Równania nieliniowe Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/66 Równania nieliniowe 1. Równania nieliniowe z pojedynczym pierwiastkiem

Bardziej szczegółowo

1 Powtórzenie wiadomości

1 Powtórzenie wiadomości 1 Powtórzenie wiadomości Zadanie 1 Napisać program, który w trybie dialogu z użytkownikiem przyjmie liczbę całkowitą, a następnie wyświetli informację czy jest to liczba parzysta czy nieparzysta oraz czy

Bardziej szczegółowo

Algorytmy zrandomizowane

Algorytmy zrandomizowane Algorytmy zrandomizowane http://zajecia.jakubw.pl/nai ALGORYTMY ZRANDOMIZOWANE Algorytmy, których działanie uzależnione jest od czynników losowych. Algorytmy typu Monte Carlo: dają (po pewnym czasie) wynik

Bardziej szczegółowo

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i,j) (i = 1,,n;j = 1,,m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F = R lub F = C, nazywamy macierzą (rzeczywistą, gdy F

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Programowanie dynamiczne

Programowanie dynamiczne Programowanie dynamiczne Ciąg Fibonacciego fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2), gdzie n 2 Elementy tego ciągu stanowią liczby naturalne tworzące ciąg o takiej własności, że kolejny wyraz (z wyjątkiem

Bardziej szczegółowo

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I Wojciech Kotłowski Instytut Informatyki Politechniki Poznańskiej email: imię.nazwisko@cs.put.poznan.pl pok. 2 (CW) tel. (61)665-2936 konsultacje:

Bardziej szczegółowo

Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału.

Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału. Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału Wiktor Miszuris 2 czerwca 2004 Przepustowość kanału Zacznijmy od wprowadzenia równości IA, B HB HB A HA HA B Można ją intuicyjnie

Bardziej szczegółowo

Wstęp Statyczne kody Huffmana Dynamiczne kody Huffmana Praktyka. Kodowanie Huffmana. Dawid Duda. 4 marca 2004

Wstęp Statyczne kody Huffmana Dynamiczne kody Huffmana Praktyka. Kodowanie Huffmana. Dawid Duda. 4 marca 2004 4 marca 2004 Podstawowe oznaczenia i definicje Wymagania wobec kodu Podstawowa idea Podsumowanie Podstawowe oznaczenia i definicje Podstawowe oznaczenia i definicje: alfabet wejściowy: A = {a 1, a 2,...,

Bardziej szczegółowo

EGZAMIN MATURALNY Z INFORMATYKI 17 MAJA 2016 POZIOM PODSTAWOWY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 75 minut

EGZAMIN MATURALNY Z INFORMATYKI 17 MAJA 2016 POZIOM PODSTAWOWY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 75 minut Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu. Układ graficzny CKE 2013 KOD UZUPEŁNIA ZDAJĄCY PESEL miejsce na naklejkę EGZAMIN MATURALNY Z INFORMATYKI POZIOM PODSTAWOWY CZĘŚĆ

Bardziej szczegółowo

1 Układy równań liniowych

1 Układy równań liniowych II Metoda Gaussa-Jordana Na wykładzie zajmujemy się układami równań liniowych, pojawi się też po raz pierwszy macierz Formalną (i porządną) teorią macierzy zajmiemy się na kolejnych wykładach Na razie

Bardziej szczegółowo

Kompresja video (MPEG)

Kompresja video (MPEG) mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 8, strona 1. Kompresja video (MEG) Zasadniczy schemat kompresora video Typy ramek przy kompresji czasowej Analiza ramek przez syntezę Sposób detekcji

Bardziej szczegółowo

Kompresja obrazów w statycznych - algorytm JPEG

Kompresja obrazów w statycznych - algorytm JPEG Kompresja obrazów w statycznych - algorytm JPEG Joint Photographic Expert Group - 986 ISO - International Standard Organisation CCITT - Comité Consultatif International de Téléphonie et Télégraphie Standard

Bardziej szczegółowo

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k. Funkcje wymierne Jerzy Rutkowski Teoria Przypomnijmy, że przez R[x] oznaczamy zbiór wszystkich wielomianów zmiennej x i o współczynnikach rzeczywistych Definicja Funkcją wymierną jednej zmiennej nazywamy

Bardziej szczegółowo

złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa

złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa Zadanie 1. Rozważmy jezyk złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa równe. Narysować diagram minimalnego automatu deterministycznego akceptujacego

Bardziej szczegółowo

Kompresja danych kodowanie Huffmana. Dariusz Sobczuk

Kompresja danych kodowanie Huffmana. Dariusz Sobczuk Kompresja danych kodowanie Huffmana Dariusz Sobczuk Plan wykładu Kodowanie metodą Shannona-Fano Kodowanie metodą Huffmana Elementarny kod Golomba Kod Golomba Kod Rice a kompresja danych 2 Efektywny kod

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Przetwarzanie i transmisja danych multimedialnych. Wykład 6 Metody predykcyjne. Przemysław Sękalski.

Przetwarzanie i transmisja danych multimedialnych. Wykład 6 Metody predykcyjne. Przemysław Sękalski. Przetwarzanie i transmisja danych multimedialnych Wykład 6 Metody predykcyjne Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych DMCS Wykład opracowano

Bardziej szczegółowo

teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015

teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015 teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015 1 wczoraj Wprowadzenie matematyczne. Entropia i informacja. Kodowanie. Kod ASCII. Stopa kodu. Kody bezprefiksowe.

Bardziej szczegółowo

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku WYKŁ 3 WYPŁNINI OSZRÓW. Wypełnianie wieloboku Zasada parzystości: Prosta, która nie przechodzi przez wierzchołek przecina wielobok parzystą ilość razy. Plan wykładu: Wypełnianie wieloboku Wypełnianie konturu

Bardziej szczegółowo

Kwantyzacja wektorowa. Kodowanie różnicowe.

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

Bardziej szczegółowo

Kryptografia systemy z kluczem tajnym. Kryptografia systemy z kluczem tajnym

Kryptografia systemy z kluczem tajnym. Kryptografia systemy z kluczem tajnym Krótkie vademecum (słabego) szyfranta Podstawowe pojęcia: tekst jawny (otwarty) = tekst zaszyfrowany (kryptogram) alfabet obu tekstów (zwykle różny) jednostki tekstu: na przykład pojedyncza litera, digram,

Bardziej szczegółowo

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych Piotr Modliński Wydział Geodezji i Kartografii PW 13 stycznia 2012 P. Modliński, GiK PW Rozw.

Bardziej szczegółowo

Algorytmy i złożoności Wykład 5. Haszowanie (hashowanie, mieszanie)

Algorytmy i złożoności Wykład 5. Haszowanie (hashowanie, mieszanie) Algorytmy i złożoności Wykład 5. Haszowanie (hashowanie, mieszanie) Wprowadzenie Haszowanie jest to pewna technika rozwiązywania ogólnego problemu słownika. Przez problem słownika rozumiemy tutaj takie

Bardziej szczegółowo

Przetwarzanie i transmisja danych multimedialnych. Wykład 5 Kodowanie słownikowe. Przemysław Sękalski.

Przetwarzanie i transmisja danych multimedialnych. Wykład 5 Kodowanie słownikowe. Przemysław Sękalski. Przetwarzanie i transmisja danych multimedialnych Wykład 5 Kodowanie słownikowe Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych DMCS Przemysław

Bardziej szczegółowo

1. Wykład NWD, NWW i algorytm Euklidesa.

1. Wykład NWD, NWW i algorytm Euklidesa. 1.1. NWD, NWW i algorytm Euklidesa. 1. Wykład 1 Twierdzenie 1.1 (o dzieleniu z resztą). Niech a, b Z, b 0. Wówczas istnieje dokładnie jedna para liczb całkowitych q, r Z taka, że a = qb + r oraz 0 r< b.

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /10

Matematyka dyskretna. Andrzej Łachwa, UJ, /10 Matematyka dyskretna Andrzej Łachwa, UJ, 2018 andrzej.lachwa@uj.edu.pl 10/10 Podziały i liczby Stirlinga Liczba Stirlinga dla cykli (często nazywana liczbą Stirlinga pierwszego rodzaju) to liczba permutacji

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Metody systemowe i decyzyjne w informatyce

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

Bardziej szczegółowo

KODY SYMBOLI. Materiały KODA, A.Przelaskowski. Koncepcja przedziałów nieskończonego alfabetu

KODY SYMBOLI. Materiały KODA, A.Przelaskowski. Koncepcja przedziałów nieskończonego alfabetu KODY SYMBOLI Materiały KODA, A.Przelaskowski Koncepcja drzewa binarnego Metoda S-F Kod Huffmana Adaptacyjne drzewo Huffmana Problemy implementacji Koncepcja przedziałów nieskończonego alfabetu Proste kody

Bardziej szczegółowo

5. Rozwiązywanie układów równań liniowych

5. Rozwiązywanie układów równań liniowych 5. Rozwiązywanie układów równań liniowych Wprowadzenie (5.1) Układ n równań z n niewiadomymi: a 11 +a 12 x 2 +...+a 1n x n =a 10, a 21 +a 22 x 2 +...+a 2n x n =a 20,..., a n1 +a n2 x 2 +...+a nn x n =a

Bardziej szczegółowo

Pomorski Czarodziej 2016 Zadania. Kategoria C

Pomorski Czarodziej 2016 Zadania. Kategoria C Pomorski Czarodziej 2016 Zadania. Kategoria C Poniżej znajduje się 5 zadań. Za poprawne rozwiązanie każdego z nich możesz otrzymać 10 punktów. Jeżeli otrzymasz za zadanie maksymalną liczbę punktów, możesz

Bardziej szczegółowo

Wykład z Technologii Informacyjnych. Piotr Mika

Wykład z Technologii Informacyjnych. Piotr Mika Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły

Bardziej szczegółowo

Analiza algorytmów zadania podstawowe

Analiza algorytmów zadania podstawowe Analiza algorytmów zadania podstawowe Zadanie 1 Zliczanie Zliczaj(n) 1 r 0 2 for i 1 to n 1 3 do for j i + 1 to n 4 do for k 1 to j 5 do r r + 1 6 return r 0 Jaka wartość zostanie zwrócona przez powyższą

Bardziej szczegółowo

6.4 Podstawowe metody statystyczne

6.4 Podstawowe metody statystyczne 156 Wstęp do statystyki matematycznej 6.4 Podstawowe metody statystyczne Spóbujemy teraz w dopuszczalnym uproszczeniu przedstawić istotę analizy statystycznej. W szczególności udzielimy odpowiedzi na postawione

Bardziej szczegółowo

Ćwiczenie nr 4: Kodowanie arytmetyczne, range coder

Ćwiczenie nr 4: Kodowanie arytmetyczne, range coder Algorytmy Kompresji Danych Laboratorium Ćwiczenie nr 4: Kodowanie arytmetyczne, range coder 1. Zapoznać się z opisem implementacji kodera entropijnego range coder i modelem danych opracowanym dla tego

Bardziej szczegółowo

Def. Kod jednoznacznie definiowalny Def. Kod przedrostkowy Def. Kod optymalny. Przykłady kodów. Kody optymalne

Def. Kod jednoznacznie definiowalny Def. Kod przedrostkowy Def. Kod optymalny. Przykłady kodów. Kody optymalne Załóżmy, że mamy źródło S, które generuje symbole ze zbioru S={x, x 2,..., x N } z prawdopodobieństwem P={p, p 2,..., p N }, symbolom tym odpowiadają kody P={c, c 2,..., c N }. fektywność danego sposobu

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

Całkowanie numeryczne przy użyciu kwadratur

Całkowanie numeryczne przy użyciu kwadratur Całkowanie numeryczne przy użyciu kwadratur Plan wykładu: 1. Kwadratury Newtona-Cotesa a) wzory: trapezów, parabol etc. b) kwadratury złożone 2. Ekstrapolacja a) ekstrapolacja Richardsona b) metoda Romberga

Bardziej szczegółowo

Zadanie 1. Potęgi (14 pkt)

Zadanie 1. Potęgi (14 pkt) 2 Egzamin maturalny z informatyki Zadanie 1. otęgi (14 pkt) W poniższej tabelce podane są wartości kolejnych potęg liczby 2: k 0 1 2 3 4 5 6 7 8 9 10 2 k 1 2 4 8 16 32 64 128 256 512 1024 Ciąg a=(a 0,

Bardziej szczegółowo

0-0000, 1-0001, 2-0010, 3-0011 itd... 9-1001.

0-0000, 1-0001, 2-0010, 3-0011 itd... 9-1001. KODOWANIE Jednym z problemów, z którymi spotykamy się w informatyce, jest problem właściwego wykorzystania pamięci. Konstruując algorytm staramy się zwykle nie tylko o zminimalizowanie kosztów czasowych

Bardziej szczegółowo

Mikrooperacje. Mikrooperacje arytmetyczne

Mikrooperacje. Mikrooperacje arytmetyczne Przygotowanie: Przemysław Sołtan e-mail: kerk@moskit.ie.tu.koszalin.pl Mikrooperacje Mikrooperacja to elementarna operacja wykonywana podczas jednego taktu zegara mikroprocesora na informacji przechowywanej

Bardziej szczegółowo

7a. Teoria drzew - kodowanie i dekodowanie

7a. Teoria drzew - kodowanie i dekodowanie 7a. Teoria drzew - kodowanie i dekodowanie Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny 7a. wteoria Krakowie) drzew - kodowanie i

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

Bardziej szczegółowo

Wstęp do informatyki- wykład 2

Wstęp do informatyki- wykład 2 MATEMATYKA 1 Wstęp do informatyki- wykład 2 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy

Bardziej szczegółowo