Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fast Block Based Motion Estimation Algorithms in HEVC

Similar presentations


Presentation on theme: "Fast Block Based Motion Estimation Algorithms in HEVC"— Presentation transcript:

1 Fast Block Based Motion Estimation Algorithms in HEVC
Srikanth Vasireddy Multimedia Processing Lab,UTA

2 Contents Growing demand for Video HEVC Encoder and Decoder
Features of Moving pictures Block based Motion Estimation Different Motion Estimation Algorithms Test Sequences Simulation Results Work done and In Progress Acronyms References Multimedia Processing Lab,UTA

3 Growing Demand for Video
Increase in Applications Higher efficiency Broadcast Quality Higher throughput Increase in Mobile data traffic Low power Multimedia Processing Lab,UTA

4 HEVC Encoder [5] Fig .1: HEVC Encoder[5] ME has 84% coding complexity and time to encode [1] [5] Multimedia Processing Lab,UTA

5 HEVC Decoder [1] Fig .2: HEVC Decoder[1] Multimedia Processing Lab,UTA

6 Features of Moving Pictures
Moving images contain significant temporal redundancy successive frames are very similar Multimedia Processing Lab,UTA

7 Intra frame and Inter frame coding
Video coding algorithms usually contain two coding schemes : Intraframe coding : Intraframe coding does not exploit the correlation among adjacent frames; Intraframe coding therefore is similar to the still image coding. Interframe coding :The interframe coding should include motion estimation/compensation process to remove temporal redundancy. “The amount of data can be reduced significantly if the previous frame is subtracted from the current frame.”[4] Fig.3: Motion Estimation and Motion Compensation [4] Multimedia Processing Lab,UTA

8 Temporal Redundancy Removal [1]
M.J.Jakubowski and G.Pastuszak, “Block-based motion estimation algorithms – a survey ,” Opto-Electronic Review , Volume 21, pp ,,March2013. Multimedia Processing Lab,UTA

9 Block based Motion Estimation [6][11]
The MPEG and H.26X standards[4] use block based technique for motion estimation /compensation. In this technique, each current frame is divided into equal-size blocks, called source blocks. Each source block is associated with a search region in the reference frame. The objective of block-matching is to find a candidate block in the search region best matched to the source block. The relative distances between a source block and its candidate blocks are called motion vectors. Multimedia Processing Lab,UTA

10 X: Source block for block-matching Bx: Search area associated with X
Video Sequence time X: Source block for block-matching Bx: Search area associated with X MV: Motion vector Reference frame current frame Fig.4: Block matching Scenario [6] Multimedia Processing Lab,UTA

11 Motion Vector and Search Area
Source block Motion vector: (u, v) Search Area: Candidate block Multimedia Processing Lab,UTA

12 Motion Estimation Algorithms [11]
Full Search Algorithm Three Step Search Algorithm Four Step Search Algorithm Diamond Search Algorithm Hexagonal Search Algorithm Multimedia Processing Lab,UTA

13 Full Search Algorithm u v Candidate Block Search Area
If p=7, then there are (2p+1)(2p+1)=225 candidate blocks. Fig.5 : Full Search Scenario [6][11]

14 Computational complexity is of order n^2 for a block size of nxn
In order to get the best match block in the reference frame, it is necessary to compare the current block with all the candidate blocks of the reference frames. Full search motion estimation calculates the sum of absolute difference (SAD) value at each possible location in the search window. Full search computes the all candidate blocks intensively for the large search window. Computational complexity is of order n^2 for a block size of nxn Multimedia Processing Lab,UTA

15 3SS Algorithm The first step involves block-matching based on 4-pel resolution at the nine location.(step size m).Now they check for minimum cost distance and shift center to the new point of minimum. The second step involves block-matching based on 2-pel resolution around the location determined by the first step.(step size is m/2) The third step repeats the process in the second step (but with resolution 1-pel). Fig.6: 3 Step Search Scenario [6] [11] The position with minimum cost will give us the motion vector and also position of the best match. Multimedia Processing Lab,UTA

16 4SS Algorithm 4SS algorithm utilizes a center-biased search pattern with nine checking points on a 5 x 5 window in the instead of a 9 x 9 window in the 3SS. This algorithm helps in reducing the number of search points compared to the 3SS and hence is more robust. Block distortion method (BDM) point is used Fig.7: 4Step Search Scenario [6] [11] Multimedia Processing Lab,UTA

17 Diamond Search Algorithm
The DS algorithm employs two search patterns. Large diamond search pattern(LDSP) comprises 9 checking points from which eight points surround the center one to compose a diamond shape. Small diamond search pattern (SDSP) consisting of 5 checking points forms a small diamond shape. LDSP is repeatedly used until the minimum block distortion (MBD) occurs at the center point. Fig.8 : Diamond Search Scenario for ME [7] [11] Multimedia Processing Lab,UTA

