Algorytmy kompresji. Kodowanie Huffmana, kodowanie arytmetyczne
|
|
- Kamila Markowska
- 7 lat temu
- Przeglądów:
Transkrypt
1 Algorytmy kompresji Kodowanie Huffmana, kodowanie arytmetyczne
2 Kodowanie arytmetyczne Peter Elias Kodowanie arytmetyczne to metoda kodowania źródłowego dyskretnych źródeł sygnałów, stosowana jako jeden z systemów w bezstratnej kompresji danych. Została wynaleziona przez amerykańskiego profesora Petera Eliasa około 1960 roku. Ideą tego kodu jest przedstawienie ciągu wiadomości jako podprzedziału przedziału jednostkowego P [0,1) wyznaczonego rekursywnie na podstawie prawdopodobieństw wystąpienia tych wiadomości generowanych przez źródło. Ciąg kodowy reprezentujący kodowane wiadomości jest binarnym zapisem wartości z wyznaczonego w ten sposób przedziału.
3 Kodowanie arytmetyczne Pojedyncze słowo kodowe jest przyporządkowane każdemu możliwemu zbiorowi wiadomości ze źródła. Każde słowo kodowe może być traktowane jako jednostronnie domknięty podprzedział przedziału [0,1). Poprzez przypisanie każdemu słowu kodowemu wystarczająco dużo znaczących bitów, można odróżnić jeden podprzedział od innego i w ten sposób zdekodować ciąg bitów, przypisując mu zbiór wiadomości wygenerowanych przez źródło.
4 Algorytm kodowania Dany jest zbiór symboli S {x 1, x 2, } oraz stowarzyszony z nim zbiór prawdopodobieństw p {p 1, p 2, }. Jeden z symboli jest wyróżniony - jego wystąpienie oznacza koniec komunikatu, zapobiegając wystąpieniu niejednoznaczności; ewentualnie zamiast wprowadzenia dodatkowego symbolu można przesyłać długość kodowanego ciągu. Na początku dany jest przedział P [0,1), który dzielony jest na podprzedziały o szerokościach równych kolejnym prawdopodobieństwom p i. Kolejnym podprzedziałom (ozn. R i ) odpowiadają symbole ze zbioru. Algorytm kodowania: dla kolejnych symboli x i określamy, który podprzedział bieżącego przedziału odpowiada danej literze x i - wynikiem jest R i bierzemy nowy przedział P:= R i następuje zawężenie przedziału dzielimy ten przedział na podprzedziały tak aby zostały zachowane proporcje szerokości podprzedziałów zostaje zwrócona liczba jednoznacznie wskazującą przedział (najczęściej dolne ograniczenie, albo średnia dolnego i górnego ograniczenia).
5 Kodowanie arytmetyczne przykład 1 Rozważmy kodowanie zbioru wiadomości: AADB@ Kodowany tekst Prawdopodobieństwo Skumulowane prawdopodobieństwo Przedział A 0,2 0,2 [0,0; 0,2) A 0,4 0,6 [0,2; 0,6) D 0,1 0,7 [0,6; 0,7) B 0,2 0,9 [0,7; (koniec) 0,1 1,0 [0,9; 1,0)
6 Kodowanie arytmetyczne przykład 1 cd. Kodujemy A i otrzymujemy przedział [0.0; 0.2) Drugą liczbę A kodujemy i otrzymujemy przedział [0.0; 0.04) Kodujemy D i otrzymujemy przedział [0.028; 0.036) Kodujemy B i otrzymujemy przedział [0.0296; ) i otrzymujemy przedział [ ; ) Przedział lub dowolna liczba z niego reprezentuje kodowany zbiór wiadomości dla ustalonej długości tekstu n, każdy ciąg jest odwzorowany na przedział rozłączny z przedziałami odpowiadającymi innym ciągom. Gwarantuje to jednoznaczność kodowania wygenerowanie znacznika dla konkretnego ciągu nie wymaga wyznaczania bądź pamiętania znaczników innych ciągów nadajemy dowolną liczbę z ostatniego zawężonego zakresu żeby można było otrzymać zakodowane wiadomości, dekoder musi znać model źródła i nadaną liczbę
7 Dekodowanie arytmetyczne przykład 1 cd. Dekodowanie składa się z serii porównań odebranej liczby z zakresami reprezentującymi wiadomości ze źródła W prezentowanym przykładzie liczba ta może wynosić np , lub Ponieważ należy ona do przedziału [0.0; 0.2) dekoder rozpoznaje pierwszą wiadomość jako A, co zawęża przedział do [0.0; 0.2). Dekoder jest w stanie wywnioskować, że następna wiadomość zawęzi przedział na jeden z możliwych sposobów: do [0.0; 0.04) dla A, do [0.04; 0.12) dla B, do [0.12; 0.14) dla C, do [0.14; 0.18) dla D i [0.18; 0.2) Ponieważ odebrana liczba mieści się w przedziale [0.0; 0.04), zatem podejmuje decyzję, że następna nadana wiadomość to A. Procedura kontynuowana jest aż do określenia wszystkich wiadomości w nadanym zbiorze.
8 Wady kodowania arytmetycznego dekoder musi wiedzieć, kiedy zakończyć proces. Są możliwe dwa rozwiązania zakończenie wiadomością stop w przykładzie) to rozwiązanie jest najbardziej preferowane koder musi przesłać liczebność zbioru kodowanych wiadomości w praktycznej realizacji kodera i dekodera niezbędna jest precyzja i złożoność wykonywanych operacji podczas kodowania są ograniczone pojemności rejestrów (możliwe jest przepełnienie) występują błędy w dekodowaniu
9 Zastosowanie kodowania arytmetycznego Kodowanie arytmetyczne najczęściej wykorzystywane jest w formatach: JBIG JPEG / MPEG JPEG-2000 H.263 H.26L PPM DMM
10 Kodowanie arytmetyczne przykład 2 Rozważmy kodowanie zbioru wiadomości: bac Kodowany tekst Prawdopodobieństwo Skumulowane prawdopodobieństwo Przedział a 0,2 0,2 [0,0; 0,2) b 0,5 0,7 [0,2; 0,7) c 0,3 1,0 [0,7; 1,0) Dla każdego znaku komunikatu przypisujemy podprzedział przedziału [0,1). Dla każdego komunikatu przedział ten nazywa się przedziałem komunikatu
11 Kodowanie arytmetyczne przykład 2 cd. Kodujemy komunikat: bac Wynikowy przedział to [0,27; 0,3)
12 Dekodowanie arytmetyczne przykład 3 Dekodujemy liczbę 0.49, znamy początkowe przedziały i długość komunikatu 3: Wynikowy komunikat to bbc
13 Algorytm kodowania Huffmana David Huffman Kodowanie Huffmana to jedna z najprostszych i łatwych w implementacji metod kompresji bezstratnej. Została opracowana w 1952 roku przez Amerykanina Davida Huffmana. Algorytm Huffmana jest wykorzystywany w wielu profesjonalnych metodach kompresji tekstu, obrazów i dźwięków, również w połączeniu z innymi metodami. Redukcja wielkości danych przy stosowaniu tego algorytmu wynosi ok 50 %. W przypadku obrazów i dźwięków kodowane są nie same znaki np. piksele, ale również miejsca między kolejnymi znakami.
14 Cechy algorytmu Huffmana 0 1 a 0 1 c g a c g generuje kod zero-jedynkowy kod każdego znaku nie jest początkowym fragmentem kodu innego znaku generowany kod jest kodem prefix-free (0, 1), który pozwala na jednoznaczne dekodowanie jest tworzony tak, aby średnia długość kodu znaku była możliwie najkrótsza w tym celu wykorzystuje się informację o częstości występowania znaku w tekście. W celu wykorzystania algorytmu Huffmana musimy zbudować jego reprezentację w postaci drzewa. Charakterystycznymi cechami drzewa są: oznaczenia drzewa 0 i 1 znaki dla których tworzymy kod znajdują się w liściach drzewa
15 Algorytm Huffmana przykład Prześledźmy teraz działanie algorytmu Huffmana na przykładzie sześciu wybranych liter. W kółkach mamy częstotliwość występowania w języku polskim napisanej niżej litery. 8,71 1,29 3,45 3,10 7,90 4,63 A B D K O R W celu zbudowania drzewa Huffmana ze zbioru usuwamy dwie najmniejsze częstotliwości czyli w naszym przypadku 1,29 i 3,10. Na ich miejsce wstawiamy ich sumę 1,29 + 3,10 = 4,39 i podczepiamy wierzchołki z usuniętymi częstotliwościami pod nowy wierzchołek. 4,39 8,71 3,45 1,29 3,10 7,90 4,63 A D B K O R
16 Algorytm Huffmana przykład 3,45 7,84 4,39 Ponownie ze zbioru usuwamy dwie najmniejsze częstotliwości czyli 3,45 i 4,39. Łączymy je i otrzymujemy. D 8,71 1,29 3,10 7,90 4,63 12,47 A B K O R 7,84 4,63 Następnym krokiem jest dodanie do siebie 4,63 i 7,83 po czym otrzymujemy: 3,45 D 8,71 1,29 4,39 R 3,10 7,90 A B K O
17 Algorytm Huffmana przykład Kolejne dwie najmniejsze częstotliwości to 7,90 i 8,71, po czym otrzymaliśmy 2 drzewa: 12,47 7,84 4,63 R 16,61 3,45 4,39 8,71 7,90 1,29 D 3,10 A O B K
18 Algorytm Huffmana przykład Na końcu dodajemy dwie ostatnie częstotliwości 12,47 i 16,61. Ostatecznie otrzymujemy jedno drzewo. 16,61 12,47 8,71 7,90 7,84 4,63 A O 3,45 4,39 R D 1,29 B 3,10 K
19 Algorytm Huffmana przykład Po otrzymaniu jednego drzewa należy każde rozgałęzienie odpowiednio oznaczyć 0 lub 1. Każdą lewą gałąź 0, a prawą 1 (lub odwrotnie) ,71 16, A O 7,90 7,84 4,63 3,45 D ,47 1 4,39 R 1 1,29 3,10 1 Litera A 00 Zakodowana wartość B 1010 D 100 K 1011 O 01 R 11 B K
20 Algorytm Huffmana przykład kodowanie, dekodowanie Posiadając tabelę możemy łatwo zakodować dowolne kombinacje liter (wyrazy). Np.: Litera A 00 B 1010 D 100 K 1011 O 01 R 11 Zakodowana wartość R O D A K B R O D A W analogiczny sposób dokonujemy dekodowania zakodowanego ciągu znaków, np.: Dzięki temu, że kod jest prefiksowy łatwo można podzielić ten ciąg 0 i 1 na odpowiednie kody liter : K O R B A Odkodujmy ciąg znaków: K A D A B R A
21 Kodowanie Huffmana podsumowanie kodowanie Huffmana stanowi kanon kompresji jest adaptowane dla każdego tekstu długości ciągów kodowych dobierane są do statystyki źródła wiadomości kodowanie opiera sie o częstość występowania znaków wykorzystywane w: kodowaniu faksów standardzie kompresji: JPEG MPEG-1 MPEG-2
22 Bibliografia Drozdek A.: Wprowadzenie do kompresji danych, WNT 1999 K. Sayood, Kompresja danych. Wprowadzenie, 1. READ ME, Warszawa, 2002 W. Skarbek, Multimedia. Algorytmy i standardy kompresji, Akademicka Oficyna Wydawnicza PLJ, Warszawa, 1998 P. Wróblewski : Algorytmy, struktury danych i techniki programowania, Helion, Gliwice
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ółowoKodowanie 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ółowoKompresja 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ółowo0-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ółowoAlgorytmy kodowania entropijnego
Algorytmy kodowania entropijnego 1. Kodowanie Shannona-Fano 2. Kodowanie Huffmana 3. Jednoznaczność kodów Huffmana. Kod o minimalnej wariancji 4. Dynamiczne kodowanie Huffmana Poprzedni wykład - podsumowanie
Bardziej szczegółowoKody 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ółowomgr 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ółowoKODY 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ółowoNieró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ółowoTeoria informacji i kodowania Ćwiczenia
Teoria informacji i kodowania Ćwiczenia Piotr Chołda, Andrzej Kamisiński Katedra Telekomunikacji Akademii Górniczo-Hutniczej Kod źródłowy Kodem źródłowym nazywamy funkcję różnowartościową, która elementom
Bardziej szczegółowoGranica 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ółowoAlgorytmy zachłanne. dr inż. Urszula Gałązka
Algorytmy zachłanne dr inż. Urszula Gałązka Algorytm zachłanny O Dokonuje wyboru, który w danej chwili wydaje się najkorzystniejszy. O Mówimy, że jest to wybór lokalnie optymalny O W rzeczywistości nie
Bardziej szczegółowoWstę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ółowoKodowanie Huffmana. Platforma programistyczna.net; materiały do laboratorium 2014/15 Marcin Wilczewski
Kodowanie Huffmana Platforma programistyczna.net; materiały do laboratorium 24/5 Marcin Wilczewski Algorytm Huffmana (David Huffman, 952) Algorytm Huffmana jest popularnym algorytmem generującym optymalny
Bardziej szczegółowoKompresja 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ółowoKompresja 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ółowoKody Huffmana. Konrad Wypyski. 11 lutego 2006 roku
Kody Huffmana Konrad Wypyski 11 lutego 2006 roku Spis treści 1 Rozdział 1 Kody Huffmana Kody Huffmana (ang. Huffman coding) to jedna z najprostszych i najłatwiejszych w implementacji metod kompresji bezstratnej;
Bardziej szczegółowoDef. 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ółowoTemat: 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ółowoAlgorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne
Algorytmy i struktury danych Wykład VIII Elementarne techniki algorytmiczne Co dziś? Algorytmy zachłanne (greedyalgorithms) 2 Tytułem przypomnienia metoda dziel i zwyciężaj. Problem można podzielić na
Bardziej szczegółowoteoria informacji Entropia, informacja, kodowanie Mariusz Różycki 24 sierpnia 2015
teoria informacji Entropia, informacja, kodowanie Mariusz Różycki 24 sierpnia 2015 1 zakres materiału zakres materiału 1. Czym jest teoria informacji? 2. Wprowadzenie matematyczne. 3. Entropia i informacja.
Bardziej szczegółowoPrzetwarzanie 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ółowoWygra 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ółowoZADANIE 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ółowoAlgorytmy i struktury danych
Cel ćwiczenia lgorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Kompresja Ćwiczenie ma na celu
Bardziej szczegółowoElementy teorii informacji i kodowania
i kodowania Entropia, nierówność Krafta, kodowanie optymalne Marcin Jenczmyk m.jenczmyk@knm.katowice.pl 17 kwietnia 2015 M. Jenczmyk Spotkanie KNM i kodowania 1 / 20 Niech S = {x 1,..., x q } oznacza alfabet,
Bardziej szczegółowoTeoria 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ółowoKodowanie 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ółowoKodowanie predykcyjne
Studia Wieczorowe Wrocław, 27.03.2007 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
Bardziej szczegółowoDefinicja. Jeśli. wtedy
Definicja Jeśli wtedy Cel kompresji: zredukowanie do minimum oczekiwanego (średniego) kosztu gdzie l i jest długością słowa kodu c i kodującego symbol a i Definicja Definicje Efektywność kodowania określamy
Bardziej szczegółowoPodstawowe pojęcia. Teoria informacji
Kodowanie i kompresja informacji - Wykład 1 22 luty 2010 Literatura K. Sayood, Kompresja danych - wprowadzenie, READ ME 2002 (ISBN 83-7243-094-2) Literatura K. Sayood, Kompresja danych - wprowadzenie,
Bardziej szczegółowoKodowanie 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ółowomgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 3, strona 1.
mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 3, strona 1. KOMPRESJA ALGORYTMEM HUFFMANA I LZ77 Idea algorytmu Huffmana Huffman kontra LZW Sposób tworzenia słownika Etapy budowy drzewa kodu
Bardziej szczegółowoWYBRANE PROBLEMY BEZSTRATNEJ KOMPRESJI OBRAZÓW BINARNYCH
Studia i Materiały Informatyki Stosowanej, Tom 2, Nr 2, 2010 str.67-72 WYBRANE PROBLEMY BEZSTRATNEJ KOMPRESJI OBRAZÓW BINARNYCH Urszula Wójcik, Dariusz Frejlichowski Zachodniopomorski Uniwersytet Technologiczny
Bardziej szczegółowoTechnologie Informacyjne
System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne
Bardziej szczegółowo2 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ółowoEntropia 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ółowoKODY 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ółowoKodowanie 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ółowoWedł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ółowoKwantyzacja 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ółowoTeoria informacji i kodowania Ćwiczenia Sem. zimowy 2016/2017
Algebra liniowa Zadanie 1 Czy jeśli wektory x, y i z, należące do binarnej przestrzeni wektorowej nad ciałem Galois GF (2), są liniowo niezależne, to można to samo orzec o następujących trzech wektorach:
Bardziej szczegółowoKodowanie i entropia
Kodowanie i entropia Marek Śmieja Teoria informacji 1 / 34 Kod S - alfabet źródłowy mocy m (np. litery, cyfry, znaki interpunkcyjne), A = {a 1,..., a n } - alfabet kodowy (symbole), Chcemy przesłać tekst
Bardziej szczegółowo0 + 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ółowoKodowanie 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ółowoNiech x 1,..., x n będzie ciągiem zdarzeń. ---
Matematyczne podstawy kryptografii, Ćw2 TEMAT 7: Teoria Shannona. Kody Huffmana, entropia. BIBLIOGRAFIA: [] Cz. Bagiński, cez.wipb.pl, [2] T. H. Cormen, C. E. Leiserson, R. L Rivest, Wprowadzenie do algorytmów,
Bardziej szczegółowoZAPOTRZEBOWANIE DO MAGAZYNU ZMM_WNMAG NA MATERIAŁY CIĄGŁEGO UŻYCIA (ZA) I MATERIAŁY PROMOCYJNE (ZR) W REFERENCJI DO RW
ZAPOTRZEBOWANIE DO MAGAZYNU ZMM_WNMAG NA MATERIAŁY CIĄGŁEGO UŻYCIA (ZA) I MATERIAŁY PROMOCYJNE (ZR) W REFERENCJI DO RW Celem utworzenia zapotrzebowania do magazynu SGM użyj transakcji ZMM_WNMAG System
Bardziej szczegółowoTeoria informacji i kodowania Ćwiczenia Sem. zimowy 2016/2017
Kody źródłowe jednoznacznie dekodowalne Zadanie Ile najwięcej słów kodowych może liczyć kod binarny jednoznacznie dekodowalny, którego najdłuższe słowo ma siedem liter? (Odp. 28) Zadanie 2 Zbiór sześciu
Bardziej szczegółowoKompresja 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ółowoWykład 5. Kompresja danych
Wykład 5 Kompresja danych 1 Metody kompresji - przegląd Co to jest kompresja danych Definicje Kompresja bezstratna i stratna Kody o stałej i zmiennej długości Entropia i warunek Shannon a Metody kodowania
Bardziej szczegółowoTeoria przetwarzania A/C i C/A.
Teoria przetwarzania A/C i C/A. Autor: Bartłomiej Gorczyński Cyfrowe metody przetwarzania sygnałów polegają na przetworzeniu badanego sygnału analogowego w sygnał cyfrowy reprezentowany ciągiem słów binarnych
Bardziej szczegółowoKodowanie Shannona-Fano
Kodowanie Shannona-Fano Kodowanie Shannona-Fano znane było jeszcze przed kodowaniem Huffmana i w praktyce można dzięki niemu osiągnąć podobne wyniki, pomimo, że kod generowany tą metodą nie jest optymalny.
Bardziej szczegółowoKodowanie 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ółowoModulacja i kodowanie. Labolatorium. Kodowanie źródłowe Kod Huffman a
Modulacja i kodowanie Labolatorium Kodowanie źródłowe Kod Huffman a W tym ćwiczeniu zajmiemy się kodowaniem źródłowym (source coding). 1. Kodowanie źródłowe Głównym celem kodowanie źródłowego jest zmniejszenie
Bardziej szczegółowoDZIESIĘTNY SYSTEM LICZBOWY
DZIESIĘTNY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dziesięć symboli (cyfr): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Dowolną liczbę w systemie dziesiętnym możemy przedstawić jako następująca
Bardziej szczegółowoArytmetyka komputera
Arytmetyka komputera Systemy zapisu liczb System dziesiętny Podstawą układu dziesiętnego jest liczba 10, a wszystkie liczby można zapisywać dziesięcioma cyframi: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Jednostka
Bardziej szczegółowoAnaliza obrazu. wykład 3. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009
Analiza obrazu komputerowego wykład 3 Marek Jan Kasprowicz Uniwersytet Rolniczy 2009 Binaryzacja Binaryzacja jest jedną z ważniejszych ż czynności punktowego przetwarzania obrazów. Poprzedza prawie zawsze
Bardziej szczegółowoWybrane 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ółowoPodstawy kompresji danych
Podstawy kompresji danych Pojęcie kompresji W ogólności kompresja (kodowanie) jest procedurą (przekształceniem) zmiany reprezentacji wejściowego zbioru danych do postaci wymagającej mniejszej liczby bitów
Bardziej szczegółowoPrzetwarzanie 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ółowoAKD 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ółowoStan wysoki (H) i stan niski (L)
PODSTAWY Przez układy cyfrowe rozumiemy układy, w których w każdej chwili występują tylko dwa (zwykle) możliwe stany, np. tranzystor, jako element układu cyfrowego, może być albo w stanie nasycenia, albo
Bardziej szczegółowoWykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki
Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład I: Kodowanie liczb w systemach binarnych 1 Część 1 Dlaczego system binarny? 2 I. Dlaczego system binarny? Pojęcie bitu Bit jednostka informacji
Bardziej szczegółowoKOMPRESJA STRATNA I BEZSTRATNA
KOMPRESJA STRATNA I BEZSTRATNA W znaczeniu informatycznym kompresja to zmniejszenie objętości danych przy zachowaniu ładunku informacyjnego, czyli sensu tych danych. Celem kompresji jest zatem możliwie
Bardziej szczegółowoZał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ółowoZastosowanie kompresji w kryptografii Piotr Piotrowski
Zastosowanie kompresji w kryptografii Piotr Piotrowski 1 Plan prezentacji I. Wstęp II. Kryteria oceny algorytmów III. Główne klasy algorytmów IV. Przykłady algorytmów selektywnego szyfrowania V. Podsumowanie
Bardziej szczegółowoMicha Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (2)
Micha Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (2) Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie Innowacyjna
Bardziej szczegółowoLZ77 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ółowoWydział Mechaniczny. Instrukcja do zajęć laboratoryjnych
Politechnika Białostocka Wydział Mechaniczny Instrukcja do zajęć laboratoryjnych Temat ćwiczenia: Arytmetyka układów cyfrowych część 1 dodawanie i odejmowanie liczb binarnych Numer ćwiczenia: 1 Laboratorium
Bardziej szczegółowoPrzedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2.
Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2. Technika obrazu 24 W.3. Normalizacja w zakresie obrazu cyfrowego
Bardziej szczegółowoKonkursy w województwie podkarpackim w roku szkolnym 2016/2017
... Pieczątka Organizatora... Tu wpisz swój Kod KONKURS PRZEDMIOTOWY Z INFORMATYKI DLA UCZNIÓW GIMNAZJUM ETAP WOJEWÓDZKI Drogi uczniu, Witaj na II etapie konkursu informatycznego. Przeczytaj uważnie instrukcję
Bardziej szczegółowoKompresja 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ółowoW11 Kody nadmiarowe, zastosowania w transmisji danych
W11 Kody nadmiarowe, zastosowania w transmisji danych Henryk Maciejewski Jacek Jarnicki Marek Woda www.zsk.iiar.pwr.edu.pl Plan wykładu 1. Kody nadmiarowe w systemach transmisji cyfrowej 2. Typy kodów,
Bardziej szczegółowo1.1. Pozycyjne systemy liczbowe
1.1. Pozycyjne systemy liczbowe Systemami liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Dla dowolnego
Bardziej szczegółowoAlgorytmy i struktury danych. wykład 8
Plan wykładu: Kodowanie. : wyszukiwanie wzorca w tekście, odległość edycyjna. Kodowanie Kodowanie Kodowanie jest to proces przekształcania informacji wybranego typu w informację innego typu. Kod: jest
Bardziej szczegółowoPython: JPEG. Zadanie. 1. Wczytanie obrazka
Python: JPEG Witajcie! Jest to kolejny z serii tutoriali uczący Pythona, a w przyszłości być może nawet Cythona i Numby Jeśli chcesz nauczyć się nowych, zaawansowanych konstrukcji to spróbuj rozwiązać
Bardziej szczegółowoKrzysztof Leszczyński Adam Sosnowski Michał Winiarski. Projekt UCYF
Krzysztof Leszczyński Adam Sosnowski Michał Winiarski Projekt UCYF Temat: Dekodowanie kodów 2D. 1. Opis zagadnienia Kody dwuwymiarowe nazywane często kodami 2D stanowią uporządkowany zbiór jasnych i ciemnych
Bardziej szczegółowoAlgorytmy przeszukiwania wzorca
Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Algorytmy przeszukiwania wzorca 1 Wstęp Algorytmy
Bardziej szczegółowoEGZAMIN 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Ć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ółowoKodowanie i kompresja Streszczenie Studia dzienne Wykład 12,
1 Kompresja stratna Kodowanie i kompresja Streszczenie Studia dzienne Wykład 12, 5.05.2005 Algorytmy kompresji bezstratnej oceniane są ze względu na: stopień kompresji; czas działania procesu kodowania
Bardziej szczegółowoSystemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).
Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 1. Systemy liczbowe Cel dydaktyczny: Poznanie zasad reprezentacji liczb w systemach pozycyjnych o różnych podstawach. Kodowanie liczb dziesiętnych
Bardziej szczegółowoteoria 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ółowoUrządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN):
1. SYSTEMY LICZBOWE UŻYWANE W TECHNICE KOMPUTEROWEJ System liczenia - sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Do zapisu
Bardziej szczegółowoPodstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują
Bardziej szczegółowoKodowanie informacji. Przygotował: Ryszard Kijanka
Kodowanie informacji Przygotował: Ryszard Kijanka Komputer jest urządzeniem służącym do przetwarzania informacji. Informacją są liczby, ale także inne obiekty, takie jak litery, wartości logiczne, obrazy
Bardziej szczegółowoPodstawy kompresji treści multimedialnych. Opracował: dr inż. Piotr Suchomski
Podstawy kompresji treści multimedialnych Opracował: dr inż. Piotr Suchomski Wprowadzenie Dane multimedialne to przede wszystkim duże strumienie danych liczone w MB a coraz częściej w GB; Mimo dynamicznego
Bardziej szczegółowoTechniki multimedialne
Techniki multimedialne Digitalizacja podstawą rozwoju systemów multimedialnych. Digitalizacja czyli obróbka cyfrowa oznacza przetwarzanie wszystkich typów informacji - słów, dźwięków, ilustracji, wideo
Bardziej szczegółowo12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:
PRZYPOMNIJ SOBIE! Matematyka: Dodawanie i odejmowanie "pod kreską". Elektronika: Sygnały cyfrowe. Zasadę pracy tranzystorów bipolarnych i unipolarnych. 12. Wprowadzenie 12.1. Sygnały techniki cyfrowej
Bardziej szczegółowoTranzystor JFET i MOSFET zas. działania
Tranzystor JFET i MOSFET zas. działania brak kanału v GS =v t (cutoff ) kanał otwarty brak kanału kanał otwarty kanał zamknięty w.2, p. kanał zamknięty Co było na ostatnim wykładzie? Układy cyfrowe Najczęściej
Bardziej szczegółowoKombinacyjne bloki funkcjonalne - wykład 3
SWB - Kombinacyjne bloki funkcjonalne - wykład 3 asz 1 Kombinacyjne bloki funkcjonalne - wykład 3 Adam Szmigielski aszmigie@pjwstk.edu.pl Laboratorium robotyki s09 SWB - Kombinacyjne bloki funkcjonalne
Bardziej szczegółowoPodstawowe operacje arytmetyczne i logiczne dla liczb binarnych
1 Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych 1. Podstawowe operacje logiczne dla cyfr binarnych Jeśli cyfry 0 i 1 potraktujemy tak, jak wartości logiczne fałsz i prawda, to działanie
Bardziej szczegółowoPodstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki
Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych Instytut Automatyki i Robotyki Warszawa, 2015 Kody liczb całkowitych nieujemnych Kody liczbowe dzielimy na analityczne nieanalityczne (symboliczne)
Bardziej szczegółowoWstęp do Techniki Cyfrowej... Teoria automatów
Wstęp do Techniki Cyfrowej... Teoria automatów Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia
Bardziej szczegółowoPrzetwarzanie i transmisja danych multimedialnych. Wykład 2 Podstawy kompresji. Przemysław Sękalski.
Przetwarzanie i transmisja danych multimedialnych Wykład Podstawy kompresji Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych DMCS Zawartość wykładu.
Bardziej szczegółowoALGORYTMY BEZSTRATNEJ KOMPRESJI DANYCH
STUDIA INFORMATICA 2003 Volume 24 Number 1 (52) Roman STAROSOLSKI Politechnika Śląska, Instytut Informatyki ALGORYTMY BEZSTRATNEJ KOMPRESJI DANYCH Streszczenie. W artykule, po omówieniu podstawowych pojęć
Bardziej szczegółowoWykład 2: Arkusz danych w programie STATISTICA
Wykład 2: Arkusz danych w programie STATISTICA Nazwy przypadków Numer i nazwa zmiennej Elementy arkusza danych Cechy statystyczne Zmienne (kolumny) Jednostki statystyczne Przypadki (wiersze) Tworzenie
Bardziej szczegółowoKodowanie informacji. Kody liczbowe
Wykład 2 2-1 Kodowanie informacji PoniewaŜ komputer jest urządzeniem zbudowanym z układów cyfrowych, informacja przetwarzana przez niego musi być reprezentowana przy pomocy dwóch stanów - wysokiego i niskiego,
Bardziej szczegółowoHaszowanie (adresowanie rozpraszające, mieszające)
Haszowanie (adresowanie rozpraszające, mieszające) Tadeusz Pankowski H. Garcia-Molina, J.D. Ullman, J. Widom, Implementacja systemów baz danych, WNT, Warszawa, Haszowanie W adresowaniu haszującym wyróżniamy
Bardziej szczegółowoMaszyna Turinga języki
Maszyna Turinga języki Teoria automatów i języków formalnych Dr inż. Janusz Majewski Katedra Informatyki Maszyna Turinga (1) b b b A B C B D A B C b b Q Zależnie od symbolu obserwowanego przez głowicę
Bardziej szczegółowo