|
|
|
Viewing Version
10
of
'discrete cosine transform'
|
[ view 'discrete cosine transform'
|
back to history
]
| Title of object: |
discrete cosine transform |
| Canonical Name: |
DiscreteCosineTransform |
| Type: |
Definition |
| Created on: |
2002-01-13 04:49:53 |
| Modified on: |
2007-07-08 08:55:44 |
| Classification: |
msc:42-00, msc:65T50 |
| Defines: |
DCT-I, DCT-II, DCT-III, DCT-IV |
| Synonyms: |
discrete cosine transform=DCT |
Preamble:
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsfonts}
%\usepackage{psfrag}
%\usepackage{graphicx}
%\usepackage{xypic} |
Content:
The \emph{discrete cosine transforms (DCT)} are a family of \PMlinkescapetext{similar} transforms closely related to the discrete Fourier transform. The DCT-II is the most commonly used form and plays an important role in coding signals and images \cite{Jain89}, e.g. in the widely used standard JPEG compression. The DCT is included in many mathematical packages, such as Matlab, Mathematica and GNU Octave.
\section{Definition}
The one-dimensional variants of the orthogonal DCT, where $x_n$ is the original array of $N$ real numbers, $C_k$ is the transformed array of $N$ real numbers, $p_k$ determines the normalization and $\delta$ is the Kronecker delta, are defined by the following equations:
\subsection{DCT-I}
\begin{eqnarray*}
C^I_k&=&p_k \left(\frac{x_0}{\sqrt2}+\sum _{n=1}^{N-2} x_n \cos \frac{\pi n k}{N-1}+\frac{(-1)^k x_{N-1}}{\sqrt2}\right) \quad \quad k=0, 1, 2, \dots, N-1\\
p_k&=&\sqrt{\frac{2-\delta_{k,0}-\delta_{k,N-1}}{N-1}}
\end{eqnarray*}
The DCT-I is its own inverse.
\subsection{DCT-II}
\begin{eqnarray*}
C^{II}_k&=&p_k\sum _{n=0}^{N-1} x_n \cos \frac{\pi\left( n+\frac{1}{2}\right) k}{N}\quad \quad k=0, 1, 2, \dots, N-1\\
p_k&=&\sqrt{\frac{2-\delta _{k,0}}{N}}
\end{eqnarray*}
The inverse of DCT-II is DCT-III.
\subsection{DCT-III}
\begin{eqnarray*}
C^{III}_k&=&p_k \left(\frac{x_0}{\sqrt2}+\sum _{n=0}^{N-1} x_n \cos \frac{\pi n\left(k+\frac{1}{2}\right)}{N}\right)\quad \quad k=0, 1, 2, \dots, N-1\\
p_k&=&\sqrt{\frac{2}{N}}
\end{eqnarray*}
The inverse of DCT-III is DCT-II.
\subsection{DCT-IV}
\begin{eqnarray*}
C^{IV}_k&=&p_k \left(\frac{x_0}{\sqrt2}+\sum _{n=0}^{N-1} x_n \cos \frac{\pi \left(n+\frac{1}{2}\right)\left(k+\frac{1}{2}\right)}{N}\right)\quad \quad k=0, 1, 2, \dots, N-1\\
p_k&=&\sqrt{\frac{2}{N}}
\end{eqnarray*}
The DCT-IV is its own inverse.
\section{Two-dimensional DCT}
The DCT in two dimensions is simply the one-dimensional transform computed in each row and each column. For example, the DCT-II of a $N_1\times N_2$ matrix is given by
\begin{eqnarray*}
C^{II}_{k_1,k_2}&=&p_{k_1}p_{k_2}\sum _{n_1=0}^{N_1-1}\sum _{n_2=0}^{N_2-1} x_{n_1,n_2} \cos \frac{\pi\left( n_1+\frac{1}{2}\right) k_1}{N_1} \cos \frac{\pi\left( n_2+\frac{1}{2}\right) k_2}{N_2}
\end{eqnarray*}
\begin{thebibliography}{3}
\bibitem{DAB} This entry is based on content from The Data Analysis Briefbook
(\PMlinkexternal{http://rkb.home.cern.ch/rkb/titleA.html}{http://rkb.home.cern.ch/rkb/titleA.html})
\bibitem{Jain89} A.K. Jain, Fundamentals of Digital Image Processing, Prentice Hall, 1989.
\bibitem{Shao07} Xuancheng Shao and Steven G. Johnson. Type-II/III DCT/DST algorithms with reduced number of arithmetic operations. 2007.
\end{thebibliography} |
|
|
|
|
|