宏区块

宏区块宏块(英语:Macroblock)是一种影像压缩术语

宏块是运动预测的基本单位,一张完整的通常会被切割成几个宏块,MPEG-2和较早期的编解码器定义宏块都是8×8像素,现代的一点编解码器像是H.263H.264的宏块通常都是16×16像素和相应区域内的CbCr色差信号阵列共同组成。

宏块为基准来选择特定的预测类型,而非整个图像都使用同样的类型:

  • I图像(Intra pictures)只可含有节点宏块。
  • P图像(Predictive pictures)可含有节点宏块或预测宏块 。
  • B图像(Bi-predictive pictures)可含有节点、预测和前后预测宏块。

宏块编码

+------+------+-------+--------+-----+----+----+--------+
| ADDR | TYPE | QUANT | VECTOR | CBP | b0 | b1 | ... b5 |
+------+------+-------+--------+-----+----+----+--------+
  • ADDR:blockimage的地址
  • TYPE:宏块的类型(intra-frame英语intra-frame, inter frame英语inter frame视频压缩略图像类型
  • QUANT:quantization value to vary quantization
  • VECTOR:运动向量英语motion vector
  • CBP:编码后区块样式,some blocks in macroblock match well, some match poorly - this is bit mask indicating which one is present.
  • bN:the blocks(4 Y, 1 Cr, 1 Cb)

较先进的解码器可以隐藏一些型式上的影像残缺,这类的技术被称为error concealment,在消费性产品上则称为MPEG Noise Reduction[1]

注释

  1. ^ PC Magazine, Definition of blocking artifacts. [2020-10-06]. (原始内容存档于2012-10-07).