SlideShare uma empresa Scribd logo
1 de 15
Data Compression
Manish T I
• If a data item d occurs n consecutive times in the
input stream, replace the n occurrences with the
single pair nd.
• The n consecutive occurrences of a data item are
called a run length of n, and this approach to
data compression is called run-length encoding
or RLE.
Run Length Encoding
We have to adopt the convention that only three or
more repetitions of the same character will be
replaced with a repetition factor.
The main problems with this method are the
following:
• In plain English text there are not many repetitions.
• There are many “doubles” but a “triple” is rare.
• The most repetitive character is the space.
• Dashes or asterisks may sometimes also repeat.
• In mathematical texts, digits may repeat.
• Example Paragraph
The abbott from Abruzzi accedes to the demands of all
abbesses from Narragansett and Abbevilles from Abyssinia.
He will accommodate them, abbreviate his sabbatical, and
be an accomplished accessory.
• The character “@” may be part of the text in the input
stream, in which case a different escape character must
be chosen.
• Sometimes the input stream may contain every possible
character in the alphabet.
• Example
An example is an object file, the result of compiling a
program. Such a file contains machine instructions and can
be considered a string of bytes that may have any values.
• Since the repetition count is written on the output
stream as a byte, it is limited to counts of up to 255.
• This limitation can be softened somewhat when we
realize that the existence of a repetition count means
that there is a repetition (at least three identical
consecutive characters).
• We may adopt the convention that a repeat count of 0
means three repeat characters, which implies that a
repeat count of 255 means a run of 258 identical
characters.
• The MNP class 5 method was used for data
compression in old modems.
• It has been developed by Microcom, Inc., a
maker of modems (MNP stands for Microcom
Network Protocol), and it uses a combination
of run-length and adaptive frequency
encoding.
Performance
We assume that the string contains M repetitions of
average length L each. Each of the M repetitions is
replaced by 3 characters (escape, count, and data)
Size of the compressed string is N − M × L +M ×3
= N −M(L − 3)
Compression factor = N / N −M(L − 3)
Digram Encoding
• A variant of run length encoding for text is digram
encoding.
• This method is suitable for cases where the data
to be compressed consists only of certain
characters, e.g., just letters, digits, and
punctuation.
• Good results can be obtained if the data can be
analyzed beforehand.
• “E”, “T”, “TH”, and “A”, occur often.
Pattern Substitution
For compressing computer programs, where certain
words, such as for, repeat, and print, occur often.
Each such word is replaced with a control character
or, if there are many such words, with an escape
character followed by a code character.
Assuming that code “a” is assigned to the word
print, the text “m:print,b,a;” will be compressed to
“m:@a,b,a;”.
Relative Encoding [Differencing]
• Successive temperatures normally do not differ
by much, so the sensor needs to send only the
first temperature, followed by differences.
The sequence of temperatures 70, 71, 72.5, 73.1, . .
can be compressed to 70, 1, 1.5, 0.6, . . ..
The differences are small and can be expressed in
fewer bits.
The sequence 110, 115, 121, 119, 200, 202, . . .
can be compressed to 110, 5, 6,−2, 200, 2, . . . .
Now need to distinguish between a difference and
an actual value.
The compressor creating an extra bit (a flag) for each
number sent, accumulating those bits, and sending
them to the de compressor from time to time, as part
of the transmission.
Assuming that each difference is sent as a byte, the
compressor should follow (or precede) a group of 8 bytes
with a byte consisting of their 8 flags.
Another practical way to send differences mixed with actual
values is to send pairs of bytes. Each pair is either an actual
16-bit measurement (positive or negative) or two 8-bit
signed differences.
Thus actual measurements can be between 0 and ±32K and
differences can be between 0 and ±255.
For each pair, the compressor creates a flag: 0 if the pair is
an actual value, 1 if it is a pair of differences.
After 16 pairs are sent, the compressor sends the 16 flags.
• The sequence of measurements 110, 115, 121,
119, 200, 202, . . . is sent as (110), (5, 6), (−2,−1),
(200), (2, . . .), where each pair of parentheses
indicates a pair of bytes.
• The −1 has value 11111111 (binary) , which is
ignored by the de-compressor (it indicates that
there is only one difference in this pair).
Reference:-
 Data Compression: The Complete Reference, David
Salomon, Springer Science & Business Media, 2004
For any queries contact:
Web: www.iprg.co.in
E-mail: manishti2004@gmail.com
Facebook: @ImageProcessingResearchGroup

Mais conteúdo relacionado

