I‑frame & P‑frame & B‑frame

Video compression picture types

The three major picture types used in the different video algorithms are I, P and B.
They are different in the following characteristics:
I‑frames are the least compressible but don't require other video frames to decode.
P‑frames can use data from previous frames to decompress and are more compressible than I‑frames.
B‑frames can use both previous and forward frames for data reference to get the highest amount of data compression.

I帧独立压缩, 解码时不需依赖其它帧.
P帧需要依赖前边的I帧才能进行解码, 优点是压缩率比I帧高.

Summary

A sequence of video frames, consisting of two keyframes (I), one forward-predicted frame (P) and one bi-directionally predicted frame (B).

P帧相对于I帧, 仅有三个点的位置向左侧发生了平移, P帧就是来记录变化的这部分信息.

An I‑frame is an 'Intra-coded picture', in effect a fully specified picture, like a conventional static image file.

conventional:平常的
I帧像一幅平常的静态图片.

P‑frames and B‑frames hold only part of the image information, so they need less space to store than an I‑frame and thus improve video compression rates.
A P‑frame ('Predicted picture') holds only the changes in the image from the previous frame.
For example, in a scene where a car moves across a stationary background, only the car's movements need to be encoded.
The encoder does not need to store the unchanging background pixels in the P‑frame, thus saving space.
P‑frames are also known as delta‑frames.

P帧和B帧只包含了图像的局部信息, 故相对I帧, 仅需更少的空间去存储.

A B‑frame ('Bi-predictive picture') saves even more space by using differences between the current frame and both the preceding and following frames to specify its content.

Intra coded frames/slices (I‑frames/slices or Key frames)

  • I-frames are coded without reference to any frame except themselves.
  • May be generated by an encoder to create a random access point (to allow a decoder to start decoding properly from scratch at that picture location).
  • May also be generated when differentiating image details prohibit generation of effective P or B-frames.
  • Typically require more bits to encode than other frame types.

编码时不需依赖其它帧, 一般来说编码之后的size比较大.

Often, I‑frames are used for random access and are used as references for the decoding of other pictures.
Intra refresh periods of a half-second are common on such applications as digital television broadcast and DVD storage.
Longer refresh periods may be used in some environments.
For example, in video conferencing systems it is common to send I-frames very infrequently.

在数字电视广播和DVD存储时, 一般I帧率的刷新周期在0.5秒左右.
有时, 刷新周期可以适当增长, 比如视频会议的时候, 由于相对来说画面的变化幅度不会太大, 所以发送I帧的周期可以长一些.

Predicted frames/slices (P-frames/slices)

  • Require the prior decoding of some other picture(s) in order to be decoded.
  • May contain both image data and motion vector displacements and combinations of the two.
  • Typically require fewer bits for encoding than I pictures do.

Bi-directional predicted frames/slices (B-frames/slices)

  • Require the prior decoding of other frame(s) in order to be decoded.
  • Typically require fewer bits for encoding than either I or P-frames.

小结

I&P&B 比较简图

References:
https://en.wikipedia.org/wiki/Video_compression_picture_types

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容