TECHNIKI MULTIMEDIALNE

Podobne dokumenty
Kompresja video (MPEG)

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

dr inż. Piotr Odya Wprowadzenie

Kompresja sekwencji obrazów

Audio i video. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Cyfrowe przetwarzanie i kompresja danych. dr inż.. Wojciech Zając

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.

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 sekwencji obrazów - algorytm MPEG-2

Wstęp do techniki wideo

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

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

Wykład III: Kompresja danych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

dr inż. Piotr Odya dr inż. Piotr Suchomski

KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG

Kodowanie źródeł sygnały video. Sygnał video definicja i podstawowe parametry

Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami

Nowoczesne metody emisji ucyfrowionego sygnału telewizyjnego

Wybrane metody kompresji obrazów

Kompresja obrazów w statycznych - algorytm JPEG

Klasyfikacja metod kompresji

Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami

Python: JPEG. Zadanie. 1. Wczytanie obrazka

Klasyfikacja metod kompresji

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

DŹWIĘK. Dźwięk analogowy - fala sinusoidalna. Dźwięk cyfrowy 1-bitowy 2 możliwe stany fala jest mocno zniekształcona

Joint Photographic Experts Group

Kompresja dźwięku w standardzie MPEG-1

Formaty plików wideo DSI III

Komputerowy montaż dźwięku i obrazu

PRACA DYPLOMOWA STUDIA PIERWSZEGO STOPNIA. Łukasz Kutyła Numer albumu: 5199

Zastosowanie kompresji w kryptografii Piotr Piotrowski

Odtwarzanie i kompresja wideo

dr inż. Piotr Odya. Kontener

Synchronizacja dźwięku i obrazu

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Cechy formatu PNG Budowa bloku danych Bloki standardowe PNG Filtrowanie danych przed kompresją Wyświetlanie progresywne (Adam 7)

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

Formaty plików. graficznych, dźwiękowych, wideo

Standardy telewizji kolorowej (SD)

Transformata Fouriera

Co to jest dźwięk. Dźwięk to wyrażenie słuchowe wywołane przez falę akustyczną. Ludzki narząd wyłapuje dźwięki z częstotliwością 16 do 20 Hz

dr inż. Piotr Odya Kontener

Wymiana i Składowanie Danych Multimedialnych Mateusz Moderhak, EA 106, Pon. 11:15-12:00, śr.

Program wykładu. 1. Systemy rejestracji obrazów technologie CCD, CMOS

Podstawy transmisji multimedialnych podstawy kodowania dźwięku i obrazu Autor Wojciech Gumiński

Kwantyzacja wektorowa. Kodowanie różnicowe.

Sieci neuronowe - projekt

Synchronizacja dźwięku i obrazu. Opracował: dr inż. Piotr Suchomski

Techniki Tworzenia Plików Filmowych

fazy tworzenia filmu preprodukcja szkice, rysunki, plany produkcji... produkcja nagrywanie scen postprodukcja montaż, korekcja, podkład dźwiękowy

Kompresja JPG obrazu sonarowego z uwzględnieniem założonego poziomu błędu

NOWOCZESNE METODY EMISJI UCYFROWIONEGO SYGNAŁU TELEWIZYJNEGO

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

Transformaty. Kodowanie transformujace

1. Wprowadzenie 1.1. Zdefiniowanie problemu badawczego

Grafika rastrowa (bitmapa)-

Grafika Komputerowa Wybrane definicje. Katedra Informatyki i Metod Komputerowych Uniwersytet Pedagogiczny im. KEN w Krakowie apw@up.krakow.

Temat: Wykorzystanie narzędzi multimedialnych i IT do obróbki i montażu filmów

Konwersja dźwięku analogowego do postaci cyfrowej

Przedstawiamy Państwu tekst będący

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

FORMATY PLIKÓW GRAFICZNYCH

Elementy grafiki komputerowej

Streszczenie Komputery do przechowywania rysunków, zdjęć i innych obrazów używają tylko liczb. Te zajęcia mają ukazać w jaki sposób to robią.

Standardy wideo: technologie cyfrowe

Kompresja danych DKDA (7)

Kodowanie podpasmowe. Plan 1. Zasada 2. Filtry cyfrowe 3. Podstawowy algorytm 4. Zastosowania

OPTYMALIZACJA PARAMETRÓW TRANSMISJI OBRAZU NA POTRZEBY SYSTEMU MONITOROWANIA PZR

