CN104284195B - 三维视频中的深度图预测方法、装置、编码器和解码器 - Google Patents
三维视频中的深度图预测方法、装置、编码器和解码器 Download PDFInfo
- Publication number
- CN104284195B CN104284195B CN201410535905.9A CN201410535905A CN104284195B CN 104284195 B CN104284195 B CN 104284195B CN 201410535905 A CN201410535905 A CN 201410535905A CN 104284195 B CN104284195 B CN 104284195B
- Authority
- CN
- China
- Prior art keywords
- block
- texture
- reference block
- depth
- motion vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明公开了一种三维视频中的深度图预测方法,包括:获取当前深度块对应的纹理块;获取该纹理块对应的纹理参考块,以及该当前深度块对应的深度参考块;根据该纹理块和该纹理参考块,确定该深度参考块对应的权重集合;根据该深度参考块和该深度参考块对应的权重集合,确定该当前深度块的预测值。本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
Description
技术领域
本发明涉及领域视频编解码领域,并且更具体地,涉及三维视频中的深度图预测方法、装置、编码器和解码器。
背景技术
在三维视频编码中,深度编码是其中重要的一部分,深度编码的好坏直接影响着三维视频的质量。深度视频和纹理视频表示同一场景,因此它们之间具有运动相似性。利用该运动相似性,可以协助深度视频编码。具体而言,深度编码过程中,可以利用纹理视频的运动矢量进行深度预测。
但是,与纹理视频不同的是,深度视频具有物体边界区域变化尖锐的特性,当预测不准确时即会产生较大残差,从而导致编解码效率降低。
目前,深度图预测通常采用MPI(Motion Parameter Inheritance,运动参数继承)技术,该MPI技术使用纹理视频的块分割模式和运动矢量作为merge list的选项协助深度视频编码。具体地,MPI沿用纹理视频的运动矢量得到当前深度块对应的深度参考块,然后直接利用该深度参考块进行深度预测,当该运动矢量不准确或物体存在变形时,由于深度视频中物体边界变化尖锐的特性,直接利用深度参考块进行深度预测的方式不可避免地会产生较大残差,导致编解码效率降低。
发明内容
本发明实施例提供了一种三维视频中的深度图预测方法、装置、编码器和解码器,以提高编解码的效率。
第一方面,提供一种三维视频中的深度图预测方法,包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述纹理块采用双运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:根据所述纹理块的双运动矢量,获取所述纹理块对应的第一纹理参考块和所述第二纹理参考块,以及所述当前块对应的第一深度参考块和第二深度参考块。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述纹理块采用单运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:获取所述纹理块的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述第一方向为所述运动矢量的x方向或y方向。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,包括:根据A1=|P0-P1|,确定第一纹理参考块对应的第一深度参考块的权重集合;和/或,根据A2=|P0-P2|,确定第二纹理参考块对应的第二深度参考块的权重集合;其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为所述第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,还包括:当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,还包括:当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述方法还包括:确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,包括:当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值,包括:根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,w1表示所述第一深度参考块对应的权重集合中的权重,w2表示所述第二深度参考块对应的权重集合中的权重,P表示所述深度块的预测值。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
结合第一方面或其上述实现方式的任一种,在第一方面的另一种实现方式中,所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
第二方面,提供一种编码方法,包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方式中,所述纹理块采用双运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:根据所述纹理块的双运动矢量,获取所述纹理块对应的第一纹理参考块和所述第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方式中,所述纹理块采用单运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方式中,所述偏移值是从多个候选偏移值中选出的,所述方法还包括:将所述偏移值写入码流。
第三方面,提供一种解码方法,包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方式中,所述纹理块采用双运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:根据所述纹理块的双运动矢量,获取所述纹理块对应的第一纹理参考块和所述第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方式中,所述纹理块采用单运动矢量预测模式,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:获取所述纹理块的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述单运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度快对应的第二深度参考块。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方式中,所述偏移值是从多个候选偏移值中选出的,所述方法还包括:从码流中获取所述偏移值。
第四方面,提供一种三维视频中的深度图预测装置,包括:第一获取单元,用于获取当前深度块对应的纹理块;第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述纹理块采用双运动矢量的预测模式,所述第二获取单元具体用于根据所述纹理块的双运动矢量,获取所述纹理块对应的第一纹理参考块和所述第二纹理参考块,以及所述当前块对应的第一深度参考块和第二深度参考块。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述纹理块采用单运动矢量预测模式,所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述第一方向为所述单运动矢量的x方向或y方向。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述第一确定单元具体用于根据A1=|P0-P1|,确定第一纹理参考块对应的第一深度参考块的权重集合;或者,根据A2=|P0-P2|,确定第二纹理参考块对应的第二深度参考块的权重集合;其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为所述第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述第一确定单元还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述第一确定单元还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述装置还包括:第三确定单元,用于确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;所述第一确定单元具体用于当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述第二确定单元具体用于根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,w1表示所述第一深度参考块对应的权重集合中的权重,w2表示所述第二深度参考块对应的权重集合中的权重,P表示所述深度块的预测值。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方式中,所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
第五方面,一种编码器,包括:第一获取单元,用于获取当前深度块对应的纹理块;第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方式中,所述纹理块采用双运动矢量预测模式,所述第二获取单元具体用于根据所述双运动矢量,获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方式中,所述纹理块采用单运动矢量的预测模式,所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方式中,所述矢量偏移值是从多个候选矢量偏移值中选出的,所述编码器还包括:写入单元,用于将所述矢量偏移值写入码流。
第六方面,提供一种解码器,包括:第一获取单元,用于获取当前深度块对应的纹理块;第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方式中,所述当前深度块采用双运动矢量的预测模式,所述第二获取单元具体用于根据所述双运动矢量,获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方式中,所述纹理块采用单运动矢量的预测模式,所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述单运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述单运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方式中,所述偏移值是从多个候选偏移值中选出的,所述解码器还包括:第三获取单元,用于从码流中获取所述偏移值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的三维视频中的深度图预测方法的示意性流程图。
图2是本发明实施例的编码方法的示意性流程图。
图3是本发明实施例的一种解码方法的示意性流程图。
图4是根据本发明实施例的三维视频中的深度图预测装置的示意性框图。
图5是根据本发明实施例的三维视频中的深度图预测装置的示意性框图。
图6是本发明实施例的编码器的示意性框图。
图7是本发明实施例的编码器的示意性框图。
图8是本发明实施例的解码器的示意性框图。
图9是本发明实施例的解码器的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明实施例的三维视频中的深度图预测方法的示意性流程图。图1的方法既能够运用于编码端,也能够运用于解码端,该方法包括:
110、获取当前深度块对应的纹理块。
应理解,当前深度块对应的纹理块的获取方式可参照现有技术,例如,通过运动矢量预测的方式获取该纹理块。
120、获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块。
应理解,本发明实施例对当前深度块对应的深度参考块的具体数量不做限定,例如,可以是2个或2个以上的深度参考块。需要说明的是,当前深度块对应的深度参考块的数量与当前深度块采用单运动矢量预测还是双运动适量预测不存在必然的联系,换句话说,即使当前深度块采用单运动矢量预测模式,当前深度块仍然可以对应多个深度参考块。举例说明,当采用双运动矢量预测模式时,可以根据该双运动矢量,分别从当前深度帧的深度参考帧中获取当前深度块对应的2个深度参考块;当采用单运动矢量预测模式时,可以对运动矢量进行调整,如沿相反的2个方向进行平移,得到2个平移后的运动矢量,再根据平移后的2个运动矢量,分别从当前深度参考帧中获取当前深度块对应的2个深度参考块。同理,本发明实施例对上述纹理块对应的纹理参考块的数目也不作具体限定,例如,可以是2个或2个以上的纹理参考块。需要说明的是,纹理块对应的纹理参考块的数量与纹理块采用单运动矢量预测还是双运动适量预测不存在必然的联系,换句话说,即使纹理块采用单运动矢量预测模式,纹理块仍然可以对应多个纹理参考块。举例说明,当采用双运动矢量预测模式时,可以根据该双运动矢量,分别从纹理参考帧中获取纹理块对应的2个纹理参考块;当采用单运动矢量预测模式时,可以对运动矢量进行调整,如沿相反的2个方向进行平移,得到2个平移后的运动矢量,再根据平移后的2个运动矢量,分别从纹理参考帧中获取纹理块对应的2个纹理参考块。
此外,还需要说明的是,上述纹理参考块的获取方式可以有多种,可选地,作为一种实现方式,根据运动矢量,获取纹理参考块;可选地,作为另一种实现方式,可以先获取深度参考块,然后根据深度参考块在深度参考帧中的位置,从纹理参考帧中找到对应位置的纹理参考块。
130、根据纹理块和纹理参考块,确定深度参考块对应的权重集合。
可选地,作为一个实施例,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,包括:根据A1=|P0-P1|,确定A1,其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和;根据A2=|P0-P2|,确定A2,其中,P2为所述第二纹理参考块中M个像素值之和;根据A1和A2的大小确定所述第一深度参考块对应的权重集合,以及所述第二深度参考块对应的权重集合。
应理解,所述根据纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合具体可指:根据纹理块的像素值和纹理参考块的像素值,确定深度参考块对应的权重集合。
应理解,深度参考块对应的权重集合可以是深度参考块的权重,也可以是深度参考块被划分成的子块的权重,还可以是深度参考块中像素点的权重,也就是说,深度参考块对应的权重集合可以是块级的权重,也可以是像素级的权重。具体而言,当深度参考块对应的权重集合为深度参考块的权重时,每个深度参考块对应的权重集合可以包括1个权重;当深度参考块对应的权重集合为深度参考块中子块的权重时,权重集合中权重的数量与子块的数量有关,例如,将每个深度参考块划分成4*4的子块,那么权重集合中可以包括16个子块分别对应的16个权重;当深度参考块对应的权重集合为深度参考块中像素点的权重时,权重集合中权重的数量与像素点的个数有关,例如,每个深度参考块包括100个像素点时,权重集合可以包括100个像素点分别对应的100个权重。
步骤130的具体实现方式有多种,例如,可以通过比较纹理块的像素值之和与各纹理参考块的像素值之和,为各深度参考块设置不同的权重,使得纹理参考块的像素值之和与纹理块的像素值之和越接近时,其对应的深度参考块的权重越高。当然,除了采用比较纹理块的像素值之和和纹理参考块像素值之和的方式,还可以有其他方式,例如像素的平均值、像素值的方差等。或者,可以预先将纹理块和各纹理参考块划分成n*n(例如,n=4)的子块,然后通过比较纹理块和纹理参考块在对应子块的像素值之和、平均值、方差等,确定各子块的权重。当然,还可以通过比较纹理块和纹理参考块在对应像素点的像素值,确定深度参考块的对应像素点的权重。
140、根据深度参考块和深度参考块对应的权重集合,确定当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
下面以权重集合包含1个权重值为例进行举例说明。当权重集合包括1个权重值时,图1的方法可具体包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块的权重;根据所述深度参考块和所述深度参考块的权重,确定所述当前深度块的预测值。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,可包括:获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量的预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
可选地,作为一个实施例,所述第一方向为所述运动矢量的x方向或y方向。
可选地,作为一个实施例,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块的权重,包括:根据A1=|P0-P1|,确定A1,其中,P0为所述纹理块中的全部像素值之和,P1为所述第一纹理参考块中的全部像素值之和;根据A2=|P0-P2|,确定A2,其中,P2为所述第二纹理参考块中的全部像素值之和;当A1小于A2时,确定w1和w2,其中,w1为所述第一深度参考块的权重,w2为所述第二深度参考块的权重,w1大于w2;当A1大于A2时,确定w1和w2,其中,w1小于w2。
可选地,作为一个实施例,所述图1的方法还包括:确定所述第一深度参考块中的全部像素值之和与所述第二深度参考块中的全部像素值之和的差值;所述根据所述纹理块和所述纹理参考块,确定所述深度参考块的权重,包括:当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块的权重。
上述阈值可以设定为48、49、50、51、52或53等(单位为深度参考块的像素值,也可称为深度值)。
可选地,作为一个实施例,所述根据所述深度参考块和所述深度参考块的权重,确定所述当前深度块的预测值,包括:根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,w1表示所述第一深度参考块对应的权重集合中的权重,w2表示所述第二深度参考块对应的权重集合中的权重,P表示所述深度块的预测值。
下面以权重集合包含深度参考块中各个子块的权重为例进行举例说明。图1的方法可具体包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块的第i子块和所述纹理参考块的第i子块,确定所述深度参考块的子块的权重;根据所述深度参考块的第i子块,以及所述深度参考块的第i子块的权重,确定所述当前深度块的第i子块的预测值,其中,所述纹理块的第i子块、所述纹理参考块的第i子块、所述深度参考块的第i子块和所述当前深度块的第i子块为对应的子块(例如,当纹理块的第i子块为纹理块的左上角的子块,第一纹理参考块的第i子块和第二纹理参考块的第i子块均为对应的左上角的子块),i取值从1至N。需要说明的是,纹理块、纹理参考块、深度参考块和当前深度块的划分方式相同,但本发明实施例对子块的个数不作具体限定,例如,可以将以上各块划分成4*4、8*8子块等。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,可包括:获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
可选地,作为一个实施例,所述第一方向为所述运动矢量的x方向或y方向。
可选地,作为一个实施例,所述根据所述纹理块的第i子块和所述纹理参考块的第i子块,确定所述深度参考块的第i子块的权重,包括:根据A1=|P0-P1|,确定A1,其中,P0表示所述纹理块中的第i子块,P1表示所述第一纹理参考块中的第i子块;根据A2=|P0-P2|,确定A2,其中,P2为所述第二纹理参考块中的第i子块;当A1小于A2时,确定w1和w2,其中,w1为P1的权重,w2为P2的权重,w1大于w2;当A1大于A2时,确定w1和w2,其中,w1小于w2。
可选地,作为一个实施例,所述方法还包括:确定所述第一深度参考块的第i子块的全部像素值之和与所述第二深度参考块的第i子块的全部像素值之和的差值;所述根据所述纹理块的第i子块和所述纹理参考块的第i子块,确定所述深度参考块的第i子块的权重,包括:当所述差值大于预设阈值,根据所述纹理块的第i子块和所述纹理参考块的第i子块,确定所述深度参考块的第i子块的权重。
上述阈值可以设定为48、49、50、51、52或53等(单位为深度参考块的像素值,也可称为深度值)。
可选地,作为一个实施例,所述根据所述深度参考块和所述深度参考块的权重,确定所述当前深度块的预测值,包括:根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块的第i子块,D2表示所述第二深度参考块的第i子块,P表示所述深度块的第i子块的预测值。
下面以权重集合包含深度参考块中各像素的权重为例进行举例说明。图1的方法可具体包括:获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块在第i像素点的像素值和所述纹理参考块在第i像素点的像素值,确定所述深度参考块的第i像素点的权重;根据所述深度参考块在第i像素点的像素值和所述深度参考块的第i像素点的权重,确定所述当前深度块在第i像素点的预测值,其中,所述纹理块的第i像素点、所述纹理参考块的第i像素点、所述深度参考块的第i像素点以及所述当前深度块的第i像素点为对应像素点。
可选地,作为一个实施例,所述纹理块采用双运动矢量预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和所述第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述获取该纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
可选地,作为一个实施例,所述第一方向为所述运动矢量的x方向或y方向。
可选地,作为一个实施例,所述根据所述纹理块在第i像素点的像素值和所述纹理参考块在第i像素点的像素值,确定所述深度参考块的第i像素点的权重,包括:根据A1=|P0-P1|,确定A1,其中,P0为所述纹理块在第i像素点的像素值;P1为所述第一纹理参考块在第i像素点的像素值;根据A2=|P0-P2|,确定A2,其中,P2为所述第二纹理参考块在第i像素点的像素值;当A1小于A2时,确定w1和w2,其中,w1为所述第一深度参考块的第i像素点的权重,w2为所述第二深度参考块的第i像素点的权重,w1大于w2;当A1大于A2时,确定w1和w2,其中,w1小于w2。
可选地,作为一个实施例,所述方法还包括:确定所述第一深度参考块的第i像素点的像素值与所述第二深度参考块的第i像素点的像素值的差值;所述根据所述纹理块在第i像素点的像素值和所述纹理参考块在第i像素点的像素值,确定所述深度参考块的第i像素点的权重,包括:当所述差值大于预设阈值,根据所述纹理块在第i像素点的像素值、所述第一纹理参考块在第i像素点的像素值以及所述第二纹理参考块在第i像素点的像素值,确定所述深度参考块的第i像素点的权重。
上述阈值可以设定为8、9、10、11、12等(单位为深度参考块的像素值,也可称为深度值)。
在本发明实施例中,当第一深度参考块第i像素点的像素值和第二深度参考块的第i像素点的像素值之差不满足上述阈值时,可以按照现有技术的方式得到深度块的深度预测值,例如,直接将运动矢量对应的深度参考块的像素值作为当前深度块对应的深度块的像素预测值(或称深度预测值)。这样可以更好地兼容现有技术,一定程度上减少了不必要的计算消耗。
可选地,作为一个实施例,所述根据所述深度参考块在第i像素点的像素值和所述深度参考块的第i像素点的权重,确定所述当前深度块在第i像素点的预测值,包括:根据P=w1*D1+w2*D2,确定所述深度块在第i像素点的像素预测值,其中,D1表示所述第一深度参考块在第i像素点的像素值,D2表示所述第二深度参考块在第i像素点的像素值,P表示所述深度块在第i像素点的像素预测值。
需要说明的是,以上各实施例中的第一方向可以是矢量在坐标系中的任意方向,例如,可以是x方向或y方向。也就是说,上述单运动矢量在第一方向上的分量可以指单运动矢量在x方向上的分量,或者单运动矢量在y方向上的分量。
需要说明的是,上述矢量偏移值可以设为固定值,如1或3个像素点,这样,当前深度块采用单运动矢量预测模式时,编码端和解码端均可以按照该固定值获取上述第一运动矢量和第二运动矢量,无需占用码流资源来指示上述矢量偏移值。
可选地,也可以为上述矢量偏移值设定取值范围,例如1-5个像素点。此时,在编码端,上述获取矢量偏移值可包括:按照各个矢量偏移值获取预测块;计算当前深度块和预测块中像素值的误差(如绝对误差和(SAD)与均方误差(MSE));选取与当前深度块误差最小的预测块对应的矢量偏移值作为最终的矢量偏移值。具体实现时,可以先设定最大代价J为一个较大值,例如,选取int型的最大值2147483647;然后依次循环各个矢量偏移值,当循环第i个矢量偏移值时,利用该第i矢量偏移值获取预测块,并计算该预测块和当前深度块的误差,当该误差小于最大代价J时,将J更新为该误差;按照同样的方式循环所有可选的矢量偏移值之后,将使得J最小的矢量偏移值选为最终的矢量偏移值。在写码流时,需要将最终选择的矢量偏移值写入码流。实际使用时,可以将上述方案进行简化,例如,矢量偏移值可以在1和3之间选择,然后在写码流时,可以采用1个标记位表示矢量偏移值的取值,如0表示矢量偏移值为1,1表示矢量偏移值为3,这样可以减少码率。在解码端,就根据该标记位获取上述矢量偏移值即可。
需要说明的是,当上述矢量偏移值的取值范围超出当前帧的图像范围时,可以在现有的范围内搜索最优的矢量偏移值,或者,也可以不进行矢量偏移值的搜索,直接按照现有技术的方式进行深度图预测。
此外,在选择本发明实施例的基于权重的深度预测方法时,可以在写码流时用标记位进行标识,例如,当标记位为1时,表示采用该基于权重的深度预测方法,否则标记为0。需要说明的是,解码端只有基于该标记位确定编码端采用基于权重的深度预测方法时,才会去检测上述矢量偏移值的标记位。
此外,上述权重w1和w2可以是固定值,也可以是变化的。当w1和w2为变量时,也需要采用类似标记位或其他方式写入码流,以便解码端能够得到权重的当前值。此外,当采用变化的权重时,可以只将其中1个权重写入码流,另一个用1减去该权重即可得到。
应理解,上述w1和w2之和可以为1。当A1小于A2时,可以设置w1=1,w2=0;当A1大于A2时,可以设置w1=0,w2=1。或者,当A1小于A2时,可以设置w1=0.9,w2=0.1;当A1大于A2时,可以设置w1=0.1,w2=0.9;或者,当A1小于A2时,可以设置w1=0.8,w2=0.2;当A1大于A2时,可以设置w1=0.2,w2=0.8。
可选地,作为一个实施例,上述深度参考块可包括第一深度参考块和第二深度参考块,上述纹理参考块可包括第一纹理参考块和第二纹理参考块,步骤120可包括:获取当前深度块对应的第一深度参考块和第二深度参考块,并获取上述纹理块对应的第一纹理参考块和第二纹理参考块;步骤130可包括:根据纹理块、第一纹理参考块和第二纹理参考块,确定第一深度参考块和第二深度参考块对应的权重集合;步骤140可包括:根据第一深度参考块和所述第一深度参考块对应的权重集合,以及第二深度参考块和所述第二深度参考块对应的权重集合,确定当前深度块的预测值。
本实施例中,当前深度块对应的深度参考块为2个深度参考块,纹理块对应的纹理参考块为2个纹理参考块。如果当前深度块采用双运动矢量预测模式,上述获取当前深度块对应的第一深度参考块和第二深度参考块,并获取纹理块对应的第一纹理参考块和第二纹理参考块具体可指:根据该双运动矢量,获取第一纹理参考块、第二纹理参考块、第一深度参考块和第二深度参考块。也就是说,直接利用该双运动矢量,分别从纹理参考帧和深度参考帧中找到双运动矢量指向的2个纹理参考块和2个深度参考块。如果当前深度块采用单运动矢量预测模式,上述获取当前深度块对应的第一深度参考块和第二深度参考块,并获取纹理块对应的第一纹理参考块和第二纹理参考块具体可指:将该单运动矢量沿第一方向的分量增加一个矢量偏移值,得到第一运动矢量,将该单运动矢量沿第一方向的分量减少相同的矢量偏移值,得到第二运动矢量。然后根据偏移后得到的两个运动矢量,获取第一纹理参考块、第二纹理参考块、第一深度参考块和第二深度参考块,具体获取方式与上述采用双运动矢量预测模式时的获取方式相同,此处不再赘述。
下面结合表1和表2分别给出采用块级权重和像素级权重进行编码时的测试结果。表1中的左列为测试时使用的测试视频的名称,这些视频均为国际公认的标准测试视频。
表1:为深度参考块分配权重进行深度预测
表2:为深度参考块中像素点分配权重进行深度预测
Balloons | 0.00% | 0.02% | -0.01% | 0.00% | 0.06% | -0.12% |
Kendo | 0.00% | -0.06% | 0.02% | -0.02% | -0.02% | -0.03% |
Newspaper_CC | 0.00% | 0.09% | 0.08% | 0.02% | 0.18% | -0.01% |
GT_Fly | 0.00% | -0.07% | 0.07% | 0.01% | 0.13% | -0.25% |
Poznan_Hall2 | 0.00% | -0.11% | -0.17% | -0.06% | -0.03% | -0.04% |
Poznan_Street | 0.00% | 0.01% | -0.05% | 0.00% | 0.03% | 0.00% |
Undo_Dancer | 0.00% | 0.06% | -0.05% | 0.01% | 0.14% | -0.25% |
Shark | 0.00% | 0.05% | 0.14% | 0.01% | 0.16% | -0.23% |
1024x768 | 0.00% | 0.02% | 0.03% | 0.00% | 0.07% | -0.06% |
1920x1088 | 0.00% | -0.01% | -0.01% | -0.01% | 0.09% | -0.15% |
平均(average) | 0.00% | 0.00% | 0.00% | 0.00% | 0.08% | -0.12% |
上文结合图1详细描述了根据本发明实施例的三维视频中的深度图预测方法,下文结合图2,详细描述根据本发明实施例的编码方法。
应理解,图2中的编码方法能够利用上文中各个实施例提到的深度图预测方法,为避免重复,此处适当省略重复的描述。
图2是本发明实施例的编码方法的示意性流程图。图2的方法包括:
210、获取当前深度块对应的纹理块;
220、获取纹理块对应的纹理参考块,以及当前深度块对应的深度参考块;
230、根据纹理块和纹理参考块,确定深度参考块对应的权重集合;
240、根据深度参考块和深度参考块对应的权重集合,确定当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,纹理参考块包括第一纹理参考块和第二纹理参考块,深度参考块包括第一深度参考块和第二深度参考块,获取纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:获取第一纹理参考块、第二纹理参考块、第一深度参考块和第二深度参考块。
可选地,作为一个实施例,纹理块采用双运动矢量的预测模式,步骤220可包括:根据纹理块的运动矢量,获取纹理块对应的第一纹理参考块和第二纹理参考块,以及当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,纹理块采用单运动矢量的预测模式,步骤220可包括:获取纹理块的运动矢量的偏移值;将运动矢量在第一方向上的分量增加偏移值,得到第一运动矢量,将运动矢量在第一方向上的分量减少偏移值,得到第二运动矢量;根据第一运动矢量,获取第一纹理参考块和第一深度参考块;根据第二运动矢量,获取第二纹理参考块和第二深度参考块。
可选地,作为一个实施例,矢量偏移值是从多个候选矢量偏移值中选出的,图2的方法还可包括:将矢量偏移值写入码流。
上文结合图2,描述了根据本发明实施例的编码方法,下文结合图3,详细描述根据本发明实施例的解码方法。
应理解,图3中的解码方法能够利用上文中各个实施例提到的深度图预测方法,为避免重复,此处适当省略重复的描述。
图3是本发明实施例的一种解码方法的示意性流程图。图3的方法包括:
310、获取当前深度块对应的纹理块;
320、获取纹理块对应的纹理参考块,以及当前深度块对应的深度参考块;
330、根据纹理块和纹理参考块,确定深度参考块对应的权重集合;
340、根据深度参考块和深度参考块对应的权重集合,确定当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,纹理参考块包括第一纹理参考块和第二纹理参考块,深度参考块包括第一深度参考块和第二深度参考块,获取纹理块对应的纹理参考块,以及当前深度块对应的深度参考块,包括:获取第一纹理参考块、第二纹理参考块、第一深度参考块和第二深度参考块。
可选地,作为一个实施例,纹理块采用双运动矢量的预测模式,步骤320可包括:根据纹理块的运动矢量,获取纹理块对应的第一纹理参考块和第二纹理参考块,以及当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,纹理块采用单运动矢量预测模式,步骤320可包括:获取纹理块的运动矢量的偏移值;将运动矢量在第一方向上的分量增加偏移值,得到第一运动矢量,将单运动矢量在第一方向上的分量减少偏移值,得到第二运动矢量;根据第一运动矢量,获取第一纹理参考块和第一深度参考块;根据第二运动矢量,获取第二纹理参考块和第二深度参考块。
可选地,作为一个实施例,矢量偏移值是从多个候选矢量偏移值中选出的,图3的方法还可包括:从码流中获取矢量偏移值。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上文中结合图1至图3,详细描述了根据本发明实施例的深度图预测方法及编解码方法,下面将结合图4至图9,描述根据本发明实施例的深度图预测装置和编解码器。
图4是根据本发明实施例的三维视频中的深度图预测装置的示意性框图。应理解,图4的装置400能够实现图1中描述三维视频中的深度图预测方法,为避免重复,此处不再详述。装置400包括:
第一获取单元410,用于获取当前深度块对应的纹理块;
第二获取单元420,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元430,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元440,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述第二获取单元420具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量的预测模式,所述第二获取单元420具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块、所述第二纹理参考块,以及所述当前深度块对应的第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述第二获取单元420具体用于获取纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述单运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
可选地,作为一个实施例,所述第一方向为所述单运动矢量的x方向或y方向。
可选地,作为一个实施例,所述第一确定单元430具体用于根据A1=|P0-P1|,确定第一纹理参考块对应的第一深度参考块的权重集合;或者,根据A2=|P0-P2|,确定第二纹理参考块对应的第二深度参考块的权重集合;其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为所述第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
可选地,作为一个实施例,所述第一确定单元430还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
可选地,作为一个实施例,所述第一确定单元430还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
可选地,作为一个实施例,所述装置还包括:第三确定单元,用于确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;所述第一确定单元430具体用于当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
可选地,作为一个实施例,所述第二确定单元440具体用于根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,P表示所述深度块的预测值。
可选地,作为一个实施例,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
可选地,作为一个实施例,所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
图5是根据本发明实施例的三维视频中的深度图预测装置的示意性框图。应理解,图5的装置500能够实现图1中描述三维视频中的深度图预测方法,为避免重复,此处不再详述。装置500包括:
存储器510,用于存储程序;
处理器520,用于执行程序,当所述程序被执行时,所述处理器520用于获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述处理器520具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述当前深度块采用双运动矢量的预测模式,所述处理器520具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述处理器520具体用于获取纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
可选地,作为一个实施例,所述第一方向为所述单运动矢量的x方向或y方向。
可选地,作为一个实施例,所述处理器520具体用于根据A1=|P0-P1|,确定第一纹理参考块对应的第一深度参考块的权重集合;或者,根据A2=|P0-P2|,确定第二纹理参考块对应的第二深度参考块的权重集合;其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为所述第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
可选地,作为一个实施例,所述处理器520还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
可选地,作为一个实施例,所述处理器520还用于当A1小于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者当A1大于A2时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
可选地,作为一个实施例,所述处理器520还用于确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;所述处理器520具体用于当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
可选地,作为一个实施例,所述处理器520具体用于根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,P表示所述深度块的预测值。
可选地,作为一个实施例,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
可选地,作为一个实施例,所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
图6是本发明实施例的编码器的示意性框图。图6的编码器600能够实现图1-图3中由编码器执行的各个步骤,为避免重复,此处不再赘述。编码器600包括:
第一获取单元610,用于获取当前深度块对应的纹理块;
第二获取单元620,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元630,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元640,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述第二获取单元620具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量的预测模式,所述第二获取单元620具体用于根据所述纹理块的运动矢量,获取所述纹理块的第一纹理参考块和所述第二纹理参考块,以及所述当前深度块的第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量的预测模式,所述第二获取单元620具体用于获取纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
可选地,作为一个实施例,所述偏移值是从多个候选偏移值中选出的,所述编码器还包括:写入单元,用于将所述偏移值写入码流。
图7是本发明实施例的编码器的示意性框图。图7的编码器700能够实现图1-图3中由编码器执行的各个步骤,为避免重复,此处不再赘述。编码器700包括:
存储器710,用于存储程序;
处理器720,用于执行程序,当所述程序被执行时,所述处理器720用于获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述处理器720具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量的预测模式,所述处理器720具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述处理器720具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
可选地,作为一个实施例,所述矢量偏移值是从多个候选矢量偏移值中选出的,所述处理器720还用于将所述矢量偏移值写入码流。
图8是本发明实施例的解码器的示意性框图。应理解,图8的解码器800能够实现图1-图3中由解码器执行的各个步骤,为避免重复,此处不再详述。图8的解码器800包括:
第一获取单元810,用于获取当前深度块对应的纹理块;
第二获取单元820,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元830,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元840,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述第二获取单元820具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量预测模式,所述第二获取单元820具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述第二获取单元820具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
可选地,作为一个实施例,所述矢量偏移值是从多个候选矢量偏移值中选出的,所述解码器800还包括:第三获取单元,用于从码流中获取所述矢量偏移值。
图9是本发明实施例的解码器的示意性框图。应理解,图9的解码器900能够实现图1-图3中由解码器执行的各个步骤,为避免重复,此处不再详述。图9的解码器900包括:
存储器910,用于存储程序;
处理器920,用于执行程序,当所述程序被执行时,所述处理器920用于获取当前深度块对应的纹理块;获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
本发明实施例中,首先根据纹理块和纹理参考块,为深度参考块设置对应的权重集合,然后,根据深度参考块及其对应的权重集合,确定当前深度块的预测值,与现有技术中直接利用深度参考块确定当前深度块预测值的方式相比,权重集合的引入能够有效降低残差,提高编解码效率。
可选地,作为一个实施例,所述纹理参考块包括第一纹理参考块和第二纹理参考块,所述深度参考块包括第一深度参考块和第二深度参考块,所述处理器920具体用于获取所述第一纹理参考块、所述第二纹理参考块、所述第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用双运动矢量的预测模式,所述处理器920具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和所述第二深度参考块。
可选地,作为一个实施例,所述纹理块采用单运动矢量预测模式,所述处理器920具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述单运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述第一纹理参考块和所述第一深度参考块;根据所述第二运动矢量,获取所述第二纹理参考块和所述第二深度参考块。
可选地,作为一个实施例,所述矢量偏移值是从多个候选矢量偏移值中选出的,所述处理器920还用于从码流中获取所述矢量偏移值。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (38)
1.一种三维视频中的深度图预测方法,其特征在于,包括:
获取当前深度块对应的纹理块;
获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
2.如权利要求1所述的方法,其特征在于,所述纹理块采用双运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
3.如权利要求1所述的方法,其特征在于,所述纹理块采用单运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
获取所述纹理块的运动矢量的偏移值;
将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;
根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块,以及所述当前深度块对应的第一深度参考块;
根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块,以及所述当前深度块对应的第二深度参考块。
4.如权利要求3所述的方法,其特征在于,所述第一方向为所述运动矢量的x方向或y方向。
5.如权利要求2-4中任一项所述的方法,其特征在于,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,包括:
根据|P0-P1|,确定所述第一纹理参考块对应的第一深度参考块的权重集合;和/或,
根据|P0-P2|,确定所述第二纹理参考块对应的第二深度参考块的权重集合;
其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为所述第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
6.如权利要求5所述的方法,其特征在于,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,还包括:
当|P0-P1|小于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者
当|P0-P1|大于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
7.如权利要求5所述的方法,其特征在于,所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,还包括:
当|P0-P1|小于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者
当|P0-P1|大于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
8.如权利要求2、3、4、6或7所述的方法,其特征在于,所述方法还包括:
确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;
所述根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合,包括:
当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
9.如权利要求2、3、4、6或7所述的方法,其特征在于,所述根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值,包括:
根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,w1表示所述第一深度参考块对应的权重集合中的权重,w2表示所述第二深度参考块对应的权重集合中的权重,P表示所述深度块的预测值。
10.如权利要求1、2、3、4、6或7所述的方法,其特征在于,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
11.如权利要求1、2、3、4、6或7所述的方法,其特征在于,
所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,
所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,
所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
12.一种编码方法,其特征在于,包括:
获取当前深度块对应的纹理块;
获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
13.如权利要求12所述的方法,其特征在于,所述纹理块采用双运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
14.如权利要求12所述的方法,其特征在于,所述纹理块采用单运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
获取所述纹理块的运动矢量的偏移值;
将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;
根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;
根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
15.如权利要求14所述的方法,其特征在于,所述偏移值是从多个候选偏移值中选出的,所述方法还包括:
将所述偏移值写入码流。
16.一种解码方法,其特征在于,包括:
获取当前深度块对应的纹理块;
获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
17.如权利要求16所述的方法,其特征在于,所述纹理块采用双运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
18.如权利要求16所述的方法,其特征在于,所述纹理块采用单运动矢量预测模式,
所述获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块,包括:
获取所述纹理块的运动矢量的偏移值;
将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;
根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;
根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
19.如权利要求18所述的方法,其特征在于,所述偏移值是从多个候选偏移值中选出的,所述方法还包括:
从码流中获取所述偏移值。
20.一种三维视频中的深度图预测装置,其特征在于,包括:
第一获取单元,用于获取当前深度块对应的纹理块;
第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
21.如权利要求20所述的装置,其特征在于,所述纹理块采用双运动矢量预测模式,
所述第二获取单元具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
22.如权利要求20所述的装置,其特征在于,所述纹理块采用单运动矢量预测模式,
所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
23.如权利要求22所述的装置,其特征在于,所述第一方向为所述单运动矢量的x方向或y方向。
24.如权利要求20-23中任一项所述的装置,其特征在于,所述第一确定单元具体用于根据|P0-P1|,确定第一纹理参考块对应的第一深度参考块的权重集合;和/或,根据|P0-P2|,确定所述第二纹理参考块对应的第二深度参考块的权重集合;其中,P0为所述纹理块中的M个像素值之和,P1为所述第一纹理参考块中的M个像素值之和,P2为第二纹理参考块中M个像素值之和,其中,M小于或者等于所述纹理块,或者第一纹理参考块,或者第二纹理参考块中的像素个数。
25.如权利要求24所述的装置,其特征在于,所述第一确定单元还用于当|P0-P1|小于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1大于w2;或者当|P0-P1|大于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1小于w2。
26.如权利要求24所述的装置,其特征在于,所述第一确定单元还用于当|P0-P1|小于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于1,w2等于0;或者当|P0-P1|大于|P0-P2|时,确定所述第一深度参考块的权重w1和所述第二深度参考块的权重w2,其中,w1等于0,w2等于1。
27.如权利要求21、22、23、25或26所述的装置,其特征在于,所述装置还包括:
第三确定单元,用于确定所述第一深度参考块中的M个像素值之和与所述第二深度参考块中的M个像素值之和的差值;
所述第一确定单元具体用于当所述差值大于预设阈值,根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合。
28.如权利要求21、22、23、25或26所述的装置,其特征在于,所述第二确定单元具体用于根据P=w1*D1+w2*D2,确定所述当前深度块的预测值,其中,D1表示所述第一深度参考块,D2表示所述第二深度参考块,w1表示所述第一深度参考块对应的权重集合中的权重,w2表示所述第二深度参考块对应的权重集合中的权重,P表示所述深度块的预测值。
29.如权利要求20、21、22、23、25或26所述的装置,其特征在于,所述深度参考块对应的权重集合为将所述深度参考块用于确定所述当前深度块的预测值时,所述深度参考块对应的权重的取值集合。
30.如权利要求20、21、22、23、25或2所述的装置,其特征在于,
所述深度参考块对应的权重集合只包括一个权重值,所述当前深度块的预测值是基于所述深度参考块和所述权重值确定的;或者,
所述深度参考块包括M个像素,所述深度参考块对应的权重集合包括分别与所述M个像素对应的M个权重值,所述当前深度块的预测值是基于所述M个像素和所述M个权重值确定的;或者,
所述深度参考块包括N个子块,所述深度参考块对应的权重集合包括分别与所述N个子块对应的N个权重值,所述当前深度块的预测值是基于所述N个子块和所述N个权重值确定的。
31.一种编码器,其特征在于,包括:
第一获取单元,用于获取当前深度块对应的纹理块;
第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
32.如权利要求31所述的编码器,其特征在于,所述纹理块采用双运动矢量预测模式,
所述第二获取单元具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
33.如权利要求31所述的编码器,其特征在于,所述纹理块采用单运动矢量预测模式,
所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
34.如权利要求33所述的编码器,其特征在于,所述偏移值是从多个候选偏移值中选出的,所述编码器还包括:
写入单元,用于将所述偏移值写入码流。
35.一种解码器,其特征在于,包括:
第一获取单元,用于获取当前深度块对应的纹理块;
第二获取单元,用于获取所述纹理块对应的纹理参考块,以及所述当前深度块对应的深度参考块;
第一确定单元,用于根据所述纹理块和所述纹理参考块,确定所述深度参考块对应的权重集合;
第二确定单元,用于根据所述深度参考块和所述深度参考块对应的权重集合,确定所述当前深度块的预测值。
36.如权利要求35所述的解码器,其特征在于,所述纹理块采用双运动矢量预测模式,所述第二获取单元具体用于根据所述纹理块的运动矢量,获取所述纹理块对应的第一纹理参考块和第二纹理参考块,以及所述当前深度块对应的第一深度参考块和第二深度参考块。
37.如权利要求35所述的解码器,其特征在于,所述纹理块采用单运动矢量预测模式,所述第二获取单元具体用于获取所述纹理块的运动矢量的偏移值;将所述运动矢量在第一方向上的分量增加所述偏移值,得到第一运动矢量,将所述运动矢量在所述第一方向上的分量减少所述偏移值,得到第二运动矢量;根据所述第一运动矢量,获取所述纹理块对应的第一纹理参考块和所述当前深度块对应的第一深度参考块;根据所述第二运动矢量,获取所述纹理块对应的第二纹理参考块和所述当前深度块对应的第二深度参考块。
38.如权利要求37所述的解码器,其特征在于,所述偏移值是从多个候选偏移值中选出的,所述解码器还包括:第三获取单元,用于从码流中获取所述偏移值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410535905.9A CN104284195B (zh) | 2014-10-11 | 2014-10-11 | 三维视频中的深度图预测方法、装置、编码器和解码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410535905.9A CN104284195B (zh) | 2014-10-11 | 2014-10-11 | 三维视频中的深度图预测方法、装置、编码器和解码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104284195A CN104284195A (zh) | 2015-01-14 |
CN104284195B true CN104284195B (zh) | 2018-12-25 |
Family
ID=52258604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410535905.9A Active CN104284195B (zh) | 2014-10-11 | 2014-10-11 | 三维视频中的深度图预测方法、装置、编码器和解码器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104284195B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017215764A1 (en) | 2016-06-17 | 2017-12-21 | Huawei Technologies Co., Ltd. | Devices and methods for 3d video coding |
CN110798674B (zh) * | 2018-08-01 | 2022-04-08 | 中兴通讯股份有限公司 | 图像深度值获取方法、装置、设备、编解码器及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103402097A (zh) * | 2013-08-15 | 2013-11-20 | 清华大学深圳研究生院 | 一种自由视点视频深度图编码方法及其失真预测方法 |
CN103621093A (zh) * | 2011-06-15 | 2014-03-05 | 联发科技股份有限公司 | 在三维视频编码系统中的纹理图像压缩方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9131247B2 (en) * | 2005-10-19 | 2015-09-08 | Thomson Licensing | Multi-view video coding using scalable video coding |
CN103108187B (zh) * | 2013-02-25 | 2016-09-28 | 清华大学 | 一种三维视频的编码方法、解码方法、编码器和解码器 |
-
2014
- 2014-10-11 CN CN201410535905.9A patent/CN104284195B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103621093A (zh) * | 2011-06-15 | 2014-03-05 | 联发科技股份有限公司 | 在三维视频编码系统中的纹理图像压缩方法及装置 |
CN103402097A (zh) * | 2013-08-15 | 2013-11-20 | 清华大学深圳研究生院 | 一种自由视点视频深度图编码方法及其失真预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104284195A (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Utility-driven adaptive preprocessing for screen content video compression | |
CN104427345B (zh) | 运动矢量的获取方法、获取装置、视频编解码器及其方法 | |
US8538150B2 (en) | Method and apparatus for segmenting multi-view images into foreground and background based on codebook | |
CN105791824B (zh) | 基于边缘点密度的屏幕内容编码预测模式快速选择方法 | |
CN113590858B (zh) | 目标对象的生成方法、装置、电子设备以及存储介质 | |
CN104219532B (zh) | 确定小物体区域的方法、视频帧之间插补帧的方法和装置 | |
CN113343982B (zh) | 多模态特征融合的实体关系提取方法、装置和设备 | |
US20170094306A1 (en) | Method of acquiring neighboring disparity vectors for multi-texture and multi-depth video | |
CN113436100B (zh) | 用于修复视频的方法、装置、设备、介质和产品 | |
US10937195B2 (en) | Label based approach for video encoding | |
Atienza | Fast disparity estimation using dense networks | |
CN112488060B (zh) | 目标检测方法、装置、设备和介质 | |
US20170269709A1 (en) | Apparatus, method for image processing, and non-transitory medium storing program | |
CN104284195B (zh) | 三维视频中的深度图预测方法、装置、编码器和解码器 | |
US8175160B1 (en) | System, method, and computer program product for refining motion vectors | |
CN108520532B (zh) | 识别视频中物体运动方向的方法及装置 | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
US10536713B2 (en) | Method and apparatus for determining motion vector in video | |
JP2010108205A (ja) | 超解像画像作成方法 | |
JP4933611B2 (ja) | 合成画像の形態でのオブジェクトのデジタルモックアップをコード化する方法及び画面に表示するためのシステム | |
CN113205495B (zh) | 图像质量评价及模型训练方法、装置、设备和存储介质 | |
CN115953468A (zh) | 深度和自运动轨迹的估计方法、装置、设备及存储介质 | |
CN112558810B (zh) | 检测指尖位置的方法、装置、设备和存储介质 | |
CN112308795B (zh) | 图像色彩断层的修复方法、系统、电子设备及存储介质 | |
CN112541934B (zh) | 一种图像处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |