**4. Proposed SAAS algorithm**

The PIDS algorithm adaptive selects the intensive and coarse search regions in directional partition. However, with fixed number of search points in each direction area, it cannot adjust the search range for different motion scenes. To tackle this drawback, search pattern in SAAS algorithm is no longer restricted to certain directional regions, but is adaptively selected from more specific divided regions based on the MV correlation statistics. Flow chart of the SAAS algorithm is depicted in Figure 8 for better illustration. For each frame, ME search pattern is determined by MV correlation statistics. For each block, 24 directional candidates are employed to determine initial class *d1* as shown in Figure 9. Then, the search window division is carried out based on ME search pattern of the frame. One example of *d1=c4* in the 10th frame of coastguards is demonstrated in Figure 10. In order to avoid trapping into a local minimum, Simulated Annealing based solution methodology is adopted to process the uphill and downhill searches, where MV correlation probabilities are set as the temperature parameter to control the annealing process adaptively.

Simulated Annealing for Fast Motion Estimation Algorithm in H.264/AVC 185

The MV correlation probabilities , ( ) *i j d g p MVC* are calculated with equation (2) by MV directional and distance correlation probabilities. In order to get more accurate MV correlation characteristic, the first octagon grid is started from 2 pixels to get rid of the points near centre. This is mainly because of the MV directional difference is meaningless when optimal points are close to the centre point. After the calculation, the MV correlation probabilities are sorted by descending order with corresponding region ( ) ,*i j d g* , which represents the region in direction *<sup>i</sup> d* and in the *<sup>j</sup> g* grid. A parameter ( ) , *i j temp d g* that affects the annealing schedule as well as acceptance condition is also assigned by MV

The initial search point is selected from the four prediction models defined in the UMHexagonS. Based on the analysis in the last section, vectors around initial search point have a high probability to be the optimal MV. Therefore, we define large diamond search with 8 searching points around the start search point, which is similar shown in Figure 2 as step1. In contrast to the 25 point rectangular full search in UMHexagonS, this large diamond search reduces the computational requirement without sacrificing its accuracy. The point

After obtaining the initial search point, search area need to be divided based on MV correlation probabilities and predicted MV. 24 candidate directions ( ) 1 2 24 ,, *cc c* … , 3 times


*(0,-8)*

*(-6,6) (6,6)*

*(8,0)*

*(-8,0) (8,0)*

*(6,-6)*

*c7 c4*

*c19 c22*

*c1*

with the minimum rate-distortion cost is determined as the initial search point.

*(-6,-6)*

correlation probabilities , ( ) *i j d g p MVC* .

**4.2. Step 1: Initial search point decision** 

*c10*

*c13*

**Figure 9.** 24 candidate directions for *d1* determination

*c16*

**4.3. Adaptive partition of search area** 


**Figure 8.** Flow chart of the proposed SAAS algorithm

#### **4.1. Dynamic update of MV correlation probability**

In the SAAS algorithm, it is very important to keep MV correlation probabilities accurate. Not only because the MV correlation probabilities is the crucial element for search region partition and annealing schedule, but also motion characteristic of each video sequence is unique and the MV correlation probabilities are changing all the time. A pre-processing step is conducted to reveal the motion correlation characteristic for the each frame.

The MV correlation probabilities , ( ) *i j d g p MVC* are calculated with equation (2) by MV directional and distance correlation probabilities. In order to get more accurate MV correlation characteristic, the first octagon grid is started from 2 pixels to get rid of the points near centre. This is mainly because of the MV directional difference is meaningless when optimal points are close to the centre point. After the calculation, the MV correlation probabilities are sorted by descending order with corresponding region ( ) ,*i j d g* , which represents the region in direction *<sup>i</sup> d* and in the *<sup>j</sup> g* grid. A parameter ( ) , *i j temp d g* that affects the annealing schedule as well as acceptance condition is also assigned by MV correlation probabilities , ( ) *i j d g p MVC* .

#### **4.2. Step 1: Initial search point decision**

184 Simulated Annealing – Single and Multiple Objective Problems

**Figure 8.** Flow chart of the proposed SAAS algorithm

**4.1. Dynamic update of MV correlation probability** 

In the SAAS algorithm, it is very important to keep MV correlation probabilities accurate. Not only because the MV correlation probabilities is the crucial element for search region partition and annealing schedule, but also motion characteristic of each video sequence is unique and the MV correlation probabilities are changing all the time. A pre-processing step