Mais procurados

Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
saumyatapu
 
Data Compression Project Presentation
Data Compression Project PresentationData Compression Project Presentation
Data Compression Project Presentation
Myuran Kanga, MS, MBA
 

Mais procurados (20)

Data compression
Data compressionData compression
Data compression
 
Vector quantization
Vector quantizationVector quantization
Vector quantization
 
Arithmetic coding
Arithmetic codingArithmetic coding
Arithmetic coding
 
Text compression
Text compressionText compression
Text compression
 
Lzw
LzwLzw
Lzw
 
Interpixel redundancy
Interpixel redundancyInterpixel redundancy
Interpixel redundancy
 
Digital & analog transmission
Digital & analog transmissionDigital & analog transmission
Digital & analog transmission
 
Lzw coding technique for image compression
Lzw coding technique for image compressionLzw coding technique for image compression
Lzw coding technique for image compression
 
Image compression in digital image processing
Image compression in digital image processingImage compression in digital image processing
Image compression in digital image processing
 
Data compression
Data compressionData compression
Data compression
 
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
 
4. block coding
4. block coding 4. block coding
4. block coding
 
Analog Video
Analog Video Analog Video
Analog Video
 
Introduction to data compression.pptx
Introduction to data compression.pptxIntroduction to data compression.pptx
Introduction to data compression.pptx
 
2. data and signals
2. data and signals2. data and signals
2. data and signals
 
Data Compression (Lossy and Lossless)
Data Compression (Lossy and Lossless)Data Compression (Lossy and Lossless)
Data Compression (Lossy and Lossless)
 
Compression: Video Compression (MPEG and others)
Compression: Video Compression (MPEG and others)Compression: Video Compression (MPEG and others)
Compression: Video Compression (MPEG and others)
 
Video Compression Basics
Video Compression BasicsVideo Compression Basics
Video Compression Basics
 
Data Compression Project Presentation
Data Compression Project PresentationData Compression Project Presentation
Data Compression Project Presentation
 
image compression ppt
image compression pptimage compression ppt
image compression ppt
 

Destaque (20)

Run length encoding
Run length encodingRun length encoding
Run length encoding
 
RLE - Run Length Encoding (UFP)
RLE - Run Length Encoding (UFP)RLE - Run Length Encoding (UFP)
RLE - Run Length Encoding (UFP)
 
Compression
CompressionCompression
Compression
 
Huffman Student
Huffman StudentHuffman Student
Huffman Student
 
Huffman coding
Huffman codingHuffman coding
Huffman coding
 
Image enhancement
Image enhancementImage enhancement
Image enhancement
 
Quantization
QuantizationQuantization
Quantization
 
Quantization
QuantizationQuantization
Quantization
 
Huffman codes
Huffman codesHuffman codes
Huffman codes
 
Discrete cosine transform
Discrete cosine transformDiscrete cosine transform
Discrete cosine transform
 
quantization
quantizationquantization
quantization
 
Data compression huffman coding algoritham
Data compression huffman coding algorithamData compression huffman coding algoritham
Data compression huffman coding algoritham
 
Research Methodology - Introduction
Research  Methodology - IntroductionResearch  Methodology - Introduction
Research Methodology - Introduction
 
Text compression in LZW and Flate
Text compression in LZW and FlateText compression in LZW and Flate
Text compression in LZW and Flate
 
Sampling
SamplingSampling
Sampling
 
Huffman Coding
Huffman CodingHuffman Coding
Huffman Coding
 
Sampling theorem
Sampling theoremSampling theorem
Sampling theorem
 
data compression technique
data compression techniquedata compression technique
data compression technique
 
Run-Length Encoding algorithm
Run-Length Encoding algorithmRun-Length Encoding algorithm
Run-Length Encoding algorithm
 
Sampling theory
Sampling theorySampling theory
Sampling theory
 

Semelhante a Data Compression - Text Compression - Run Length Encoding

9-Lect_9-2.pptx DataLink Layer DataLink Layer
9-Lect_9-2.pptx DataLink Layer DataLink Layer9-Lect_9-2.pptx DataLink Layer DataLink Layer
9-Lect_9-2.pptx DataLink Layer DataLink Layer
ZahouAmel1
 

Semelhante a Data Compression - Text Compression - Run Length Encoding (20)

Data communication & computer networking: Huffman algorithm
Data communication & computer networking:  Huffman algorithmData communication & computer networking:  Huffman algorithm
Data communication & computer networking: Huffman algorithm
 
