SIP学习篇1之1
一、H.246编码框架还是沿用了以前的MC-DCT结构,即使运动补偿加变换编码混合结构。
在上面这些继承的基础上,又发展了一下的优点:
1、帧内预测
利用了空间的相关性而非时间的相关性实现的。以前只是利用了宏快内部的相关性,而忽视了宏快间的相关性,所以一般编码以后数据量是非常的大。
帧内预测提高编码的压缩效率。
帧内预测:周围邻近的像素点来预测当前的像素值,然后对预测的误差进行编码。这种预测诗基于块的。
2、帧间预测
a)预测时所用的块的大小可变
由于基于块的运动模型假设块内的所有像素都做了相同的平移,在运动比较剧烈或者运动物体的边缘点这一假设和实际出入比较大,从而导致的误差比较大。这时,减少块的大小可以使假设在小的块中依然成立。另外小的块所造成块效应也相对比较小,所以一般来说小的块可以提高侦测效率。
所以H.264采用了7种方式来对一个宏块进行分割,每种方式下的宏块的大小和形状都不相同。这样就可以使得编码器根据图像的运动情况选择最好的预测模式。
b)更细的预测精度。
c)多参考帧
根据在此帧之前的多个帧作为参考来产生当前帧的预测。这种适用于视频序列中含有周期性运动的情况。
d)Deblocking Filter(可以译作抗块效应滤波器)
消除经反量化和反变换后重建图像中由于预测误差产生的块效应,即块边缘处的像素值跳变,从而改善图像的主观质量,减少预测误差。
e) SP Slice
3、整数变换
H.264对帧内和帧间的预测残差进行DCT变换编码。为了克服浮点运算带来的硬件设计复杂,更重要的是由于四舍五入造成解码器和编码器之间不匹配问题,新的标准对DCT的定义做了改变,即变换用整数的加减法和移位操作即可实现,这样不考虑量化情况的影响下,解码端的输出可以准确地恢复编码端的输入。
4、熵编码
基于上下文的自适应变长码(CAVLC)
基于上下文的自适应二级制算数编码(CABAC)
5、SP Slice 主要应用不同码流的切换。也可用于码流的随机访问,快进快退和错误恢复。
这里所说不同的码流指在不同的比特率限制下对同一信源进行编码所产生的码流,
6、灵活的宏块排序
将一副图像的宏块分成几个组,分别独立的进行编码,某一个组中的宏块不一定是在常规的扫描顺序下前后继续,可能存在图像某个任意的位置,这样在传输时容易发生错误,在解码的时候不能正确的解码,解码器仍然可以通过图像的空间相关性依靠其周围的正确的译码像素进行恢复。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。