Akwizycja obrazów. Zagadnienia wstępne

ANALIZA PORÓWNAWCZA METOD KOMPRESJI OBRAZÓW CYFROWYCH COMPARATIVE ANALYSIS OF METHODS OF COMPRESSION OF DIGITAL IMAGES

Przygotowali: Bartosz Szatan IIa Paweł Tokarczyk IIa

Cechy karty dzwiękowej

Micha Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (2)

Przetwarzanie i transmisja danych multimedialnych. Wykład 10 Kompresja obrazów ruchomych MPEG. Przemysław Sękalski.

Poniższy poradnik opisuje proces kompresji filmu DVD do formatu AVI z wykorzystaniem kodeka XviD w programie FairUse Wizard.

mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 1, strona 1.

Fundamentals of Data Compression

Grafika Komputerowa Wykład 1. Wstęp do grafiki komputerowej Obraz rastrowy i wektorowy. mgr inż. Michał Chwesiuk 1/22

Wielokanałowe systemy kodowania dźwięku

INSTRUKCJA OBSŁUGI USB2.0 GRABBER

Krótki przegląd pierwszych standardów kompresji obrazów

Waldemar Izdebski - Wykłady z przedmiotu SIT / Mapa zasadnicza 30

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 6. Transformata cosinusowa. Krótkookresowa transformata Fouriera.

Dźwięk podstawowe wiadomości technik informatyk

* Big Index - Indeks dołączony do ProfiCD w formacie 25x24 cm. Usługa dotyczy negatywów i diapozytywów typu 135. Index zawiera 36 klatek.

Grafika rastrowa i wektorowa

Podstawy grafiki komputerowej

Pomiary w technice studyjnej. TESTY PESQ i PEAQ

Inżynieria obrazów cyfrowych. Ćwiczenie 5. Kompresja JPEG

Kompresja obrazu ruchomego

1 LEKCJA. Definicja grafiki. Główne działy grafiki komputerowej. Programy graficzne: Grafika rastrowa. Grafika wektorowa. Grafika trójwymiarowa

Wstawianie filmu i odtwarzanie go automatycznie

Kwantowanie sygnałów analogowych na przykładzie sygnału mowy

Tworzenie prezentacji w MS PowerPoint

Dane obrazowe. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

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

Grafika komputerowa. Dla DSI II

Cyfrowe przetwarzanie i kompresja danych

Część II Wyświetlanie obrazów

Transkrypt:

Studia Podyplomowe INFORMATYKA TECHNIKI MULTIMEDIALNE dr Artur Bartoszewski

Film ile klatek na sekundę? Impulsy świetlne działają na komórki nerwowe jeszcze przez kilka ułamków sekundy po ustąpieniu faktycznego zjawiska, przez co przy następujących szybko po sobie obrazach (od około 15 na sekundę), obserwowanych w odpowiedniej kolejności, uzyskujemy wrażenie obrazu ruchomego. Stąd dolna granica to ok 15 k/s; Kino 24 k/s TV 25 k/s Monitor analogowy 25 do 60 k/s Monitor LCD 60 k/s HDTV 25 do 60 k/s

Film jaka rozdzielczość? Przy szybko następującej po sobie sekwencji obrazów oko ludzkie jest dużo bardziej tolerancyjne dla mniejszych rozdzielczości niż w przypadku obrazów nieruchomych.

Kompresja filmu W technikach kompresji obowiązuje przede wszystkim zasada mówiąca, że zlikwidowanie redundantnej informacji jest sprawą zasadniczą. Przy wartościowaniu informacji uwzględnia się też fizjologiczne aspekty postrzegania. Rozdzielczość zakresu barw może być niższa niż rozdzielczość zakresu jaskrawości. Wartości kolorów mogą być traktowane nierównomiernie. W centrum ekranu nieścisłości w odtwarzanym obrazie będą się bardziej rzucały w oczy niż na jego obrzeżach. W związku z tym zmniejszona jakość odtworzenia będzie mniej zauważalna na peryferiach ekranu, niż w jego centrum.

Formaty kompresji filmu

