離散コサイン変換
離散コサイン変換(りさんコサインへんかん)は、離散信号を周波数領域へ変換する方法の一つであり、信号圧縮に広く用いられている。
英語の discrete cosine transform の頭文字から DCT と呼ばれる。以下DCTと略す。
DCTは、有限数列を、余弦関数数列 cos(nk) を基底とする一次結合(つまり、適切な周波数と振幅のコサインカーブの和)の係数に変換する。
余弦関数は実数に対しては実数を返すので、実数列に対してはDCT係数も実数列となる。
これは、離散フーリエ変換 (DFT: discrete Fourier transform) が、実数に対しても複素数を返す exp(ink) を使うため、実数列に対しても複素数列となるのと大きな違いである。
なお、DFTも偶関数数列に対しては実係数を返す、つまりコサイン成分のみとなるが、DCTはy軸で折り返して偶関数化してDFTすることと等価であり、実際にそう計算することが多い。
DCTでは、係数が実数になる上、特定の成分への集中度があがる。
JPEGなどの画像圧縮、AACやMP3、ATRACといった音声圧縮、デジタルフィルタ等広い範囲で用いられている。
逆変換を逆離散コサイン変換(英: inverse discrete cosine transform (IDCT))と呼ぶ。