is conducted to reveal the motion correlation characteristic for the each frame.

in SAAS algorithm is no longer restricted to certain directional regions, but is adaptively selected from more specific divided regions based on the MV correlation statistics. Flow chart of the SAAS algorithm is depicted in Figure 8 for better illustration. For each frame, ME search pattern is determined by MV correlation statistics. For each block, 24 directional candidates are employed to determine initial class *d1* as shown in Figure 9. Then, the search window division is carried out based on ME search pattern of the frame. One example of *d1=c4* in the 10th frame of coastguards is demonstrated in Figure 10. In order to avoid trapping into a local minimum, Simulated Annealing based solution methodology is adopted to process the uphill and downhill searches, where MV correlation probabilities are

set as the temperature parameter to control the annealing process adaptively.

The initial search point is selected from the four prediction models defined in the UMHexagonS. Based on the analysis in the last section, vectors around initial search point have a high probability to be the optimal MV. Therefore, we define large diamond search with 8 searching points around the start search point, which is similar shown in Figure 2 as step1. In contrast to the 25 point rectangular full search in UMHexagonS, this large diamond search reduces the computational requirement without sacrificing its accuracy. The point with the minimum rate-distortion cost is determined as the initial search point.

**Figure 9.** 24 candidate directions for *d1* determination

#### **4.3. Adaptive partition of search area**

After obtaining the initial search point, search area need to be divided based on MV correlation probabilities and predicted MV. 24 candidate directions ( ) 1 2 24 ,, *cc c* … , 3 times

more than PIDS's, are employed which is indicated in Figure 9. The candidate direction *<sup>i</sup> c* with minimum degree difference to *pred d* is determined as initial search direction *d1*. The directional regions with boundary of ± ° 22.5 , ± ° 67.5 , ± ° 112.5 and 157.5 ± ° are spread according to the initial search direction *d1*. Then the octagon grids are utilized to divide the search window into regions, where is the search range. Based on that, the search window is adaptively partitioned. The coordinate of each region is represented by( , ). *i j d g* Parameter (, ) *i j temp d g* are assigned to each region (, ) *i j d g* as indexing. One more example is shown in Figure 10, which shows the search window divisions are adjusted when initial direction *d1=c4* in coastguards' 10th frame. Compared to the search window partition in figure 6, when *d1=c1,* the whole search pattern is changed as the difference of predicted MV. In next step, the simulated annealing search process will be conducted on different search region (, ) *i j rd g* with parameter (, ) *i j temp d g* as cooling scheme.

Simulated Annealing for Fast Motion Estimation Algorithm in H.264/AVC 187

*<sup>M</sup>* is the Lagrangian multiplier set according to the

*<sup>M</sup>* = × (5)

*Probability %* 

*Region Coordinate* 

*<sup>M</sup>* (6)

*<sup>M</sup>* is employed as Objective function *E* .

where *mv* is the candidate motion vector, *mvpred* is the predicted the motion vector from neighbour blocks. *s* and *c* are the source video and the reconstructed video, respectively. *SAD* represents sum of absolute difference between the block in current frame and the block in the reference frame. *R*() represents the bits used to encode the motion information

This rate-constrained function has achieved good RD performance for motion estimation. In

*E J mv* = ( ) ,λ

The divided regions ( ) , *i j rd g* in search window are denoted as solution space, which is indexed by MV correlation probabilities rather than spatial neighbour region. The order of regions with decreasing MV correlation probabilities for the 10th frame of sequence *coastguard* is shown in Table 2. This mechanism can be seemed as a randomly selection from solution space. Compared to the simple downhill search in continuous space, this scheme intensively searches the regions with higher MV correlations probabilities first. For the regions with lower probabilities, coarse search or early terminal will be

18.16 *(d2 ,g1 )* **16** 0.81 *(d2,g3)*  14.32 *(d2 ,g2 )* **17** 0.59 *(d2,g6)*  12.17 *(d6 ,g1 )* **18** 0.54 *(d6,g3)*  9.60 *(d6 ,g2 )* **19** 0.52 *(d8,g1)*  9.05 *(d5,g1 )* **20** 0.41 *(d8,g2)*  7.14 *(d5,g2 )* **21** 0.40 *(d5,g3)*  4.08 *(d1,g1 )* **22** 0.40 *(d1,g7)*  3.45 *(d3,g1 )* **23** 0.39 *(d6,g6)*  3.22 *(d1,g2 )* **24** 0.34 *(d3,g7)*  3.19 *(d7,g1 )* **25** 0.31 *(d7,g7)*  2.72 *(d3,g2 )* **26** 0.29 *(d5,g6)*  2.52 *(d7,g2)* **27** 0.21 *(d4,g1)*  1.76 *(d2,g7)* **28** 0.18 *(d1,g3)*  1.18 *(d6,g7)* **29** 0.17 *(d4,g2)*  0.88 *(d5,g7)* **30** 0.15 *(d3,g3)* 

