SlideShare a Scribd company logo
1
Data Compression
2
Introduction
 Compression is used to :
 reduce the volume of information to be
stored into storages
 reduce the communication bandwidth
required for its transmission over the
networks
3
4
Compression Principles
Entropy Encoding
1. Run-length encoding
 Lossless & Independent of the type of source
information
 Used when the source information comprises
long substrings of the same character or
binary digit
(string or bit pattern, # of occurrences), as
FAX
e.g) 000000011111111110000011……
⇒ 0,7 1,10 0,5 1,2…… ⇒ 7,10,5,2……
5
Entropy Encoding
2. Statistical encoding
 Based on the probability of occurrence of a
pattern
 The more probable, the shorter codeword
6
Compression Principles
 Huffman Encoding
 Entropy, H: theoretical min. avg. # of bits that are required
to transmit a particular stream
H = -Σ i=1
n
Pi log2Pi
where n: # of symbols, Pi: probability of symbol i
 Efficiency, E = H/H’
where, H’ = avr. # of bits per codeword = Σ i=1
n
Ni Pi
Ni: # of bits of symbol i
7
 E.g) symbols M(10), F(11), Y(010), N(011), 0(000),
1(001) with probabilities 0.25, 0.25, 0.125, 0.125,
0.125, 0.125
 H’ = Σ i=1
6
Ni Pi = (2(2×0.25) + 4(3×0.125)) = 2.5
bits/codeword
 H = -Σ i=1
6
Pi log2Pi = - (2(0.25log20.25) +
4(0.125log20.125)) = 2.5
 E = H/H’ =100 %
 3-bit/codeword if we use fixed-length codewords for six
symbols
8
Huffman Algorithm (Variable-Length
Encoding)
Method Konstruksi pohon encoding
• Full Binary Tree Representation
• Each edge of the tree has a value,
(0 is the left child, 1 is the right child)
• Data is at the leaves, not internal nodes
• Result: encoding tree
9
Huffman Algorithm
• 1. Maintain a forest of trees
• 2. Weight of tree = sum frequency of
leaves
• 3. For 0 to N-1
– Select two smallest weight trees
– Form a new tree
10
• Huffman coding
• variable length code whose length is inversely
proportional to that character’s frequency
• must satisfy nonprefix property to be uniquely
decodable
• two pass algorithm
– first pass accumulates the character frequency
and generate codebook
– second pass does compression with the
codebook
11
• create codes by constructing a binary tree
1. consider all characters as free nodes
2. assign two free nodes with lowest frequency to
a parent nodes with weights equal to sum of
their frequencies
3. remove the two free nodes and add the newly
created parent node to the list of free nodes
4. repeat step2 and 3 until there is one free node
left. It becomes the root of tree
Huffman coding
12
• Right of binary tree :1
• Left of Binary tree :0
• Prefix (example)
– e:”01”, b: “010”
– “01” is prefix of “010” ==> “e0”
• same frequency : need consistency of
left or right
13
Static Huffman Coding
 Huffman (Code) Tree
 Hitung jumlah symbols atau characters dan probabillitas relatif
prior
 Must hold “prefix property” among codes
Symbol Occurrence
A 4/8
B 2/8
C 1/8
D 1/8
Symbol Code
A 1
B 01
C 001
D 000
4×1 + 2×2 + 1×3 +
1×3 = 14 bits are
required to transmit
“AAAABBCD”
0 1
D
A
B
C
0 1
0 18
4
2
Leaf node
Root node
Branch node
Prefix Property !
14
• Contoh (Data dengan 64 karakter)
• R K K K K K K K
• K K K R R K K K
• K K R R R R G G
• K K B C C C R R
• G G G M C B R R
• B B B M Y B B R
• G G G G G G G R
• G R R R R G R R
15
• Character frequency Huffman code
• =================================
• R 19 00
• K 17 01
• G 14 10
• B 7 110
• C 4 1110
• M 2 11110
• Y 1 11111
16
17
Tujuan kompresi data adalah
untuk merepresentasikan suatu
data digital dengan sesedikit
mungkin bit.
Soal :
Tentukanlah kode masing-masing Karakter pada Text berikut dengan
menggunakan Huffman code

More Related Content