Formaty zapisu filmu (M-JPEG) M-JPEG (Motion JPEG) to ruchoma" odmiana statycznego JPEG-a. Stosuje się tu ten sam algorytm kompresji. Pierwotnie stworzony do kompresji pojedynczych klatek, M-JPEG stosuje wyłącznie kompresję wewnątrzklatkową, czyli kompresuje każdą klatkę oddzielnie. Schemat kompresji wygląda następująco: RGB --> Konwersja do YUV --> Dyskretna transformacja kosinusowa --> Kodowanie Huffmana --> Plik AVI Po dokonaniu konwersji obrazu z formatu RGB na YUV każdy z trzech obrazów jest dzielony na bloki o wielkości 8x8 pikseli. Następnie na każdym z tych bloków dokonywana jest seria obliczeń, nazywana dyskretną transformacją kosinusową

Formaty zapisu filmu (M-JPEG) M-JPEG został utworzony do kodowania obrazów ruchomych i nie obejmuje swym działaniem ścieżki dźwiękowej. Zakres kompresji może być zmienny i wynosi od 2:1 aż do 100:1 (najgorsza jakość to najmniejsza ilość danych do zapisania na dysku), przy czym M-JPEG 12:1 daje niską jakość, całkowicie nie do przyjęcia nawet po zgraniu na VHS. Minimum jest 10:1, a ze względu na jakość poleca się stopień kompresji od 2 do 4:1. Ponieważ format ten wymaga instalowania specjalnych kodeków, a filmy zakodowane za jego pomocą zajmują dość dużo miejsca, lecz bardzo dobrze nadają się do późniejszej obróbki. format ten doskonale nadaje się do wstępnej kompresji obrazów przechwytywanych np. z kamery wideo lub tune ra TV. M-JPEG był pierwszym sposobem digitalizacji analogowych nagrań wideo i przez to powszechnie stosowanym w pierwszych urządzeniach digitalizujących.

Formaty zapisu filmu (M-JPEG) Rozdzielczość

Formaty zapisu filmu (DV) DV (Digital Video) Cyfrowy format komponentowy do zastosowań konsumenckich, DV, jest formatem specyficznym, który do zapisu wideo wykorzystuje cyfrowe taśmy o szerokości 6,35 mm. Sygnały wizyjne są kodowane: ze stałą kompresją danych 5:1, o wysokiej rozdzielczości ponad 500 linii poziomych, przy zastosowaniu próbkowania luminancji z częstotliwością 5,75 MHz oraz chrominancji - 6,75 MHz.

Formaty zapisu filmu (DV) Format DV wywodzi się w prostej linii od M-JPEG, a jednocześnie ma cechy zapożyczone z MPEG. Podstawowe algorytmy kompresji to: DCT (dyskretna transformata cosinusowa), czyli kompresja wewnątrzklatkową, kompresja międzypolowa. W odróżnieniu od stosowanej w MPEG kompresji międzyklatkowej w kompresji międzypolowej estymacja (przewidywanie) ruchu obiektów zmieniających swoje położenie jest szacowana na podstawie sąsiednich pól, a nie całych klatek.

Formaty zapisu filmu (DV) DV nie dorównuje jakością obrazu profesjonalnym (obecnie) cyfrowym formatom zapisu, np. Digital Betacam (DB). DB stosuje format YUV 4:2:2, któremu zawdzięcza lepsze odwzorowanie sygnału chrominancji niż w formacie YUV 4:2:0 używanym w DV (PAL). Format DV jest rzadko stosowany w zapisie obrazu na komputerze, ze względu na niski stopień kompresji (5:1), - kilkudziesięciominutowy film może zajmować nawet kilkanaście gigabajtów i konieczność stosowania niestandardowych kodeków

Szacowanie ruchu (motion compensation) Dzięki kompresji pojedynczych obrazów metodą MJPEG jest możliwe tworzenie obrazu ruchomego jako sekwencji nieruchomych klatek. Jeśli uwzględnimy, że każda ramka z sekwencji jest postrzegana mniej wyraźnie niż taka ramka obserwowana jako pojedynczy obraz nieruchomy, to dojdziemy do wniosku, że zastosowanie nawet duży współczynnika kompresji nie rzutuje w sposób znaczący na jakość obrazu. Przy JPEG umyka nam jednak ważny aspekt obrazu ruchomego, a mianowicie fakt znacznego wzajemnego podobieństwa kolejnych klatek. Niezbędne jest więc zastosowanie kompresji, dzięki której te nadmiarowe informacje zostałyby wyeliminowane. Takie działanie pozwala na 3-krotne, a nawet 4-krotne zwiększenie współczynnika kompresji i osiągnięcie wartości od 150:1 do 200:1

