2。1。6 熵编码
处于视频编码系统的末端,无损熵编码(Entropy Coding)将前面几个模块的信息表示成可供传输或压缩的码流,并尽可能去除这些信息间的冗余。
HEVC中主要采用的熵编码方式是基于上下文的自适应二元算术编码技术(Context-based Adaptive Binary Arithmetic Coding, CABAC)。这里主要有几个概念,其一是二进制化,即把信息量表示成01序列,其方法主要包括截断莱斯二元化(TR)、K阶指数哥伦布二元化(EGK)和定长二元化(FL)。再者是上下文模型,它主要是依据二元化得到的序列建立一个概率模型并不断更新。最后是二进制算术编码,它依据前面的概率模型参数对二元化后的每一个Bin进行算术编码以得到最终的输出码流。
2。1。7 小结
至此,我们粗略介绍了H。265/HEVC标准的各个组成部分以及总体架构。
目前,由于视频技术发展带来的日益增长的编码需求,以及HEVC本身高效的编码性能,HEVC越发成为主流的压缩编码标准。可以预估,在未来几年,HEVC将完全取代H。264/AVC。
2。2 3D-HEVC标准
2。2。1 编码框架
3D-HEVC【11】是用于3D视频编码的新兴编码标准,它是基于HEVC标准的扩展。3D-HEVC标准涵盖了HEVC所有纹理视频编码的功能,此外还增加了一些扩展功能来提高编码性能。
图2。3 3D-HEVC编码框架
3D-HEVC标准采用多视点加深度图的编码方式,每个纹理视图与其深度图相关联。独立纹理视图使用2D-HEVC算法独立编码,并总是在其相关联的深度图之前被编码。3D-HEVC不会限制其他非独立纹理视图及相关深度图的编码顺序。图2。3给出了3D-HEVC标准的一种可能的编码结构。在此结构中,总是先编码独立视点,然后是其他非独立视点。而且,非独立视点的当前编码帧(深度图或纹理图)总是使用每个先前编码帧在同一存取单元中的信息来消除视点间的冗余。论文网
3D-HEVC具体的扩展技术包括非独立视点编码技术、深度图编码、视点合成技术等,这些我们都将在后面逐一阐述。
2。2。2 非独立视点编码技术
多视点加深度图编码中的一个最重要的方面就是去除同一时间不同视点之间的实例变化的冗余。因为在大多数情况下,不同视点间内容是相当的,或仅由观看位置变化引起细微差别。编码非独立视点视图时,我们仍旧会采用独立视点编码的相关技术。但除此之外,一些新的技术将会出现在其编码框架中。这其中包括视差补偿预测、视间的运动参数预测以及视间残差预测。这些新的技术将在后面逐一阐述。另外,值得注意的是,视差补偿预测还支持相关视图的深度图编码,而视间运动参数预测和残差预测仅用于非独立视点编码。
a。 视差补偿预测
视差补偿预测(disparity-compensated prediction ,DCP)作为替代运动补偿预测( motion-compensated prediction ,MCP)的技术已被添加到3D-HEVC标中。在这里,MCP是指使用同一视图在不同的时间内的已编码区域作参考来进行帧间的预测,而DCP是指使用的其他视点在同一时间内的已编码区域作参考来进行帧间的预测。与MCP类似,DCP的步骤可以简单描述如下:先在参考帧中搜索最好的匹配块,然后最佳候选块被选择,并且生成运动视差矢量指向这个位置。另外,加入DCP模块后,HEVC中的编码树语法结构和解码处理仍保持不变。
b。 视间运动参数预测
由于是在同一个3D场景中稍有不同的位置拍摄,一个MVD序列的不同视图通常非常相似。因此,在不同视图、相同场景内的运动参数应该也是相似的。也是由于这个原因,现在陆续有很多文章【12】【13】是基于深度图的帧间预测中的运动参数而展开研究的。在3D-HEVC标准中,我们为非独立视图预测其运动参数而增加了一个方法【14】,并且预测是以同一时间实例中的已编码帧作为参考的。当前非独立视点的编码块运动预测如图2。4所示。 基于Kinect的深度图像编码(5):http://www.youerw.com/tongxin/lunwen_149336.html