Skip to Main Content
We develop and test a new, two-stage, residual vector quantization algorithm using variable bit-rate encoding. In the first stage, we partition the input image into non-overlapping blocks, vector-quantize and code them by a small codebook using the well-known K-means algorithm. The novelty in this method is the use of high eigen-valued blocks as initial seeds which serve as good distributors in the formation of clusters and fast convergence. We compute the residual vectors and classify them based on threshold values of distortion and variance. Vectors above the given threshold require second-stage coding. In the second stage, we partition the residual vectors further into small sub blocks and scalar-quantize each sub block to form number patterns instead of performing direct vector quantization (DVQ). These number patterns, which form the secondary codebook, are easily generated without complex calculations by applying basic ideas from combinatorics. Both the intra-block and inter-block correlation properties have been exploited to enhance the compression rate. This method offers several advantages: the computational complexity is greatly reduced; exhaustive comparisons in DVQ are carried out more efficiently; the picture quality of the reconstructed image is not compromised; and, a reduced bit-rate is achieved.