Szacowanie ruchu (motion compensation) Tu nasuwają się od razu pytania: W jaki sposób jednak wyodrębnić statyczne elementy obrazu?" Ponieważ o statyce i dynamice obrazu orzekać można dopiero na podstawie sekwencji klatek, konieczne staje się porównanie co najmniej dwóch kolejnych, zdigitalizowanych obrazów nieruchomych. Teoretycznie można by przeprowadzić porównanie obrazów piksel po pikselu, rejestrując jedynie różnicę między nimi - wraz z określeniem współrzędnych, dla których zmiany te nastąpiły. Takie rozwiązanie byłoby jednak bardzo niepraktyczne, bo nawet najdrobniejsze, niezauważalne dla oka przesunięcie obrazu (wywołane np. przez drgania kamery)

Szacowanie ruchu (motion compensation) Rozwiązaniem jest podział obrazu na bloki pikseli. Można teraz porównywać nie pojedyncze piksele lecz całe ich bloki i, w procesie kojarzenia bloków (block Mtching), orzekać o różnicach i podobieństwie. Można w ten sposób stwierdzić, czy w polach następują jakieś zmiany - w takim przypadku informację o nich przekazuje się w postaci wartości różnicowych. Przy szybkiej zmianie podobnych klatek, stosowanym niekiedy rozwiązaniem jest interpolacja. Jeżeli porównany pierwszą i trzecią klatkę z sekwencji, to możemy na ich podstawie podać przybliżoną wartość klatki drugiej. Tak więc zamiast tej drugiej klatki, można przekazywać jedynie różnice między jej rzeczywistym wyglądem a obliczonym przybliżeniem.

Kompensacja ruchu Podobieństwa pomiędzy ramkami

Kompensacja ruchu

MPEG - Szacowanie ruchu (motion compensation) Tego typu kompresję umożliwia właśnie druga używana przez MPEG technika zwana motion compensation (szacowanie ruchu). Ramka I(x) jest podobna do ramki poprzedzającej I(x-1), może więc być skonstruowana przy jej użyciu. Wektor wskazujący odpowiedni fragment (16x16) ramki referencyjnej (marobloku) może być zapisany za pomocą mniejszej liczby bitów niż fragment oryginalnego obrazka. Dopasowanie poprzedzającego i aktualnego makrobloku często nie jest właściwe, więc zapisywana jest również różnica pomiędzy danymi rzeczywistymi a przewidywanymi, nazywana MCPE (Motion Compensation Prediction Error).

Kompensacja międzyklatkowa - szacowanie ruchu Wychwytywanie zmian pomiędzy poszczególnymi klatkami, które wynikają z przesunięcia obiektów. Zalety: pozwala na znacznie lepszą kompresję dzięki zredukowaniu ilości informacji opisujących różnice pomiędzy klatkami. Wady: wymaga czasochłonnych obliczeń, wymaga dostarczenia bloku danych naprzód

Techniki kompresji Kompresja międzyklatkowa (Inteiframe compression) polega na kompresji klatek zawartych pomiędzy klatkami kluczowymi. W systemie PAL pełna informacja o zawartości obrazu jest przenoszona przez co 12. klatkę. Omawiana kompresja zakłada, że pomiędzy klatkami kluczowymi (typu I) znajdują się klatki podobne do siebie, co umożliwia ich kompresję. Kompresja wewnątrzklatkowa (Intraframe compression) polega na kompresji każdej klatki, bez podziału na klatki kluczowe. Na przykład w formacie M-JPEG (Motion JPEG) każda ramka jest kompresowana podobnie jak obrazy JPEG.

Formaty zapisu filmu (MPEG) Kompresją obrazów ruchomych, przesyłanych z prędkością transmisji 1.5 Mb/s, zajmuje się tzw. grupa MPEG (MovingPictureExperts Group). Dokładna nazwa tego zespołu to JTC1/SC2/WG11. Prace rozpoczęte w 1992 roku trwają nadal MPEG określa się często jako standard bazowy, co oznacza dokładnie tyle, że jesion niezależny od aplikacji specjalnych.

Formaty zapisu filmu (MPEG) MPEG-1 to stary standard kompresji danych audiowizualnych do zastosowań multimedialnych. Strumień danych MPEG-1 może zawierać zakodowaną (skompresowaną) sekwencje wideo, dźwięk lub obydwa te składniki jednocześnie. Strumienie wizyjny i dźwiękowy są dzielone na tzw. ramki (krótkie fragmenty), które mogą być przeplatane między sobą w celu uzyskania synchronizacji obrazu i dźwięku. Kompresja danych jest stratna, tzn. wprowadza nieodwracalne zniekształcenia (to cena, jaką płacimy za silną kompresję). Im większy stopień kompresji, (czyli mniejsza objętość wynikowego strumienia/pliku) tym gorsza jakość zrekonstruowanego sygnału.

