Video Compression Bee Fong Lossy Compression Inter Frame

Video Compression Bee Fong

Lossy Compression Ø Inter Frame Compression l Compression among frames Ø Intra Frame Compression l Compression in a frame

Intra Frame Compression Ø Similar to Image Compression l Do not discussion, please refer to the image compression section (JPEG)

Coding Order != Display Order Ø Figure 1 Ø Figure 2 Encoding rate may be slow, but Decoding rate is fast

Inter Frame Compression Ø I Frame l Intra Frame Ø P Frame l Predictive Frame Ø B Frame l Bidirectional Frame Ø D Frame

Compression Methods Ø Subsampling l Duplicate frames, 1 compression stream Ø Differencing l Compare a Frame with its predecessor. Take the difference. Ø Block Differencing l Frame divided into blocks, compare block difference.

Compression Methods Ø Motion Compensation l Motion vector, compare blocks with location difference. Ø Frame Segmentation l Frame divided into equal-size nonoverlapping blocks, block size affecting the chance of matching Ø Search Threshold l Compare #difference with a predefined value

Compression Methods Ø Block Search l Search area = (width + 2 dx)(height + 2 dy) Ø Distortion Measure l Use Pel difference instead of mean absolute difference

Compression Methods Ø Suboptimal Search Methods l Do some search in the search area, not all. Ø Coding Motion Vector l l Use prediction motion vector Grouping motion vectors Ø Image Objects l Use overlapping object layers

My Ideas Ø “Cutting-Sandwich Compression” Ø Motivation: for high quality compression, or lossless video compression rate is low.

Cutting-Sandwich Compression Ø Cutting Frames horizontally or vertically, then do compression Ø Reason: for a single frame, the repeating rate of pixels is low Ø Assumption: the repeating chance of the same line of frames may be higher.

Implementation Ø Base on the general Video compression approach, treat images in another dimensions (horizontal cutting images, or vertical cutting images) Ø Treat as a 3 -d block of frames, stored in buffer for encoding / decoding.

Implementation Ø For each 3 -d block, compare the general, horizontal and vertical compression rate, take the best. Ø Add two extra bits for mode selection. l 00 for general mode, 01 for vertical mode, 10 for horizontal mode and 11 for open. Ø Tradeoff is low.

Tradeoff Ø For example, 1 block = 640 frames of (640 x 480) image, 3 bits per pixel. Ø 2 extra bits / (640 x 480 x 3) bits ~= 0%.

Tradeoff Ø More resources are needed for the compression (time, software, hardware) Ø Encoding rate may be slower, Decoding rate – no big difference if we take some buffer (again, only decoding needed to be fast in general case) Ø Software and hardware cheap now, not a technical problem.

Tradeoff Ø Buffer is needed for encoding and decoding in video compression, not a big deal.

Other supportive compression methods in Sandwich Ø Run-Length Encoding Ø LZ 77 Ø LZW
- Slides: 17