*Coordinate order MV Correlation* 

λ

λ

λ

*Region* 

**Table 2.** Mv search region order in the 10th frame of sequence *coastguard*

computed by a table-lookup and

applied.

*order MV Correlation* 

*Probability %* 

quantization parameter (QP), which is given by

SA search step, RD cost function *J mv* ( ) ,

/3 0.85 2*QP*

**Figure 10.** Search area division by directions and grids in SAAS, example of *d1=c4*, the 10th frame of coastguard

#### **4.4. Step 2: Simulate annealing search**

#### *4.4.1. Objective function and solution space*

In order to employ simulated annealing search in BMME algorithm, the SA elements are defined combing the concept of motion estimation in this section. The procedure for optimal MV searching is performed using predicted MV as centre of the search window. To optimally select the least rate-distortion cost, Lagrangian multiplier tool [14] are defined as follow:

$$J\{m\upsilon\_{\prime}\mathcal{A}\_{\text{M}}\} = SAD(s, c(m\upsilon)) + \mathcal{A}\_{\text{M}} \cdot \text{R}(m\upsilon - m\upsilon\_{pred}) \tag{4}$$

where *mv* is the candidate motion vector, *mvpred* is the predicted the motion vector from neighbour blocks. *s* and *c* are the source video and the reconstructed video, respectively. *SAD* represents sum of absolute difference between the block in current frame and the block in the reference frame. *R*() represents the bits used to encode the motion information computed by a table-lookup and λ*<sup>M</sup>* is the Lagrangian multiplier set according to the quantization parameter (QP), which is given by

186 Simulated Annealing – Single and Multiple Objective Problems

with parameter (, ) *i j temp d g* as cooling scheme.

**4.4. Step 2: Simulate annealing search** 

*4.4.1. Objective function and solution space* 

λ

coastguard

more than PIDS's, are employed which is indicated in Figure 9. The candidate direction *<sup>i</sup> c* with minimum degree difference to *pred d* is determined as initial search direction *d1*. The directional regions with boundary of ± ° 22.5 , ± ° 67.5 , ± ° 112.5 and 157.5 ± ° are spread according to the initial search direction *d1*. Then the octagon grids are utilized to divide the search window into regions, where is the search range. Based on that, the search window is adaptively partitioned. The coordinate of each region is represented by( , ). *i j d g* Parameter (, ) *i j temp d g* are assigned to each region (, ) *i j d g* as indexing. One more example is shown in Figure 10, which shows the search window divisions are adjusted when initial direction *d1=c4* in coastguards' 10th frame. Compared to the search window partition in figure 6, when *d1=c1,* the whole search pattern is changed as the difference of predicted MV. In next step, the simulated annealing search process will be conducted on different search region (, ) *i j rd g*

**Figure 10.** Search area division by directions and grids in SAAS, example of *d1=c4*, the 10th frame of

In order to employ simulated annealing search in BMME algorithm, the SA elements are defined combing the concept of motion estimation in this section. The procedure for optimal MV searching is performed using predicted MV as centre of the search window. To optimally

( ) , ( , ( )) ( ) *M d <sup>M</sup> pre J mv SAD*

 λ

= + *s c m v v m* ⋅ − *R mv* (4)

select the least rate-distortion cost, Lagrangian multiplier tool [14] are defined as follow:

$$
\lambda\_M = \sqrt{0.85 \times 2^{QP/3}}\tag{5}
$$

This rate-constrained function has achieved good RD performance for motion estimation. In SA search step, RD cost function *J mv* ( ) ,λ*<sup>M</sup>* is employed as Objective function *E* .

$$E = I\left(m\upsilon, \mathcal{A}\_{\mathcal{M}}\right) \tag{6}$$

The divided regions ( ) , *i j rd g* in search window are denoted as solution space, which is indexed by MV correlation probabilities rather than spatial neighbour region. The order of regions with decreasing MV correlation probabilities for the 10th frame of sequence *coastguard* is shown in Table 2. This mechanism can be seemed as a randomly selection from solution space. Compared to the simple downhill search in continuous space, this scheme intensively searches the regions with higher MV correlations probabilities first. For the regions with lower probabilities, coarse search or early terminal will be applied.


