Dyskretna transformacja kosinusowa

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Dyskretna transformacja kosinusowa, dyskretna transformacja cosinusowa (ang. Discrete Cosine Transform, DCT) – rodzaj blokowej transformacji wykonywanej na wartościach dyskretnych. Jest szczególnie popularna w dziedzinie stratnej kompresji danych.

Dyskretna transformata Fouriera (DFT z ang. Discrete Fourier Transform) jest transformatą Fouriera wyznaczoną dla sygnału próbkowanego, a więc dyskretnego.Kompresja stratna — metoda zmniejszania liczby bitów potrzebnych do wyrażenia danej informacji, które nie dają gwarancji, że odtworzona informacja będzie identyczna z oryginałem. Dla niektórych danych algorytm kompresji stratnej może odtworzyć informację w sposób identyczny.

Opis metody[ | edytuj kod]

DCT przekształca skończony ciąg liczb rzeczywistych w ciąg liczb rzeczywistych zgodnie z zależnościami:

Kodowanie transformatowe (inne nazwy: kodowanie transformacyjne, kodowanie transformujące) jest najpopularniejszym algorytmem kompresji stratnej sygnałów cyfrowych (obrazu, dźwięku, video).JPEG (wym. dżej-peg lub jot-peg) – metoda kompresji statycznych obrazów rastrowych, przeznaczony głównie do stratnego zapisu obrazów naturalnych (pejzaży, portretów itp.), charakteryzujących się płynnymi przejściami barw oraz brakiem lub małą ilością ostrych krawędzi i drobnych detali.

gdzie:

Falki (z ang. wavelet) – rodziny funkcji zbioru liczb rzeczywistych w zbiór liczb rzeczywistych, z których każda jest wyprowadzona z funkcji-matki (z tzw. funkcji macierzystej) za pomocą przesunięcia i skalowania:MPEG (ang. Moving Picture Experts Group) - grupa robocza ISO/IEC zajmująca się rozwojem standardów kodowania audio i wideo, a także zatwierdzona przez ISO grupa powszechnie stosowanych formatów zapisu danych zawierających obraz i dźwięk.
jest nazywane współczynnikiem DCT lub transformatą.

Definiuje się również odwrotną dyskretną transformację cosinusową (IDCT) jako:

Zaletą stosowania transformaty DCT w kompresji jest fakt, że większość współczynników jest zwykle bliska 0 – po kwantyzacji wyzerują się one, co zredukuje liczbę bitów potrzebną do reprezentacji sygnału bez wprowadzania dużego błędu.

Algorytm – w matematyce skończony ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego rodzaju zadań. Słowo "algorytm" pochodzi od starego angielskiego słowa algorism, oznaczającego wykonywanie działań przy pomocy liczb arabskich (w odróżnieniu od abacism – przy pomocy abakusa), które z kolei wzięło się od nazwiska, które nosił Muhammad ibn Musa al-Chuwarizmi (أبو عبد الله محمد بن موسى الخوارزمي), matematyk perski z IX wieku.Cyfrowe przetwarzanie sygnałów, CPS (ang.) Digital Signal Processing, DSP – dziedzina nauki i techniki zajmująca się sygnałami cyfrowymi i metodami ich przetwarzania.

Przetwarzanie sygnałów wielowymiarowych wymaga zastosowania przekształcenia o odpowiedniej liczbie wymiarów. Ponieważ przekształcenie wielowymiarowe DCT jest separowalne, odpowiednie transformaty można uzyskać przez kolejne wykonanie jednowymiarowych przekształceń we wszystkich wymiarach. Na przykład przekształcenie bloków obrazu, czyli sygnału 2-wymiarowego, sprowadza się do obliczenia wyniku DCT we wszystkich wierszach danego bloku, a następnie przekształcenie tych współczynników kolejnym zestawem operacji DCT liczonych po wszystkich kolumnach – kolejność operacji jest dowolna.

Zmodyfikowana dyskretna transformacja cosinusowa (MDCT, ang. Modified Discrete Cosine Transform) – blokowa transformacja danych oparta na przekształceniu kosinusowym typu DCT-IV, należąca do rodziny transformacji zakładkowych. Ta ostatnia cecha oznacza, że kolejne bloki próbek sygnału poddawane przekształceniu pobierane są nadmiarowo, z zakładką (część próbek jest wspólna), co pozwala wyeliminować tzw. efekt blokowy występujący przy zastosowaniu tej transformacji w kompresji sygnału.

DCT w multimediach[ | edytuj kod]

DCT jest używana m.in. w kompresji JPEG i MPEG. Standardowy algorytm polega na podziale obrazu na bloki o stałych rozmiarach (np. 8×8), transformację tych bloków, kwantyzację i kompresję bezstratną.

Głównym problemem kodowania transformatowego opartego na blokach DCT są gwałtowne skoki wartości na granicach zrekonstruowanych bloków (tzw. efekt blokowy). Jednym ze sposobów minimalizacji tego zjawiska jest zastosowanie większych bloków (w przypadku mocno skompresowanych obrazów używane przez algorytm JPEG bloki 8×8 są stanowczo za małe, 16×16 lub nawet 32×32 byłyby bardziej odpowiednie). Innym sposobem jest używanie zmodyfikowanej dyskretnej transformacji kosinusowej (MDCT), która wykorzystuje nachodzące na siebie bloki lub transformaty falkowe.

Ze względu na to, że w przypadku dźwięków efekty blokowe byłyby słyszalne jako trzaski, DCT praktycznie nie jest używana do cyfrowego przetwarzania sygnałów dźwiękowych, natomiast bardzo popularna jest w tym przypadku transformacja MDCT.

Zobacz też[ | edytuj kod]

  • dyskretna transformata falkowa
  • dyskretna transformata Fouriera




  • Reklama