用于编码3d视频信号的方法和系统、封装的3d视频信号、用于3d视频信号解码器的方法和系统的制作方法

文档序号:7938705阅读:357来源:国知局
专利名称:用于编码3d视频信号的方法和系统、封装的3d视频信号、用于3d视频信号解码器的方法和系统的制作方法
技术领域
本发明涉及视频编码和解码领域。它给出了 一种用于编码3D视频 信号的方法和系统。本发明还涉及一种用于解码3D视频信号的方法和 系统。本发明还涉及一种经过编码的3D视频信号。
背景技术
进来,人们对在3D图像显示器上提供3D图像产生了极大兴趣。 在成像方面,3D成像被认为是继彩色成像之后的下一个重大创新。我 们现在正处于为消费市场引入自动立体成像显示器的时候。
3D显示设备通常具有在其上显示图像的显示屏。
基本上,使用立体对(stereo pair),也就是定向到观看者的双眼的 两个稍微不同的图像,可以产生三维效果。
产生立体图像的方式有好几种。图像可以在2D显示器上时间复 用,但是这需要观看者佩戴具有例如LCD快门的眼镜。当同时显示立 体图像时,这时可以使用头戴显示器或者使用偏振眼镜(然后,图像 是用正交偏振光产生的)来将图像定向到恰当的眼睛。观察者佩戴的 眼镜将会有效地将视图传递到每一只眼睛。眼镜中的快门或偏振片与 帧速率同步,以便控制所述传递。为了防止闪烁,相对于二维等价图 像来说,帧速率必须翻倍或者分辨率必须减半。这种系统的缺点在于 必须佩戴眼镜来产生任何效果。这对于那些不熟悉眼镜佩戴的观察者 来说是不愉快的,而且对于已经佩戴眼镜的观察者来说是潜在的问题, 因为附加一对眼镜并不总是适合。
代替接近观看者的眼部,两个立体图像还可以在显示屏幕上借助 于视差格栅之类的分割屏幕来分割,其例如示于US5,969,850。这种设 备被称为自动立体成像显示器,因为其自身(自动)提供立体成像效 果而不使用眼镜。若干不同类型的立体成像设备是已知的。
无论使用什么类型的显示器,3D图像信息都必须被提供给显示设 备。这通常是以采用包含数字数据的视频信号的形式来完成的。
7由于数字成像中固有的巨量数据,数字图像的处理和/或传输构成 了很大的问题。在很多环境中,可获得的处理能力和/或传输容量不足 以处理和/或传送高质量的视频信号。更特别地,每个数字图像帧都是 由像素阵列形成的静止图像。
原始数字信息量通常是巨大的,需要大的处理能力和/或大的传输
速率,而这并不是总是可获得的。包括MPEG-2、 MPEG-4和H.263 的各种压缩方法已被提出来减小传输数据量。
这些压缩方法本来是为标准的2D图像建立的。
3D图像的生成通常是通过在显示器端将输入的经过编码的2D视 频信号转换成3D视频信号来完成的。就在显示视频序列之前,输入的 2D数据序列被转换成3D序列。经常在显示器端在2D图像的像素中 添加深度图(depth map),所述深度图提供关于图像内像素的深度的信 息并且由此提供3D信息。通过为图像使用深度图,可以构建提供3D 图像的左眼和右眼图像。例如,2D图像内对象的相对深度可以从焦距 (焦距内,焦距外)或者对象如何相互模糊中推导得出。
由于在显示器端生成的3D信息具有瑕疯,存在对生成改进3D信 息的需求。在获取端生成的3D信息可以提供改进的3D图像渲染,这 是因为
-有可能在获取端具有更强大的计算 -有可能实施离线处理 -有可能进行手动干预
如果3D信息是在获取端生成的,则有必要传送该信息,并且为了 在比特率方面具有低的额外开销,则需要压缩3D信息。优选地,3D 信息的压缩(或编码)是以一种可以使用现有压缩标准仅做相对较小 调整实施3D信息压缩的方式执行的。
3D信息经常是以具有深度图(z图)的图像的形式给出的。
越好的深度图使3D显示器能够产生越大的深度。但是,深度再现 程度的增大将会导致产生围绕深度不连续性的可见瑕疵。这些可见瑕 疯将会极大损害改进的深度图的正面效果。此外,传输能力是有限的, 并且编码效率是非常重要的。
由此,本发明的一个目的是提供一种用于在传输端编码3D图像数 据的方法,其中在保持编码数据内部的数据量处于界内的同时,围绕200880021844.7
说明书 进编码器、用于 解码3D视频信号的解码器以及3D视频信号。
发明概述
为此目的,根据本发明的编码方法的特征在于3D视频信号被编 码,经过编码的3D视频信号包括中心视图视频帧、用于中心视图视频 帧的深度图以及用于中心视图视频帧的遮挡数据帧,其中在用于中心 视图的深度图中的数据的控制下,为该遮挡数据帧数据产生一个用于 将遮挡数据帧中的功能性数据与非功能性数据区分开来的指示装置, 该遮挡数据帧随后被编码。
在实践中,这意味着在遮挡数据帧中存在着没有生成相关遮挡(即 非功能性)数据的区域。该方法包括"开关功能",其中该开关具有至 少两种设置,在一种设置中,数据被识别为非功能性的,也就是说, 数据不依赖于实际视频内容和/或是不相关的,在另一种设置中,数据 则被识别为功能性数据,也就是依赖于视频内容并且相关的数据。能 够将非功能性数据与功能性数据区分开来,这允许提高后续编码的编 码效率和/或减少所传送的比特数量。
在优选实施例中,遮挡数据帧是在深度图编码之后被编码的。原 则上,原始深度图可以被使用。但是,在解码器端将会使用逆向处理, 并且在解码器端,"原始"深度图将不再可用,可用的仅仅是经过编码 的版本。在编码器端使用原始而非经过编码/解码的深度图,这会导致 不确定性,因为在解码器端的处理并不是完全相同的。
在一个实施例中,在深度图中的数据的控制下,在遮挡数据帧中 生成固定值或固定范围内的值,作为区分非功能性数据的指示装置。
然后,这个固定值(例如纯黑或纯白)由解码器加以解释,即使 遮挡数据帧的像素可以具有一个值,即固定值或固定范围内的值,该 遮挡数据帧也不会被视为真实的遮挡数据,也就是说,它并不涉及相 关视频信息。这允许极大地减少比特和提高编码效率。如果选择固定 范围作为通常在图像中存在错误时生成的值(例如纯黑),那么将获得 附加的优点。优选地,具有固定值或固定范围内的任何功能性数据被替换成与固定值不同或固定值范围以外的值,由此排除用于功能性数 据的固定值或值范围。例如,这可以容易地通过剪辑输入遮挡数据来 执行。所述剪辑将提供'自由范围,的值(即经过剪辑的值),然后,这 其中的一个或所有值可以被用作非功能性数据的指示装置。
在这样的实施例中,,所述指示随后将会显性包含在遮挡数据帧内
的数据中,也就是说某些值代表非功能性数据。
优选地,固定值或固定值范围作为元数据引入到视频信号中。 该指示装置还可以是采用插入到数据流中的参数的形式,其中该
参数允许解码器将遮挡数据帧数据内的非功能性数据和功能性数据区
分开来。
本发明是以如下洞察为基础的
深度图是在获取端生成的,由于在获取端可以得到更多和更详细 的信息,因此能够产生更好的深度图。
与在接收端生成遮挡数据相比,提供用于中心视图帧的遮挡数据 帧,这使得能实现3D图像质量可感知的改进。
例如且优选地,通过在遮挡数据帧中使用固定值而将功能性数据 与非功能性数据区分开来的能力极大减少了所要传送的数据量并且提 高了编码效率。
深度图中的数据为将功能性和非功能性数据区分开来提供了很好 的基础。
本发明还可以在用于编码3D视频信号的编码器中实现,其中经过 编码的3D视频信号包括中心视图视频帧、用于中心视图视频帧的深度 图以及用于中心视图视频帧的遮挡数据帧,其中该编码器包括用于将 被编码的中心视频数据帧、用于中心视图数据帧的深度图以及遮挡数 据帧的输入,该编码器包括控制器,该控制器基于用于深度图的数据 来控制开关,所述开关为该遮挡数据帧数据生成非功能性数据或功能 性数据。
优选地,在控制中应用深度不连续性阈值,其中深度图中深度不 连续性小于阈值是一个确定因素。优选地,遮挡数椐在深度图编码之 后生成。这是因为遮挡数据是在深度不连续性充分高(高于某个阈值) 的情况下产生的,并且深度不连续性会因为压缩处理而在原始和编码 深度之间改变。因此,如果不是在解码深度图上确定遮挡数据,所使用的阈值可能低于实际定义的阈值。这将会导致产生超出严格需要的 遮挡数据,而这进而又导致更高的比特率。
当相邻像素的深度值相差很大数量的时候,出现深度不连续性。 一个对象有可能隐藏在另一个对象之后的状况可以通过深度值的跳变
来推导得出。突然变化是从前景到背景对象、或更一般是从一个对象 变化到另一个对象的图像变化的指示。平滑改变的值指示的是对象内 的变化。遮挡数据仅仅是在深度不连续性(也就是相邻像素之间的深 度值变化)大于阈值、也就是足够大的时候生成的。
遮挡数据是为"前景对象之后的"区域生成的,其中该区域即为与 深度值变化超过阈值的线或点相邻的区域。此类区域可以容易地通过 图像中超过阈值的深度不连续性来区分。优选地,该阈值是从深度图 中的数据计算得到的。这是在控制器中完成的。可替换地,所述阈值 可以被设定成固定值,但是优选是动态计算得到的,这是因为不同的 图像有可能具有不同的内容,所述内容会对最优阈值产生影响。优选
地,控制器具有用于插入在经过编码的3D图像数据中使用的阈值的输 出。然后,这个阈值可以在解码器中使用,由此在解码器中不再需要 确定所使用的阈值。
目前业已发现,更进一步的比特减少可以通过缩减遮挡数据帧数 据来获得。
遮挡数据填充前景对象周围的边缘。缩减遮挡数据帧中的数据已 显示只对质量产生有限的作用,同时还减少经过编码的3D信号内的比 特数量。
在优选实施例中,控制器具有用于经过编码的遮挡数据帧的比特 率的输入。
由此,控制器可以调整用于区分"功能性"和"非功能性"的参数, 并且由此调整遮挡数据帧中功能性与非功能性数据的比值。这提供了 手动干预的可能性。在实践中,这例如可以意味着阈值是依照比特率 调整的,使得如果比特率有变得过大而超过为遮挡数据帧分配的比特 率的危险,那么阈值将会提升从而使得具有功能性数据的帧区域减小。
在另一个实施例中,视频深度图和遮挡数据帧将被编码,其中遮 挡数据帧是在编码中使用 一个或多个中心视图帧作为参考帧来编码 的。200880021844.7
说明书第6/24页 对于优选实施例观察到,在为遮挡数据帧使用来自中心视图的参 考帧时,遮挡数据帧的编码效率显著提升。在一开始,这一点听上去 相当令人惊讶,因为遮挡数据包含那些在中心视图中无法看到并且由 此在中心视图帧中不可用的数据。但是,由于前景对象的运动,遮挡 数据与接近于中心视图中的前景对象的中心视图数据的相关性可能很 高。已经发现,通过将来自中心视图的参考帧用于编码遮挡数据帧, 显著提高了遮挡数据帧的编码效率。
遮挡数据的数量受视频深度图限制。在本发明的框架内,遮挡数 据帧的生成优选也被局限于最大视角范围。由此,遮挡数据量是受视 频深度图以及(在优选实施例中)最大视场或最大视角限制的。在这 样的实施例中,遮挡数据被局限于在给出深度图和向左及向右的最大 位移(即视角)的情况下看到的数据。因此,超过中心视图数据以及 用于中心视图数据的深度图所需数量的附加数据量是有限的,仅需要 有限的附加比特。优选地,解码器中的控制器具有用于最大视角范围 的输入。
在本发明中,遮挡数据是在视频数据收集端生成的。 应该注意的是,在接收机端生成一种类型的遮挡数据是已知的。 但是,当在接收机端基于中心视图和用于中心视图的深度图来执行该 处理时,由于基本上不知晓隐藏在中心图中的前景对象之后的内容, 因此,这时不能真实重建遮挡数据,也就是说,不能重建前景对象之 后的内容。因此,遮挡数据通常是通过"有根据的推测"类型的算法从 中心视图生成的。遗失的部分被猜测得到和填充。
此外还应该注意,全3D技术并不能或者至少不容易与当前的编码 技术相兼容。在本发明中,所有编码数据都只涉及一个视角和一个坐 标系统,由此使其更易于与现有技术兼容。
在视频信号处理中,信号是由帧内编码和帧间编码帧,例如I帧、 P帧和B帧构成的。I帧是帧内编码的。P和B帧净皮称为帧间编码帧。 帧内编码帧可以在不参考其它帧的情况下重建;帧间编码帧则是使用 其它帧(前向或反向预测)的数据重建的。
本发明是在用于编码的方法中实现的,但是同样是在具有用于执 行该方法的不同步骤的装置的相应编码器中实现的。这些装置可以在 硬件或者软件中提供,或者硬件和软件的任何组合或者共享软件中提
12供。
本发明还可以在所述编码方法产生的信号中实现,以及在用于解 码此类信号的任何解码方法和解码器中实现。
特别地,本发明还可以在用于对经过编码的视频信号进行解码的
方法中实现,其中3D视频信号被解码,该3D视频信号包括经过编码 的中心视图视频帧、用于中心视图视频帧的深度图以及用于中心视图 视频帧的遮挡数据帧,经过编码的视频信号包括用于区分非功能性遮 挡数据和功能性遮挡数据的指示,其中在解码中产生包含功能性遮挡 数据和中心视图数据的组合数据流。
本发明还可以在用于解码经过编码的视频信号的解码器中实现, 其中3D视频信号被解码,该3D视频信号包括经过编码的中心视图视 频帧、用于中心视图视频帧的深度图以及用于中心视图视频帧的遮挡 数据帧,经过编码的视频信号包括用于区分非功能性遮挡数据和功能 性遮挡数据的指示,其中该解码器包括用于产生组合数据流的组合器, 所述组合信号包括功能性遮挡数据和中心视图数据。
本发明的这些和其它方面将会借助示例并且参考附图而被更详细 地说明,其中
附图简述


图1示出的是自动立体成像显示设备的示例,
图2和3示出的是遮挡(occlusion)问题,
图4示出的是计算机生成场景的左视图和右视图,
图5在三个数据图中示出了图4的表示;中心视图、用于中心视
图的深度图以及用于中心视图的遮挡数据,
图6示出的是根据本发明的编码方案和编码器,
图7示出的是根据本发明的解码方案和解码器的实施例,
图8示出的是根据本发明的解码方案和解码器的另 一个实施例,
图9示出的是其中可以看见遮挡数据的块网格排列的中心视图数
据和遮挡数据放大,
图10示出的是编码/解码方案,
图11和12示出的是另外的编码/解码方案
图13示出的是在编码遮挡帧中使用中心视图帧作为参考帧的编码方法,
图14示出的是在编码用于遮挡帧的深度图中使用用于中心视图帧 的深度图作为参考帧的编码方法,
图15示出的是在解码遮挡帧中使用中心视图参考帧的解码步骤, 图16示出的是本发明的另外的实施例,
这些附图并不是按比例绘制的。通常,相同的元件在图中用相同 的参考数字表示。
优选实施例详述
图1示出的是一种自动立体成像显示设备的基本原理。该显示设 备包括用于形成两个立体图像5和6的透镜状屏幕分裂器3。两个立体 图像的垂直线(在空间上)交替地显示在例如具有背光1的空间光调 制器2 (例如LCD)上。背光连同空间光调制器一起形成像素阵列。 透镜状屏幕3的透镜结构会将立体图像指引到观看者的恰当的眼睛。
在图2和3中示出了遮挡问题。在这个图中,用"背景"指示的线 条是背景,并且用"前景"指示的线条代表位于背景前方的对象。"左" 和"右"代表这个场景的两个视图。例如,这两个视图可以是用于立体 结构的左和右视图,或者对于使用n视图显示器的情形,这两个视图 是最外部的视图。n视图显示器所需要的其余n-2个视图应该在显示器 端生成。用L+R表示的线条可以通过两个视图来观察,而L部分则只 能从左视图中观察并且R部分只能从右视图中观察。因此,R部分不 能从左视图观察,且类似地,L部分不能从右视图中观察。在图3中, "中心,,指示的是中心视图。从这个图中可以看出,可以从中心视图看
到图3所示背景的L和R部分中的一部分(分别是L1和Rl )。然而, L和R部分的一部分从中心视图看不到,因为该部分隐藏在前景对象 之后。用Oc指示的这些区域是为中心视图遮挡的区域,但是这些区域 是可以从其它视图中看到的。从图中可以看出,遮挡区域通常在前景 对象边缘出现。仅仅从中心视图和深度图生成3D数据会造成遮挡区域 的问题。隐藏在前景对象之后的图像部分的数据是未知的。
更好的深度图转而使3D显示器能够产生更大的深度。深度再现的 提升将会因为缺少遮挡数据而导致在深度不连续的位置周围出现可见 瑕疵。因此,本发明人认识到了高质量的深度图对于遮挡数据的需要。图4示出了计算机生成场景的左视图和右视图。移动电话漂浮在 具有黄色花砖地面和两面墙的虚拟房间中。在左视图中,农夫清楚可 见,而在右视图中则看不到他。右视图中的褐色奶牛的情况相反。
在图5中,我们具有与如上所述相同的场景。现在,根据本发明, 该场景是用三个数据图表示的,即具有用于中心视图的图像数据的图、 用于中心视图的深度图以及用于中心视图的遮挡图,其中遮挡数据由 视频深度图确定。功能性遮挡数据的范围由深度图确定。基本上,它 遵循中心视图中的深度阶梯线。在本示例中,包含在遮挡数据中的区 域是由沿着移动电话轮廓的条带形成的。该条带(其由此确定遮挡区 域的范围)可以采用各种方式来确定
-作为从最大视场和深度阶梯得出的宽度
-作为标准宽度 -作为所要设置的宽度
-作为与移动电话的轮廓(外部和/或内部)相邻的任何事物
深度图是密集图。在深度图中,亮的部分代表近的对象,并且深 度图越暗,则对象越远离观察者。
在图5所示本发明的示例中,功能性遮挡数据是具有一宽度的条 带,此条带对应于在将数据限制在给出了深度图以及相对于左边和右 边的最大位移的情况下看到的内容。其余遮挡数据不是功能性的。
大多数数字视频编码标准支持附加数据信道,该信道可以是视频 级的,或者是系统级的。如果这些信道可用,则可以直接传送遮挡数 据。
图6示出了根据本发明的编码方法和编码器的实施例。该编码器 接收三个数据流提供用于中心视图的数据的数据61、提供用于中心 视图的深度图的数据62以及提供遮挡数据的数据63。这其中的每一个 数据流都具有一个编码器,其中用于中心视图数据编码器的是编码器 CV,用于中心视图数据的深度图的是编码器CV(z),用于遮挡数据的 是编码器Occl,最后用于遮挡数据的可选深度图的是编码器Occl(z)。 遮挡数据帧可能是大的数椐集合。
该数据还可以包括用于遮挡数据的深度图,如图6最下面的部分 中示意性所示。
中心视图深度图数据被提供给控制器65,其中控制器65调整测定
15器或开关66。根据控制器65的输出,在功能性数据(也就是在编码方
非功能性数据之间I分遮挡数据帧中^数据,其中所述非功能性数: 在功能上是被丢弃的。在图5中,非功能性区域是灰色的。非功能性 数据在图6中用Occl-"0"来示意性示出。对其进行处理的最直接方式 是为非功能性区域的数据指定固定值(例如纯黑)。在编码器的全部其 余部分中和在解码器中,这些非功能性数据都然后被识别为是非功能 性的。在控制器内部,优选设置或计算阈值TH。优选地,该固定值或 固定范围内的值被保留用于非功能性数据,并且该固定值的或是该固 定值范围内的任何功能性数据被替换成该保留值之外或是保留范围以 外的值。
如果纯黑(Y值为零)指示非功能性数据,解码器将任何非功能 性数据辨认为非功能性数据,但是纯属偶然而也是纯黑的功能性区域 中的任何数据也将被视为"非功能性"数据,并且由此,在功能性区域 中会形成小的孔洞。通过为非功能性数据保留纯黑,将防止出现这种 负面效果。这可以容易地通过将输入遮挡数据(例如在亮度值0与255 之间延伸)剪辑到例如亮度值4来执行。输入遮挡数据中的所有纯黑 信号(或者Y值为O、 1、 2或3的任何信号)其黑色将轻微减少,也 就是说,此类像素的"纯黑,,值被替换成(在本示例中是借助于剪辑) 并非保留值或者保留值范围以外的其它值。然后"纯黑"将被保留用于 非功能性数据。在本示例中,也可以将范围Y=0、 1、 2或3保留用于 非功能性数据。根据本发明实施例的方法产生的结果3D视频信号相对 容易被识别,因为很多遮挡数据帧具有全为"纯黑"的相对较大区域, 而其余区域显示一系列值,并且其余区域中的像素没有一个是"纯黑"。
通过根据视频深度图来限制功能性遮挡区域,将附加数据的量保 持在界内。优选地,首先对深度图编码且随后对遮挡数据编码,其中 用于深度图的数据被用于在功能性与非功能性数据之间进行区分。当 相邻像素的深度值相差很大的数量时,出现深度不连续性。 一个对象 隐藏在另 一个对象之后的情况可以通过深度值跳变来推导得出。突然 改变是图像从前景到背景对象的变化的指示,或者更为一般的是图像 从一个对象到另一个对象的变化的指示。平滑变化值指示对象内的变 化。遮挡数据仅仅是在深度不连续性(即,相邻像素之间的深度值变化)大于阈值即足够高的时候产生。在一具体实施例中,最大编码误
差被确定(该最大编码误差为阈值TH设置下限,将阈值TH设置为低 于发生的编码误差是无用的),阈值TH将被计算。在控制TH时,将 阈值与像素之间的深度差值进行比较,这用减法方块67来示意性显示。 解码器深度图数据和相邻深度图数据(在图6中用偏移示意性显示) 被馈送到此方块。当相邻像素之间的深度阶梯大于阈值TH时,该阶 梯指示数据中的"真实边缘"。测量的深度阶梯或深度不连续性与计算 的阈值TH之间因此进行比较,并且成为控制中的确定因素。根据真 实边缘,可以确定前景对象的位置,并且由此确定功能性遮挡数据区 域的界限。控制器65相应地控制开关66。当遮挡数据帧的像素属于该 帧的非功能性部分时,该数据被辨认为非功能性的。
这具有的优点为,在遮挡编码器中仅仅为遮挡数据帧中为功能性 遮挡数据的部分生成和处理功能性遮挡数据。对于深度不连续性低于 下限阈值的通常很小的遮挡区域,此遮挡区域的填充可以通过例如展 宽(stretching)的其它技术来解决。
优选地,遮挡区域是由最小深度不连续性以及在显示器端生成的 最大视场或最大视角确定的。在图6中,这是用措词"最大视角"与方 框"控制"之间的线条指示。后面的约束确定遮挡图中的遮挡区域的带 宽,也就是需要在前景图像之后多远的位置才能看到。除了最大视角, 带宽也可以取决于实际深度值,这正是从解码器到控制的线条存在的 原因。
图6还示出下列内容控制器具有作为输入的编码/解码深度图数 据。可以使用原始数据,即,用原始数据来直接馈送控制和其它部分。 但在解码器端,原始数据将不再可用,可用的仅仅是经过编码且通常 是经过高度压缩的数据。这些数据被解码,由此在解码端必须使用经 过编码的信号。例如,如果深度不连续性足够高(高于某个阈值)并 且深度不连续性因为压缩而在原始与经过编码的深度图之间改变,则 功能性遮挡数据被生成。因此,如果在经过解码的深度图上没有确定 遮挡数据,所使用的阈值应该低于实际定义的阈值,以免遗漏功能性 数据。这可能导致产生比严格需要的遮挡数据更多的遮挡数据,而这 进而又会导致更高的比特率。
遮挡数椐帧中不包含有用遮挡数据的区域(图5的灰色区域)被辨认为非功能性的,并且它们同样不会在解码处理中发挥作用。如上 所述, 一种用于达成这一点的简单方式是为此类像素指定固定值,例 如纯黑或纯白。对于非功能性遮挡数据,在这里可以应用极端的压缩 措施和方法,这样做允许极大减少经过编码的遮挡帧信号中以及传输
中的比特数量,并且允许提高编码和解码效率而不降低最终图像质量; 对于功能性遮挡数据来说,由于可能的信息损失有可能导致图像质量 损失,上述措施和方法是不合理的。对于被辨认成是非功能性的数据, 可以应用提供最小比特数量的任何形式的(可变长度)编码。由于最 大深度从深度图已知,并且最大视角已知,可以计算最大遮挡区域。 在其它优选实施例中,其中可以采取措施来提高编码效率。例如,其 它优选实施例是通过编码器occl与控制之间的线条给出的。经过编码 的遮挡帧的比特率的输入可以用于控制开关66。如果比特率有超过设 定值的危险,则可以更严格地控制开关66,其中举例来说,这意味着 提高阈值TH,和/或减小最大视场。当然,这会引起功能性区域的大 小的减小以及遮挡帧中的非功能性数据百分比的增大。这会对显示器 上的图像产生负面效果;但是,正面结果是将经过编码的遮挡帧的比 特率保持在界限内。总之,净结果是正面的。如果遮挡深度帧可用, 在控制器65中也可以使用此遮挡深度帧的信息来"精细调谐"发现图像 中的边缘。 一种可替换方案可以是,在那些没有自动缩减(downscaling) 遮挡数据的实施例中,如果比特率有超出设定值的危险,触发缩减。
另 一个实施例包括在控制器中附加输入中心视图数据。当围绕中 心视图中的边缘时,中心视像将会非常平滑,也就是显示很少细 节,尤其是前景图像周围存在平滑背景(例如没有紋理的简单颜色) 时,展宽很有可能给出很好的结果。展宽是一种在解码器端执行的操 作,并且该操作不需要发送比特。在这种情况下,不是断言遮挡数据 是功能性的,该遮挡数据(尽管阶梯高度可能足够高)可以被指定为 非功能性的。这样做将会节约比特,同时负面效果很有可能最小。
在编码方法中使用的所有参数数据,例如阈值TH、用于非功能性 数据的固定值(或固定范围)、偏移t1和t2,以及诸如最大视角和控 制中使用的编码遮挡数据比特率的参数,可以作为元数据与编码数据 流一起发送。然后,在解码器端以相似的方式来使用这些参数。
图6还示出了另一个优选实施例编码器包括用于编码中心视图帧的编码器(编码器cv)和用于对经过编码的中心视图帧进行解码的 解码器(解码器CV),用于编码遮挡数据帧的编码器(编码器occl) 以及在用于编码遮挡数据帧的编码器用于插入已解码中心视图帧作为 参考帧的输入。这用从解码器CV到编码器occl的线条示意性显示。 优选地,在这里不仅使用来自相同时间的中心视图帧作为参考帧,而 且还使用时间(或帧)偏移,即, 一个或多个先前或未来的中心视图 帧在编码器中被作为用于遮挡数据帧的参考帧。观察到,在为遮挡数 据使用来自中心视图的参考帧时,遮挡数据的编码效率显著提升。在 一开始,这听上去相当令人惊讶,因为遮挡数据包含那些在当前时间 点在中心视图中看不到并且由此在中心视图帧中不可用的数据。但是, 遮挡数据与接近前景对象的背景数据的相关性很高。已经发现,将来 自中心视图的参考帧用于编码遮挡数据帧,显著提高遮挡数据的编码 效率。这在部分67中示意性示出了。
在指示遮挡帧深度图的数据的线条中,从控制到开关66,的线条表 明,如果某些遮挡数据自身被辨认成是非功能性的,那么相同的操作 可以应用到用于遮挡帧的相应深度数据。这将允许减少遮挡数据深度 图中的比特。原则上,可以仅仅使用开关66,,但是与在遮挡帧深度图 中相比,在遮挡帧中可以获得最重要的比特减少。可以使用遮挡数据 帧的深度图中的数据作为 一种用于在遮挡数据帧自身内辨别非功能性 区域的手段。举例来说,这允许通过遮挡数据帧的深度图的内容来识 别遮挡数据帧中的非功能性区域。然后,这些非功能性区域在值方面 将不再受到限制,并且由此可以用于存储其它信息。应该指出的是,"非 功能性"意味着不包含与像素值相关的值。然后,用于指示遮挡数据帧 中的非功能性区域的指示装置将包含在用于遮挡数据帧的已编码深度 图中。
图7示出了根据本发明的解码方法和解码器。该解码器中与编码 器的某些部分大致对应的部分使用比图6中的数字大10的数字指示。
图7和8的最右边部分示出了屏幕Sc上的不同视图。中心视图是 直接在屏幕上的视图;其它视图是通过改变视角来产生的,示意性且 通过示例地用范围为+2到-2的视角指数指示的。
在这里,中心深度不连续性(discontinuity )控制扭曲方块(主要 执行像素偏移)。扭曲量也取决于期望的视点位置N,其中每个视点位
19孔洞"。
当遮挡深度数据可用时,解码遮挡经由开关s使用遮挡深度不连
续性也被扭曲,开关S现在处于位置a。
现在当经过扭曲的遮挡信息可用时,这意味该信息不等于"0"(它 也可以定义为小的间隔),可以使用该遮挡信息来填充中心视图中的 "孔洞,,(开关76处于位置a)。否则,该孔洞通过从"孔洞"边缘复制, 例如通过展宽来填充(开关76处于位置b )。
"0"范围由编码器ENC传送并由解码器DEC接收,因此它的值是 已知的,并且它可以正确控制开关76。
当没有遮挡深度信息可用时,开关S通常位于位置c,这意味着改 为使用中心深度。当中心视图不连续性产生跳变(大于阈值TH)时, 深度不连续性会重复,如位于b位置的开关S所指示的。
阈值TH也由编码器ENC在完整的流中总作为元数据来传送(也 参见图6)并且还控制开关76,以便在那里获取数据来填充扭曲的中 心图像中的"孔洞"。当中心深度不连续性小于TH时,开关76位于位 置b。信号78是包含功能性遮挡数据和中心视图数据这二者的组合信 号,其中开关76的位置确定所述组合。
图8示出了根据本发明的编码方法和解码器的另 一 实施例。
中心视图在用于中心视图的解码器DEC CV中被解码。经过解码 的CV将提供中心视像,以在不同角度生成图像,而在warp2执 行扭曲处理(畸变操作)。这会给出具有"孔洞"的图像。中心视图中的 对象遮蔽背景的某些部分,这些部分现在本应是"可见的"。但是,用 于中心视像的数据不包括用于这些"孔洞"部分的数据。这些孔洞 必须在孔洞填充操作中被填充。在常规方法中,这是通过例如展宽来 完成的,也就是说,"孔洞"周围的像素值用于有根据地猜测孔洞中的 像素的内容。但是,这并没有真实描绘前景图像之后的内容,而是仅 仅做出了一个猜测。在本发明中,经过编码的遮挡数据帧被使用。在 位置88,产生组合数据流。该组合数据流一方面包含了功能性遮挡数 据,并且还包含来自中心视图的数据。这些开关具有传递功能性遮挡 数据的第一位置(用于功能性遮挡数据,在图中是用occl大'0"示意性 指示的)。开关86提供的功能与图7中的开关76相同。如果将数据辨 认成是非功能性的,那么开关86被放在传递中心视图数据的位置。其结果是包含中心视图数据以及从遮挡数据帧中得出的部分的组合数据
流88,其中所述部分包含功能性遮挡数据。由此,开关76和86是由 功能性与非功能性数据之间的差别以及可能另外的参数触发,产生组
合信号78、 88的组合器,其中该组合信号包含功能性遮挡数据与中心 视图数据的组合。此组合信号将被用于填充孔洞。
此信号88现在由warp 1来"扭曲"。如果遮挡深度流可用,从经 过解码的遮挡深度流中获取由warp 1使用的深度信息。否则,由warp l使用的深度信息从中心视图深度信号中导出。对于非"孔洞"位置,经 过解码的中心视图深度信号经由开关sw3和开关sw2传递到扭曲器 warp 1。
在"孔洞"位置,开关sw3处于"孔洞"位置,并且cv深度信号被重 复(或者可替换地使用经过编码的cv深度信号),直至下一个非"孔洞" 位置。
对于解码器, 一个选择是只是重复该"孔洞"之前的最后一个已知 深度值,但是,由于这个位置通常很接近较大的深度跳变,因此它可 以包含某些编码人工产物(artifact),而这将会为"孔洞,,产生不精确的深 度值。编码器可以在此类位置例如通过测量所要重复的值的深度误差 来检测这种状况,并且通过以较高精度(例如通过降低Qsc值)对其 进行编码来减少误差。另一方面,解码器也可以不是通过只是重复最 后的深度值,而是通过例如重复来自就在"孔洞"外部的很小的 一 系列 深度值的中间或平均值来采取措施。
在warpl中,畸变被应用于混合数据流。这个扭曲的混合图像在 孔洞填充操作中被用来同步来自不同角度的不同视图。由于复合数据 流包含来自遮挡数据帧的功能性数据,因此可以精确得多地填充孔洞, 产生改进的图像质量。应该指出,经过扭曲的中心视像内的某些 "孔洞"仍是通过展宽来填充的。例如在一些实施例中,对于低于阈值 的小的阶梯高度,遮挡数据是非功能性的,由此复合数据流包含中心 视图数据,因为开关设置为让中心数据通过。应该注意的是,为了清 楚起见,在述及的关于开关的描述的场合中,开关可以由任何硬件、 軟件或是用于执行所述功能的计算机代码组成。其优点在于, 一方面, 对于此类状况,孔洞填充是非常良好和有效的过程,而另一方面,通 过限制功能性遮挡数据,允许以极端措施压缩非功能性遮挡数据,编码效率可以提高。图7与8的实施例之间的主要差别在于在图7中, 扭曲是在产生组合信号之前执行的,而在图8中,组合信号88是在扭 曲之前产生的。此外,在图8中还产生组合深度信号88z。
优选地,遮挡数据被网格块对准。这将能够实现改进的编码效率。 图9示出了中心视图数据和遮挡数据的放大视图,其中遮挡数据的网 格块对准是可见的。
优选地,遮挡数据使用已知技术来编码。
在本发明中,遮挡数据可以使用来自中心视图的参考帧来编码。 在本发明的框架内部已经发现,遮挡数据的空间和时间相关性要远远 小于例如中心视图中的相关性。观察到,当使用来自中心视图的参考 帧时,遮挡数据的编码效率显著提高。在一开始,这可能听起来是很 令人惊讶的,因为在中心视图中遮挡数据是不可用的。但是,遮挡数 据与接近前景对象但却在时间上偏移的背景数椐的相关性很高。因此, 使用与中心视图可能在时间上偏移的参考帧来编码遮挡数据将提高遮 挡数据的编码效率。
在图9中描述了移动场景的放大部分。可以清楚看到,遮挡数据 与中心视图中的背景数据的相关性很高。通过利用中心视图数据与遮 挡数据之间的这种空间相关性,可以显著降低比特率。在MPEG标准 主体的内部,举例来说,H.264 MVC (多视图编码)具有一些使得能 够在各视图使用参考帧的,具有良好性能的基本原理。MVC的方法是 基于使用广义B帧的工具,利用了由多个相机获取的视图之间的相关 性。这些工具可以被应用于使用来自中心视图的参考帧来编码遮挡数 据的目的。
在另 一个实施例中,我们可以具有包含中心视图的 一个或多个视 图以及包含遮挡数据的第二视图,并且使用具有广义B帧的H.264 MVC来编码这个流。这意味着我们不必设计新的编码标准,在这种情 况下,MVC标准是以应在该标准中标记的不同方式械J吏用。
图10示意性示出了 MVC编码方案,如图10的部分A所示,在 时间T0、 Tl等,传送不同的^L图sl、 s2等。图10的部分B示意性示 出了如何在编码中心视图帧(CV)和遮挡数据帧(Ocd)中使用相似 的方案。
但是,在一个编码器和/或MVC中使用广义B帧具有三个重要限
22制帧速率和分辨率必须匹配,以及使用现有标准/珪。
某些更复杂的视频压缩标准例如AVC压缩标准具有很多多种预测 的可能性。将会做出数量相对较多的时间的(即前向或反向)预测。 不但考虑将时间上最接近的帧用于产生预测,而且还考虑在时间上更 远的帧。在緩存器中,若干个帧存储于存储器内,以便用于时间预测。 该原理应用在本发明实施例的第 一方面的框架内。
图11示意性示出了多个参考。箭头指示帧之间的参考关系,箭头 数量是所使用的帧的数量。时间T0、 Tl等代表显示顺序。在该图中我 们看到,例如在用于时间T4时的帧P的编码中(以及类似地在解码中), T0时的帧I、 T2时的帧P以及更早的帧被用作参考帧。这是用指到 T4时的帧P的箭头来指示的。T4时的帧P自身是用于T3时的帧B(反 向)以及T6时的帧P(前向)的参考帧。在图11中,I和P指内部(Intra) 和预测编码帧,而B指双向预测帧。箭头指示预测。在图ll描述的情 形中,例如在时间点T5,来自时间点T2、 T4、 T6和T8的帧的预测 被使用。
图12提供的是本发明优选实施例的示意性图示。
我们看到,存在两种类型的帧,即中心视图帧和遮挡数据帧。与 图11中相同,中心帧将被用作中心帧的参考帧,同样,遮挡数据帧被 用作用于前向和反向预测遮挡数据帧的参考帧。
应该注意,在每个时间T0、 Tl等,在相同位置以及静噪情况下, 遮挡数据帧与中心视图帧之间的相关性是有限的,因为遮挡数据帧包 含那些不在中心视图中的数据。但是已经发现,如果使用中心视图帧 作为用于遮挡数据帧的参考帧,则提供编码效率的可感知的提升,这 在图12中是用从中心视图帧(上方方块)到遮挡数据帧(下方方块) 的箭头指示的。在图12中,I指的是帧内编码,P帧指的是预测帧,B 指的是双向预测帧。索引涉及帧所在的层。图像则只能从更低的层来 预测。因此,时间点T0的遮挡数据只能从中心视图中的图像来预测, 而时间点T2的遮挡数据可以使用中心视图的所有图像加上T0和T8 的遮挡数据。将使用的参考帧的数量可以是规定的。这个限制是从实 施观点而不从概念观点引入的。
因此,通过将中心视图参考帧用于编码遮挡数据来获取更高编码 效率是本发明这个实施例的基本原理。在图6中已经通过解码器CV与编码器occl之间的线条指示了这 一点。
在本发明的框架以内,在用于预测遮挡的编码过程中存储的帧可 以包括先前或后续中心视图帧以外的先前遮挡帧。使用中心视图帧并 没有排除也使用遮挡数据的可能性。
但是,在一个编码器和/或MVC中使用广义B帧具有三个重要限 制帧速率和分辨率必须匹配,以及使用现有标准/硅。
图13示出了如何可以将这些原理应用于中心视像和遮挡数据 图像的联合编码的图示,这与图6中用方块67示意性指示的优选实施 例相对应。遮挡数据图像现在可以用减小的空间(乃至时间)分辨率 来压缩,以便能够以很低的开销设置来工作。对于空间分辨率降低的 情形,则可以确定并且使用经过编码的遮挡数据比特流来传送最优的 上过滤器系数。对于时间分辨率(帧速率)降低的情形,已知的时间 上变换技术(类似于自然运动)可以用于3D渲染处理。
在该图的底部描述用于编码中心视图数据的可能方案。
图13中使用的缩略语代表
DCT:离散余弦变换
Q:量化
DCT—1:离散余弦逆变换
逆量化 VLC:可变长度编码 ME/MC:运动估计/运动补偿 R0、 Rl等编码中使用的存储器中的帧 PTSi:呈现时间戳i
这个方案的实施归结为在定义明确的时间点改变存储器指针。当 然,所使用的来自中心视图数据层的帧的数量可以是任何数量,但是 实际上似乎是存在某些限制的(存储器限制,例如MVC实施例的情形 也是如此)。
良好的选择看上去为当前帧(PTSi)和帧值偏移(例如a^5),由 此为帧PTSi-a,即先前的中心视图帧。甚至可以考虑依靠未来的帧例 如PTSi+a,也就是使用未来的中心视图帧用于预测遮挡帧的内容。在 这里有可能存在更大偏移,例如3=-5、 -2、 0、 2、 5。此外,偏移中心视图帧的加权也可以显示一种变化。偏移数字对应于图6中的偏移t2。 偏移T2是示出了时间偏移的偏移,而时间戳偏移则是帧(由此也是时 间)偏移。在图6中示意性显示了单个偏移t:2。将会清楚,可以使用 多于一个的偏移T2 (有可能使用一个以上的先前或未来中心视图帧作 为参考帧)。在本发明的概念以内,参考帧可以包括中心视图帧以及先 前的遮挡数据帧。基于先前视频内容,例如取决于前景对象相对于背 景的移动及其方向,可以确定偏移数字a,并且有可能确定相应的被参 考中心视图帧的加权,其中当在水平方向确定快速运动时,偏移数字 较小,当确定在这个方向上的緩慢运动并且使用了若干个先前帧时, 偏移数字较大,其中所述加权随着帧变旧而减小的。
在计算移位或偏移和/或加权的实施例中,此类信息优选地例如作 为元数据被并入视频信号。这将消除对于解码器端相应计算步骤的需 要。
基于图像中的原始数据,可以计算移位或偏移数字,并且有可能 计算加权,但是该计算优选是在经过编码/解码的帧上进行的。在解码 器端,原始信号不再可用。此外,如图所示,编码/解码帧形成参考帧, 因此,在计算中使用的任何参数优选都涉及这些帧。
根据所确定的运动及其方向,遮挡帧可以形成参考帧,它在图13 中是用从编码遮挡帧线到存储器R-,、 R,2的线条示意性指示的。
图13显示了在编码之前缩减(也参见图6)遮挡数据的优选实施 例。在编码之后,结果数据必须再次扩大。为此目的,用于最佳扩大 处理的上过滤系数将被计算,例如通过将经过缩减并且随后扩大的帧 与原始帧相比较,以便尽可能减小缩减/扩大人工产物。这些系数将会 作为元数据并入到数据比特流中。这样做允许在解码器端执行相同的 处理。
在本实施例中,遮挡数据编码中使用的参考帧是中心视图帧以及 遮挡数据帧。
相同的原理也可以应用于编码用于遮挡帧的深度图。用于中心视 图数据的深度图可以在编码用于遮挡帧的深度图中作为参考帧使用。 作为例示,在图14中显示了用于此类编码的方案。同样,使用用于遮 挡数据帧的非功能性数据的原理可以用于遮挡帧的深度图,这一 点也 可以参见图6。应该注意的是,使用中心视图帧作为用于编码遮挡帧(无论是否 包含实际图像数据还是深度数据)的参考帧的原理可以在与区分遮挡 帧(或者用于遮挡帧的深度图)中的功能性和非功能性数据的原理无 关的情况下应用。但是,在与区分非功能性数据的原理结合时,上述 原理是特别有利的。
将一个编码器与广义B编码处理结合使用,其中中心视图和遮挡 数据帧是作为交织的图像序列编码的,虽然提供有用的实施例,但是 具有无法向后兼容现有的2D编码方案的缺陷。
遮挡和中心视图数据是可以交织的。常规解码器不能处理此类流。
所有帧都要解码和显示,而这将会给出恶劣的图像。使用MVC工具对 此是有帮助的。
图15示出了在解码遮挡帧中使用中心视图参考帧的解码步骤。 这些步骤基本上是图13所示的编码方法的逆过程。IQ代表逆量 化,在图13中则将其表示为Q-1, IDCT代表逆DCT ( DCT1 )。对于
图14的用于编码深度数据的编码方案,可以使用类似的解码方案。
如上文例示的那样,本发明涉及一种编码方法和系统以及一种解 码方法和系统。
本发明还可以在包含编码视频信号以及控制信息的视频信号中实 现,该控制信息例如包括用于在解码方法中使用的功能参数。控制信 息可以包括依照如上所述的任何一个实施例或是其任何组合的数据。
在根据本发明的视频信号中封装的控制信息可以包括一个或多个 下列信息
A. —般信息,也就是适用于整个视频信号
1. 该方法用于编码视频信号。如果在以后仅仅使用一种标准方法, 那么这是有用的
2. 该方法的特定实施例用于编码视频信号,或是实施例内部例如 阈值TH的参数。
3. 在该方法中使用的参数,举例来说,所述参数可以是
- 所使用的时间戳
- 在整个视频信号编码过程中使用的参数,例如用于过滤器、 扩大或缩减算法、或者用于确定使用哪种预测的算法的参数。
B. 特定的动态信息如果视频信号是动态生成的,也就是说,在编码过程中作出的某 些选择取决于视频内容,那么在编码器中做出的选择可以被包含在编 码视频信号中。例如,如果编码方法包括一种用于确定使用哪一个时
间戳的算法(例如a或t2的值),那么可以选择将所述选择算法的细 节包含在视频信号中(由此将一般信息包含在视频信号中)。但是,这 仅仅在解码器包含所述算法时发挥作用。如果解码器不包含该算法, 则可以发送特定的动态信息,也就是规定(例如通过一个标记)对于 视频信号的特定部分使用特定的时间戳值。
视频信号可以包括一般信息以及动态信息。所有上述类型的信息
框架内都被称为参数。
本发明也可以在用于根据本发明的方法或设备的计算机程序产品 中实现。对计算机程序产品来说,应该理解的是,在经过一系列加栽 步骤(这其中可以包括中间的转换步骤,例如变换到中间语言以及最 终的处理器语言)之后,任何以物理方式实现的命令集合都能使通用 或专用处理器获取命令进入该处理器,以便执行本发明的任何特有功 能。特别地,计算机程序产品可以作为磁盘或磁带之类的载体上的数 据、存储器中存在的数据、经由有线或无线网络连接传播的数据、或 是纸件上的程序代码来实现。除了程序代码之外,程序所需要的特有 数据也可以作为计算机程序产品来实现。
简言之,本发明可以描述如下
在一种用于3D视频信号的编码方法和编码器中,中心视图帧、用 于中心视图帧的深度图以及遮挡数据帧将被编码。基于用于中心视图 帧的深度图,在遮挡数据帧的功能性与非功能性数据之间加以区分。 这允许极大减少编码遮挡数据帧所需要的比特。在解码器中,组合数 据流是由编码遮挡数据帧中的功能性数据以及中心视图帧构成的。优 选地,在编码遮挡数据帧的过程中,中心视图帧是作为参考帧使用的。
应该指出的是,上述实施例是例证而不是限制本发明。并且本领 域技术人员能在不脱离所附权利要求范围的情况下设计出很多可替换 的实施例。
例如,图16示出了本发明的另一个实施例。
图16显示了作为中心视图像素位置x的函数的典型不一致分布D。
27所述不一致分布主要显示中心视图中处于不同位置的多个对象,这些
位置在深度上是以阶梯AL(1)、 AL(2)、 AR(1)、 A,分离的,其中L代表 与左眼视图相关的不一致性,也就是左边的视角,而R代表与右眼视 图相关的不一致性。如果使用这个不一致分布来渲染新的视图,那么 在新视图中将会因为不一致性阶梯而出现孔洞。如果为左眼渲染新视 图,则阶梯&(1)和Aj"将会导致出现孔洞(hLl&hL2)。如果为右眼 渲染新视图,则阶梯ArW和A^"将会导致出现孔洞(hRl&hR2)。对 左眼视图来说,超出指定阈值的AL表明孔洞将会使用来自遮挡帧的相 应数据来填充。但是,这只有在发现相应"功能性数据"(示例1至4 中的区域Ln L2、 R!、 R2)的情况下才进行。在本示例中,例如由于 功能性数据的亮度值高于阈值,而低于所述阈值的亮度数据(例如亮 度值3)则是非功能性数据,因此,功能性数据的这些区域是可以与具 有非功能性数据的区域区分开的。如果在相应孔洞位置存在"非功能 性"数据,那么必须使用来自中心视图紋理的数据来填充该孔洞,例如 使用紋理重复来填充。如果在没有"非功能性"数据的情况下遭遇到两 个连续阶梯Al(")和AL(k+1),那么该"功能性数据"因为Al 而属于孔洞 并且它们因为AL(k+1)(示例2)而不能用于填充孔洞。相同的情况对于 ArW和A,+"来说也成立。在遮挡数据帧中,如果在两个连续阶梯AL(k) 和AR^之间没有遭遇到"非功能性",那么由于Al 和Ar⑨而使用相同 的"功能性数据,,来填充孔洞,以便分别创建左眼和右眼视图(示例3 )。 在这里既可以为特定孔洞给出"功能性数据",也可以不给出(示例4)。 如果在编码器上可以得到所有"3D"数据(例如在已经用"蓝屏"技 术创建了中心视图并且所有中间层仍旧可用时),在将该数据组合到遮 挡帧之前,编码器必须选择出哪些部分比其它部分更为重要,由此也 将遮挡帧数据的比特率考虑在内。示例1至4显示了编码器可以做出 的某些不同选择。通过在这些部分(L1、 L2、 ..., Rl、 R2、...)之间 插入非功能性间隙(occl='0,),在解码器端可以将其相互分离并对其 进行正确解释(使得它们在渲染过程中出现在正确的孔洞中)。当因为 编码器做出的选择而使所述孔洞填充数据不可用时,由于(occl='0,) 或者其为错误类型(例如对右视图渲染来说,Lx部分永远都不能用于 孔洞填充),孔洞应该用来自中心视图的数据填充,例如通过重复数据 来填充。如先前所述以及示例3所示,如果在Li与Rj之间没有遇到
28非功能性数据,那么在为L和R眼部方向执行渲染处理的过程中可以^使用该部分来填充相应孔洞。
在用于遮挡数据帧的候选部分中,紋理丰富的量可以是供编码器确定哪些部分优先于其它部分的判据(示例2,其中很明显,L1比L2重要,L2被省略)。
在此类实施例中,多个遮挡部分组合到一个遮挡数据帧中,并且指示装置(间隙)被生成用于将不同的遮挡部分相互区分。
在本实施例中,其中使用从功能性(occW0")到非功能性(occl="0,,)的变换出现率,也就是用于至少一个像素的遮挡信号间隙的插入与否,作为用于区分遮挡数据帧内部的不同的遮挡部分的指示符。如上所述,在实施例中,用于非功能性数据的可以是保留值或是保留范围内的值。如果使用的是保留范围,例如0、 1、 2和3,则可以使用实际值来向解码器传递关于相邻功能性区域的信息,例如它是右边还是左边的区域,其中举例来说,值0表明后续的功能性区域是左边的区域,值1表明后续的区域是右边的区域。由于解码器知道不同遮挡部分的特性,因此可以在解码器中设置该信息以便良好的使用。
如上文中结合图6所述,"非功能性"意味着数据不能用于像素值。由此,该数据不被视为像素数据。但是,"非功能性"数据可以包括其它信息,而这仅仅是一个简单的示例。简言之,如果使用数值范围,那么有可能借助"非功能性"数据来向解码器传达除像素值之外的其它信息。如果可以借助其值之外的手段来区分非功能性数据,例如借助深度图的内容(参见关于图6的描述),则可以在遮挡数据帧的非功能性区域存储数量相对较大量的信息。当然,这样做将会增大遮挡数据帧所需要的比特数量,但是如果此类信息是有价值的并且以其它方式是不能有效传送的,那么这也会提高编码效率。
在解码器端,用于对编码信号解码的解码器接收视频信号,其中多个遮挡部分将会组合到一个遮挡数据帧中,并且存在用于将不同的遮挡部分相互区分的指示符(所插入的间隙和/或间隙内部的实际值),而且解码器具有用于识别该指示符的装置,也就是说,它使用编码器中使用来插入指示符的算法的逆算法。
在权利要求中,括弧之间的任何参考符号都不应该被解释成是限制该权利要求。单词"包括"并未排除权利要求所列举的部件或步骤之外的其它部件或步骤的存在。本发明可以借助如上所述的各种不同优选实施例中的特征的任何組合来实现。
权利要求
1.一种用于编码3D视频信号的方法,其中3D视频信号被编码,该3D视频信号包括中心视图视频帧(61)、用于中心视图视频帧的深度图(62)以及用于中心视图视频帧的遮挡数据帧(63),其中在用于中心视图的深度图中的数据的控制下,在编码该遮挡数据帧(63)之前,为遮挡数据帧数据产生指示装置,用于将该遮挡数据帧中的功能性数据与非功能性数据区分开来。
2. 如权利要求1所述的编码方法,其中,该遮挡数据帧(63)在 编码深度数据(63)之后被编码。
3. 如权利要求1所述的编码方法,其中,遮挡深度图也被编码。
4. 如权利要求3所述的编码方法,其中,遮挡深度帧数据被用于 生成指示装置,用于将该遮挡数据帧中的功能性数据与非功能性数据 区分开来。
5. 如权利要求1或2所述的编码方法,其中,在该深度图中的数 据的控制下,在该遮挡数据帧中生成固定值或固定范围内的值,作为 用于区分非功能性数据(occ卜"0")的指示装置。
6. 如权利要求5所述的编码方法,其中,该固定值或固定范围内 的值被保留用于非功能性数据,并且任何具有固定值或固定值范围以 内的功能性数据被替换成非该保留值或是保留范围以外的值。
7. 如权利要求1或2所述的编码方法,其中,在控制中应用深度 不连续性阈值,其中深度图中的深度不连续性小于阈值(TH)是一个 确定因素。
8. 如权利要求7所述的编码方法,其中,该阈值(TH)是从该 深度图中的数据计算得到的。
9. 如权利要求5、 6、 7或8所述的编码方法,其中,在经过编码 的—见频信号中并入该阈值(TH)和/或该固定值或固定范围。
10. 如—又利要求9所述的编码方法,其中,该阈值(TH)和/或该 固定值或固定范围作为元数据被并入该视频信号。
11. 如权利要求1所述的编码方法,其中,将多个遮挡部分组合 到一个遮挡数据帧中,并且生成用于将不同的遮挡部分相互区分开来 的指示装置。
12. 如权利要求11所述的编码方法,其中,在用于至少一个像素的遮挡信号中从功能性(ocd#'0,,)到非功能性(occl-"0")和/或从非 功能性(occl-"0")到功能性(occW'0")的变换出现率被用作指示符 来区分该遮挡数据帧内的不同遮挡部分。
13. 如任一前述权利要求所述的编码方法,其中,该控制中的另 一个确定因素是最大视角。
14. 如任一前述权利要求所述的编码方法,其中,该控制中的另 一个确定因素是由该编码遮挡数据帧的比特率形成的。
15. 如任一前述权利要求所述的编码方法,其中,在遮挡数据帧 的编码中,该中心视图数据帧被用作参考帧。
16. 如权利要求15所述的编码方法,其中,在遮挡数据帧的编码 中,使用时间偏移的中心视图数据,并且时间偏移是从该图像数据中 计算的。
17. 如权利要求16所述的编码方法,其中,计算得到的时间偏移 被并入到该视频信号中。
18. 如权利要求17所述的编码方法,其中,计算得到的时间偏移 作为元数据被并入到该视频信号中。
19. 一种用于编码3D视频信号的编码器,其中经过编码的3D视 频信号包括中心视图视频帧(61 )、用于中心视图视频帧的深度图(62 ) 以及用于中心视图视频帧的遮挡数据帧(63),其中该编码器包括用于 将被编码的中心视图数据帧、用于中心视图数据帧的深度图以及遮挡 数据帧的输入,并且该编码器包括控制器(65),该控制器基于用于深 度图的数据来控制开关(66 ),所述开关为该遮挡数据帧数据生成非功 能性数据(occl="0,,)或功能性数据。
20. 如权利要求19所述的编码器,其中,该编码器包括校准器, 并且功能性和非功能性数据的校准是经过网格块对准的。
21. 如权利要求20所述的编码器,其中,该校准器布置成在4x4、 8x8、 16 x 16和/或其它任何整数组合上进行网格块校准。
22. 如权利要求19所述的编码器,其中,该编码器包括用于编码 用于该中心视图帧的深度图的编码器(编码器CV(z))以及用于对编码 深度图进行解码的内部解码器(解码器CV(Z)),其中在该控制器(65) 中使用由该内部解码器解码的深度图。
23. 如前述权利要求19至22中任意一项所述的编码器,其中,该编码器包括用于计算该深度图中的深度不连续性的阈值(TH)的计 算器,其中该开关的控制依赖于测量得到的深度不连续性与阈值的比 较。
24. 如权利要求23所述的编码器,其中,该编码器包括用于将计 算得到的阈值(TH)并入经过编码的数据流的输出。
25. 如前述权利要求19至24中任意一项所述的编码器,其中, 该编码器包括用于编码中心视图帧的编码器以及用于对经过编码的中 心视图帧进行解码的解码器、用于编码该遮挡数据帧的编码器以及在 用于编码遮挡数据帧的编码器上用于插入已解码中心视图帧作为参考 帧的输入。
26. 如权利要求23所述的编码器,其中,偏移参数(t2, a)被 计算并被并入该视频信号中。
27. —种用于对经过编码的视频信号进行解码的方法,其中3D视 频信号将被解码,该3D视频信号包括经过编码的中心视图视频帧、用 于中心视图视频帧的深度图以及用于中心视图视频帧的遮挡数据帧, 经过编码的视频信号包括用于将非功能性遮挡数据与功能性遮挡数据 区分开来的指示,其中在解码中生成包含功能性遮挡数据和中心视图 数据的组合数据流(78, 88)。
28. 如权利要求27所述的用于对经过编码的视频信号进行解码的 方法,其中,在解码该遮挡数据帧中,中心视图数据帧被用作参考帧。
29. 如权利要求247或28所述的用于对经过编码的视频信号进行 解码的方法,其中,该组合信号(88)在生成之后被扭曲。
30. 如权利要求27或28所述的用于对经过编码的视频信号进行 解码的方法,其中,所述扭曲在该组合信号(78)生成之前执行。
31. 如权利要求27至30中任意一项所述的用于对经过编码的视 频信号进行解码的方法,其中,在解码中生成包括功能性深度遮挡数 据和深度中心视图数据的组合深度数据流(88z)。
32. —种用于对经过编码的视频信号进行解码的解码器,其中3D 视频信号被解码,该3D视频信号包括经过编码的中心视图视频帧、用 于中心视图视频帧的深度图以及用于中心视图视频帧的遮挡数据帧, 经过编码的视频信号包括用于将非功能性遮挡数据与功能性遮挡数据 区分开来的指示,其中该解码器包括用于产生组合数据流(78, 88)的组合器(76, 86),所述组合信号包括功能性遮挡数据和中心视图数 据。
33. 如权利要求32所述的用于对经过编码的视频信号进行解码的 解码器,其中,用于遮挡数据帧的解码器布置成在遮挡数据帧的解码中使用被用作参考帧的中心视图数据帧。
34. 如权利要求32或33所述的用于对经过编码的视频信号进行 解码的解码器,其中,该解码器包括用于扭曲该组合信号(88)的扭 曲器(warp 1 )。
35. 如权利要求32或33所述的用于对经过编码的信号进行解码 的解码器,其中,该解码器包括用于在该组合信号(78)生成之前执 行扭曲的扭曲器(warpA)。
36. 如权利要求32至35中任意一项所述的用于对经过编码的信 号进行解码的解码器,其中,该解码器包括用于产生包含功能性深度 遮挡数据和深度中心视图数据的组合深度数据流(88z)的组合器。
37. 如权利要求32至36中任意一项所述的用于对经过编码的信 号进行解码的解码器,其中,经过编码的信号包括组合在一个遮挡数 据帧中的多个遮挡部分,并且经过编码的信号包括用于将不同的遮挡 部分相互区分的指示符,该解码器具有用于识别该指示符以及使用该 指示符来识别不同遮挡部分的装置。
38. 如权利要求37所述的用于对经过编码的信号进行解码的解码 器,其中,该指示符是通过该遮挡信号中从功能性(occ^"0")到非功 能性(occl="0,,)和/或从非功能性(occl="0,,)到功能性(occ一"0") 的变换出现率来形成的。
39. —种3D视频信号,该3D视频信号包括经过编码的中心视图 视频帧、用于中心视图视频帧的深度图以及用于中心视图视频帧的遮 挡数据帧,其中该3D视频信号包括用于将非功能性遮挡数据和功能性 遮挡数据区分开来的指示装置。
40. 如权利要求39所述的3D视频信号,其中,该非功能性数据 具有固定值或固定范围内的值,并且该功能性值具有非该固定值或该 固定范围以外的值,所述值充当指示装置。
41. 如权利要求39所述的3D视频信号,其中,该指示装置包括 用于深度不连续性的阈值。
42. 如权利要求39所述的3D视频信号,其中,该3D视频信号 包括用于遮挡数据帧的编码深度图,该编码深度图包括用于将非功能 性遮挡数据与功能性遮挡数据区分开来的指示装置。
43. 如权利要求39所述的3D视频信号,其中,该视频信号包括 作为元数据的用于该遮挡数据的值范围或值,所述值或范围指示所述 遮挡数据是功能性还是非功能性的。
44. 如权利要求39至43中任意一项所述的3D视频信号,其中, 该视频信号包括控制信息,该控制信息用于控制在解码中将中心视图 帧用作用于解码遮挡数据帧的参考帧的方式。
45. —种包含计算机代码装置的计算机程序,用于当所述程序在 计算机上运行时执行如权利要求1至18中任意一项所述的编码方法。
46. —种包含计算机代码装置的计算机程序,用于当所述程序在 计算机上运行时执行如权利要求27至31中任意一项所述的解码方法。
47. —种包含存储在计算机可读介质上的计算机代码装置的计算 机程序产品,用于执行如权利要求1至18中任意一项所述的编码方法。
48. —种包含存储在计算机可读介质上的计算机代码装置的计算 机程序产品,用于执行如权利要求27至31中任意一项所述的解码方 法。
全文摘要
在用于3D视频信号的编码方法和编码器中,中心视图帧、用于中心视图帧的深度图以及遮挡数据帧将被编码。基于用于中心视图帧的深度图,遮挡数据帧中的功能性与非功能性数据被区分。这允许极大减少经过编码的遮挡数据帧需要的比特。在解码器中,组合数据流是由经过编码的遮挡数据帧中的功能性数据以及中心视图帧构成的。优选地,在编码遮挡数据帧中,中心视图帧被用作参考帧。
文档编号H04N13/00GK101690249SQ200880021844
公开日2010年3月31日 申请日期2008年6月19日 优先权日2007年6月26日
发明者C·瓦雷坎普, R·B·M·克莱因古尼韦克, W·H·A·布鲁尔斯 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1