**Table 2.** Mv search region order in the 10th frame of sequence *coastguard*

#### *4.4.2. Annealing schedule*

The annealing schedule is one of crucial parameter for the SA process. If the temperature in the system dropping too fast, the advantage of SA, which converge to the global optimum, is defeated. However the too slow cooling process might affect the efficiency of our fast searching algorithm. Moreover, it quite difficult to set a fixed annealing schedule for the changeable video contents. In SAAS algorithm, the sorted MV correlation probabilities , ( ) *i j d g p MVC* are assigned to corresponding annealing parameters ( ) , *i j temp d g* for region ( ) , *i j rd g* to control the annealing schedule.

$$temp(d\_{i'}, \mathcal{g}\_{j}) = p(MVC\_{d\_{i, \mathcal{S}\_j}}) = p(MVC\_{d\_i}) \times p(MVC\_{\mathcal{g}\_j}) \tag{7}$$

Simulated Annealing for Fast Motion Estimation Algorithm in H.264/AVC 189

(10)

(11)

Where, is current global minimum and is a threshold controlled by annealing parameter,

ρ

 <sup>−</sup> <sup>=</sup> ⋅

( ) ( )

is controlled by ( ) , *i j temp d g* , for the division with lower ( ) , *i j temp d g* , the

( )

, the SA condition is directly proportionate to ( ) , *i j temp d g* and inversely proportional

to difference of cost function E. If ( ) ( ( , )) *i j E best E r d g* > , region ( ) , *i j rd g* is directly identified as the current global optimal. Otherwise, the SA condition still provides occasional upward

It is impossible to conduct SA search on all search partition, as there are regions partitioned in search window. Moreover, the majority of regions contain low MV correlation probabilities, as shown in Table 1. For these reasons, it is appropriated to limit the total number of search regions (*NumSR*) and have an early termination condition. Two termination conditions are given, one is the temperature status and the other is the number

( )

*<sup>i</sup> temp d j*

1) , 0.0001

<sup>1</sup> 2) 10 / 4 <sup>2</sup>

If one of these termination conditions is satisfied, the SA search will stop and go to the Extended Hexagon Search step which is introduced in UMHexagonS, to refine the local optimum. Otherwise, SA search will proceed to next region by the indexed of the decreasing

A large hexagon search pattern and a small diamond search pattern are employed in this step, which is modified from UMHexagonS. The large diamond pattern has six search locations, while the small diamond search pattern has four points. The large hexagon pattern in the step 3-1 is recursively used and its centre recursively moved until the location with the minimum rate-distortion cost lies in the centre of the hexagon. After this, a small diamond pattern in the step 3-2 is recursively utilized until the location with the minimum rate-distortion cost is at the centre of this pattern. Finally, this point is determined as the point of motion vector for the current block. But our Extended Hexagon-based search process is only limited within the one search region ( ) , *i j rd g* , which contains the optimal MV. Compared to UMHexagonS, this centre basis optimal MV refinement approach can

<

> ⋅

*NumSR SR*

1 2 log ,*i j temp d g*

and is given by:

With ρ

moves. As

ρ

*4.4.4. Termination condition* 

of searched regions.

parameter temp.

chance to conduct upward moves is smaller.

**4.5. Step 3: Extended hexagon-based search** 

obtain optimal MV with fewer search points.

( ) , *i j temp d g* is a set of parameter in pixel domain for particular block, while ( ) , *i j d g p MVC* is a relative parameter in frame level. By using this adaptive annealing schedule, the cooling speed is changing with video content and motion correlation, while governs the successful working of the SA procedure.

To improve the searching efficiency, SAAS performs different number of iterations at different temperature status. Inside each region ( ) , , *i j rd g* mv search is randomly performed along the direction *<sup>i</sup> d* in the range of <sup>1</sup> [ ,] *j j g g* <sup>−</sup> . The number of search points ( (, ) *NumS d g i j* ) in division (, ) *i j rd g* is determined by a pair of thresholds, *temp\_high* and *temp\_low*.

