Parallel Realization of DCT Algorithm

0 0
  • 0 Collaborators

This project uses oneAPI to realize the parallelization of discrete cosine transform, and completes the performance test of the algorithm on the DevCloud platform ...learn more

Project status: Under Development

oneAPI, HPC

Intel Technologies
DevCloud, oneAPI, DPC++

Code Samples [1]

Overview / Usage

Discrete Cosine Transform (DCT) is derived from Discrete Fourier Transform (DFT) which only retains real part information and then carries out even continuation transformation, which is essentially a kind of DFT. DCT is widely used in the field of image and video, and the common one is the compression of image formats such as JPEG.

This project uses oneAPI to realize the parallelization of discrete cosine transform, and using this algorithm is the next function of image compression and image denoising.

Methodology / Approach

  1. Segmentation, first divide the image into small blocks of 8x8 or 16x16;

  2. DCT transformation, DCT transformation is performed on each small block;

  3. Discard high-frequency information (AC coefficients) and retain low-frequency information (DC coefficients). High-frequency information generally saves the boundary and texture information of the image, and low-frequency information mainly saves the information of flat areas in the image. It is embodied as a quantitative operation. After the quantization operation, high-frequency information will be compressed.

  4. Perform the inverse DCT operation on the matrix after the quantization operation, that is, iDCT, that is, convert our image from the frequency domain to the space domain. Since it has been quantized, the final obtained is a compressed image.

Repository

https://github.com/derolol/oneapi_dct

Comments (0)