3D-HEVC视频编码技术

3D-HEVC编码框架

3D-HEVC编码结构是对HEVC的扩展,每个视点纹理及深度图编码主要采用HEVC编码框架,但在其基础上增加了一些新的编码技术,使其更有利于深度图和多视点的编码。

图1 3D-HEVC编码结构

如上图所示,3D-HEVC编解码结构和MVC类似。图中所有输入的视频图像和深度图像是同一时刻,不同拍摄位置的场景,这些图像组成一个存取层。在同一个存取层中,首先对独立视点(基准视点)编码,接着是该视点的深度图,再编码其他视点视频图像和深度图。原理上来说,每个视点的图像,包括视频图像和深度图像,均可以利用HEVC编码框架进行编码,输入的所有比特流复合形成3D比特流。

对于独立视点,利用未修正的HEVC编码结构,由于该视点的编码是独立的,不依赖于其他视点,因此其对应的比特流可以单独提取出来形成2D比特流,从而恢复出2D视频。由此可见,3D-HEVC兼容了2D视频的编解码。而其他视点和深度图采用修正的HEVC编码结构。如图中红色箭头表明可以利用视点间相似信息来去除视点间冗余,提高编码性能。


非独立视点编码技术

3D-HEVC在编码非独立视点时,除了使用独立视点编码所用的所有工具外,还用到了HEVC关于3D扩展的编码技术,使其更有利于多视点的编码。比如利用已编码的独立视点的信息来预测当前编码视点的信息,从而降低视点间冗余,提高编码效率。其中涉及的扩展技术主要是视差补偿预测,视点间运动预测和视点间冗余预测。

视差补偿预测

视差补偿预测(DCP)是非独立视点编码中一个重要的编码技术,视差补偿和运动补偿具有相似概念,均可理解为帧间预测的一种方法,但两者的参考帧存在本质区别。运动补偿预测(MCP)的参考帧是不同时刻,同一视点的编码帧,而DCP参考的是同一时刻,不同视点的已编码帧。由于DCP和MCP类似,因此DCP被添加到MCP列表中,作为MCP的一种预测模式。在宏块级的语法和解码过程中均没有修改,仅对高级语法元素进行了改进,从而可以将同一存取层已编码的视点图像加入到参考列表中。

图2 视差补偿预测和运动补偿预测

如上图所示,引用图像索引(R值)来区别MCP和DCP,即当R=1时表示DCP,其余表示MCP。

视点间运动预测

多视点视频是在同一时刻同一场景下,多个camera从不同角度拍摄的视频,不同视点呈现的物体运动具有相似性。因此可以利用同一时刻已编码视点的运动信息来预测当前视点的运动信息。

关于视点间运动预测的一种方法是一帧图像的所有块均使用恒定的视差矢量。为了更有效确定当前块与参考视点中相应块之间的关系,还可以利用深度图信息更准确的预测当前视点和参考视点之间的关系。

图3 基于参考视点的运动参数推导当前编码视点的运动参数

如上图所示,假设当前图像的深度图已给出或能够估计出,则将当前编码块的最大深度值转化成视差矢量。对于当前块的中心位置X加上已得到的视差矢量,从而得到参考视点中的位置XR,若XR是利用运动补偿预测进行编码的,则相关的运动矢量可以用作当前视点编码块运动信息的参考。同理,利用当前块的最大深度值推导出的视差矢量可以用于DCP。

视点间冗余预测

同一存取层的已编码图像的运动信息和冗余信息可以用来提高非独立视点的编码性能。为了利用视点间的冗余信息,在编码块之间的语法元素中添加一个标志信息用来表示该预测块是否利用了视点间冗余预测。视点间冗余预测过程和视点间运动矢量预测过程类似:

1.首先根据图3中的最大深度转化为视差矢量。

2.然后根据视差矢量确定在参考视点中的位置,得到该位置的冗余信息。

3.最后将当前块的冗余和预测的冗余差进行编码。若冗余信息是基于分像素的,则应该对参考视点的冗余信息进行插值滤波。

