Download - Lz77 (sliding window)
![Page 1: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/1.jpg)
LZ77 (Sliding Window)
Data Compression
![Page 2: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/2.jpg)
LZ77 (Sliding Window)• Search Buffer (Thousands of bytes long)
• Look ahead Buffer (Tens of bytes long)
• Text should be read from right to left in the buffer
• The encoder check the symbol in Look ahead buffer with search buffer
considered here as dictionary
• Offset is the count from the dividing line between search and look ahead
buffer.
• Length is the span of string matched in look ahead buffer corresponding to
search buffer
• Symbol is the next character after the string match
• The encoder select the longest match or if they are all the same length the
last one found because the last one will be leaving the search buffer soon.
![Page 3: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/3.jpg)
LZ77 (Sliding Window)
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Input Text : sir sid eastman easily teases sea sick seals˽ ˽ ˽ ˽ ˽ ˽ ˽
Note:- It represents space˽
![Page 4: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/4.jpg)
LZ77 (Sliding Window)
sir sid ea˽ ˽ stman easily teases sea sick seals˽ ˽ ˽ ˽ ˽sir sid ea˽ ˽ stman easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary)Size = 30 symbols (app)
Look ahead BufferSize = 10 symbols (app)
Dividing Line
Text Movement
Encoding scheme (offset, length, next symbol)
![Page 5: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/5.jpg)
LZ77 (Sliding Window)
s ir sid eas˽ ˽ tman easily teases sea sick seals˽ ˽ ˽ ˽ ˽ir sid eas˽ ˽ tman easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s)
![Page 6: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/6.jpg)
LZ77 (Sliding Window)
si r sid east˽ ˽ man easily teases sea sick seals˽ ˽ ˽ ˽ ˽r sid east˽ ˽ man easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (0, 0, i )
![Page 7: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/7.jpg)
LZ77 (Sliding Window)
sir sid eastm˽ ˽ an easily teases sea sick seals˽ ˽ ˽ ˽ ˽sid eastm˽ ˽ an easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (0, 0, i )
(0, 0, r )
![Page 8: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/8.jpg)
LZ77 (Sliding Window)
sir ˽ sid eastma˽ n easily teases sea sick seals˽ ˽ ˽ ˽ ˽sid eastma˽ n easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (0, 0, i )
(0, 0, r ) (0, 0, ˽ )
![Page 9: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/9.jpg)
LZ77 (Sliding Window)
sir sid˽ eastman e˽ ˽ asily teases sea sick seals˽ ˽ ˽ ˽eastman e˽ ˽ asily teases sea sick seals˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (0, 0, i )
(0, 0, r ) (0, 0, ˽ ) (4, 2, d )
![Page 10: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/10.jpg)
LZ77 (Sliding Window)
sir sid e˽ ˽ astman eas˽ ily teases sea sick seals˽ ˽ ˽ ˽astman eas˽ ily teases sea sick seals˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (0, 0, i )
(0, 0, r ) (0, 0, ˽ ) (4, 2, d )
![Page 11: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/11.jpg)
LZ77 (Sliding Window)
sir sid ea˽ ˽ stman easi˽ ly teases sea sick seals˽ ˽ ˽ ˽stman easi˽ ly teases sea sick seals˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (0, 0, i ) (0, 0, a )
(0, 0, r ) (0, 0, ˽ ) (4, 2, d )
![Page 12: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/12.jpg)
LZ77 (Sliding Window)
sir sid east˽ ˽ man easily˽ teases sea sick seals˽ ˽ ˽ ˽man easily˽ teases sea sick seals˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (0, 0, i ) (0, 0, a )
(0, 0, r ) (10 ,1, t ) (0, 0, ˽ ) (4, 2, d )
Take last occurrence of s and not (6 ,1, t ) if length is same for both
![Page 13: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/13.jpg)
LZ77 (Sliding Window)
sir sid eastm˽ ˽ an easily˽ ˽teases sea sick seals˽ ˽ ˽an easily˽ ˽teases sea sick seals˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (0, 0, i ) (0, 0, a )
(0, 0, r ) (10 ,1, t ) (0, 0, ˽ ) (0 ,0, m ) (4, 2, d )
![Page 14: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/14.jpg)
LZ77 (Sliding Window)
sir sid eastman˽ ˽ easily te˽ ˽ ases sea sick seals˽ ˽ ˽easily te˽ ˽ ases sea sick seals˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (0, 0, i ) (0, 0, a )
(0, 0, r ) (10 ,1, t ) (0, 0, ˽ ) (0 ,0, m ) (4, 2, d ) (4, 1, n )
![Page 15: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/15.jpg)
LZ77 (Sliding Window)
sir sid eastman easi˽ ˽ ˽ ly teases˽ ˽sea sick seals˽ ˽ly teases˽ ˽sea sick seals˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (0, 0, i ) (0, 0, a )
(0, 0, r ) (10 ,1, t ) (0, 0, ˽ ) (0 ,0, m ) (4, 2, d ) (4, 1, n )
![Page 16: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/16.jpg)
LZ77 (Sliding Window)
sir sid eastman easil˽ ˽ ˽ y teases s˽ ˽ ea sick seals˽ ˽y teases s˽ ˽ ea sick seals˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (0, 0, i ) (0, 0, a ) (0, 0, l )
(0, 0, r ) (10 ,1, t ) (0, 0, ˽ ) (0 ,0, m ) (4, 2, d ) (4, 1, n )
![Page 17: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/17.jpg)
LZ77 (Sliding Window)
sir sid eastman easily˽ ˽ ˽ teases se˽ ˽ a sick seals˽ ˽teases se˽ ˽ a sick seals˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (0, 0, i ) (0, 0, a ) (0, 0, l )
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (0, 0, ˽ ) (0 ,0, m )
(4, 2, d ) (4, 1, n )
![Page 18: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/18.jpg)
LZ77 (Sliding Window)
sir sid eastman easily t˽ ˽ ˽ ˽ eases sea˽ ˽sick seals˽eases sea˽ ˽sick seals˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (0, 0, i ) (0, 0, a ) (0, 0, l )
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t) (4, 2, d ) (4, 1, n )
![Page 19: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/19.jpg)
LZ77 (Sliding Window)
sir sid eastman easily tease˽ ˽ ˽ ˽ s sea sick˽ ˽ seals˽s sea sick˽ ˽ seals˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (0, 0, i ) (0, 0, a ) (0, 0, l )
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t) (4, 2, d ) (4, 1, n ) (16, 3, e)
![Page 20: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/20.jpg)
LZ77 (Sliding Window)
sir sid eastman easily teases˽ ˽ ˽ ˽ ˽ sea sick se˽ ˽ alssea sick se˽ ˽ als
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, )˽ (0, 0, i ) (0, 0, a ) (0, 0, l )
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t) (4, 2, d ) (4, 1, n ) (16, 3, e)
![Page 21: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/21.jpg)
LZ77 (Sliding Window)
sir sid eastman easily teases sea˽ ˽ ˽ ˽ ˽ sick seals˽ ˽sick seals˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, )˽ (0, 0, i ) (0, 0, a ) (0, 0, l ) (4, 2, a)
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t)
(4, 2, d ) (4, 1, n ) (16, 3, e)
![Page 22: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/22.jpg)
LZ77 (Sliding Window)
sir sid˽ eastman easily teases sea sic˽ ˽ ˽ ˽ ˽ k seals˽k seals˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, ˽) (0, 0, i ) (0, 0, a ) (0, 0, l ) (4, 2, a)
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (30, 3,c) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t ) (4, 2, d ) (4, 1, n ) (16, 3, e)
![Page 23: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/23.jpg)
LZ77 (Sliding Window)
sir sid˽ ˽eastman easily teases sea sick˽ ˽ ˽ ˽ seals˽seals˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, ˽) (0, 0, i ) (0, 0, a ) (0, 0, l ) (4, 2, a)
(0, 0, r ) (10 ,1, t ) (0,0,y) (30, 3,c) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t ) (0,0,k) (4, 2, d ) (4, 1, n ) (16, 3, e)
![Page 24: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/24.jpg)
LZ77 (Sliding Window)
sir sid eastm˽ ˽ an easily teases sea sick seal˽ ˽ ˽ ˽ ˽ ss
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, ˽) (0, 0, i ) (0, 0, a ) (0, 0, l ) (4, 2, a)
(0, 0, r ) (10 ,1, t ) (0, 0, y) (30, 3,c) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t) (0,0,k)
(4, 2, d ) (4, 1, n ) (16, 3, e) (9, 4, l)
![Page 25: Lz77 (sliding window)](https://reader033.vdocuments.us/reader033/viewer/2022061616/55775ac0d8b42aac5c8b55fc/html5/thumbnails/25.jpg)
LZ77 (Sliding Window)
sir sid eastma˽ ˽ n easily teases sea sick seals˽ ˽ ˽ ˽ ˽
Search Buffer (Dictionary) Look ahead Buffer
Dividing Line
Text Movement
Encoding scheme: (0, 0, s) (4, 1, e) (8, 4, i) (30,1, ˽) (25, 1,eos) (0, 0, i ) (0, 0, a ) (0, 0, l ) (4, 2, a)
(0, 0, r ) (10 ,1, t ) (0, 0, y ) (30, 3,c) (0, 0, ˽ ) (0 ,0, m ) (19, 1, t) (0,0,k)
(4, 2, d ) (4, 1, n ) (16, 3, e) (9, 4, l)