H.261概述 ·该标准由CCITT于1988至1990间发展制定。 ·应用于ISDN电话线的视频会议,可视电话等。 ·ISDN的基本速率为64kbps,可以使用多路复用(p×64kbps)。 ·解码序列如下:
·图像帧类型为 CCIR 601 CIF(352×288)和 QCIF(176×144),信号色度格式4:2:0。 ·两种帧编码类型:帧内编码 Intraframes(I-frames)和帧间编码 Interframes (P-frames)。 ·帧内编码的 I-frames主要使用JPEG的技术。 ·帧间编码的 P-frames使用与前一帧(预测帧,predicted frame)的差值进行编码,因此当前帧依赖于前一帧。 ·I-frame可以作为随机读取点。
帧内编码(Intra Frame Coding) 下图显示了帧内编码的流程,和JPEG编码过程基本一致。
·宏块(macroblock)为原始图像里16×16像素区域。 在4:2:0格式中,一个宏块对应4个亮度块(Y block),1个Cr块,1个Cb块(Cr block & Cb block,子采样后的色度信号块) ·对所有DCT系数用常数值进行量化(即,没有JPEG标准里的量化表) 帧间编码(Inter-frame (P-frame) Coding) ·帧间编码的基本思路如下图所示:
上图中: ·参考图像(reference image)指前面(已编码)的图像。 ·目标图像(target image)指当前要编码的图像 在帧间编码中,关键过程称为运动估值(motion estimation),对于当前目标图像中的某一宏块,在参考图像中寻找与之最相似的宏块(best match),然后对他们的差值进行和帧内编码类似的编码。 这样作的好处是得到的差值矩阵比较小,编码需要的比特量业也比较小。但是这里还要传送最匹配宏块和当前编码宏块之间相对位置的信息, 这里称为运动向量(motion vector)。 ·两点补充: 1.这里用解码后的图像(decoded image)作为参考图像,而不用原始图像。 2.一般使用“平均绝对差值”(MAD: Mean Absolute Difference)作为判断最匹配块的标准。也可以使用“均方差”(MSE: Mean Squared Errow)
细节:如何对宏块编码
很多宏块能匹配得很好,传送每个宏块在图像中的地址--> Addr ·有时找不到合适的匹配,这时传送帧内编码块(INTRA block)--> Type ·若想调制量化以得到更好的压缩效果,传送量化值-->Quant ·运动向量-->vector ·宏块中,某些块匹配很好,其他则较差。这时传送bitmask,用来表示显示哪些块(CBP: Coded Block Pattern)。 ·象JPEG一样,传送各块。(4 Y, 1 Cr, 1 Cb)
H.261比特流结构
·很多宏块能匹配得很好,传送每个宏块在图像中的地址--> Addr ·有时找不到合适的匹配,这时传送帧内编码块(INTRA block)--> Type ·若想调制量化以得到更好的压缩效果,传送量化值-->Quant ·运动向量-->vector ·宏块中,某些块匹配很好,其他则较差。这时传送bitmask,用来表示显示哪些块(CBP: Coded Block Pattern)。 ·象JPEG一样,传送各块。(4 Y, 1 Cr, 1 Cb)
H.261比特流结构
H.261中的难点问题 1.运动向量搜
当前目标图像中待编码宏块C,其右上角坐标为(x,y),则该宏块中像素为C(x+k,y+l) 参考图像内,右上角坐标(x+i,y+j)的参考宏块R内像素为R(x+i+k,y+j+l) 下式求绝对误差平均值(MAE: Mean Absolute Error):
运动向量搜索的目标就是寻找一个MAE值最小的参考宏块,其对应向量(u,v)为运动向量。 ·全搜索(Full Search Method) 1.对参考图像内范围为[-p,p]搜索区域的所有可能宏块进行搜索。
|