Fast half-pixel motion estimation based on directional search and
更新时间:2023-05-22 12:08:01 阅读量: 实用文档 文档下载
- fast推荐度:
- 相关推荐
a linear model
Fast half-pixel motion estimation
based on directional search and a linear model
Yun-Gu Lee, Jae Hun Lee, and Jong Beom Ra
Dept. of Electrical Engineering and Computer Science,
Korea Advanced Institute of Science and Technology (KAIST)
Daejeon, Republic of Korea
ABSTRACT
As many fast integer-pixel motion estimation algorithms have become available, an integer-pixel motion vector can be found by examining less than 10 search points. Meanwhile, 8 half-pixel positions around the integer-pixel motion vector are to be examined for half-pixel motion estimation. Hence, it becomes more meaningful to reduce the computational complexity of half-pixel motion estimation. In this paper, we propose a fast half-pixel motion estimation algorithm, by combining a directional search and linear modeling of SAD curve. The proposed algorithm reduces the number of search points to 2.21 in average, while the image quality of reconstructed sequences in terms of PSNR is similar to existing fast half-pixel motion estimation algorithms. In addition, by adjusting a user-defined parameter, the proposed algorithm can significantly reduce the number of search points to 0.34 on average with a slight PSNR degradation.
Keywords: Motion estimation, half-pixel, half-pel, sub-pixel, linear model
1. INTRODUCTION
In video coding, motion estimation is used to reduce a temporal redundancy between inter frames. However, motion estimation generally requires huge computational complexity. Hence, due to its low complexity, a block matching algorithm is widely used in motion estimation. In the block matching algorithm, the current frame to be encoded is divided into non-overlapped blocks and the best matching block of each current block is found within the previous frame. In video coding standards such as H.263 and MPEG-1/2/4, the best matching block is usually examined within a limited search area.
In the full search block matching algorithm, all possible points (or corresponding blocks) within a search area in the previous frame, are checked to find a block most closely matched to the current one. Here, SAD (sum of absolute differences) is popularly used as a matching criterion.
SAD(u,v)=∑∑It(i,j) It 1(i+u,j+v) (1)
j=0i=0N 1N 1
where It(i, j) and It-1(i+u, j+v) denote luminance pixel values in the current and previous frames, respectively, and (u, v) refers to a displacement or a candidate motion vector. Also, N denotes the size of block. In order to determine a motion ; phone +82-42-869-3434; fax +82-42-869-8360; Dept. of EECS, KAIST, 373-1, Guseong-dong Yuseong-gu, Daejeon, 305-701, Republic of Korea
Visual Communications and Image Processing 2003, Touradj Ebrahimi, Thomas Sikora,Editors, Proceedings of SPIE Vol. 5150 (2003) © 2003 SPIE · 0277-786X/03/$15.001513
a linear model
vector of each block, SAD values of candidate motion vectors within a search area are examined and the motion vector which has the minimum SAD value is set to the final one.
If the best matching block of the current block is found in the previous frame, the current frame is reconstructed by using this best matching block. Hence, in order to obtain the better coding performance, this motion compensated block should be similar to the original one, or the motion compensation error should have small energy. However, since the true displacement between the pervious frame and current frame is not always a multiple of pixel interval, it is known that sub-pixel motion estimation can reduce the motion compensation error.
International video coding standards such as H.263 and MPEG-1/2/4 adopt motion estimation with half-pixel accuracy
[1-4]. To estimate a motion vector with half-pixel accuracy, a two-step search is generally used. In the first step, integer-pixel points within a search area are examined to find the best matching point, or the integer-pixel motion vector. Then, in the second step, 8 half-pixel points around the selected integer-pixel motion vector are examined and the best matching point is chosen as the final motion vector. The complexity burden of integer-pixel motion estimation takes a major portion of motion estimation because the search area of integer-pixel motion estimation is much larger than that of half-pixel motion estimation. So, most researchers have paid attention to the development of a fast integer-pixel motion estimation algorithm. However, if a recently developed fast algorithm is used for integer-pixel motion estimation, a motion vector can be found by examining less than 10 search points [5-7]. As a consequence, the computation complexity of half-pixel motion estimation becomes comparable to that of integer-pixel motion estimation and the development of a fast half-pixel motion estimation algorithm becomes important.
In this paper, we propose a new half-pixel motion estimation algorithm, by combining a directional search and linear modeling of SAD curve. In addition, we introduce an adjustable parameter so that we can reduce the number of search points further with a slight PSNR degradation. We will briefly review previous work in section 2, and describe the proposed algorithm in section 3. The simulation results are given in section 4. Finally, conclusions are presented in section 5.
2. PREVIOUS WORK
In horizontal and vertical directions as reference (HVDR), which is one of the fast half-pixel motion estimation algorithms, 4 neighboring half-pixel points in horizontal and vertical directions around the integer-pixel motion vector, are examined, and the two best matching points are found for both directions [8]. Then, a diagonal point between the two best matching points is additionally examined. If we describe the algorithm using Fig. 1, points 1, 3, 5 and 7 are first examined. Then, the point having smaller SAD value between points 1 and 7 is selected as the best matching point of vertical direction and the horizontal one is selected between points 3 and 5. If we assume that points 1 and 3 are the best matching ones of both directions, then diagonal point 0 is additionally examined. Therefore, 5 searching points are to be examined instead of 8 points in HVDR.
In the paraboloid prediction based fast half-pixel search (PPHPS), an SAD curve around an integer-pixel motion vector is modeled as a paraboloid [9]. By using the SAD values of neighboring integer-pixel points, the parameters of paraboloid equation are estimated and the SAD values of half-pixel points are predicted using the paraboloid equation. Then, the best matching point having the smallest SAD value among candidate points is predicted. Finally, the real SAD values of the predicted point and its two neighboring points are examined to find the final motion vector. For instance, if point 0 in Fig. 1 is predicted as the minimum point, the real SAD values of points 0, 1, and 3 should be examined. Therefore, PPHPS needs to examine 3 search points, and requires extra calculation for SAD curve modeling. Although SAD curve modeling needs multiplication and division operations, the total computational complexity of PPHPS is still less than that of HVDR.
1514 Proc. of SPIE Vol. 5150
a linear model
Figure 1. Search points for half-pixel motion estimation
Li and Gonzales model the SAD function around the true motion vector as a separable quadratic function and estimates x- and y-direction motion vectors by using the one-dimensional quadratic functions, respectively [10]. The complexity of this algorithm is very small because this algorithm needs only the estimation of parameters. However, since real SAD values around the optimum point are not exactly the same as the predicted SAD ones, the wrong decision of motion vectors may cause a bit-rate increase or PSNR degradation. In order to improve the motion vector accuracy, the estimated motion vector may need refinement.
3. PROPOSED ALGORITHM
In order to alleviate the complexity of half-pixel motion estimation, we may reduce the number of search points by using predicted SAD values based on a SAD function model. However, the predicted SAD values are usually different from the real ones. Thus, a motion vector estimated from predicted SAD values may be different the one from full search motion estimation where all SAD values are examined. Therefore, the proposed algorithm determines whether the real SAD value has to be examined or not, based on the proposed measure. This measure provides the information whether the predicted SAD value is accurate enough for determining the motion vector. Thereby, SAD value calculation of most search points can be skipped without performance degradation.
3.1 LINEAR MODELING
For modeling of the SAD curve around an integer-pixel motion vector, we need the SAD values of integer-pixels neighboring the integer-pixel motion vector are needed. Recently most fast integer-pixel motion estimation algorithms adopt the gradient descent search (GDS) as a search strategy and a small diamond search pattern at the final stage. Therefore, we can assume that SAD values of the four neighboring integer-pixel points along horizontal and vertical directions, or points a, b, c and d in Fig. 1, are already known. The proposed algorithm uses these 4 SAD values for modeling two SAD curves along horizontal and vertical directions.
Proc. of SPIE Vol. 5150 1515
a linear model
While PPHPS models the SAD curve as a two-dimensional quadratic function and the algorithm in [10] models it with two one-dimensional quadratic functions, the proposed algorithm models it with two one-dimensional linear functions. This is based on that the SAD function within a small area around the optimum point can be well modeled as a linear function. Note that the modeling process of linear model is simpler than that of quadratic model, because the former needs only addition and subtraction operations.
Fig. 2 depicts the SAD graph estimated by using a piecewise linear model along the horizontal direction. In Fig. 2, x-axis represents the position of search points, and its origin denotes the integer-pixel motion vector that results from integer-pixel motion estimation. And y-axis represents the SAD value. We assume in the graph that the slopes of two lines have opposite sign, while their absolute values are the same. Let us define SADC as the SAD value of an integer-pixel motion vector and SADL and SADR as the SAD values of left and right integer points of the integer-pixel motion vector (points a and c in Fig. 1), respectively. The values of SADC, SADL and SADR are already known by integer-pixel motion estimation. Then, two points, (-1, SADL) and (1, SADR), are on the two lines having a slope of the opposite sign and same magnitude, and (0, SADC) should locate on the one of two lines. Using these conditions, the two line equations can be determined, and SAD values at the two half-pixel positions, or SADHL and SADHR, can be estimated from the two line equations.
Figure 2. Linear approximation of SAD values
3.2 PREDICTION ERROR BOUND
In order to find a directional motion vector, predicted SAD values of half-pixel points are to be compared with the real SAD value of integer-pixel motion vector. However, since the predicted SAD values are not always the same as the real ones, the comparison results may not be correct. If SADE denotes a predicted SAD value, we can assume that its real SAD value locates in the range from SADE-e to SADE+e, where e is the prediction error bound.
Now let us assume that SADH is the smaller one between the two predicted SAD values, or SADHL and SADHR. Then, if (SADC - SADH) is bigger than e, the estimated SADH is considered the minimum one as in Fig. 3(a). Also, if (SADH - SADC) is bigger than e, SADC is considered the minimum one as in Fig. 3(b). But if |SADH-SADC| is less than e as shown in Fig. 3(c) and (d), the real SADH of the corresponding half-pixel point is to be examined for comparison. The same procedure is also performed for the vertical direction. Thereby, we obtain the two best matching points and their corresponding SAD’s. Here, it should be noticed that the number of search points in each direction becomes one at most.
1516 Proc. of SPIE Vol. 5150
a linear model
Figure 3. The relationship between the SAD values and the error bound
Table 1. Refinement according to directional search results Horizontal motion Vertical motion Diagonal search Final motion vector
two best matching points
(-0.5, 0)
Minimum one among diagonal points and two best matching points
(0, -0.5)
(0, 0) (0, 0.5)
Minimum one among diagonal points and two best matching points
(0.5, 0)
two best matching points
Proc. of SPIE Vol. 5150 1517
a linear model
3.3 REFINEMENT
As described in the section above, the two best matching points and their corresponding (real or predicted) SAD values are obtained. According to these results, we decide whether an additional diagonal point is to be examined or not. If either of the best matching points located at the center, any diagonal point needs not to be examined. Otherwise, an additional diagonal point is to be examined.
Table 1 shows the refinement process in all the cases. For example, let us assume that the best matching points of horizontal and vertical directions are -0.5 and -0.5, respectively. Then, the SAD value at the diagonal point (-0.5, -0.5) is to be examined and the final motion vector is decided as the point having the smallest SAD value among the three points. But if they are -0.5 and 0, the final motion vector is simply set to point (-0.5,0). Therefore, the maximum number of search points in the proposed algorithm is three, while the effective number becomes much less than three.
4. SIMULATION RESULTS
For experiment, we adopt the two video sequences of CIF format (352x288), Carphone and Foreman, and the four video sequences of SIF format (352x240), Flower garden, Football, Table tennis, and Mobile. Each sequence consists of 100 frames with a frame rate of 30Hz, and is encoded using an H.263 coder without rate-control. All frames except the first frame is encoded as P-frames. For integer-pixel motion estimation, method A adopts the full search integer-pixel motion estimation algorithm and methods B, C, D, E, F, and G use one of the recent fast algorithms, the unrestricted center-biased diamond search (UCBDS) [6]. The adopted half-pixel motion estimation algorithm and simulation condition for each method are listed in Table 2.
The simulation results in Tables 3 and 4 show that the estimation speed of proposed algorithm is faster than the other algorithms. If the value of e is set to infinite, all estimated SAD values become uncertain and their real SAD values are always to be examined. Thus, the total number of search point is about 2.21. In this case, the speed of the proposed algorithm is still faster than PPHPS and HVDR while its PSNR performance is similar to them. If the e value is set to zero, two estimated SAD values are assumed to be accurate. So they are not calculated. In this case, the total number of search points becomes about 0.34 and the PSNR degradation from full search half-pixel motion estimation (Algorithm
B) is 0.11dB. If the e value is set to 50, the proposed algorithm is 3.2 times faster than PPHPS with the PSNR degradation of only 0.05dB.
It should be noted that the computational overhead for the estimation of SAD values is negligible in the proposed algorithm.
5. CONCLUSION
We propose a fast half-pixel motion estimation algorithm for video coding. In the proposed algorithm, we first estimate x and y components of the motion vector and its SAD value. Then, according to the estimated component values, the next refinement step is decided. In the proposed algorithm, depending on the threshold value adopted, the PSNR degradation and speedup factor can be adjusted. If the threshold value is 0, the PSNR degradation is 0.11dB from full search half-pixel motion estimation (Algorithm B), but the speedup ratio is 23.5. Meanwhile, if the threshold value is set to infinite, the PSNR degradation and speed up ratio are 0.02dB and 3.6, respectively. Hence, we can conclude that the proposed algorithm is much faster than other fast algorithms with the minor PSNR degradation.
ACKNOWLEDGMENTS
This work is supported by the ITRC funded in part by the Korean Ministry of Information and Communication. 1518 Proc. of SPIE Vol. 5150
a linear model
Table 2. Integer-pixel and half-pixel motion estimation algorithms adopted for each simulation.
A Full search Half-pixel ME Full search
UCBDS
E Proposed one with e of 0
F
G Proposed one with e of 50 Proposed one with e of 10000
Table 3. Simulation results for various half-pixel ME algorithms
Flower Table garden
PSNR PSNR PSNR PSNR PSNR PSNR Search PSNR kbps kbps kbps kbps kbps kbps (dB) (dB) (dB) (dB) (dB) (dB) points (dB)
32.83
32.74
32.70
32.72
32.59
32.66
32.70
Table 4. The number of search points in the proposed algorithm
Table Flower Football 26.10 1059 24.35 1099 28.49 1085 24.34 1117 28.12 1089 24.34 1119 28.09 1097 24.32 1128 28.09 1120 24.30 1142 27.99 1115 24.31 1140 28.04 1089 24.34 1119 28.09 8 8 5 3 0.60 0.9
Proc. of SPIE Vol. 5150 1519
a linear model
REFERENCES
1.
2.
3.
4. ISO/IEC JTC1/SC29/WG11,“ISO/IEC CD 11172:Information technology,” MEPG 1 Committee Draft, Dec. 1991. ISO/IEC JTC1/SC29/WG11,“ISO/IEC CD 13818:Information technology,” MEPG 2 Committee Draft, Dec. 1993. ISO/IEC JTC1/SC29/WG11, MPEG99/5477, “MPEG-4 Video Verification Model version 14.2,” Dec. 1999. International Telecommunication Union, “Video codec for low bitrate communication,” ITU-T Recommendation
H.263, Mar. 1996.
5. L. Liu and E. Feig, “A Block-based Gradient Descent Search Algorithm for Block Motion Estimation in Video
Coding,” IEEE Trans. Circuts Syst. Video Technol., vol. 6, pp. 419-422, Aug. 1996.
6. J. Y. Tham, S. Ranganath, M. Ranganath, and A. A. Kassim, “A Novel Unrestricted Center-Biased Diamond
Search Algorithm for Block Motion Estimation,” IEEE Trans. Circuits Syst. Video Technol., vol. 8, no. 4, pp. 369-378, Aug. 1998.
7. Shan Zhu and Kai-Kuang Ma, “A New Diamond Search Algorithm for Fast Block-Matching Motion Estimation,”
IEEE Trans. Image Processing, vol. 92, no. 2, pp. 287-290, Feb. 2000.
8. K.H. Lee, J.H. Choi, B.K. Lee, and D.G. Kim “Fast Two-Step Half-Pixel Accuracy Motion Vector Prediction,”
Electronics Letters, vol. 36, pp. 625-627, Mar. 2000.
9. C. Du and Y. He, “A Comparative Study of Motion Estimation for Low Bit Rate Video Coding,” SPIE Proc.
VCIP2000, vol. 4067, no. 3, pp. 1239-1249, Jun. 2000.
10. X. Li and C. Gonzales, “A Locally Quadratic Model of the Motion Estimation Error Criterion Function and Its
Application to Subpixel Interpolation,” IEEE Trans. Circuts Syst. Video Technol., vol. 6, pp. 118-122, Feb. 1996.
1520 Proc. of SPIE Vol. 5150
- 1Simulation of Heavily Irradiated Silicon Pixel Detectors
- 2LTE FR– Fast Return(快速回落)
- 3!!The Advantages and Disadvantages of Fast Food
- 4DYNAMIC PATH-PLANNING FOR SEARCH AND DESTROY
- 5In Search of the Amber Room说课稿
- 6Fast Deadlock Detection in CCS Systems Using Petri Nets
- 7ELECTROTECHNICS, ELECTRONICS, AUTOMATIC CONTROL, INFORMATICS ON ESTIMATION OF THE ORIENTATI
- 8DYNAMIC PATH-PLANNING FOR SEARCH AND DESTROY
- 9Search engine--lead the revolution
- 10Newton&39;s laws of motion PhO
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- directional
- estimation
- motion
- search
- pixel
- based
- Fast
- half
- 新材料产业发展规划
- Efficient Acoustic Front-End Processing for Tamil ...(IJIGSP-V8-N7-3)
- 社会网吧与未成年人成长
- 中鼎科技车载GPS定位监控简介
- 2012年重点学科班民诉讲义—向高甲
- 天津大港电厂实习报告
- 江西省高安中学2012届高三第三次模拟考试语文
- 丰田供应商审核2015
- 大学生顶岗实习报告_2
- 2012~2013年度七年级语文下册教学计划
- 课程教学大纲模板
- 英语四级万能句子
- 毕业设计任务书 中国象棋
- 2013年春季学期七年级数学下册期末模拟试卷
- 美股酒店系列之:温德姆环球
- 中央广播电视大学《文秘管理与应用写作》复习资料
- 2017中传动画艺术学考研整理笔记经验
- 【试题库】(通用版)(化学)(二轮复习)2015届【迈向名师】星级题库:酚二星题
- 学习《准则》、《条例》的心得体会
- 压力管道设计设计人员考试卷2004