图4 视差冗余预测结构

如上图所示,Dc表示当前视点(View1)编码块,Bc和Dr分别表示同一时刻(Tj)参考视点(View0)对应的块和不同时刻(Ti)同一视点(View1)中对应的块,且VD是Dc和Dr之间的运动信息。由于Bc和Dc分别是同一时刻下,不同视点同一个物体的投射,因此两个块的运动信息应该是相同的。所以Bc的时域预测块Br可以通过VD进行确定,反之Bc的冗余信息和运动信息VD也可以通过加权因子映射到Dc


深度图编码

一般而言,所有用于视频图像的编码技术均可用作深度图编码,但是HEVC的设计目的是视频序列编码最优,对深度图的编码并不是最优。而与视频序列相比,深度图的特征是具有大块相同区域以及尖锐的边缘信息。

3D-HEVC的深度图帧内编码在视频编码的基础上增加了四种模式,分为两类:用直线分割的楔形分割法(Wedegelets)和用任意形状分割的轮廓分割法(Contours)。深度图编码将一个深度块分割为两个非矩形区域,每个区域用一个常数表示。为了能够表示出分割信息,至少应该确定两个元素参数,分别用于表示属于哪个区域的参数以及该区域恒定的常数。

图5 楔形分割模式

如上图所示,楔形分割和轮廓分割的主要区别在于分割的方式不同。对于楔形分割,一个深度块的两个区域是通过一条直线分割的,分割的两个区域分别为P1和P2,分割线由起始位置S和终止位置E表示。从图5中可得,对于模拟信号(左图),可以采用线性函数来表示分割线。而中间图则描述了离散信号的分割,该块是一个uB*vB大小的采样矩阵,起始点S和结束点E对应于采样矩阵的边界值,用于表示分割线的位置。对于编码过程中的楔形分割,分割模式将被存储下来,其存储的信息包括uB*vB大小的一个矩阵,矩阵中的每个元素是一个二进制信息,表示当前块的采样值属于P1还是P2。右图表示为分割好的预测块,其中白色部分表示P1区域,黑色部分表示P2区域。

图6 轮廓分割模式

如上图所示,轮廓分割法的分割线不能像楔形分割法一样能够用一个几何函数表示出来。而P1和P2可以是任意形状的,甚至可以分成多个部分。同时在分割方式上,轮廓分割和楔形分割很大程度上是相似的。

除了分割信息需要传输,还要求传送第i个分割号的区域深度值,每个分割的区域深度值是一个固定的数,该值最好的选择应该是该区域原始深度值的均值。

因此根据分割模式和传输信息不同,深度图新增的帧内编码模式分为四种方法:

1.明确的楔形法:在编码端确定最佳匹配的分割,并且在比特流中传输分割信息,利用传输的分割信息,解码端可以重建该块的信号。

2.帧内预测楔形法:通过相邻已编码的帧内块预测当前块的楔形分割,传输一个修正值。

3.元素间楔形法:当前块的分割信息通过重建块的co-located块,即该块和当前编码块在同一图像中,推导得到。

4.元素间轮廓法:通过重建的co-located块推导得到两个任意形状的区域分割。

时间: 2024-08-08 11:37:15

3D-HEVC视频编码技术的相关文章

HEVC视频编码技术

HEVC视频编码框架 HEVC编码框架与H.26X标准的编码框架类似,均采用基于块的混合模型. 图1 HEVC编码框架 1.首先,视频编码器将输入视频图像划分为互不重叠的编码单元. 2.再进行预测编码,主要利用视频的空间相关性和时间相关性,分别采用帧内预测和帧间预测去除时空域冗余信息,从而得到预测图像块. 3.然后将预测图像块与原始图像块作差得到预测残差块,再对预测残差进行离散余弦变换(DCT)和量化,获得量化的DCT系数. 4.最后对量化后的DCT系数进行熵编码,得到压缩码流. HEVC融入了

视频编码技术---压缩感知编码---匹配跟踪算法

转自https://blog.csdn.net/rainbow0210/article/details/53386695 压缩感知近些年在学术界非常火热,在信号处理领域取得了很多非常不错的成果. 博主最近的项目涉及到K-SVD算法,所以也就顺带着学习其重要的组成部分--匹配跟踪算法. 本文只介绍最基本的匹配跟踪算法和正交匹配跟踪算法,即MP和OMP. 这个算法的优化和变形非常之多,近些年学术界很多人都在研究这个,有兴趣的读者可以自行查阅相关论文,本文不多做阐述. 废话少说,直接上干货. 所谓压缩

音视频编码基础知识

本文转载自 http://blog.csdn.net/ljzcom/article/details/7336258 ,如有需要,请移步查看. Technorati 标签: 音视频 编码 基础知识 --------------------------------分割线开始----------------------------------------------- 编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中

转 常见视频编码方式以及封装格式

常见视频编码方式以及封装格式 常见视频编码方式 所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式.视频流传输中最为重要的编解码标准有国际电联的H.261.H.263.H.264.H.265,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo.微软公司的WMV以及Apple公司的QuickTime等. AVI AVI 是 Audio Video I

视频编码与封装方式详解

http://blog.csdn.net/attilax/article/details/5807047 1.    编码方式和封装格式    1 2.    视频编码标准两大系统    2 MPEG-1. 2 MPEG-2. 3 MPEG-3. 3 MPEG-4. 3 ITU-T. 4 WMV.. 4 3.    常用视频编码方式有Xvid( 4 4.    常见存储封装格式    6 5.    几种常见的转换格式设置    7 6.    无损视频编码    9 1.   编码方式和封装格

视频编码

将摄像头录制的视频转换为mp4格式的代码: AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:path] options:nil]; NSArray *compatiblePresets = [AVAssetExportSession exportPresetsCompatibleWithAsset:avAsset]; if ([compatiblePresets containsObject:AVA

即时通讯——详解音视频同步技术

转自:http://tieba.baidu.com/p/2138076570 摘要:针对网络传输中由于延迟.抖动.网络传输条件变化等因素引起的音视频不同步的问题,设计并实现了一种适应不同网络条件的音视频同步方案.利用音视频编码技术AMR-WB和H.264具有在复杂网络环境中速率可选择的特性,结合RTP时间戳和RTCP反馈检测QOS,通过控制音视频编码方式,实现了动态网络环境下的音视频同步方案.重点介绍了可靠网络环境和动态网络环境下同步算法的设计过程,并通过实际测试验证了此方案的可行性.结果表明,

网易视频云技术之视频预处理技术

视频编码技术是网易视频云技术中重要的一环,这里提供大家学习,欢迎大家与网易视频云进行技术交流讨论. 一.    概述 视频编码包括分离.解码.编码.合成四部分,在分离与解码.合成部分可以认为是一种无损操作,而通常采用的编码如H264.MPEG-4等(无损压缩除外)是一种有损压缩. 为了提高视频编码后的质量,我们尝试在Encoder的数据输入之前增加一种预处理,用来弥补在编码过程中的亮度和色度的损失.从而提高视频的清晰度. 二.    预处理方法 通过改变视频的亮度.对比度.饱和度(色度)来进行锐

视频编码的基本原理

视频图像数据有极强的相关性,也就是说有大量的冗余信息.其中冗余信息可分为空域冗余信息和时域冗余信息.压缩技术就是将数据中的冗余信息去掉(去除数据之间的相关性),压缩技术包含帧内图像数据压缩技术.帧间图像数据压缩技术和熵编码压缩技术. 一.去时域冗余信息     使用帧间编码技术可去除时域冗余信息,它包括以下三部分: 1. 运动补偿     运动补偿是通过先前的局部图像来预测.补偿当前的局部图像,它是减少帧序列冗余信息的有效方法. 2. 运动表示     不同区域的图像需要使用不同的运动矢量来描述