0% found this document useful (0 votes)
48 views17 pages

Image Compression With DCT On Fpga: Dianfan Pan 31080151 Instructor: Mustafa Torun

Dianfan Pan

Uploaded by

Ejder Yildiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views17 pages

Image Compression With DCT On Fpga: Dianfan Pan 31080151 Instructor: Mustafa Torun

Dianfan Pan

Uploaded by

Ejder Yildiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Image Compression with

DCT
on FPGA

Dianfan Pan
31080151
Instructor: Mustafa Torun
What is DCT?
 The DCT, is often used in signal and
image processing, especially for lossy
data compression, because it has a
strong "energy compaction" property.
 Most of the signal information tends to
be concentrated in a few low-
frequency components of the DCT.
DCT

8 low high

8 low DC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

AC AC AC AC AC AC AC AC

high AC AC AC AC AC AC AC AC
f(x,y)
or
f(x,y,t) Symbol
Mapper Quantizer
coder Compressed data
for storage
Encoder and transmission

Symbol Inverse
decoder mapper

Decoder
1-D DCT

2-D DCT
1D-DCT

A B BT CT C
1D-DCT Transpose 1D-DCT Transpose
Image Image
S to P to after S to P to after
Imag P S 1DCT P S 2DCT
e
RAM 1DCT RAM 1DCT RAM

After After
Quantize Qtz Zig-Zag Resort
Image r
after RAM RAM RAM
2DCT

Zig-Zag
Quantization
RAM RAM sequenc
matrix
e
Cod
After
e
Resort
RAM
RAM
Huffma
n RAM
Coder
Lengt
h
The original image

shift -128
After DCT

We can see that the high value


components are concentrated in the
upper left part
Quantization Matrix

After Quantization
Sequence of coding

Zig-Zag Pattern

[-25 2 0 -3 -1 -7 1 -4 0 -3 1 0 5 0 2 0 0
-1 2 0 -1 0 0 0 -1 -1 0 0 0 0 … 0]

38 zeros
EOB
(End of Block)
[-25 2 0 -3 -1 -7 1 -4 0 -3 1 0 5 0 2 0 0
-1 2 0 -1 0 0 0 -1 -1 EOB]

Huffman
coding

11000110 0101 11100100 000 100000


(-25) (2) (-3) (-1) (-7)
001 100011 11100100 001 1111001101
(1) (-4) (-3) (1) (5)
11100110 110110 0110 11000 1110100
(2) (-1) (2) (-1) (-1)
000 1010
(-1) (EOB)
11000110 0101 11100100 000 100000
8 4 8 3 6
001 100011 11100100 001 1111001101
3 6 8 3 10
11100110 110110 0110 11000 1110100
8 6 4 5 7
000 1010
3 4
Total length of code
=8+4+8+3+6+3+6+8+3
+10+8+6+4+5+7+3+4
=96 bits
Total length of the original
image
=8×8×8 ratio
Compression bits=512 bits
= 512 : 96 = 5.3 : 1
After inverse quantization

After inverse DCT


Original image Output image

Error

RMSerror = 6.7315
Reference
 [1] Chen Pu-yue, “Fast 2-D DCT Algorithm and Its
Implementation Based On FPGA”, Nanjing University
of PLA of Technology.
 [2] Li Li, “FPGA Implementation of 2-D DCT-based
Distributed Arithmetic”, Beijing University of Posts and
Telecommunications.
 [3] JPEG, Wikipedia.
 [4] DCT, Wikipedia.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy