The Discrete Cosine Transform

Gilbert Strang · SIAM Review · 1999

Abstract. Each discrete cosine transform (DCT) uses [Formula: see text] real basis vectors whose components are cosines. In the DCT-4, for example, the [Formula: see text]th component of [Formula: see text] is [Formula: see text]. These basis vectors are orthogonal and the transform is extremely useful in image processing. If the vector [Formula: see text] gives the intensities along a row of pixels, its cosine series [Formula: see text] has the coefficients [Formula: see text]. They are quickly computed from a Fast Fourier Transform. But a direct proof of orthogonality, by calculating inner products, does not reveal how natural these cosine vectors are. We prove orthogonality in a different way. Each DCT basis contains the eigenvectors of a symmetric “second difference” matrix. By varying the boundary conditions we get the established transforms DCT-1 through DCT-4. Other combinations lead to four additional cosine transforms. The type of boundary condition (Dirichlet or Neumann, centered at a meshpoint or a midpoint) determines the applications that are appropriate for each transform. The centering also determines the period: [Formula: see text] or [Formula: see text] in the established transforms, [Formula: see text] or [Formula: see text] in the other four. The key point is that all these “eigenvectors of cosines” come from simple and familiar matrices.

Read the paper · More papers on PaperTik