Upload
bridget-griffin
View
217
Download
0
Embed Size (px)
Citation preview
Digital VideoSolutions to Final Exam 2013
Edited by Yang-Ting ChouConfirmed by Prof. Jar-Ferr Yang
LAB: 92923 R, TEL: ext. 621E-mail: [email protected]
Page of MediaCore: http://mediawww.ee.ncku.edu.tw
Announcement
AVG: 107.833STDEV: 16.4066
MAX: 134MIN: 72
1 (1)
1 (3)
1 (2)
1 (4)
1 (5)
Deblocking: Inverse 過程中變化係數有誤差 , 造成 block 邊界的視覺上不連續
To deliver 3D contents, one simple and direct way is to combine both left and right view frames into single frame by a stereo packing formation such that thetraditional coding and transmission system can transmit them as the normal 2D videos.
2 (a)
(b)H-Interleaved V-Interleaved Checkerboard Bottom-Up
Side-by-SideSide-by-Side
(Quincunx Packing)Temporal
Interleaving
Side-by-Side
Side-by-Side (Quincunx Packing)
Side-by-side packing
rearrangement
Side-by-side quincunx packing
rearrangement
Upconversion
Processing
Upconversion
Processing
Upconversion
Processing
Upconversion
Processing
3
41. MPEG-2 and MPEG-4 adopt object based;
H.264 and HEVC adopt block based.2. The compression rate.
(HEVC 約為 H.264 的 1/2; H.264 約為 MPEG-2, MPEG-4 的 1/2)
3. The applications (HEVC and H.264 主要是應用於視訊會議 ;
MPEG-2 and MPEG-4 主要是應用於 CD 或 DVD)
0000
0010
0022
1010
X
(a)
Reordered Block Data:
0, 1, -2, 0, 2, 0, 1, 0, -1, …
TotalCoeffs = 5
TotalZeros = 4
TrailingOne = 2
5
由後往前計算 , 計算有幾個非 0值
由後往前計算 , 從第一個非 0 值往前計算幾個 0 值
由後往前計算 , 從第一個非0 值往前計算幾個 +/-1值 ,若遇到非 0 or 非 +/-1
值 , 及停止
0, 1, -2, 0, 2, 0, 1, 0, -1, …
0, 1, -2, 0, 2, 0, 1, 0, -1, …
0, 1, -2, 0, 2, 0, 1, 0, -1, …
(b) (1) nA=2, nB=4, nC = (nA + nB + 1)>>1=3
Coeff_token : 0000101 (查表 )( TrailingOne = 2, TotalCoeffs = 5, nC = 3 )
(2) T1 (TrailingOne ) sign codes : 10 ()
(3) Level codes : 101110 (查表 )
Level [2]: 1 (use Level_VLC0) 1
Level [1]: -2 (use Level_VLC1) 011
Level [0]: 1 (use Level_VLC1) 10
(4) TotalZeros code : 110 (查表 ) ( TotalZeros = 4, TotalCoeffs = 5 )
(5) Run_before codes : 10100110
Run_before[4]: ZerosLeft=4; run_before=1 10 (查表 )
Run_before[3]: ZerosLeft=3; run_before=1 10 (查表 )
Run_before[2]: ZerosLeft=2; run_before=1 01 (查表 )
Run_before[1]: ZerosLeft=1; run_before=0 1 (查表 )
Run_before[0]: ZerosLeft=1; run_before=1 0 (查表 )
Note: Level (1), with a value of +2, is encoded as +1. If there are less than 3 T1s, then the first non-T1 level will not have a value of +/-1 (otherwise it would have been encoded as a T1). To save bits, this level is decremented if positive and incremented if negative.
Reordered Block Data: 0, 1, -2, 0, 2, 0, 1, 0, -1, …
nA+nB+1=7 (111) (011)3Shift 1
Table – coeff_token mapping to TotalCoeff( coeff_token ) and TrailingOnes( coeff_token )
TrailingOnes( coeff_token )
TotalCoeff( coeff_token )
0 <= nC < 2 2 <= nC < 4 4 <= nC < 8 8 <= nC nC = = -1
0 0 1 11 1111 0000 11 010 1 0001 01 0010 11 0011 11 0000 00 0001 111 1 01 10 1110 0000 01 10 2 0000 0111 0001 11 0010 11 0001 00 0001 001 2 0001 00 0011 1 0111 1 0001 01 0001 102 2 001 011 1101 0001 10 0010 3 0000 0011 1 0000 111 0010 00 0010 00 0000 111 3 0000 0110 0010 10 0110 0 0010 01 0000 0112 3 0000 101 0010 01 0111 0 0010 10 0000 0103 3 0001 1 0101 1100 0010 11 0001 010 4 0000 0001 11 0000 0111 0001 111 0011 00 0000 101 4 0000 0011 0 0001 10 0101 0 0011 01 0000 00112 4 0000 0101 0001 01 0101 1 0011 10 0000 00103 4 0000 11 0100 1011 0011 11 0000 0000 5 0000 0000 111 0000 0100 0001 011 0100 00 -1 5 0000 0001 10 0000 110 0100 0 0100 01 -2 5 0000 0010 1 0000 101 0100 1 0100 10 -3 5 0000 100 0011 0 1010 0100 11 -0 6 0000 0000 0111 1 0000 0011 1 0001 001 0101 00 -1 6 0000 0000 110 0000 0110 0011 10 0101 01 -2 6 0000 0001 01 0000 0101 0011 01 0101 10 -3 6 0000 0100 0010 00 1001 0101 11 -
Table – total_zeros tables for 4x4 blocks with TotalCoeff( coeff_token ) 1 to 7
total_zeros TotalCoeff( coeff_token )1 2 3 4 5 6 7
0 1 111 0101 0001 1 0101 0000 01 0000 011 011 110 111 111 0100 0000 1 0000 12 010 101 110 0101 0011 111 1013 0011 100 101 0100 111 110 1004 0010 011 0100 110 110 101 0115 0001 1 0101 0011 101 101 100 116 0001 0 0100 100 100 100 011 0107 0000 11 0011 011 0011 011 010 00018 0000 10 0010 0010 011 0010 0001 0019 0000 011 0001 1 0001 1 0010 0000 1 001 0000 0010 0000 010 0001 0 0001 0 0001 0 0001 0000 0011 0000 0011 0000 11 0000 01 0000 1 0000 012 0000 0010 0000 10 0000 1 0000 013 0000 0001 1 0000 01 0000 0014 0000 0001 0 0000 0015 0000 0000 1
Table – Tables for run_before
run_before zerosLeft1 2 3 4 5 6 >6
0 1 1 11 11 11 11 1111 0 01 10 10 10 000 1102 - 00 01 01 011 001 1013 - - 00 001 010 011 1004 - - - 000 001 010 0115 - - - - 000 101 0106 - - - - - 100 0017 - - - - - - 00018 - - - - - 000019 - - - - - - 00000110 - - - - - - 000000111 - - - - - - 0000000112 - - - - - - 00000000113 - - - - - - 000000000114 - - - - - - 00000000001
6
The Advanced Image Coding (AIC) codec uses the existing algorithms from the H.264 and JPEG standards by modifying a bit to fit the needs of the codec. More specifically, it combines intra frame block prediction from H.264 with a JPEG-style discrete cosine transform, followed by context adaptive binary arithmetic coding as used in H.264
JPEG XR:
AIC:
JPEG XR (abbr. for JPEG extended range) is a still-image compression standard and file format for continuous tone photographic images, based on technology originally developed and patented by Microsoft under the name HD Photo (formerly Windows Media Photo). It supports both lossy and lossless compression, and is the preferred image format for Ecma-388 Open XML Paper Specification documents.
(7%)
(8%)
AIC: DCT, Prediction, …JPEG-XR: PCT, Hierarchical Transform, …(5%)
7Intra ModeInter ModeSearch Range Search Type CU-based Mode Decision…
8
9 (a)
(b)
Try all possible QP values and pick up the best one.