18 Hexagonal Search Algorithm
In block motion estimation, a search pattern with a different shape or size has a very important impact on search speed and distortion performance. HEXBS algorithm can find a same motion vector with fewer search points than the DS algorithm. (Calculate the minimum cost at 6 corner points of Hexagon) Generally speaking, the larger the motion vector, the more search points the HEXBS algorithm can save. Fig.9:Hexagonal Search Scenario for ME [7][11] Multimedia Processing Lab,UTA

19 Test Sequences[23] RaceHorses_416x240_30.yuv sequence
BQMall_832x480_60.yuv sequence KirstenAndSara_1280x720_60.yuv sequence ParkScene_1920x1080_24.yuv sequence Multimedia Processing Lab,UTA

20 Simulation Results RaceHorses_416x240_30.yuv, Number of frames encoded = 20 Random Access profile (FAST SEARCH) Random Access profile (FULL SEARCH) QP PSNR in dB Bit rate in kbps Encoding time in seconds 22 27 32 88.600 37 71.437 Table 1: Results for RaceHorses_416x240_30.yuv sequence in Random Access Configuration BQMall_832x480_60.yuv , Number of frames encoded = 20 Random Access profile (FAST SEARCH) Random Access profile (FULL SEARCH) QP PSNR in dB Bit rate kbps Encoding time in seconds Bit rate in kbps 22 27 32 37 Table 2: Results for BQMall_832x480_60.yuv sequence in Random Access Configuration Multimedia Processing Lab,UTA

21 Testing Platform: KristenAndSara_1280x720_60.yuv
KristenAndSara_1280x720_60.yuv Number of fames encoded =20 ParkScene_1920x1080_24.yuv Random Access profile (FAST SEARCH) QP PSNR in dB Bit rate in kbps Encoding time in seconds 22 27 32 37 Table 3: Results for KirstenAndSara_1280x720_60.yuv & ParkScene_1920x1080_24.yuv sequences in Random Access Configuration Testing Platform: Processor Intel Core(TM) i5 CPU 4210U 2.40 GHz Number of cores 2 Memory 8GB Operating System 64 bit (x64-based processor),Windows 8.1 Multimedia Processing Lab,UTA

22 Figure 10: Snapshot of encoder_randomaccess_main.cfg[15]
Multimedia Processing Lab,UTA

23 Fig 11: Bit rate vs QP for all test sequences
Fig 12: PSNR vs QP for all test sequences Multimedia Processing Lab,UTA

24 Fig 13: R-D plot for RaceHorses_416x240_30.yuv sequence
Fig 14: R-D plot for BQMall_832x480_60.yuv sequence Multimedia Processing Lab,UTA

25 Fig 15: R-D plot for KirstenAndSara_1280x720_60.yuv sequence
Fig 16: R-D plot for ParkScene_1920x1080_24.yuv sequence Multimedia Processing Lab,UTA

26 Fig 17: Encoding time comparison for RaceHorses_416x240_30
Fig 17: Encoding time comparison for RaceHorses_416x240_30.yuv sequence Multimedia Processing Lab,UTA

27 Fig 18: Encoding time comparison for RaceHorses_416x240_30
Fig 18: Encoding time comparison for RaceHorses_416x240_30.yuv sequence Multimedia Processing Lab,UTA

28 Fig 19: Fast Search Encoding time comparison for all test sequences
Multimedia Processing Lab,UTA

29 Fig 20: Full Search Encoding time comparison for RaceHorses & BQMall
Multimedia Processing Lab,UTA

30 Work done and In Progress
Analyzed Full Search,3SS and Diamond Search. Developed functions in MATLAB like To find PSNR w.r.t reference image To compute motion compensated image To find minimum distance among macro blocks To compute Mean Absolute difference Developing functions for Full Search ,3SS and Diamond Search Multimedia Processing Lab,UTA

31 Acronyms BBME : Block Based Motion Estimation
BD-BR: Bjontegaard Delta Bitrate. BD-PSNR: Bjontegaard Delta Peak Signal to Noise Ratio. CABAC: Context Adaptive Binary Arithmetic Coding. CTB: Coding Tree Block. CTU: Coding Tree Unit. CU: Coding Unit. DBF: De-blocking Filter. DCT: Discrete Cosine Transform. fps: frames per second. HEVC: High Efficiency Video Coding. HM: HEVC Test Model. ISO: International Organization for Standardization. ITU-T: International Telecommunication Union- Telecommunication Standardization Sector. JCT-VC: Joint Collaborative Team on Video Coding. MAD: Mean Absolute Difference MC: Motion Compensation. ME: Motion Estimation. MPEG: Moving Picture Experts Group. MSE: Mean Square Error. PB: Prediction Block. PSNR: Peak Signal to Noise Ratio. QP: Quantization Parameter SAO: Sample Adaptive Offset. TB: Transform Block. TU: Transform Unit. VCEG: Visual Coding Experts Group. Multimedia Processing Lab,UTA

