An improved fast encoding method for vector quantization based on memory-efficient data structure

Within the framework of vector quantization (VQ), the fast search method is a key issue because it is the time bottleneck in the VQ encoding process. To speed up VQ some very effective fast search methods that are based on using statistical features (i.e. the mean, the variance and L2 norm) of a k-dimensional vector have already been proposed. It is rather easy to obtain the mean of an input vector online. However. in order to obtain the variance of an input vector, it needs (2k-1) additions (plusmn), k multiplications (times) and once square root (sqrt) operation on-line. Similarly, to obtain the L2 norm of an input vector, it also needs (k-l) additions (plusmn), k multiplications (times) and once square root (sqrt) operation on-line. Clearly, these operations are a rather heavy overhead in the search process. In addition, all computations in a search process must use real rather than integer value. For each codeword, three extra memories are necessary to store its features. To solve the overhead problem of computing the variance and L2 norm of an input vector on-line and to make all computations in integer form possible, previous works proposed to use the sum and two partial sums only as features of a vector for reducing search space. But they need three extra memories as well for each codeword to store the features. In order to avoid this extra memory requirement this paper proposes a memory-efficient data structure for storing the sum, two partial sums and the original vector to further improve the previous works (Pan et al. (2002), (2003)). Meanwhile, a more efficient computation method for rejection tests is also developed. In addition, all computations can be realized in integer form. Experimental results confirmed that the proposed method outperforms the previous works