• 沒有找到結果。

Power Adaptive Iterative Binary Search (PA-IBS) Algorithm

C. Support of B-frame and 8x8 Block Search

4.3 Power Adaptive Iterative Binary Search (PA-IBS) Algorithm

The PA-IBS contains the IBS algorithm to achieve power adaptive ME and the CAM to select the target iterations for IBS on an MB basis. Fig. 4.2 shows the functional block diagram of a generic video encoder system with the PA-IBS. The PA-IBS contains three major modules: (1) Binary Image Preprocessor (BIP) (2) Iterative Binary Search (IBS) (3) Content Adaptive Mechanism (CAM). The current video frame is sent to the BIP module to generate binary images stored in the frame buffer as the reference frame of the next current

92 Chapter 4: Power Adaptive Iterative Binary Search (PA-IBS)

frame. The IBS module processes total f iterations of binary bit-plane searches, where f represents the target iterations decided by CAM.

4.3.1 BInary Image Preprocessor (BIP)

The BIP is used to generate the frequency-decomposed binary bit-planes for search.

The preprocessing operation in [41] provides us a good reference to generate single bit-plane by extracting the image feature in binary format, but this method is only limited to single bit-plane design. The BIP improve the bit-planes design by considering the direc-tional and gradient image features. We adopt totally Φ filters to generate Φ binary bit-planes, in which each binary bit-plane represents one kind of directional or gradient image feature to provide more precise of pattern matching for motion search. In our design, Φ is not limited to pixel bit-depths, but the number of filters to apply for finer granularity of power adaptation.

The preprocessing operation is similar to [41], but the filters design is different. We design Φ FIR filters to generate Φ binary bit-planes. The k-th binary bit-plane ˆIk(x, y)

Iˆk(x, y) =

is generated by applying k-th FIR filter (F IRk). The adopted filters shown in Table 4.2 are two-dimensional (2-D) 2nd or 3rd order of FIR filters due to the complexity issue.

4.3.2 Iterative Binary Search (IBS)

The IBS contains multiple iterations of binary searches, and each of the iterations is a full search on binary bit-planes. The authors in [60, 61, 62, 63] provide a good reference

Chapter 4: Power Adaptive Iterative Binary Search (PA-IBS) 93

for binary bit-plane of full search, but their method is limited to single bit-plane. Our algorithm can execute multiple iterations of binary bit-plane searches, and then link the number of iterations to different power consumption levels.

Fig. 4.3 shows the processing procedure for the IBS algorithm. The BIP module gener-ates Φ binary images by frequency-decomposed filters. Then, the weighted prediction (wk) is applied to adjust the weightings between the Φ binary images to achieve better motion search results. The number of iterations (φ) to be executed in IBS is decided by content adaptive pre-analysis mechanism (CAM) on the macroblock (MB) basis. The φ iterations of block matching results in Sum of Difference (SOD) are accumulated as the final search results for the decision of motion vectors. In our experiments in later section, Φ is set as eight to provide a similar comparison basis for the 8-bit full search.

The block matching criterion for multiple iterations of binary search is SOD accumu-lation

The SOD accumulation is a function of which means we accumulate iterations of binary bit-plane matching results. For each of binary bit-bit-plane search, we compare the current block IˆkC(x, y) and the reference block ˆIkR(x + x0, y + y0) at the k-th binary bit-plane by XOR operation. The SOD operations can provide equal results as Sum of Absolute Difference (SAD) when image data is in binary format, but XOR operation is much simpler than subtraction and absolute operations.

94 Chapter 4: Power Adaptive Iterative Binary Search (PA-IBS)

Figure 4.2: Functional block diagram of a generic video encoder with power adaptive-iterative binary search (PA-IBS).

Figure 4.3: Processing procedure of the power adaptive-iterative binary search (PA-IBS) algorithm.

Chapter 4: Power Adaptive Iterative Binary Search (PA-IBS) 95

Table 4.2: Filters used to generate binary images.

k-th binary image Filter Types 2-D Filter Coefficients 1 3×3 Laplacian operators [1 1 1; 1 -8 1; 1 1 1]

2 3×3 Sobel operators along 0 degree

[1 0 -1; 2 0 -2; 1 0 -1]

3 3×3 Sobel operators along 90 degree

[1 2 1; 0 0 0; -1 -2 -1]

4 3×3 Sobel operators along 135 degree

[1 1 -2; 1 -2 1; -2 1 1]

5 3×3 Sobel operators along 45 degree

[-2 1 1; 1 -2 1; 1 1 -2]

6 3×3 Laplacian operators (di-agonal)

[0 0 0; 1 -3 1; 0 1 0]

7 3rd order of high pass filter (horizontal)

[0 0 0 0; 0 0 0 0; -1 3 -3 1; 0 0 0 0]

8 3rd order of high pass filter (vertical)

[0 0 -1 0; 0 0 3 0; 0 0 -3 0; 0 0 1 0]

4.3.3 Content Adaptive Mechanism (CAM)

The CAM dynamically adjusts the target iterations (φ) according to video contents so as to achieve a better power allocation and power adaptation performance. For example, a complicated video scene needs more power to provide an accurate search for significant quality improvement. On the other hand, a coarse search with less power is sufficient for a simple scene such as slow motion to achieve similar performance. To select φ, we need to find a relationship between the activities in video content and φ. To provide more accurate prediction for the activities in video content, this decision criterion is implemented on an MB basis.

Our MB based decision criterion measures the deviation of motion vectors from the neighboring MBs denoted as ϕ and such criterion is used to map from ϕ to φ. The parame-ter ϕ is defined in eq. (4.3) where it measures the average difference between the horizontal

96 Chapter 4: Power Adaptive Iterative Binary Search (PA-IBS)

and vertical motion predictors from the top, top right and left MBs.

ϕ = X

i∈x,y

³¯¯

¯MVitop− MVitop right¯¯¯+¯¯¯MVitop− MVitop left¯¯¯

´/2 (4.3)

Then the φ is determined by eq. (4.4), where Tkare decision thresholds and T0 = 0, T9 = maximal allowable motion vectors in the design.

φ = k, if Tk ≤ ϕ < Tk+1 where 1 ≤ k ≤ 8 (4.4)

These decision thresholds Tk are defined by the users according to the search range and maximal number of iterations Φ.

相關文件