32 REFERENCES [1] V. Sze and M. Budagavi, “Design and Implementation of Next Generation Video Coding Systems (H.265/HEVC Tutorial)”, IEEE International Symposium on Circuits and Systems (ISCAS), Melbourne, Australia, June 2014, available on [2] HEVC tutorials [3] G.J. Sullivan; J. Ohm; W.J, Han and T. Wiegand, “Overview of the High Efficiency Video Coding (HEVC) Standard”, IEEE Trans. on Circuits and Systems for Video Technology, Volume: 22, Issue: 12, pp , Dec [4] I.E. Richardson “Video Codec Design : Developing Image and Video compression systems”,Wiley,2002. [5] G. J. Sullivan et al “Standardized Extensions of High Efficiency Video Coding (HEVC).”IEEE Journal of selected topics in Signal Processing” vol. 7, pp , Dec [6] L.C.Manikandan et al “A new survey on Block Matching Algorithms in Video Coding” in International Journal of Engineering Research ,Volume 3,pp ,Feb [7] ] L.N.A. Alves, and A. Navarro, " Fast Motion Estimation Algorithm for HEVC ", Proc IEEE International Conf. on Consumer Electronics -ICCE Berlin , Germany , vol.11 , pp , Sep. , 2012 [8] F. Bossen, et al, “HEVC complexity and implementation analysis”, IEEE Trans. on Circuits and Systems for Video Technology, Volume: 22, Issue: 12, pp , Dec [9] J. Ohm, et al, “Comparison of the Coding Efficiency of Video Coding Standards –Including High Efficiency Video Coding (HEVC)”, IEEE Trans. on Circuits and Systems for Video Technology, volume: 22, Issue: 12, pp , Dec [10] K. Kim, et al, “Block partitioning structure in the HEVC standard,” IEEE Trans. on circuits and systems for video technology, vol. 22, pp , Dec [11] M. Jakubowski and G. Pastuszak, “Block-based motion estimation algorithms-a survey,” Journal of Opto-Electronics Review, vol. 21, pp , Mar [12] A. Abdelazim, W. Masri and B. Noaman "Motion estimation optimization tools for the emerging high efficiency video coding (HEVC)", SPIE vol. 9029, Visual Information Processing and Communication V, , Feb. 17, 2014, doi: / Multimedia Processing Lab,UTA

33 [13] Software repository for HEVC - https://hevc. hhi. fraunhofer
[14] HEVC white paper –Ittiam systems - [15] HM Software Manual - [16] G. Bjontegaard, "Calculation of average PSNR difference between RD curves", VCEG-M33,ITU-T SG 16/Q 6,Austin, TX, April 2001. [17] Multimedia Processing Lab at UTA: Analysis of Motion Estimation (ME) Algorithms. By Tuan Phan Minh Ho (Spring 2014) Comparative study of Motion Estimation (ME) Algorithms by Khyati Mistry (Spring 2008) [18] has info on developments in HEVC NGVC – Next generation video coding. [19] Detailed Overview of HEVC/H.265 by Shevach Riabtsev : [20] W. Hong, “Coherent Block-Based Motion Estimation for Motion-Compensated Frame Rate Up-Conversion", IEEE International Conference on Consumer Electronics, pp , Jan.2010.  [21] N.Purnachand and L.N. Alves, A. Navarro “Improvements to TZ search motion estimation algorithm for multiview video coding” 19th International Conference on Systems, Signals and Image Processing IWSSIP, pp , 2012. [22] Video test sequences or or ftp://ftp.kw.bbc.co.uk/hevc/hm-11.0-anchors/bitstreams/ or [23] M. Wien, “High efficiency video coding: Tools and specification”, Springer, 2015. [24] I.E. Richardson, “Coding video: A practical guide to HEVC and beyond”, Wiley, 11 May 2015 [25] V.Sze ,M.Budagavi and G.J.Sullivan “ High Efficiency Video Coding(HEVC) –Algorithms and Architectures”, Springer, 2014. [26] X. Li et al, “Rate-complexity-distortion evaluation for hybrid video coding”, IEEE International Conference on Multimedia and Expo (ICME), pp , July [27] G. Correa et al, “Performance and computational complexity assessment of high efficiency video encoders”, IEEE Trans. on Circuits and Systems for Video Technology, Vol.22, pp , Dec.2012. Multimedia Processing Lab,UTA


Download ppt "Fast Block Based Motion Estimation Algorithms in HEVC"

Similar presentations


Ads by Google