Lecft3data
Lecft3dataLecft3data
Lecft3data
 
1 PCM & Encoding
1  PCM & Encoding1  PCM & Encoding
1 PCM & Encoding
 
12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf
12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf
12_HuffmanhsjsjsjjsiejjssjjejsjCoding_pdf.pdf
 
3 mathematical priliminaries DATA compression
3 mathematical priliminaries DATA compression3 mathematical priliminaries DATA compression
3 mathematical priliminaries DATA compression
 
Chapter 4 Lossless Compression Algorithims.pptx
Chapter 4 Lossless Compression Algorithims.pptxChapter 4 Lossless Compression Algorithims.pptx
Chapter 4 Lossless Compression Algorithims.pptx
 
Source coding
Source codingSource coding
Source coding
 
Presentation ppt 3.pptx
Presentation ppt 3.pptxPresentation ppt 3.pptx
Presentation ppt 3.pptx
 
9-Lect_9-2.pptx DataLink Layer DataLink Layer
9-Lect_9-2.pptx DataLink Layer DataLink Layer9-Lect_9-2.pptx DataLink Layer DataLink Layer
9-Lect_9-2.pptx DataLink Layer DataLink Layer
 
Compression Ii
Compression IiCompression Ii
Compression Ii
 
Compression Ii
Compression IiCompression Ii
Compression Ii
 
Language Model.pptx
Language Model.pptxLanguage Model.pptx
Language Model.pptx
 
Compression ii
Compression iiCompression ii
Compression ii
 
Lec5 Compression
Lec5 CompressionLec5 Compression
Lec5 Compression
 
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...
 
111111111111111111111111111111111789.ppt
111111111111111111111111111111111789.ppt111111111111111111111111111111111789.ppt
111111111111111111111111111111111789.ppt
 
111111111111111111111111111111111789.ppt
111111111111111111111111111111111789.ppt111111111111111111111111111111111789.ppt
111111111111111111111111111111111789.ppt
 
Data compression
Data compressionData compression
Data compression
 
Lab01
Lab01Lab01
Lab01
 
TeleCom Lecture 07.ppt
TeleCom Lecture 07.pptTeleCom Lecture 07.ppt
TeleCom Lecture 07.ppt
 

Mais de MANISH T I

Mais de MANISH T I (20)

Budgerigar
BudgerigarBudgerigar
Budgerigar
 
NAAC Criteria 3
NAAC  Criteria 3NAAC  Criteria 3
NAAC Criteria 3
 
Artificial intelligence - An Overview
Artificial intelligence - An OverviewArtificial intelligence - An Overview
Artificial intelligence - An Overview
 
The future of blogging
The future of bloggingThe future of blogging
The future of blogging
 
Socrates - Most Important of his Thoughts
Socrates - Most Important of his ThoughtsSocrates - Most Important of his Thoughts
Socrates - Most Important of his Thoughts
 
Technical writing
Technical writingTechnical writing
Technical writing
 
Shannon-Fano algorithm
Shannon-Fano algorithmShannon-Fano algorithm
Shannon-Fano algorithm
 
Solar Image Processing
Solar Image Processing  Solar Image Processing
Solar Image Processing
 
Graph Theory Introduction
Graph Theory IntroductionGraph Theory Introduction
Graph Theory Introduction
 
Rooted & binary tree
Rooted & binary treeRooted & binary tree
Rooted & binary tree
 
JPEG
JPEGJPEG
JPEG
 
Colourful Living - Way of Life
Colourful Living - Way of LifeColourful Living - Way of Life
Colourful Living - Way of Life
 
Introduction to Multimedia
Introduction to MultimediaIntroduction to Multimedia
Introduction to Multimedia
 
Soft Computing
Soft ComputingSoft Computing
Soft Computing
 
Research Methodology - Methods of data collection
 Research Methodology - Methods of data collection Research Methodology - Methods of data collection
Research Methodology - Methods of data collection
 
15 lessons of lord buddha
15 lessons of lord buddha15 lessons of lord buddha
15 lessons of lord buddha
 
DBMS - FIRST NORMAL FORM
DBMS - FIRST NORMAL FORMDBMS - FIRST NORMAL FORM
DBMS - FIRST NORMAL FORM
 
Simple Dictionary Compression
Simple Dictionary CompressionSimple Dictionary Compression
Simple Dictionary Compression
 
Introduction for Data Compression
Introduction for Data Compression Introduction for Data Compression
Introduction for Data Compression
 
