![Page 1: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/1.jpg)
Video Compression Concepts
Nimrod PelegUpdate: Dec. 2000
![Page 2: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/2.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/3.jpg)
Possible Strategies
• 3-D Waveform coding (TC / Sub-Band)
• Object/Knowledge based coding
• Motion Compensation based coding
![Page 4: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/4.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/5.jpg)
Frame 2 Macro BlockFrame 2 Macro Block
![Page 6: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/6.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/7.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/8.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/9.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/10.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/11.jpg)
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 KFrame K+1
Search Window
MotionVector
![Page 12: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/12.jpg)
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 absolut difference (MAD)
Very popular but problematic due to several possible local minima
• SNR
![Page 13: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/13.jpg)
Other Parameters
• Calculation and implementation
• Visual results ...
![Page 14: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/14.jpg)
Full Search & Zero MV results
![Page 15: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/15.jpg)
Search Procedure• Full search (inside the search window)
• Three step
• Conjugate direction
12 pixels
3-Step Conjugate directionSearch order
Best Match
![Page 16: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/16.jpg)
3 or 4 Step Search Results
Full search
No search
![Page 17: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/17.jpg)
Conjugate Direction Search
![Page 18: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/18.jpg)
Search Algorithm results
Algorithm Ave. SNR(dB) Caculations
Full search 28.46 100% (~7M)
Zero Search 27.7 0
Conjugate 27.9 2%
Orthogonal 28.1 3.6%
Decimation 28.2 33%
Pyramid and more...
![Page 19: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/19.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/20.jpg)
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 Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/21.jpg)
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 one
and encode the difference
• Compression ratio: about 100:1 and more
![Page 22: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/22.jpg)
Motion Compensation
•frame #0 •frame #1
•difference framemotion compensated
difference frame
![Page 23: Video Compression Concepts Nimrod Peleg Update: Dec. 2000](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649d985503460f94a81d51/html5/thumbnails/23.jpg)
Prediction Technique
CurrentFrame
Past Frame FutureFrame
Bidirectional Interpolation