DIGITAL IMAGE PROCESSING PROJECT
COMPLEXITY-RATE-DISTORTION TRADE-OFFS IN VIDEO COMMUNICATION Alessandro Baffa (682075), Paolo Oranges (705875) ({alessandro.baffa, paolo.oranges}@mail.polimi.it)
I. INTRODUCTION The new video coding standard H.264/AVC outperforms previous standards reducing the bit budget by 50% for the same target quality. This comes with a price to pay: the computational complexity of the H.264/AVC encoder is typically much higher than encoders of previous standards (the complexity of the decoder is comparable to previous standards though). With the proliferation of hand-held portable devices, the conventional broadcast model (encode once, decode many times) is being challenged, since video communication is also up-link. These new devices need to limit the computational complexity of the encoder, in order to save battery life. This can be achieved at the cost of a reduced rate-distortion performance. The goal of this paper is to study the complexity-ratedistortion trade-offs in the H.264/AVC codec. In the next section we consider the search algorithms used in H.264/AVC to estimate the motion vectors. After a general overview, we explain three of them we have used for the tests: Full search, Fast-Full search, UMHexagonS. In the third we consider a general overview of the ratedistortion models in the literature, explaining the general model and analyzing two of them in details: a linear model and a quadratic one. In the fourth and fifth sections we show our test environment, including the explanation of our test operations, and the results obtained. In the sixth section we explain the conclusions about these results. In the seventh section we explain the future works. II. SEARCH CRITERIA IN H.264 For our purpose we have used different search criteria for the block matching in order to evaluate the differences in performance among them: Full Search, Fast Full Search and UMHexagonS. A. FULL SEARCH Exaustive search withing the search range ÂąW, i.e. the set of all candidate predictors that contain all the motion vector such that:
A total number of candidate motion vectors need to be tested. For each block, Full search explores an error surface where each point corresponds to a candidate motion vector and the height of the surface to the matching error. Full search finds the global optimum of the error surface to the matching error by testing all the candidate motion vectors. Therefore it achieves the best performances, but it is computationally expensive. B. FAST FULL SEARCH Reduce the computational complexity with respect to the Full search and finds the global minimum of the error surface. Blocks are visited in a smart way in order to avoid local minima. Successive Elimination Algorithm (SEA) is used for the Fast Full Search. This method allows to calculate the SAD only when the following inequality is satisfied
where
R represents the sum norm of the current macroblock and represents the sum norm of any matching candidate macroblock with motion vector . Therefore, the SEA is the method to reduce the number of required computations for SAD with pre-calculated R and M(x, y), and to realize Fast Full search. The following are the steps of this method: 1. We calculate R and all M(x, y) in search window. 2. We select a initial motion vector (m, n) and calculate 3. Using the result of 1. and 2., we find out a motion vector (x, y) which is satisfied with the inequality. 4. We calculate , then compare with .
Complexity rate-distortion trade offs in video communication