Formaty zapisu filmu (MPEG) MPEG - jako standard bazowy - określa pewne podstawowe założenia obowiązujące niezależnie od stosowanych aplikacji specjalnych: Informacja wideo ma być reprezentowana przez zestaw sekwencyjnie wyświetlanych obrazów. Każdy obraz musi być reprezentowany przez dwuwymiarową tablicę trójek RGB opisujących poziomy barw poszczególnych pikseli obrazu. Ma to być standard wymagający prędkości transmisji niższej niż 1,5 Mb/s, dzięki czemu mógłby być stosowany w sieciach komputerowych i umożliwiałby zapis sygnałów audiowideo na dostępnych obecnie nośnikach. Metoda kompresji musi zapewnić swobodny dostęp do każdej klatki filmu. Aby możliwy był dostęp do obrazu w aplikacjach interakcyjnych, opóźnienie kodowania i dekodowania, a także całkowity czas dostępu nie może być dłuższy niż jedna sekunda /to dziś już za mało/. Powinien zapewniać synchronizację obrazu i dźwięku.

Formaty zapisu filmu (MPEG) Musi umożliwiać szybkie wyszukiwanie w przód i wstecz. Musi zapewniać odtwarzanie wstecz. Przy kompresji obrazów ruchomych nie mamy do czynienia z kodowaniem pojedynczych klatek, ale z odtwarzaniem zależności następujących po sobie obrazów nieruchomych. Aby zapewnić edycję dowolnego pojedynczego obrazu z wnętrza sekwencji składającej się na film, należy w strumieniu danych umieszczać w krótkich odstępach czasu klatki rejestrowane w sposób naturalny i nie odwołujące się do innych klatek filmu. Z uwagi na konieczność odtwarzania obrazu w okienku ekranu, jego wymiary muszą być skalowalne w poziomie i pionie (elastyczność formatu obrazu). Ponieważ przy cyfrowym zapisie i przesyłaniu danych mogą wystąpić błędy, należy zapewnić mechanizmy ich korekcji. MPEG powinna uwzględnić (w przyszłości) możliwość kodowania obrazów ruchomych w czasie rzeczywistym /ten postulat doczekał się realizacji po 15 latach/

MPEG sekwencje ramek I B B B P B B B P B B B I

Rodzaje ramek (MPEG) Ramki I kodowane niezależnie od reszty danych wideo Ramki P kodowane na podstawie predykcji z ostatniej ramki I bądź P (tej, która była bliższa) Ramki typów I i P to tzw. ramki kotwiczne Ramki B kodowane na podstawie predykcji z poprzedniej i następnej ramki

Predykcja obrazu w kodowaniu MPEG

Rodzaje ramek (MPEG) Intraobrazy (I) kompresowane są w najmniejszym stopniu. Ponieważ stanowią one punkty swobodnego dostępu (Random Access Points) nie mogą mieć referencji do innych klatek. Obrazy predykcyjne (P) korzystają z informacji zawartej na innych klatkach (zarówno z informacji pochodzącej z infraobrazów jak i z informacji zawartej na innych obrazach predykcyjnych), będąc jednocześnie punktami odniesienia dla innych klatek tego samego rodzaju. Obrazy dwukierunkowe (B) to obrazy o najwyższym stopniu skompresowania. Są one interpolowane na podstawie sąsiadujących z nimi z obu stron klatek (rodzaj tych klatek nie jest istotny).

Rola poszczególnych ramek wyjasnienie Weźmy jako przykład zderzenie gwiazd (prezentowane już kilka slajdów wyżej) się na tle kosmosu. Przemieszczanie się małej gwiazdy będzie opisane w klatkach B i P, zaś mniej dynamicznie zmieniający się obszar kosmosu będzie pobierany z informacji zawartych w klatce typu I. Pełna informacja o obrazie pojawi się znowu po odnowieniu informacji z klatki kluczowej I.

Cechy ramek (MPEG) Ramki I: muszą występować stosunkowo często aby możliwe było wygodne przeniesienie do dowolnego miejsca w sekwencji wideo, zajmują dużo miejsca Ramki P: zajmują więcej miejsca niż ramki B gdyż wykorzystują tylko jednokierunkową kompensację ruchu.

