Upcoming SlideShare
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Standard text messaging rates apply

# A novel binary-image compression scheme

767
views

Published on

This is an ICASSP 2010 presentation of a novel binary and discrete-color image compression scheme.

This is an ICASSP 2010 presentation of a novel binary and discrete-color image compression scheme.

0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total Views
767
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
15
0
Likes
0
Embeds 0
No embeds

No notes for slide

### Transcript

• 1. A Fast Lossless Compression Scheme for Digital MapImages Using Color Separation by Saif Zahir and Arber Borici Department of Computer Science, University of Northern British Columbia ICASSP 2010
• 2. Huffman and Arithmetic Coding The Huffman method assigns shorter code to symbols with higher probabilities  Optimal encoder  Low efficiency with skewed probabilities  Higher efficiency on groups of symbols The Arithmetic method performs better by encoding a sequence of symbols  Higher complexity  Less efficient with larger alphabets  Affected by inaccurate probabilities more often than Huffman coding 2
• 3. Motivation and Objectives Proposing a new lossless compression method for discrete-color images  Constructing a universal Huffman-based codebook by studying the entropy of a system of randomly chosen binary images  Introducing and additional helper module, the RCRC algorithm Low-complexity and high-efficiency method Design a coding method notwithstanding the nature of a binary image 3
• 4. The Proposed Method Three components:1. Preprocessing  Perform color separation into binary layers  Make layer dimensions divisible by 82. A universal Huffman codebook  Designed by studying a relatively large sample of randomly chosen binary images  Huffman coding applied on 8x8 blocks of a binary image3. The Row-Column Reduction Coding  Attempts to compress 8x8 blocks which are not found in the codebook  Checks for identity between rows and columns 4
• 5. General Diagram of the Method No Use the original block BkAppendtest data Layers Yes Compressed RCRC(Bk) < Data Color 64 bits? Use reduced Separation block No 8x8 Yes blocks Bk Codebook ? Block Bk Use Huffman Code of block Bk 5
• 6. The Codebook Construction Build a system of binary images  Images contain no noise  The system is unbiased, i.e. images are randomly selected Perform a frequency analysis on 8x8 blocks of the system images Identify blocks that occur more than once Determine the system entropy Build correct Huffman codes for the most frequent blocks The resulting codebook is a fixed-to-variable dictionary containing 6952 entries 6
• 7. How is the codebook employed? Search the codebook for each 8x8 block of a given source image  The X-by-Y image is partitioned into XY/64 8x8 blocks If the block exists in the codebook, compress using the corresponding Huffman code An example of the codebook structure: 7
• 8. The first three codebook entries: 8
• 9. The Codebook Entropy The entropy of our codebook is 4.08 bits per 8x8 block  Thus, the compression limit is (64 – 4.08)/64 = 93.63% The average Huffman code length is 4.094 9
• 10. Row-Column Reduction Coding (RCRC) Operates on 8x8 blocks Uses two reference vectors  The Row Reference Vector (RRV) is a column vector  The Column Reference Vector (CRV) is a row vector Checks whether two consecutive row vectors are identical  If rows are identical, one is eliminated and the block is reduced by one row  If not, the next two consecutive row vectors are compared  The row reduction operation continues until the end of the block is reached 10
• 11. RCRC (cont.) The column reduction operation is similar and elimination operations are stored in the CRV The output of RCRC is a bit stream containing the RRV, CRV, and the reduced block  Concatenated as S = RRV+CRV+RB  Minimum length of S = 17 bits 11
• 12. RCRC Example: 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 Row reduced block RRV 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1Row 1 eliminates row 2Row 3 eliminates all other rowsColumn elimination is performed on the row-reduced block: CRV 1 0 0 0 0 0 1 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 The reduced blockThe compressed bit stream for this example is: 10100000100000101011 12
• 13. The Coding Process  Summarized in the following table: Block encoding bits Description For the block with the shortestCase 1a ‘11’ Huffman code in the codebook ‘00’ + 5 bits + Huffman For other blocks found in theCase 1b Code codebook For blocks compressed byCase 2 ‘01’ + RRV + CRV + RB RCRCCase 3 ‘10’ + 64 bits For uncompressed blocks 13
• 14. Time Complexity Analytical Time Complexity  The codebook contains fixed entries  RCRC is executed on fixed, 8x8 blocks  The variable input is the source image size  Time complexity is O(XY), where X and Y are the image dimensions Empirical Metric  Average run time: less than 1s for various binary images  Worst case: Block B not in the dictionary; not compressed by RCRC. However, such blocks are rare (about 5% of, on average) 14
• 15. Preliminary Results Tested on several topographic maps Average compression of 0.036 bpp Very large image dimensions Original Compressed Compression Results reported in theImage literature for a similar Size (KB) Size (KB) Ratio (bpp) class of images vary 1 10,960 210.77 0.019 from 0.22 to 0.18 bpp. 2 220,979 7,489.27 0.034 (Franti et al., 2002) 3 173,769 6,626. 27 0.038 4 2,562 206.69 0.081Total 409,270 14,533.12 0.036 15
• 16. Selected Set of Test Images: Source: UNBC GIS Lab: Maps of British Columbia 16
• 17. The Four Layers of Map 1 Layer 1: Contour Lines Layer 2: Lakes 4 different colors Layer 3: Rivers Layer 4: Roads 17