$$NumS(d\_{i'}, \mathcal{g}\_{j}) = \begin{cases} \mathbf{4}, & temp\left(d\_i, \mathcal{g}\_j\right) > temp\\_high \\ \mathbf{2}, & temp\\_low < temp\left(d\_{i'}, \mathcal{g}\_j\right) < temp\\_high \\ \mathbf{1}, & temp\left(d\_{i'}, \mathcal{g}\_j\right) < temp\\_low \end{cases} \tag{8}$$

After several experiments with more than 50 different sequences, we empirically determined temp\_high = 0.3 and temp\_low = 0.15. These thresholds provide satisfying performance on different motion senrou. By utilizing this mechanism, SAAS exploits intensive search in the regions with high MV correlation, and selects fewer search points in less correlation region automatically.

#### *4.4.3. Minimum accepted condition*

The minimum accepted condition in SA is based on Boltzmann probability distribution. Referring to equation (3), there is a high probability to perform uphill search when difference of cost function E is smaller and the temperature T is higher. By using Boltzmann concept, SAAS utilizes the following SA Condition.

$$\frac{E\left(best\right) - E\left(r\left(d\_{i'}\,\,g\_{j}\right)\right)}{E\left(best\right)} < \rho\tag{9}$$

Where, is current global minimum and is a threshold controlled by annealing parameter, and is given by:

$$\rho = \frac{-1}{2 \cdot \log \left( temp \left( d\_{i'} g\_j \right) \right)} \tag{10}$$

With ρ, the SA condition is directly proportionate to ( ) , *i j temp d g* and inversely proportional to difference of cost function E. If ( ) ( ( , )) *i j E best E r d g* > , region ( ) , *i j rd g* is directly identified as the current global optimal. Otherwise, the SA condition still provides occasional upward moves. As ρ is controlled by ( ) , *i j temp d g* , for the division with lower ( ) , *i j temp d g* , the chance to conduct upward moves is smaller.

#### *4.4.4. Termination condition*

188 Simulated Annealing – Single and Multiple Objective Problems

( ) , *i j rd g* to control the annealing schedule.

working of the SA procedure.

( )

less correlation region automatically.

*4.4.3. Minimum accepted condition* 

concept, SAAS utilizes the following SA Condition.

The annealing schedule is one of crucial parameter for the SA process. If the temperature in the system dropping too fast, the advantage of SA, which converge to the global optimum, is defeated. However the too slow cooling process might affect the efficiency of our fast searching algorithm. Moreover, it quite difficult to set a fixed annealing schedule for the changeable video contents. In SAAS algorithm, the sorted MV correlation probabilities , ( ) *i j d g p MVC* are assigned to corresponding annealing parameters ( ) , *i j temp d g* for region

,

( ) , *i j temp d g* is a set of parameter in pixel domain for particular block, while ( ) , *i j d g p MVC* is a relative parameter in frame level. By using this adaptive annealing schedule, the cooling speed is changing with video content and motion correlation, while governs the successful

To improve the searching efficiency, SAAS performs different number of iterations at different temperature status. Inside each region ( ) , , *i j rd g* mv search is randomly performed along the direction *<sup>i</sup> d* in the range of <sup>1</sup> [ ,] *j j g g* <sup>−</sup> . The number of search points ( (, ) *NumS d g i j* ) in

( )

= <<

*i j*

, 2, \_ , \_

*temp d g temp high*

*i j*

4, , \_

1, ( , ) \_

After several experiments with more than 50 different sequences, we empirically determined temp\_high = 0.3 and temp\_low = 0.15. These thresholds provide satisfying performance on different motion senrou. By utilizing this mechanism, SAAS exploits intensive search in the regions with high MV correlation, and selects fewer search points in

The minimum accepted condition in SA is based on Boltzmann probability distribution. Referring to equation (3), there is a high probability to perform uphill search when difference of cost function E is smaller and the temperature T is higher. By using Boltzmann

> ( ) ( ) ( ) ( ) ,*i j E best E r d g E best*

−

*emp d g*

*NumS d g temp low temp d g temp high*

*i j i j*

<sup>&</sup>lt;

<sup>&</sup>gt;

*t*

division (, ) *i j rd g* is determined by a pair of thresholds, *temp\_high* and *temp\_low*.

*ttt*

*ttt*

*tt*

*tt tttttt*

(, ) ( )( ) ( ) *i j i j i j d g <sup>d</sup> <sup>g</sup> temp d g p MVC p MVC p MVC* <sup>=</sup> = × (7)

( )

(8)

*temp low*

ρ

< (9)

*4.4.2. Annealing schedule* 

It is impossible to conduct SA search on all search partition, as there are regions partitioned in search window. Moreover, the majority of regions contain low MV correlation probabilities, as shown in Table 1. For these reasons, it is appropriated to limit the total number of search regions (*NumSR*) and have an early termination condition. Two termination conditions are given, one is the temperature status and the other is the number of searched regions.

$$\begin{aligned} \text{(1)}\ temp \left(d\_{i'} \, j\right) &< 0.0001\\ \text{(2)}\ Num SR &> \frac{1}{2} \text{(10\cdot SR / 4)}\end{aligned} \tag{11}$$

If one of these termination conditions is satisfied, the SA search will stop and go to the Extended Hexagon Search step which is introduced in UMHexagonS, to refine the local optimum. Otherwise, SA search will proceed to next region by the indexed of the decreasing parameter temp.

#### **4.5. Step 3: Extended hexagon-based search**

A large hexagon search pattern and a small diamond search pattern are employed in this step, which is modified from UMHexagonS. The large diamond pattern has six search locations, while the small diamond search pattern has four points. The large hexagon pattern in the step 3-1 is recursively used and its centre recursively moved until the location with the minimum rate-distortion cost lies in the centre of the hexagon. After this, a small diamond pattern in the step 3-2 is recursively utilized until the location with the minimum rate-distortion cost is at the centre of this pattern. Finally, this point is determined as the point of motion vector for the current block. But our Extended Hexagon-based search process is only limited within the one search region ( ) , *i j rd g* , which contains the optimal MV. Compared to UMHexagonS, this centre basis optimal MV refinement approach can obtain optimal MV with fewer search points.


Simulated Annealing for Fast Motion Estimation Algorithm in H.264/AVC 191

The group of picture (GOP) structure was IPPP, in which only first frame has been coded as I frame and first P frame has been coded by UMHexagonS. The sequences are tested at 30fps (frames per second). The Content Adaptive Variable Length Coding (CAVLC) entropy coder is used for all the simulations, with 5 reference frames. A search range of 32 and the quantization parameter of 28 are used. The simulation platform in our experiments is done

For complexity comparisons, the proposed algorithm is compared to the hybrid UMHexagonS adopted by the H.264/AVC reference software. Two different measurements are used to calculate the computational efficiency, average search points requirement and encoding time. Results are presented in Table 3. As shown in the Table 3, SAAS needs 48- 63% less search points than UMHexagonS and saves average of 21% encoding time. Since it performs more precise search pattern adjustment, SAAS requires average 45% less search

*PSNR(dB) Bit-rate (kb/s)* 

*FS UMH PIDS SAAS FS UMH PIDS SAAS* 

35.792 35.786 35.809 35.800 1225.29 1240.05 1262.27 1249.88 *Gain* -0.006 0.017 0.008 *Degrade* 1.20% 3.02% 2.01%

35.610 35.600 35.602 35.598 1342.64 1344.28 1345.30 1348.56 *Gain* -0.010 -0.008 -0.012 *Degrade* 0.12% 0.20% 0.44%

37.895 37.870 37.870 37.869 680.590 672.72 671.94 678.053 *Gain* -0.025 -0.025 -0.026 *Degrade* -1.16% -1.27% -0.37%

35.623 35.627 35.627 35.625 1572.30 1571.14 1569.25 1572.59 *Gain* 0.004 0.004 0.002 *Degrade* -0.07% -0.19% 0.02%

35.376 35.370 35.377 35.383 1843.16 1843.08 1844.19 1848.52 *Gain* -0.006 0.001 0.007 *Degrade* 0.00% 0.06% 0.29%

36.632 36.607 36.602 36.607 1189.09 1202.54 1206.90 1209.64 *Gain* -0.025 -0.030 -0.025 *Degrade* 1.13% 1.50% 1.73%

35.608 35.595 35.587 35.585 1159.96 1162.89 1162.81 1164.11 *Gain* -0.013 -0.021 -0.023 *Degrade* 0.25% 0.24% 0.36%

Average -0.012 -0.009 -0.010 0.21% 0.51% 0.64% **Table 4.** Results of proposed SAAS comparing to that of FS, UMHexagonS and PIDS in terms of PSNR

with a PC of 2.44 GHz CPU and 8G RAM.

points than PIDS.

Sequence

Bus

Coastguard

Crew

Harbour

Mobile

Stefan

*Template* 

gain (dB) and bit-rate degradation (%) (QP=28)

**Table 3.** Results of proposed SAAS comparing to that of UMHexagonS and PIDS in terms of average search points reduction (%) and motion estimation time reduction (sec) (QP=28)
