New results in color image quantization

We investigate an efficient color image quantization technique that is based upon an existing binary splitting algorithm. The algorithm sequentially splits the color space into polytopal regions and picks a palette color from each region. At each step, the region with the largest squared error is split along the direction of maximum color variation. The complexity of this algorithm is a function of the image size. We introduce a fast histogramming step so that the algorithm complexity will depend only on the number of distinct image colors, which is typically much smaller than the image size. To keep a full histogram at moderate memory cost, we use direct indexing to store two of the color coordinates while employing binary search to store the third coordinate. In addition, we apply a prequantization step to further reduce the number of initial image colors. In order to account for the high sensitivity of the human observer to quantization errors in smooth image regions, we introduce a spatial activity measure to weight the splitting criterion. High image quality is maintained with this technique, while the computation time is less than half of that of the original binary splitting algorithm.