The second step of compression is quantization. The purpose of quantization is to map a large number of input values into a smaller set of output values by reducing the precision of the data. This is the step in which information may be lost. Wavelet transformed data are floating-point values and consist of two types: low-resolution image components, which contain most of the energy, and high-resolution image components, which contain the information from sharp edges.

Since the low-resolution components contain most of the energy, it is important to maintain the integrity of this component of the data. To minimize data loss in this portion, each floating-point value can be mapped to its nearest integer neighbor (NINT). In the high-resolution components of the wavelet coefficients, there are many coefficients of small magnitude that correspond to the flat areas in the original image. These coefficients contain very little energy, and we can eliminate them without creating significant distortions in the reconstructed image. A threshold number Tm is chosen, such that any coefficient smaller than Tm will be set to zero. Above the threshold Tm, a range of floating-point values will be mapped into a single integer. An example of quantization for high-frequency coefficients is aq(i, j, k) = NINT

Qn a(i, j, k)>Tm - Tn < a(i, j, k) < Tn a(i, j, k)< - Tm, (8)

where a(i,j,k) is the wavelet coefficient in three dimensions, aq(i, j, k) is the quantized wavelet coefficient, m is the number of the level in the wavelet transform, and Qm = Q2m~\ with Q being a selected constant. The threshold Tm can be set as a constant for all levels or it can be a function of m. After quantization each coefficient will take an integer value within a finite range.

0 0

Post a comment