Download presentation
Presentation is loading. Please wait.
1
CMPT-884 Jan 18, 2010 Error Concealment Presented by: Cameron Harvey CMPT 820 October 19 2010
2
Internet Basics The internet is not reliable as a communication channel Packets can become corrupted Packets can get lost Packets can have high latency Packets can arrive out of order
3
Encoder/decoder MULTIMEDIA OVER IP AND WIRELESS NETWORKS, pg 16 FIGURE 2.4
4
Motion Compensated Prediction Standard compression techniques use MCP to estimate a macroblock based on previous or future frames Packet loss will affect not just the frame being decoded, but many other frames as well Errors are propagated temporally until a new I- frame is encountered
5
Slices Slices A slice is composed of a series of macroblocks Slices are non-overlapping Slices are structure in such a way that motion vectors are all contained within the slice
6
Slice Coding Schemes Constant MBs/slice Maximum bytes/slice
7
Macroblock Allocation Maps FMO – Flexible Macro-block Ordering New to the H.264/AVC standard is the ability to define slice groups Groups can be further divided into separate slices
8
Flexible Macroblock Ordering FMO provides a useful tool for error concealment We can use FMO to arrange for slice groups in such a way that macroblocks are not adjacent to macroblocks from the same slice group Slices are packetized separately and transmitted
9
Some types of FMO patterns Y Dhondt, P Lambert, Flexible Macroblock Ordering – an error resilience tool in H.264/AVC, Gent, Belgium, Dec 2004
10
FMO – Type 1 Slices are interleaved in such a way that a missing slice will be surrounded by many samples which are decoded correctly MULTIMEDIA OVER IP AND WIRELESS NETWORKS, pg 31 FIGURE 2.12
11
Example Suppose the packet containing macroblocks of slice group #0 is lost
12
Example (2) The missing macroblock can be interpolated using the data from the surrounding macroblocks This is type of concealment is called Spatial Concealment T B RL
13
Spatial Error Concealment The key assumption behind Spatial Error Concealment is that image content is continuous and has smooth texture
14
Spatial Error Concealment The pixel, X ij, is calculated as the weighted average of four pixel values on the edge of the macroblock MULTIMEDIA OVER IP AND WIRELESS NETWORKS, pg 33 FIGURE 2.13
15
Spatial Error Concealment (2) The calculation for pixel (i,j) is The values of determine the impact the border pixels will have and are generally related to the distance from the pixel under consideration
16
Spatial Error Concealment (3) This technique will result in blurred areas as the reconstructed macroblock is basically an average of the surrounding macroblocks Refinements of this technique can be used to recover some texturing information
17
Spatial Error Concealment (4) Error concealment without FMO Error concealment using FMO Picture 11 from a GOP – 5% packet loss Y Dhondt, P Lambert, Flexible Macroblock Ordering – an error resilience tool in H.264/AVC, Figure 2, Gent, Belgium, Dec 2004
18
Temporal Error Concealment Temporal concealment operates with the assumption that a video sequence is continuous In its simplest form, one can simply copy a missing macroblock from the corresponding macroblock in the previous frame. This is called Previous Frame Concealment (PFC) Useful if the scene is static Problematic if the scene changes rapidly as this creates many artifacts
19
Temporal Error Concealment (2) We can improve on PFC with an assumption of uniform motion. With this assumption, one can examine the motion vectors of the adjacent macroblocks to infer the motion of the lost macroblock Many possibilities exist. A boundary matching technique can be used to select from the many possibilities
20
Boundary Matching Technique The sum of the squares of the differences between border pixels of Top, Right, and Bottom is determined The motion vector which minimizes this sum is a good candidate MULTIMEDIA OVER IP AND WIRELESS NETWORKS, pg 35 FIGURE 2.15
21
Other Temporal Concealment Refinements Overlapped Block Motion The average of three 16X16 pixel regions is used Use Median Motion Vector of T, R, and B Sum of Absolute Difference (instead of square) Estimate motion with the Top macroblock Use PFC if top motion vector is unavailabel Multi-hypothesis error concealment uses a weighted average of multiple frames
22
Example Click to see an example of Spatial-temporal error concealment http://w3.antd.nist.gov/public_safety/concealment/ Project_conceal_files/ecdemo.shtml http://w3.antd.nist.gov/public_safety/concealment/ Project_conceal_files/ecdemo.shtml
23
Temporal Concealment over a Scene Change Packet loss over a scene change violates the assumption of temporal continuity Scene change detection can be used at the cost of additional complexity Macroblock information over a scene change exhibit distinct characteristics
24
Abrupt Scene Changes S. Pei and Y Chou, Novel Error Concealment Method With Adaptive Prediction to the Abrupt and Gradual Scene Changes, Proceedings of the 16 th International Conference on Pattern Recognition (ICPR'02) Volume 3, Figure 2(a) Apr 2002
25
Abrupt Scene Changes (2) Use Spatial Concealment on the P-frame (Why?) Use Temporal Error Concealment on the B frames Use the P or I frame from the same scene as reference For IBBP, all four frames must be processed before concealment can occur
26
Gradual Scene Changes S. Pei and Y Chou, Novel Error Concealment Method With Adaptive Prediction to the Abrupt and Gradual Scene Changes, Proceedings of the 16 th International Conference on Pattern Recognition (ICPR'02) Volume 3, Figure 2(b) Apr 2002
27
Gradual Scene Changes (2) In the first sub-GOP (IBBP or PBBP), temporal concealment can be used for the final P-frame (Why?) B frames are calculated as a weighted average of the first P or I frame and the final P- frame Across P frame in different sub-GOP, interpolation is used aided by the large number of intracoded macroblocks
28
Questions He must be very ignorant for he answers every question he is asked. Voltaire
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.