Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adaptive Deblocking Filter in H.264 Ehsan Maani Course Project:

Similar presentations


Presentation on theme: "Adaptive Deblocking Filter in H.264 Ehsan Maani Course Project:"— Presentation transcript:

1 Adaptive Deblocking Filter in H.264 Ehsan Maani Course Project:

2 Goal 123101105121 11098100106 112101102103 111106107122 example of the square error distribution over a 4x4 block.

3 Block Sources Block-based discrete cosine transform (DCTs) and coarse quantization of the transform coefficients. Motion compensated blocks. (blocks copied from different locations of the reference frames.)

4 Different problem approaches Post Filter: Operates at the display buffer outside of the coding loop. Loop Filter: Operates inside coding loop, i.e. filtered frames are used as reference frames for motion compensation.

5 Loop filter vs. Post filter Encoder performs the deblocking; thus, content providers can safely assume that their material is processed by proper deblocking filter. There is no need for an extra buffer at the decoder. Loop filters achieve higher quality by preventing propagation of blocking artifacts due to motion compensation.

6 Filter Adaptivity On the slice level, the global filtering strength can be adjusted to the individual characteristics of the sequence. On the block-edge level, filter strength depends on the parameters of the participating blocks. On the sample level, sample values and quantizer-dependent thresholds can turn the filter off for each individual sample

7 Edge-Level Adaptivity To every edge between two 4x4 luminance samples, a Boundary-Strength (Bs) is assigned an integer value between 0 to 4. Block modes and conditionsBs One of the blocks is Intra and the edge is a macroblock edge. 4 One of the blocks is Intra3 One of the blocks has coded residues2 Difference of block motion >1 luma sample 1 Motion compensation from different reference frames 1 Else0 A macroblock 16 pix

8 Sample-Level Adaptivity q3q3 q2q2 q1q1 q0q0 p0p0 p1p1 p2p2 p3p3 1-D visualization of a block edge Pre-defined arrays  and  Filtering on a line of samples takes place only if: |p 0 -q 0 | <  (Index A ) |p 1 -p 0 | <  (Index B ) |q 1 -q 0 | <  (Index B ) Index A and Index B linearly depend on QP and offset parameters

9 Filtering with Bs<4 Let then, edge pixel values are calculated as q3q3 q2q2 q1q1 q0q0 p0p0 p1p1 p2p2 p3p3 1-D visualization of a block edge

10 Filtering with Bs<4 Furthermore, if Then and p3p3 p2p2 p1p1 p0p0 q0q0 q1q1 q2q2 q3q3

11 Filtering with Bs=4 In nearly uniform image areas very small differences in intensity values are perceived as abrupt steps; thus, if then, a very strong 4- and 5-tap filter is used that modifies the edge and two interior luma samples. Otherwise a weaker 3-tap filter is used.

12 Results PSNR=29.3374 SSIM=0.8043 PSNR=29.7730 SSIM=0.8500

13 Results PSNR=30.1537 SSIM=0.7902 PSNR=30.4492 SSIM=0.8115


Download ppt "Adaptive Deblocking Filter in H.264 Ehsan Maani Course Project:"

Similar presentations


Ads by Google