Presentation is loading. Please wait.

Presentation is loading. Please wait.

Side match vector quantization. 2 preface To compress image, using VQ, usual method is to encode blocks indepentently. However, there are many interblock.

Similar presentations


Presentation on theme: "Side match vector quantization. 2 preface To compress image, using VQ, usual method is to encode blocks indepentently. However, there are many interblock."— Presentation transcript:

1 Side match vector quantization

2 2 preface To compress image, using VQ, usual method is to encode blocks indepentently. However, there are many interblock correlation. How to use information of adjacent block to further reduce the bit rate.

3 3 SMVQ U13 L4x1X2x3x4 L8X5 L12X9 L16X13 U LX Colored blocks,U and L, are called seed blocks. The remain block,X, called residual block, are recovered by seed blocks.

4 4 SMVQ U and L are encoded blocks. We assume X1= X2=U14 X3=U15 X4=U16 X5=L8 X9=L12 X13=L16 We find the nearest codevector to recover X. The compression rate is very high, because only fist column and first row need to be encoded, the rest of blocks are recovered by side match. However, by side match method, the quality of image is worst and worst, called derailment.

5 5 Modify SMVQ to improve quality Chang original seed blocks. More seed blocks or “cross” blocks. Then residual blocks can be recovered by comparing with sides of its upper, right, down, and left blocks. We recover every residual blocks in advance. Compare with corresponding blocks in original image. When its distortion is over predetermined threshold, then encode the block in usual way.

6 6 CSMVQ variable-rate SMVQ The idea is to divide blocks into two groups by its variance, namely “smooth” and “variation”. If the adjacent blocks are “smooth”, we find nearest h s codewords. Then find the optimal codevector out of the h s codewords. If only one adjacent blocks are smooth, find the nearest 2*h s. If all adjancent blocks are “variation”, find the nearest 4*h s.

7 7 CSMVQ Because CSMBVQ need to process state codebook again, encoding speed lowers down. It’s very rough to assert blocks “smooth” or “variation” only by its variance.

8 8 Pattern-based SMVQ Use detection mask to detect if there is an edge cross the block. We first assume block 4x4. z1z2z3Z4 z5z6z7Z8 z9z10z11Z12 z13z14z15z16 Z =

9 9 Pattern-based SMVQ 1111 1111 11 11 11 11 0 01 011 0111 0 1 110 1110 EW = NS = NW =ES = ( Horizontal ) ( Vertical ) 45 o 135 o

10 10 PSMVQ PSMVQ train two codebooks by above detection method. One is trained by edge block, the other is trained by smooth. In PSMVQ, “pattern” is a set of blocks. For example, 2x2 or 4x4 blocks form a pattern.

11 11 PSMVQ encoding steps 1. By detection mask, class all blocks into two groups – edge or smooth. “1” stand for edge. “0” stand for smooth. Then, build up an edge map (one bit for one block)

12 12 PSMVQ encoding steps 2 define the order in which block is chosen. 1 4 3 2 14917614522064 33 9452536125128 1357 5531660 856 4121372942223830 3501963 2511862 3510462634114727 1559 7541458 655 4323393144244032 113 416 9 512 7 215 314 11 610 8 Pattern size:2x2 Pattern size:4x4 Pattern size:8x8

13 13 PSMVQ encoding steps The smaller the number, the high priority is. To choose how many seed blocks for one pattern depends on the demand of image quality. The more seed blocks is, the better the image quality is, but longer the compression code is.

14 14 PSMVQ encoding steps 3 According to edge map, adjust the priority order in pattern. For example, one blocks in pattern belongs to smooth block. Then the region’s priority need to plus pattern. 1+16=1713+16=294+16=2016+16=32 9 5 12 7 2 15 3 14 11 6 10 8

15 15 PSMVQ encoding steps 4 Begin coding. After Choosing seed blocks, recover the residual blocks adjacent to seed blocks in order by SMVQ. After all block are encoded finished, test the quality if it is acceptable. If not, continuing adding seed blocks until it is acceptable. Last, record the number of seed block being used for decoding in the future.

16 16 PSMVQ decoding steps Decompress edge map. Adjust the order which pattern is chosen according to edge map. According the number of seed blocks, decode seed blocks according its index. Then the rest of residual blocks are decoded by SMVQ according to the number of adjacent blocks and the order in step 1. After all residual blocks are reproduced, the decoding is complete.

17 17 Experiment result Image (512x512) Edge blockSmooth block Edge map compressio n code Compressio n ratio (%) Airplane Lena Toys Pepper Sailboat 4544 4841 4252 4188 6373 11840 11543 12132 12196 10011 2392 bits 3928 bits 1744 bits 5168 bits 5560 bits 14.60 23.97 10.64 34.54 33.94

18 18

19 19


Download ppt "Side match vector quantization. 2 preface To compress image, using VQ, usual method is to encode blocks indepentently. However, there are many interblock."

Similar presentations


Ads by Google