Method for controlling code rate by estimating rate distortion information based on JPEG2000

0 Introduction With the continuous development of multimedia and network technologies, when transmitting image or video information, how to effectively use channel bandwidth has become one of the main topics discussed today. Rate control is a method that must be used to control the bit rate in image or video coding. The ultimate goal is to allocate the target bit rate to the image or video in order to obtain the minimum distortion.
JPEG2000 is a new international standard for still image compression coding. Because it adopts a new structure that is different from other image compression standards, JPEG2000 has a high compression ratio, supports both lossy and lossless compression, and the code stream can be randomly accessed and processed. The coding algorithm of JPEG2000 includes discrete wavelet transform (DWT) and bit plane entropy coding. In JPEG2000, rate control can be performed by trying different quantization steps: With a bit-plane MQ encoder, JPEG2000 can accurately and simply control the bit rate to achieve the desired bit rate. The core coding method of JPEG2000 is embedded code block coding (EBCOT). Its optimal truncation is a rate control method that minimizes image distortion. This process is after the wavelet coefficients are entropy encoded (compressed), so it is also called compressed rate distortion optimization (PCRD).
Based on the actual rate-distortion information of all compressed data, PCRD technology can calculate the image of the target bitstream to minimize distortion. But this also requires all the bitstream data of the image. In fact, a lot of data will not be output, and this process will also take up a lot of memory and calculation. To this end, this paper proposes a new rate control method, which can effectively reduce the amount of calculation and memory usage, and at the same time can obtain similar effects.

1 Introduction to JPEG2000 As a new international compression standard, JPEG2000 can usually be regarded as six parts: wavelet transform (DWT), scalar quantization, bit coefficient modeling, arithmetic coding, post-compression rate-distortion optimization and code stream organization.
The wavelet transform can decompose the image into four seed bands of LL, HL, LH and HH, and can perform multi-level decomposition. LL is where the low-frequency information of the image is located, and the other three sub-bands contain the high-frequency information of the image. After these wavelet coefficients are quantized, they can enter the EBCOT encoding process.
1.1 Entropy coding The entropy coding process generally includes coefficient modeling and arithmetic coding. It is essentially a bit-plane coding process. In this process, each encoding block is independently encoded, and all three encoding channels are passed through. These three encoding channels are the importance channel, the amplitude refinement channel, and the clear channel, respectively. These coding channels will find the context of each bit coefficient according to the bit coefficient model, and then perform context-based arithmetic coding (MQ) on this bit coefficient.
1.2 Rate control Bit rate control involves three parts: quantization, entropy coding and code stream organization. Quantization means that the quantization step size is adjusted repeatedly according to the required compression rate to achieve the target bit rate. This is an interactive control method. Another method that uses post-compression processing is to set a cut-off point for each coded block in the code stream data. This cut-off point can determine the amount of data encoded by the coded channel of each code block. This is the rate-distortion optimization of JPEG2000 after compression. The specific algorithm is as follows:
First set the code rate of the coding block Bi 16a.JPG , The distortion is 16b.JPG , The target code rate of the final compressed data is Rmax, then the cutoff point of each coding block can be freely selected, it only needs the final code rate to meet the following formula:

16d.JPG

If the sum of the distortions of each coding block is used to represent the distortion of the reconstructed image, the distortion of the reconstructed image is:
16e.JPG
Thus, at the intercept ni, its rate-distortion slope is:

16f.JPG
Then, using the Lagrangian multiplier method, the optimal truncation point λ can be obtained, thereby achieving the optimal truncation coding.

2 New rate control method The optimal truncation point λ can only be obtained by the actual rate-distortion slope of all truncation points, which requires the entropy encoding process to encode all bit-plane data and all encoded code streams are stored in memory And, even those code streams that do not need to be transmitted after the code stream control, must be encoded and stored. However, it has been found through research that if the rate-distortion slope of each truncation point is sorted in a decreasing manner, this arrangement order is related to the number of bit plane layers. In general, the rate-distortion slope of a high bit plane is larger than that of a bit plane; second, the rate-distortion slope of the channel coded first is greater than that of the channel coded later.
Based on the above two points, you can scan the bit plane information of the image first, and encode those with a large rate distortion slope. However, the unimportant bits may not be encoded. The process of this method is to first calculate the number Pi of the highest bit plane of each code block Bi according to the following formula;
16g.JPG
Among them is the largest coefficient in the code block Bi. After that, find the maximum number of planes:

16h.JPG

The sequence diagram of scanning each code block is shown in Figure 1. For each scanned code block, there are generally the following three conditions:

Code block scanning sequence diagram


(1) First of all, it is necessary to judge whether Pi = Pmax is established. If it is true, encode the uncoded bit-plane channel of this coding block, then Pi decrements by 1, and then check condition (2). Otherwise check the condition (3);
(2) If the accumulated code rate is greater than the target code rate, the code will be exited immediately. Otherwise, check the condition (3);
(3) If this is the last coding block, then Pmax is reduced by 1 and then the coding of the next layer is entered. Otherwise, continue to scan the next coded block.
Conditions satisfied by the above condition (2) 16j.JPG , So the code rate will not exceed the limit of the compression rate. The conditions (1) and (3) fully consider the importance of the bit plane and the encoding channel, thus ensuring the best image quality.

3 Experimental results Here, we use the 512x512 lena image for testing. Table 1 records the comparison between PCRD and the new method in terms of calculation and memory usage. Table 2 lists the comparison of the two methods on PSNR. The decompressed image effect of the two methods is shown in Figure 2.

4 Conclusion Through the analysis of JPEG2000, this paper proposes a method to control the code rate by estimating the rate distortion information. This method does not need to encode all data, so it can effectively reduce the amount of redundant calculation and memory consumption while maintaining image quality.

Welcome to reprint, this article comes to the electronic enthusiast network ()

Steel Pole 

Pole Height: Hot-Dip Galvanized, Q235 Painting Plastic,4M-15M For Choosing

Pole And Lamp Fixture Color: Grey, White, Black, Blue, Green, Etc

Pole Shape: Tapered, Square, Hexagonal, Octagonal, Etc

Testing Including: 

1.Material testing

2.Shape testing 

3.testing after Galvanizaiton 

4. Tensile testing 

5.Fittings check


steel light pole

light pole



Steel Pole

Steel Pole,Galvanized Steel Pole,Street Lamp Steel Pole,Steel Solar Street Light Pole

Yangzhou Bright Solar Solutions Co., Ltd. , https://www.solarlights.pl