video compression concepts - university of...

23
Video Compression Concepts Nimrod Peleg Update: Dec. 2003

Upload: others

Post on 09-Jun-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Video Compression Concepts

Nimrod PelegUpdate: Dec. 2003

Page 2: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Interframe Compression• The simple way is a frame-by-frame

compression (JPEG-like): Limited compression ratio

• Interframe compression exploits temporal redundancies due to similarity between successive frames, (In addition to spatial, spectral and psychovisual redundancies in still image compression)

• No Random Access at all frames !

Page 3: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Possible Strategies

• 3-D Waveform coding (TC / Sub-Band)• Object/Knowledge based coding• Motion Compensation based coding

Page 4: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Compensation Approach

• Segmenting each frame to “changed” and “unchanged” regions (Vs. previous frame)

• Pixels in changed region are DPCM encoded(between successive frames and following

motion compensation)

Page 5: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Frame 2 Macro BlockFrame 2 Macro Block

Page 6: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Compensation (Cont’d)

• Amount of changed info. varies from frame to frame (VLC): a buffer needed

• A motion detection algorithm needed

• MC-DPCM is efficient if displacement vectors estimation is accurate

Page 7: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Compensation (Cont’d)

• ideally: motion info for each pixel– too expensive

• semantically: motion data for each region or object– second generation coding techniques

• simplified: motion info for each 16x16 macroblock

Page 8: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Model

• Affine motion:– translation, rotation, scale– 6 parameters in 2D– complex

• Simplified translational model:– motion vectors (MV, 2 parameters)

Page 9: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

ME Options

• optimal motion vector?– investigate all positions within a search window– keep the one with minimum Mean Square Error– MV = corresponding translation

Page 10: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Estimation Techniques

The choice of sending zero MV, is always available, with no cost…and worst results.

• Backward prediction– Predict where the pixels in a current frame were

in a past frame• Forward prediction

– Predict where the pixels in a current frame will go to in a future frame

Page 11: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Estimation

Block Matching Method• Motion vector is estimated by pixel domain

search procedure• Most popular due to lesser h/w complexity• Basic idea:

Frame K+1Frame K

Search Window

MotionVector

Page 12: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Matching Criteria• Maximum cross-correlation• Maximum pel matching count (MPC)• Minimum mean squared error (MSE)

Not popular in VLSI due to square operation• Minimum mean absolute difference (MAD)

Very popular but problematic due to several possible local minima

• SNR

Page 13: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Other Parameters

• Calculation and implementation • Visual results ...

Page 14: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Full Search & Zero MV results

Page 15: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Search Procedure• Full search (inside the search window)• Three step• Conjugate direction

3-Step Conjugate directionSearch order

Best Match

12 pixels

Page 16: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

3 or 4 Step Search Results

Full search

No search

Page 17: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Conjugate Direction Search

Page 18: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Search Algorithm results

Algorithm Ave. SNR(dB) CaculationsFull search 28.46 100% (~7M)Zero Search 27.7 0Conjugate 27.9 2%Orthogonal 28.1 3.6%Decimation 28.2 33%Pyramid and more...

Page 19: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

MC Transform Coding

• Temporal prediction error is 2-D transform coded by segmenting the displaced frame difference into blocks, and encoding the DCT coeff. of each block

• Intra and Inter modes• Field and frame modes

Page 20: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Other MC Compression Techniques • Vector Quantization:

Prediction error signal encoded by VQ

• Sub-Band Coding:Frame prediction error (residual) is decomposed into 2-D subbands

Page 21: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Video Compression (Cont’d)

• Complete process:– Encode every N frame “JPEG style”– Between the “JPEG style” frames, predict the

motion from frame to frame– Subtract the predicted frame from the original oneand encode the difference

• Compression ratio: about 100:1 and more

Page 22: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Motion Compensation

•frame #0 •frame #1

motion compensateddifference frame•difference frame

Page 23: Video Compression Concepts - University of Haifacs.haifa.ac.il/~nimrod/Compression/Video/v2conspt2003.pdf · Video Compression Concepts Nimrod Peleg Update: Dec. 2003. Interframe

Prediction Technique

Past Frame CurrentFrame

FutureFrame

Bidirectional Interpolation