PPTX
Huffman Codes
PPTX
Huffman coding || Huffman Tree
PPTX
Huffman Coding
PPTX
Huffman coding || Huffman Tree
PPT
Data Structure and Algorithms Huffman Coding Algorithm
PPTX
Huffman Algorithm and its Application by Ekansh Agarwal
PPT
Huffman Coding
PDF
Data Communication & Computer network: Shanon fano coding
Huffman Codes
Huffman coding || Huffman Tree
Huffman Coding
Huffman coding || Huffman Tree
Data Structure and Algorithms Huffman Coding Algorithm
Huffman Algorithm and its Application by Ekansh Agarwal
Huffman Coding
Data Communication & Computer network: Shanon fano coding

What's hot (19)

PPTX
Huffman codes
PDF
Huffman and Arithmetic coding - Performance analysis
PPT
Huffman Student
PPT
Lossless
PPTX
Huffman's Alforithm
PPTX
Shannon Fano
PDF
information theory
PPTX
Huffman Coding
PDF
Data communication & computer networking: Huffman algorithm
PPT
Adaptive Huffman Coding
PPT
PPTX
Huffman coding
PPTX
Text compression
PPT
Lec5 Compression
PPTX
Data Compression - Text Compression - Run Length Encoding
PDF
Data compression huffman coding algoritham
PDF
Arithmetic Coding
DOCX
Arithmetic coding
PPTX
Multimedia lossless compression algorithms
Huffman codes
Huffman and Arithmetic coding - Performance analysis
Huffman Student
Lossless
Huffman's Alforithm
Shannon Fano
information theory
Huffman Coding
Data communication & computer networking: Huffman algorithm
Adaptive Huffman Coding
Huffman coding
Text compression
Lec5 Compression
Data Compression - Text Compression - Run Length Encoding
Data compression huffman coding algoritham
Arithmetic Coding
Arithmetic coding
Multimedia lossless compression algorithms
Ad

Viewers also liked (12)

PPTX
KOMUNIKASI DATA 1
PPTX
Komunikasi data1
PPT
10 pengantar jaringan komputer dan kom dat
PDF
Do romantismo à república
PPTX
Pengantar KomDat
PPT
Comunidad de canarias
PPTX
Komunikasi Data - Pengertian Data dan Media Transmisi
ODP
Tik 3
PPTX
Standart Komunikasi Data
ODP
komdat1
PDF
KOMUNIKASI DATA
DOCX
Komunikasi Data
KOMUNIKASI DATA 1
Komunikasi data1
10 pengantar jaringan komputer dan kom dat
Do romantismo à república
Pengantar KomDat
Comunidad de canarias
Komunikasi Data - Pengertian Data dan Media Transmisi
Tik 3
Standart Komunikasi Data
komdat1
KOMUNIKASI DATA
Komunikasi Data
Ad

Similar to Komdat-Kompresi Data (20)

PPT
Huffmans code
PPT
huffman ppt
PDF
12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf
PPTX
Huffman.pptx
PPT
Huffman Coding.ppt
PPTX
Farhana shaikh webinar_huffman coding
PPT
Huffman code presentation and their operation
DOCX
Huffman Coding is a technique of compressing data
PPTX
Data Compression in Multimedia
PPTX
Data CompressionMultimedia
PPTX
5c. huffman coding using greedy technique.pptx
PPT
Hufman coding basic
PPT
Greedy Algorithms Huffman Coding.ppt
PPTX
Chapter 4 Lossless Compression Algorithims.pptx
DOCX
The assigment is overdue now. I will up the price I am willing to pa.docx
PPT
Huffman coding presentation Sukkur iba.ppt
PDF
Unit 2 Lecture notes on Huffman coding
PDF
Implementation of Lossless Compression Algorithms for Text Data
Huffmans code
huffman ppt
12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf
Huffman.pptx
Huffman Coding.ppt
Farhana shaikh webinar_huffman coding
Huffman code presentation and their operation
Huffman Coding is a technique of compressing data
Data Compression in Multimedia
Data CompressionMultimedia
5c. huffman coding using greedy technique.pptx
Hufman coding basic
Greedy Algorithms Huffman Coding.ppt
Chapter 4 Lossless Compression Algorithims.pptx
The assigment is overdue now. I will up the price I am willing to pa.docx
Huffman coding presentation Sukkur iba.ppt
Unit 2 Lecture notes on Huffman coding
Implementation of Lossless Compression Algorithms for Text Data

Recently uploaded (20)

PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Big Data Technologies - Introduction.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Cloud computing and distributed systems.
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
cuic standard and advanced reporting.pdf
Unlocking AI with Model Context Protocol (MCP)
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Encapsulation_ Review paper, used for researhc scholars
Understanding_Digital_Forensics_Presentation.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Electronic commerce courselecture one. Pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Big Data Technologies - Introduction.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Cloud computing and distributed systems.
NewMind AI Weekly Chronicles - August'25 Week I
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Network Security Unit 5.pdf for BCA BBA.
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Digital-Transformation-Roadmap-for-Companies.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
Building Integrated photovoltaic BIPV_UPV.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
cuic standard and advanced reporting.pdf

Komdat-Kompresi Data

  • 2. 2 Introduction  Compression is used to :  reduce the volume of information to be stored into storages  reduce the communication bandwidth required for its transmission over the networks
  • 3. 3
  • 4. 4 Compression Principles Entropy Encoding 1. Run-length encoding  Lossless & Independent of the type of source information  Used when the source information comprises long substrings of the same character or binary digit (string or bit pattern, # of occurrences), as FAX e.g) 000000011111111110000011…… ⇒ 0,7 1,10 0,5 1,2…… ⇒ 7,10,5,2……
  • 5. 5 Entropy Encoding 2. Statistical encoding  Based on the probability of occurrence of a pattern  The more probable, the shorter codeword
  • 6. 6 Compression Principles  Huffman Encoding  Entropy, H: theoretical min. avg. # of bits that are required to transmit a particular stream H = -Σ i=1 n Pi log2Pi where n: # of symbols, Pi: probability of symbol i  Efficiency, E = H/H’ where, H’ = avr. # of bits per codeword = Σ i=1 n Ni Pi Ni: # of bits of symbol i
  • 7. 7  E.g) symbols M(10), F(11), Y(010), N(011), 0(000), 1(001) with probabilities 0.25, 0.25, 0.125, 0.125, 0.125, 0.125  H’ = Σ i=1 6 Ni Pi = (2(2×0.25) + 4(3×0.125)) = 2.5 bits/codeword  H = -Σ i=1 6 Pi log2Pi = - (2(0.25log20.25) + 4(0.125log20.125)) = 2.5  E = H/H’ =100 %  3-bit/codeword if we use fixed-length codewords for six symbols
  • 8. 8 Huffman Algorithm (Variable-Length Encoding) Method Konstruksi pohon encoding • Full Binary Tree Representation • Each edge of the tree has a value, (0 is the left child, 1 is the right child) • Data is at the leaves, not internal nodes • Result: encoding tree
  • 9. 9 Huffman Algorithm • 1. Maintain a forest of trees • 2. Weight of tree = sum frequency of leaves • 3. For 0 to N-1 – Select two smallest weight trees – Form a new tree
  • 10. 10 • Huffman coding • variable length code whose length is inversely proportional to that character’s frequency • must satisfy nonprefix property to be uniquely decodable • two pass algorithm – first pass accumulates the character frequency and generate codebook – second pass does compression with the codebook
  • 11. 11 • create codes by constructing a binary tree 1. consider all characters as free nodes 2. assign two free nodes with lowest frequency to a parent nodes with weights equal to sum of their frequencies 3. remove the two free nodes and add the newly created parent node to the list of free nodes 4. repeat step2 and 3 until there is one free node left. It becomes the root of tree Huffman coding
  • 12. 12 • Right of binary tree :1 • Left of Binary tree :0 • Prefix (example) – e:”01”, b: “010” – “01” is prefix of “010” ==> “e0” • same frequency : need consistency of left or right
  • 13. 13 Static Huffman Coding  Huffman (Code) Tree  Hitung jumlah symbols atau characters dan probabillitas relatif prior  Must hold “prefix property” among codes Symbol Occurrence A 4/8 B 2/8 C 1/8 D 1/8 Symbol Code A 1 B 01 C 001 D 000 4×1 + 2×2 + 1×3 + 1×3 = 14 bits are required to transmit “AAAABBCD” 0 1 D A B C 0 1 0 18 4 2 Leaf node Root node Branch node Prefix Property !
  • 14. 14 • Contoh (Data dengan 64 karakter) • R K K K K K K K • K K K R R K K K • K K R R R R G G • K K B C C C R R • G G G M C B R R • B B B M Y B B R • G G G G G G G R • G R R R R G R R
  • 15. 15 • Character frequency Huffman code • ================================= • R 19 00 • K 17 01 • G 14 10 • B 7 110 • C 4 1110 • M 2 11110 • Y 1 11111
  • 16. 16
  • 17. 17 Tujuan kompresi data adalah untuk merepresentasikan suatu data digital dengan sesedikit mungkin bit. Soal : Tentukanlah kode masing-masing Karakter pada Text berikut dengan menggunakan Huffman code