Diskreetne koosinusteisendus

**Diskreetne koosinusteisendus** (**DKT**) on Fourier' teisendusega seotud lineaarteisendus. DKT väljendab lõplikku andmepunktide jada eri sagedustel võnkuvate koosinusfunktsioonide summana. Enim leiab DKT kasutust signaalitöötluses ja andmete pakkimises. Seda kasutatakse enamikus digitaalmeediumites, sealhulgas digitaalsetes piltides (nt. JPEG mille puhul väiksed kõrge sagedusega komponendid võib kõrvale jätta), digitaalvideotes (nt. MPEG ja H.264/MPEG-4 AVC) ja digitaalses helis (nt MP3, Opus ja AAC). DKT-d saab rakendada ka paljudes teistes teaduse ja inseneeria valdkondades, sealhulgas digitaalses signaalitöötluses ja telekommunikatsioonis.

## Ajalugu

Nasir Ahmed pakkus esimesena välja diskreetse koosinusteisenduse. Ahmed uuris andmete pakkimisega seotud Kosambi-Karhuneni-Loève'i teoreemi ning üritas leida efektiivset algoritmi selle arvutamiseks. 1972. aastal saatis Ahmed Ameerika Ühendriikide Teadusfondile (*National Science Foundation*) ettepaneku uurida koosinusteisendust kasutades Tšebõševi polünoome, kuna ettepanekus mainitud koosinusfunktsioonid sarnanesid Kosambi-Karhuneni-Loève'i teoreemi põhifunktsioonidega. Koos oma sõbra Kamisetty Ramamohan Rao ja doktorant T. Natarajaniga avaldas Ahmed 1974. aastal teadusartikli, kus oli kirjeldatud diskreetse koosinusteisenduse rakendamist digitaalsete fotode pakkimisel.

## Sissejuhatus

Sarnaselt teistele Fourier'ga seotud teisendustel väljendab diskreetne koosinusteisendus mingit signaali eri sageduste ja magnituudidega sinusoidide summana. Nagu diskreetne Fourier' teisendus (DFT), opereerib DKT diskreetsete andmepunktide peal. DFT kasutab siinus- ja koosinusfunktsioone, kuid DKT kasutab ainult koosinusfunktsioone. Antud erinevus tuleneb sellest, et DKT viitab teistele piirtingimustele. Teisisõnu opereerib DFT kompleksarvudega ning DKT ainult reaalarvudega.

## Kasutusalad

DKT on signaalitöötluses enim kasutatud teisendustehnika ja kõige laialdasemalt kasutatav lineaarteisendus andmete pakkimises.

### Andmete pakkimine

Enne DKT kasutusele võtmist nõudsid digitaalsel kujul hoitavad andmed ebapraktiliselt suurt mäluruumi ning neil oli väike ülekandekiirus. DKT vähendas tohutult eelmainitud probleeme kasutades kadudega pakkimist andmepakkimissuhteks stuudiokvaliteedi lähedase sisu jaoks saavutati 8:1 kuni 14:1 ja 100:1 aktsepteeritava kvaliteedi jaoks.

DKT sarnaneb diskreetse Fourier' teisendusega, kuid opereerib ainult reaalarvudega. Koosinusfunktsioonide kasutus siinusfunktsioonide asemel on tähtis andmete pakkimisel, kuna üldjuhul on vaja vähem koosinusfunktsioonil põhinevaid komponente, et tüüpilist signaali ligilähedaselt jäljendada.

#### JPEG

JPEG on üks levinumaid näiteid diskreetse koosinusteisenduse kasutamisest tänapäeval. Lihtne JPEG-faili kodeerimisprotsess on toodud järgnevalt:

# RGB andmed teisendatakse YUV värvimudeli järgi.
# Värvi kirjeldavate andmete lahutusvõime vähendatakse, tihti 2 kuni 3 korda kuna inimsilm on tundlikum heleduse intensiivsusele kui värvi intensiivsusele.
# Pilt jaotatakse 8x8 pikslitest koosnevatest plokkideks. Iga ploki puhul rakendatakse igal värvikanalil diskreetset koosinusteisendust.
# Sageduskomponentide amplituudid kvantiseeritakse. Kõrgema sagedusega komponentide magnituudid jäädvustatakse väiksema täpsusega kui madala sagedusega komponentide omad. Kodeerimisalgoritmi kvaliteedi säte määrab, kui drastiliselt andmeid vähendatakse.
# Saadud andmed iga ploki kohta pakitakse ilma kadudeta kasutades Huffmani kodeerimisele sarnast algoritmi.

Dekodeerimine teeb kõik sammud tagurpidi, välja arvatud kvantiseerimise protsess, kuna seda ei ole võimalik teha (JPEG on kadudega pakkimine).

## Vaata ka
* Fourier' teisendus
* JPEG
* Koosinus
* Andmete pakkimine

## Viited


## Välislingid

* Discrete Cosine Transform