Cechy ramek (MPEG) MPEG wychwytuje" ruch wewnątrz bloków o rozmiarach 16 na 16 pikseli i koduje go w postaci wektorów ruchu. Na podstawie tych wektorów system dekompresujący jest w stanie przewidzieć kolejną klatkę. Ażeby nie dopuścić do zafałszowania obrazu w trakcie dekompresji, do systemu dekodującego przekazywane są również dane o rzeczywistym wyglądzie klatki, którą on przewiduje. Aby jednak zyskać na rozmiarze danych, przekazywane są jedynie te z nich, które różnią się od przewidywanych. Te dane różnicowe, informujące o odchyleniach obrazu rzeczywistego od przewidzianego określa się błędem MCPE (Motion- Compensation-Prediction-Error).

Cechy ramek (MPEG) Kodowanie MPEG nie poprzestaje na przewidywaniu i kontrolowaniu ruchu w sekwencji klatek następującej zgodnie z kierunkiem osi czasu. Obrazy dwukierunkowe wyliczane są na podstawie zarówno klatek uprzednich jak i klatek po nich następujących. Takie postępowanie nazywa się predykcją dwukierunkową

Algorytm kodowania MPEG 1. Kodowanie metodą transformacji DCT (transform coding) 2. Szacowanie ruchu (motion compensation) 3. Kodowanie Huffmana

1. Kodowanie metodą transformacji DCT (transform coding) MPEG przekształca każdą trójkę RBG obrazu na trójkę YUV, czyli na sygnały luminancji i chrominancji. Ponieważ oko ludzkie jest mniej czułe na sygnał chrominancji niż luminancji, obszary U i V zostały celowo ograniczone. Obraz jest dzielony na makrobloki, a każdy z nich odpowiada obszarowi 16x16 pikseli oryginalnego obrazu. Makroblok składa się z sześciu bloków o rozdzielczości 8x8 pikseli: czterech związanych z sygnałem luminancji Y, po jednym dla każdej ze składowych U i V chrominancji. Następnie każdy blok jest przetwarzany jak plik JPEG, czyli poddawany transformacji DCT. Blok po kwantyzacji zawiera dużą liczbę zer, które można później usunąć.

2. Szacowanie ruchu (motion compensation) Wykorzystuje ono fakt, że ramka I(x) jest podobna do ramki poprzedzającej I(x-l), może więc być skonstruowana przy jej użyciu. Wektor wskazujący odpowiedni fragment (16x16) ramki referencyjnej może być zapisany za pomocą mniejszej liczby bitów niż fragment oryginalnego obrazka. Dopasowanie poprzedzającego i aktualnego makrobloku często nie jest właściwe, więc zapisywana jest również różnica pomiędzy danymi rzeczywistymi a przewidywanymi, nazywana MCPE (Motion Compensation Prediction Etror). Patrz budowa ramki na poprzednich slajdach

3. Kodowanie Huffmana Uzyskane dane są poddawane kodowaniu metodą Huffmana. Jest to bezstratna metoda kodowania statystycznego. Wykorzystuje ona fakt, że pewne wartości danych występują częściej niż inne. Jeżeli zatem zakodujemy częściej występujące wartości za pomocą krótszych kluczy, a występujące rzadziej - za pomocą dłuższych, to łączna długość zakodowanych danych będzie krótsza niż przed kodowaniem. Istnieją trzy warianty kodowania tą metodą: 1. statyczny - tabela częstotliwości jest ustalana z góry, niezależnie od tego, jakie dane będą kodowane; 2. dynamiczny - w celu wypełnienia tabeli częstotliwościami dokładnie dla tych danych, które są kodowane, przed rozpoczęciem kodowania przeprowadzana jest analiza częstotliwości znaków; 3. adaptacyjny - wstępne założenie o częstotliwości występowania znaków zostają w trakcie kodowania dostosowane do częstotliwości rzeczywistych.

Kodowanie a dekodowanie Aby odtworzyć ramkę (klatkę filmu) należy: 1. odwrócić proces kodowania Huffmana, 2. odtworzyć wektory ruchu i skopiować odpowiednie części ramki referencyjnej, 3. uwzględnić sygnał błędu MCPE. 4. zbudowaną ramkę YUV przekształcić do postaci odpowiedniej do wyświetlenia (RGB)