INFORMACIÓN GENERAL Y NORMAS DE USO
RESUMEN DE DERECHOS Y NORMAS DE USO DE MAYOR RELEVANCIA RECOGIDOS EN EL CONCIERTO CON SU MUTUALIDAD
G) UTILIZACIÓN DE MEDIOS NO CONCERTADOS 1. NORMA GENERAL
One of the major drawbacks of global off-line or on-line histogram packing is that if even most of the intensity values appear only once or just a few number of times in the image, they will be considered by the histogram packing procedure as having as much importance as those that occur most frequently. In other words, images having “quasi-sparse” histograms cannot benefit from this method. To investigate how this characteristic can be used to improve compression we propose the following approach [53, 43].
Let us denote by I the set of all different intensity values used by a given image, and by S ∈ N some pre-defined value. During the processing of sample xt, which generates a transformed
sample yt at time instant t, we assume that a previously constructed subset of I, It n, is
available:
Int = {I0, I1, . . . , In−1}, n ≤ S.
Moreover, we assume, without loss of generality, that Ii < Ij, ∀i<j, and that the following
one-to-one, order-preserving mapping in N0 is also available: ht= (I07→ 0, I17→ 1, . . . , In−17→ n − 1).
Sample xt is processed as follows. If xt ∈ It
n, then yt = ht(xt). However, if xt 6∈ Int, then yt = n, which is the first element of N
intensity value ˜I = xt is stored into a file, which is used for later recovery of the original
image intensity values. We call this file the “recovery file”. The occurrence of an intensity not belonging to It
n also implies the rearrangement of the
mapping, which depends on whether n = S or not. If n < S, and assuming that Ii< ˜I < Ii+1, then the new mapping is:
ht+1= (. . . , Ii 7→ i, ˜I 7→ i + 1, Ii+17→ i + 2, . . . , In−17→ n).
As can be seen, ˜I is inserted in the mapping in such a way that the one-to-one, order-
preserving property is maintained. On the other hand, if n = S, in addition to the inclusion of ˜I in the mapping, as described above, it is also required the deletion of one of the members
of It
n(i.e., the cardinality of the set is kept equal to S). Also in this case, the mapping has to
be rearranged in order to obey to the one-to-one, order-preserving property. The algorithm is presented in Fig. 3.11.
Process all the image pixels in a raster scan order
Sample x exists in the mapping table?
Generate the transformed version of sample x
accordingly to the mapping in use
Rearrange the mapping table
Table is full? (n = S)
Insert the new intensity into the table mantaining the one-to-one order
Delete the oldest intensity of the mapping table
Yes
No
No Yes
41 Decoding is performed using a similar strategy as encoding. When decoding sample yt, if yt< S, then xt= (ht)−1(yt). 2 Otherwise, an intensity value, ˜I, is fetched from the recovery
file and xt= ˜I. The mapping is always reorganized following the same procedures as those
performed by the encoder.
The success of this method depends, fundamentally, on how the increase in bit-rate gener- ated due to storing the values of xt 6∈ I is compensated by a more “compression-friendly”
histogram-packed image, gp. Figure 3.12 illustrates this tradeoff for the case of the “yahoo” and “benjerry” images. The curves represent compression gain in relation to normal JPEG- LS encoding. The black dots indicate the points where the highest compression gains were obtained, whereas the squares on the rightmost end of the curves indicate the gains attained with off-line histogram packing.
-10 -5 0 5 10 15 20 25 30 35 40 0 20 40 60 80 100 120 140 160
Percentage of compression gain
Number of intensities kept (S) benjerry
yahoo
Figure 3.12: Analysis of the quasi-sparse characteristics of the histograms of the “benjerry” and “yahoo” images.
Until now, we left some important issues open, namely: 1. How the intensity values are stored in the recovery file;
2. How do we choose which intensity value is deleted from the mapping when a new value has to be inserted and It
n is not allowed to increase further (i.e., n = S);
3. How do we find the optimum value of S.
Concerning the first question, i.e., how the values are stored in the recovery file, for simplicity we store these values directly, without any kind of compression. This means that, for 8 bits per pixel images, each intensity value is stored in one byte.
The second question, i.e., how the intensity values are substituted in Int when n = S, lead us to several approaches. Among them, we just point out two of the most obvious and simple: one of them calls for the removal of the oldest unused intensity; the other relies on the removal of the least used intensity. Both methods have been tested and the best results have been obtained using the removal of the oldest unused intensity.
Finally, the question regarding the optimum value of S. This image-dependent and also encoding-method-dependent parameter plays a crucial role in this preprocessing technique. In fact, depending on the value of S, we may obtain substantial compression improvements or, if incorrectly chosen, we may end up with a degradation in the compression ratio. Examples of some curves representing the compressed size of the images as a function of S can be observed in Fig. 3.13. 0 30 60 90 120 150 0 50 100 150 200 250
Compressed size (KBytes)
S
library sunset cmpndn france
Figure 3.13: Examples of the dependence of the compressed size of the images with parameter
S. These values have been obtained with the JPEG-LS encoder. The dots mark the optimum
values.
To overcome the drawback of choosing the optimum value of S, we improved the described method in order to adapt the number of symbols accordingly to the image information. The method starts with a predefined number of symbols and update this number while the image
43 is being read. The algorithm looks at the last K processed pixels and decides what to do depending on the operations made in the mapping table. We can configure the following parameters: initial value of S, increment value, window size, and decision parameters.