Lz77 (sliding window)
Lz77 (sliding window)Lz77 (sliding window)
Lz77 (sliding window)
 

Último

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 

Último (20)

Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 

Data Compression - Text Compression - Run Length Encoding

  • 2. • If a data item d occurs n consecutive times in the input stream, replace the n occurrences with the single pair nd. • The n consecutive occurrences of a data item are called a run length of n, and this approach to data compression is called run-length encoding or RLE. Run Length Encoding
  • 3.
  • 4. We have to adopt the convention that only three or more repetitions of the same character will be replaced with a repetition factor. The main problems with this method are the following: • In plain English text there are not many repetitions. • There are many “doubles” but a “triple” is rare. • The most repetitive character is the space. • Dashes or asterisks may sometimes also repeat. • In mathematical texts, digits may repeat.
  • 5. • Example Paragraph The abbott from Abruzzi accedes to the demands of all abbesses from Narragansett and Abbevilles from Abyssinia. He will accommodate them, abbreviate his sabbatical, and be an accomplished accessory. • The character “@” may be part of the text in the input stream, in which case a different escape character must be chosen. • Sometimes the input stream may contain every possible character in the alphabet. • Example An example is an object file, the result of compiling a program. Such a file contains machine instructions and can be considered a string of bytes that may have any values.
  • 6. • Since the repetition count is written on the output stream as a byte, it is limited to counts of up to 255. • This limitation can be softened somewhat when we realize that the existence of a repetition count means that there is a repetition (at least three identical consecutive characters). • We may adopt the convention that a repeat count of 0 means three repeat characters, which implies that a repeat count of 255 means a run of 258 identical characters.
  • 7. • The MNP class 5 method was used for data compression in old modems. • It has been developed by Microcom, Inc., a maker of modems (MNP stands for Microcom Network Protocol), and it uses a combination of run-length and adaptive frequency encoding.
  • 8. Performance We assume that the string contains M repetitions of average length L each. Each of the M repetitions is replaced by 3 characters (escape, count, and data) Size of the compressed string is N − M × L +M ×3 = N −M(L − 3) Compression factor = N / N −M(L − 3)
  • 9. Digram Encoding • A variant of run length encoding for text is digram encoding. • This method is suitable for cases where the data to be compressed consists only of certain characters, e.g., just letters, digits, and punctuation. • Good results can be obtained if the data can be analyzed beforehand. • “E”, “T”, “TH”, and “A”, occur often.
  • 10. Pattern Substitution For compressing computer programs, where certain words, such as for, repeat, and print, occur often. Each such word is replaced with a control character or, if there are many such words, with an escape character followed by a code character. Assuming that code “a” is assigned to the word print, the text “m:print,b,a;” will be compressed to “m:@a,b,a;”.
  • 11. Relative Encoding [Differencing] • Successive temperatures normally do not differ by much, so the sensor needs to send only the first temperature, followed by differences. The sequence of temperatures 70, 71, 72.5, 73.1, . . can be compressed to 70, 1, 1.5, 0.6, . . .. The differences are small and can be expressed in fewer bits.
  • 12. The sequence 110, 115, 121, 119, 200, 202, . . . can be compressed to 110, 5, 6,−2, 200, 2, . . . . Now need to distinguish between a difference and an actual value. The compressor creating an extra bit (a flag) for each number sent, accumulating those bits, and sending them to the de compressor from time to time, as part of the transmission. Assuming that each difference is sent as a byte, the compressor should follow (or precede) a group of 8 bytes with a byte consisting of their 8 flags.
  • 13. Another practical way to send differences mixed with actual values is to send pairs of bytes. Each pair is either an actual 16-bit measurement (positive or negative) or two 8-bit signed differences. Thus actual measurements can be between 0 and ±32K and differences can be between 0 and ±255. For each pair, the compressor creates a flag: 0 if the pair is an actual value, 1 if it is a pair of differences. After 16 pairs are sent, the compressor sends the 16 flags.
  • 14. • The sequence of measurements 110, 115, 121, 119, 200, 202, . . . is sent as (110), (5, 6), (−2,−1), (200), (2, . . .), where each pair of parentheses indicates a pair of bytes. • The −1 has value 11111111 (binary) , which is ignored by the de-compressor (it indicates that there is only one difference in this pair).
  • 15. Reference:-  Data Compression: The Complete Reference, David Salomon, Springer Science & Business Media, 2004 For any queries contact: Web: www.iprg.co.in E-mail: manishti2004@gmail.com Facebook: @ImageProcessingResearchGroup