深度图像的帧内预测方法和装置制造方法

文档序号:7799667阅读:111来源:国知局
深度图像的帧内预测方法和装置制造方法
【专利摘要】本发明公开一种深度图像的帧内预测方法和装置,其中,所述方法包括:根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括第一区域和第二区域;将所述预测块的第一位置所在的样本点的值作为所述预测块的第一区域的像素点的预测数据,所述第一位置包括所述预测块的左上角位置;检测所述预测块中的预设位置所在样本点的值,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。不需要遍历整个图像块的样本点的值就能找到两个不同的样本点的值,提高编解码效率。
【专利说明】深度图像的帧内预测方法和装置
【技术领域】
[0001]本发明实施例涉及图像处理【技术领域】,尤其涉及一种深度图像的帧内预测方法和装置。
【背景技术】
[0002]在三维视频图像系统中包括视图像和深度图像两种类型的图像,视图像包括图像本身的信息,如彩色信息,深度图像包括视图像的深度信息,如轮廓信息。在对三维视频图像进行传输中,为了减少视频传输所占用的带宽,需要对视频图像进行编码处理,包括对视图像和深度图像的编码处理,以减小三维视频图像数据的大小。
[0003]现有技术中,对三维视频图像系统中深度图像的编码处理,采用帧内预测方法,首先,编码端将待编码图像分割成一个或多个子图像块,获得当前图像块的帧内预测模式,根据帧内预测模式获得当前图像块的预测数据,其中,所述图像块和经图像块划分得到的子图像块通常被称为图像块,所述的图像块的预测数据作为当前图像块编码或解码的预测数据使用,其来自于已经编码或解码的相邻块的像素数据,或者编码或解码系统预设的固定值,或者其他来自于相邻块的供当前块编码或解码的预测数据。编码端对图像块中每个像素点的像素值与预测数据(或由预测数据生成的参考块的数据)中对应的每个像素点的像素值进行逐点求差得到残差矩阵,对残差矩阵进行量化、变换和熵编码,将熵编码得到的码流发送到解码端。解码端从得到的码流中读取比特流,经过反量化、反编码得到相应的残差,根据帧内预测模式获得当前图像块的预测数据,将当前图像块的残差与预测数据的像素值(或由预测数据生成的参考块的像素值)相加,得到当前图像块的像素值。
[0004]然而,现有技术中,根据帧内预测模式获得图像块的预测数据时,有可能需要遍历整个图像块的样本点的值才能找到两个不同的样本点的值,并将该两个不同的样本点的值作为图像块对应的预测块中不同区域的预测数据,由于需要检测的图像块的样本点较多,导致编解码效率不高。

【发明内容】

[0005]本发明实施例提供一种深度图像的帧内预测方法和装置,用以解决现有技术中需要检测的图像块的样本点较多而导致编解码效率不高的问题。
[0006]第一方面,提供一种深度图像的帧内预测方法,包括:
[0007]根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括的第一区域和第二区域;
[0008]将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域;
[0009]检测所述预测块中的预设位置所在样本点的值,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。[0010]基于第一方面,在第一种可能实现方式中,检测所述预测块中的预设位置所在样本点的值之后,还包括:
[0011]若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0012]基于第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一位置包括所述预测块的左上角位置;所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
[0013]基于第一方面的第二种可能的实现方式,在第三种可能的实现方式中,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体包括:
[0014]若所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者
[0015]若所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者
[0016]若所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
[0017]基于第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
[0018]基于第一方面的第四种可能的实现方式,在第五种可能的实现方式中,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体还包括:
[0019]若所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0020]基于第一方面的第四种可能的实现方式,在第六种可能的实现方式中,若所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0021]基于第一方面的第一或第六种可能的实现方式,在第七种可能的实现方式中,所述数值包括2("-1),其中,η为样本点的精度值。
[0022]基于第一方面或第一方面的第一种可能的实现方式,在第八种可能的实现方式中,还包括:根据所述第一区域和第二区域的像素点的预测数据进行编码操作。
[0023]基于第一方面的第八种可能的实现方式,在第九种可能的实现方式中,还包括:根据所述第一区域和第二区域的像素点的预测数据进行解码操作。[0024]第二方面,提供一种深度图像的帧内预测装置,包括:
[0025]确定模块,用于根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括第一区域和第二区域;
[0026]预测模块,用于将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域;
[0027]所述确定模块,还用于检测所述预测块中的预设位置所在样本点的值,确定所述预设位置所在样本点的值是否与所述第一位置所在的样本点的值不相等;
[0028]所述预测模块,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0029]基于第二方面,在第一种实现方式中,所述预测模块,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0030]基于第二方面或第二方面的第一种实现方式,在第二种实现方式中,所述第一位置包括所述预测块的左上角位置;所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
[0031]基于第二方面的第二种实现方式,在第三种实现方式中,所述预测模块具体用于:在所述确定模块确定所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者
[0032]在所述确定模块确定所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者
[0033]在所述确定模块确定所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
[0034]基于第二方面或第二方面的第一种实现方式,在第四种实现方式中,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
[0035]基于第二方面的第四种实现方式,在第五种实现方式中,所述预测模块具体还用于:在所述确定模块确定所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第五位置包括所述预测块的中间位置。
[0036]基于第二方面的第五种实现方式,在第六种实现方式中,所述预测模块具体还用于:
[0037]在所述确定模块确定所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0038]基于第二方面的第一或第六种实现方式,在第七种实现方式中,所述数值包括2(η_?,其中,η为样本点的精度值。
[0039]基于第二方面或第二方面的第一种实现方式,在第八种实现方式中,还包括:编码模块,用于根据所述第一区域和第二区域的像素点的预测数据进行编码操作。[0040]基于第二方面的第八种实现方式,在第九种实现方式中,还包括:
[0041]解码模块:根据所述第一区域和第二区域的像素点的预测数据进行解码操作。
[0042]本发明实施例根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括第一区域和第二区域;将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域;若所述预测块的预设位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。因此,不需要遍历整个图像块的样本点的值,而是检测图像块中预设位置的样本点的值就能找到两个不同的样本点的值,并将该两个不同的样本点的值分别作为图像块中第一区域和第二区域的预测数据,进而可以提高编解码效率。
【专利附图】

【附图说明】
[0043]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0044]图1为本发明一实施例提供的一种深度图像的帧内预测方法的流程示意图;
[0045]图2为本发明实施例应用的深度图像的图像块示意图;
[0046]图3为本发明实施例应用的深度图像的预测块示意图;
[0047]图4为本发明另一实施例提供的一种深度图像的帧内预测方法的流程示意图;
[0048]图5为本发明一实施例提供的一种深度图像的帧内预测装置的结构示意图;
[0049]图6为本发明另一实施例提供的一种深度图像的帧内预测装置的结构示意图。
【具体实施方式】
[0050]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051]在三维视频系统中,深度图像包括了视图像的深度信息,例如,轮廓信息,深度图像的特点是大部分区域纹理较为平滑,通常只在物理边界含有锐利的边界信息,深度图像内的像素值比较单一且均匀分布,因此,可以采用基于分割块的深度编码(Segment-wiseDC coding, SDC)技术根据深度建模模式(Depth modeling mode, DMM)的方式对图像块进行编码或解码,其基本思想是:首先,根据帧内预测模式获得该图像块的帧内预测块,其次,分别导出预测块中第一区域和第二区域中的像素点的预测数据,其中,第一区域中的各像素点的预测数据是相同的,第二区域中的各像素点的预测数据是相同的;根据所述第一区域和第二区域中的像素点的预测数据,分别与图像块中对应的第一区域和第二区域中的像素点的平均像素值求差,分别获得第一区域和第二区域中像素点的残差,之后,对所述第一区域和第二区域中像素点的残差进行编码,因此,SDC技术只需要编码或解码这两个区域的残差值,不需要编码或解码该两个区域内所有像素点的残差值,提高了深度图像的编解码处理效率。
[0052]图1为本发明一实施例提供的一种深度图像的帧内预测方法的流程示意图,如图1所示,包括:
[0053]101、根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块。
[0054]其中,步骤101之前包括:获取深度图像的当前图像块的帧内预测模式,例如,在对深度图像进行编码处理,通常将一帧图像分成一个或多个规则的深度图像块,将一个深度图像块分为一个或多个图像块,图像块的形状可以是规则的,也可以时不规则的,图像块的划分方法与深度图像块的纹理信息有关,由于深度图像的特点是大部分区域纹理较为平滑,深度图像内的像素值比较单一且均匀分布,本实施例中例如可以采用DMM4对图像块进行划分。
[0055]图2为本发明实施例应用的深度图像的图像块示意图,如图2所示,每个方格代表一个像素点,假设当前图像块的尺寸为8乘以8,即具有64个像素点,该当前图像块包括两个区域,如图2所示,即为白色区域(第一区域)和黑色区域(第二区域),该两个区域通常表示了实际的两个物体,或者表示了物体与背景区域。
[0056]其中,帧内预测模式决定当前图像块的预测数据的选取方法,本发明实施例应用的帧内预测方法为DMM4。
[0057]举例来说,步骤101具体实现时,例如根据当前图像块的左相邻列与上相邻行导出DCO区域和DCl区域,再根据DMM4的划分方式及DCO区域和DCl区域构建出与DMM4对应的帧内预测块,即将上述图2所示的DMM4对应的划分区域(第一区域和第二区域)填充对应的DCO数值或DCI数值。
[0058]图3为本发明实施例应用的深度图像的预测块示意图,如图3所示,深度图像的预测块与图2所示的深度图像的图像块示意图相同,每个方格代表一个像素点,该预测块的尺寸为8乘以8,即具有64个像素点,该预测块包括两个区域,如图3所示,即为DCO区域(相当于第一区域)和DCl区域(相当于第二区域)。
[0059]102、将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域。
[0060]在本实施例中,上述第一位置包括预测块的左上角位置。例如,获取如图3所示预测块左上角位置样本点的值,如图3所示,将预测块的左上角位置所在的样本点位于的区域中作为所述预测块的第一区域(DC0区域),将所述预测块的左上角位置所在的样本点的值作为所述预测块的第一区域(DC0区域)的像素点的预测数据。
[0061]在现有的SDC技术中,如图3所示,将预测块的左上角位置所在的样本点的值作为所述预测块的第一区域(DC0区域)的像素点的预测数据之后,按从左往右、从上至下的方法搜寻与第一区域(DCO区域)不同的值的样本点。如图3所示,由于第一行数据均为DC0,因此第一行搜寻结束后继续搜寻第二行的数据,如图3所示第二行的第二个样本点对应的值与DCO区域的像素点的预测数据不同,因此将如图3所示第二行的第二个样本点对应的值作为第二区域(DCl区域)的像素点的预测数据。
[0062]由此可知,现有技术的不足之处在于获取两个区域的像素点的预测数据的过程中需要遍历预测块才能找到两个不同值的样本点。在极端情况下需要遍历整个预测块的样本点才能找到两个不同的样本值作为两个区域的像素点的预测数据,由于需要检测的样本点数目较多,导致编解码效率降低。
[0063]103、确定预测块的预设位置所在的样本点的值是否与第一位置所在的样本点的值不相等,若不相等则执行步骤104,若相等则执行步骤105。
[0064]本发明实施例中,根据DMM4的划分方式及DCO区域和DCl区域构建出与DMM4对应的帧内预测块,由于第一区域和第二区域通常会与图像块的边界相接、或者会覆盖一个图像块的一定大小的区域。因此,本发明只需要根据预定规则,检测图像块中预设位置的样本点的值即能得到两个不同的样本值分别作为第一区域和第二区域的像素点的预测数据。
[0065]本实施例中,预设位置至少包括三个位置,分别为第二、第三和第四位置,如图3所示,第二位置包括预测块的右上角位置,第三位置包括预测块的左下角位置,第四位置包括预测块的右下角位置。
[0066]104、将预设位置所在的样本点的值作为预测块的第二区域的像素点的预测数据。
[0067]举例来说,步骤104具体实现时包括:
[0068]若所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据;或者
[0069]若所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据;或者
[0070]若所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0071]105、将预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0072]其中,所述预设的数值包括2(n_D,η为样本点的精度值,例如取值为8比特、10比特、12比特等。
[0073]进一步需要说明的是,由于上述第一区域和第二区域均有可能覆盖一个图像块中较大的面积,因此上述预设位置还可以包括第五位置,如图3所示,所述第五位置包括预测块的中间点位置,可选地,步骤104具体实现还包括:
[0074]若所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0075]对应地,步骤105具体实现还包括:
[0076]若所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值,所述数值包括2(η_?,其中,η为样本点的精度值,例如取值为8比特、10比特、12比特
坐寸ο
[0077]进一步地,本实施例中编码端还根据所述第一区域和第二区域的像素点的预测数据进行编码操作;对应地,在解码端根据所述第一区域和第二区域的像素点的预测数据进行解码操作。
[0078]本发明实施例中,根据预定规则,依此检测图像块中预设位置(如预测块的第二、第三和第四位置)的样本点的值,若预设位置所在的样本点的值与所述第一位置(预测块的左上角位置)所在的样本点的值不相等时,则将预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,即可得到两个不同的样本值分别作为第一区域和第二区域的像素点的预测数据。不需要遍历整个图像块的样本点的值,可以提高编解码效率。
[0079]图4为本发明另一实施例提供的一种深度图像的帧内预测方法的流程示意图,如图4所示,包括:
[0080]401、根据当 前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块。
[0081]402、将所述预测块的左上角所在的样本点的值作为所述预测块的第一区域的像素点的预测数据。
[0082]上述步骤401和402的具体实现可以参考图所示实施例中的相关描述,不再赘述。
[0083]403、确定预测块的右上角所在的样本点的值与左上角所在的样本点的值是否不相等,若右上角所在的样本点的值与左上角所在的样本点的值不相等则执行步骤404,若右上角所在的样本点的值与左上角所在的样本点的值相等则执行步骤405。
[0084]404、将所述预测块的右上角所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0085]图3所示,检测预测块的右上角位置所在的样本点的值,若所述预测块的右上角位置所在的样本点的值与所述左上角位置所在的样本点的值不相等时,则将所述预测块的右上角位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0086]405、确定预测块的左下角所在的样本点的值与所述左上角所在的样本点的值是否不相等,若左下角所在的样本点的值与所述左上角所在的样本点的值不相等则执行步骤406,若左下角所在的样本点的值与所述左上角所在的样本点的值相等则执行步骤407。
[0087]406、将预测块的左下角所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0088]具体实现时,图3所示,检测预测块的左下角位置所在的样本点的值,若所述预测块的左下角位置所在的样本点的值与所述左上角位置所在的样本点的值不相等时,则将所述预测块的左下角位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0089]407、确定预测块的右下角所在的样本点的值与左上角所在的样本点的值是否不相等,若右下角所在的样本点的值与左上角所在的样本点的值不相等则执行步骤408,若右下角所在的样本点的值与左上角所在的样本点的值相等则执行步骤409。
[0090]408、将预测块的右下角所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0091]具体实现时,图3所示,检测预测块的右下角位置所在的样本点的值,若所述预测块的右下角位置所在的样本点的值与所述左上角位置所在的样本点的值不相等时,则将所述预测块的右下角位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0092]409、将预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0093]其中,所述数值包括2(1"1), η为样本点的精度值,例如取值为8比特、10比特、12比特等。
[0094]进一步需要说明的是,由于上述第一区域和第二区域均有可能覆盖一个图像块中较大的面积,因此除了检测上述四个位置之外还可以检测图像块的中间点位置获得SDC DC值;可选地,在步骤407之后还包括:
[0095]若所述预测块的右上角、左下角和右下角所在的样本点的值与左上角所在的样本点的值相等时,则进一步确定所述预测块的中间位置所在的样本点的值与左上角所在的样本点的值是否不相等;
[0096]若不相等,则将所述预测块的中间位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0097]若相等,则执行步骤409,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值,所述数值包括2(η_?,η为样本点的精度值,例如取值为8比特、10比特、12比特
坐寸ο
[0098]本发明实施例中,根据预定规则,依此检测图像块中预设位置(如预测块的右上角、左下角、右下角位置)的样本点的值,若预设位置所在的样本点的值与所述第一位置(预测块的左上角位置)所在的样本点的值不相等时,则将预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,即可得到两个不同的样本值分别作为第一区域和第二区域的像素点的预测数据。不需要遍历整个图像块的样本点的值,可以提高编解码效率。
[0099]需要说明的是,当确定预测块中第一区域和第二区域中的像素点的预测数据之后,本实施例中,例如可以获取当前图像块中第一区域中的各像素点的像素值,将各像素点的像素值相加之后除以像素点个数得到当前图像块中第一区域中的像素点的平均像素值;同理也可得到当前图像块中第二区域中的像素点的平均像素值;将当前图像块中第一区域中的像素点的平均像素值与预测块中第一区域中的像素点的预测数据相减得到第一区域的像素值的残差,将当前图像块中第二区域中的像素点的平均像素值与预测块中第二区域中的像素点的预测数据相减得到第二区域的像素值的残差,之后,分别将第一、第二区域的像素值的残差进行编码操作,最后进行熵编码得到编码比特流。解码端根据编码比特流进行与编码端相反的处理过程,即可得到当前图像块的重构数据。
[0100]图5为本发明一实施例提供的一种深度图像的帧内预测装置的结构示意图,如图5所示,包括:确定模块51和与其连接的预测模块52 ;[0101]确定模块51,用于根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括第一区域和第二区域;
[0102]预测模块52,用于将所述确定模块确定的预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据;所述样本点对应的预测块的区域为所述第一区域。
[0103]所述确定模块51,还用于检测所述预测块中的预设位置所在样本点的值,确定所述预设位置所在样本点的值是否与所述第一位置所在的样本点的值不相等;
[0104]所述预测模块52,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0105]可选地,所述预测模块52,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值;
[0106]其中,所述数值包括2(ηΛ其中,η为样本点的精度值。
[0107]可选地,所述第一位置包括所述预测块的左上角位置;所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
[0108]可选地,所述 预测模块52具体用于:在所述确定模块确定所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者
[0109]在所述确定模块确定所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者
[0110]在所述确定模块确定所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
[0111]可选地,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
[0112]可选地,所述预测模块52具体还用于:在所述确定模块确定所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第五位置包括所述预测块的中间位置。
[0113]可选地,所述预测模块52具体还用于:
[0114]在所述确定模块确定所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值,其中,所述数值包括2^),其中,η为样本点的精度值。[0115]可选地,本实施例所述装置还包括:编码模块53和解码模块54,与分别预测模块52连接;
[0116]其中,编码模块53用于根据所述预测模块52得到的第一区域和第二区域的像素点的预测数据进行编码操作;
[0117]解码模块54用于根据所述预测模块52得到的第一区域和第二区域的像素点的预测数据进行解码操作。
[0118]本发明实施例中,根据预定规则,依此检测图像块中预设位置(如预测块的第二、第三、第四和第五位置)的样本点的值,若预设位置所在的样本点的值与所述第一位置(预测块的左上角位置)所在的样本点的值不相等时,则将预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,即可得到两个不同的样本值分别作为第一区域和第二区域的像素点的预测数据。不需要遍历整个图像块的样本点的值,可以提高编解码效率。
[0119]图6为本发明另一实施例提供的一种深度图像的帧内预测装置的结构示意图,如图6所示,包括处理器61和存储器62,其中,处理器61通过总线与存储器62连接,存储器62中存储有实现深度图像的帧内预测方法的指令,当处理器61调取存储器62中的指令时可以执行如下步骤:
[0120]根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括的第一区域和第二区域;
[0121]预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域;
[0122]检测所述预测块中的预设位置所在样本点的值,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0123]可选地,检测所述预测块中的预设位置所在样本点的值之后,还包括:
[0124]若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0125]可选地,所述第一位置包括所述预测块的左上角位置;所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
[0126]可选地,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体包括:
[0127]若所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者
[0128]若所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者
[0129]若所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
[0130]可选地,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
[0131]可选地,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体还包括:
[0132]若所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
[0133]可选地,本实施例还包括:
[0134]若所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
[0135]可选地,所述数值包括2^),其中,η为样本点的精度值。
[0136]可选地,本实施例还包括:
[0137]根据所述第一区域和第二区域的像素点的预测数据进行编码操作。
[0138]对应地,根据所述第一区域和第二区域的像素点的预测数据进行解码操作。
[0139]在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0140]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0141]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0142]上述以软件功能单元的形式实现的集成的单元,可以以代码的形式存储在一个计算机可读取存储介质中。上述代码存储在一个计算机可读存储介质中,包括若干指令用以使处理器或硬件电路执行本发明各个实施例所述方法的部分或全部步骤。而前述的存储介质包括:通用串行总线接口的无需物理驱动器的微型高容量移动存储盘、移动硬盘、只读存储器(英文:Read_0nly Memory,简称ROM)、随机存取存储器(英文:Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。[0143]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的保护范围。
【权利要求】
1.一种深度图像的帧内预测方法,其特征在于,包括: 根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括的第一区域和第二区域; 将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域; 检测所述预测块中的预设位置所在样本点的值,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
2.据权利要求1所述的方法,其特征在于,检测所述预测块中的预设位置所在样本点的值之后,还包括: 若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
3.根据权利要求1或2所述的方法,其特征在于: 所述第一位置包括所述预测块的左上角位置; 所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
4.根据权利要求3所述的方法,其特征在于,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体包括: 若所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者 若所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者 若所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
5.根据权利要求1或2所述的方法,其特征在于,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
6.根据权利要求5所述的方法,其特征在于,若确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,具体还包括: 若所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,则将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
7.根据权利要求5所述的方法,其特征在于,还包括:若所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,则将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
8.根据权利要求2或7所述的方法,其特征在于: 所述数值包括2^),其中,η为样本点的精度值。
9.根据权利要求1或2所述的方法,其特征在于,还包括: 根据所述第一区域和第二区域的像素点的预测数据进行编码操作。
10.根据权利要求9所述的方法,其特征在于,还包括: 根据所述第一区域和第二区域的像素点的预测数据进行解码操作。
11.一种深度图像的帧内预测装置,其特征在于,包括: 确定模块,用于根据当前图像块的帧内预测模式,确定与所述帧内预测模式对应的所述当前图像块的预测块,所述预测块包括第一区域和第二区域; 预测模块,用于将所述预测块的第一位置所在的样本点的值作为所述样本点对应的预测块的区域的像素点的预测数据,所述样本点对应的预测块的区域为所述第一区域; 所述确定模块,还用于检测所述预测块中的预设位置所在样本点的值,确定所述预设位置所在样本点的值是否与所述第一位置所在的样本点的值不相等; 所述预测模块,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值不相等时,将所述预设位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据。
12.据权利要求11所述的装置,其特征在于: 所述预测模块,还用于在所述确定模块确定所述预设位置所在样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
13.根据权利要求11或12所述的装置,其特征在于,所述第一位置包括所述预测块的左上角位置;所述预设位置至少包括三个位置,分别为第二、第三和第四位置。
14.根据权利要求13所述的装置,其特征在于,所述预测模块具体用于:在所述确定模块确定所述预测块的第二位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第二位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第二位置包括所述预测块的右上角位置;或者 在所述确定模块确定所述预测块的第二角位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第三位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第三位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第三位置包括所述预测块的左下角位置;或者 在所述确定模块确定所述预测块的第二和第三位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第四位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第四位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第四位置包括所述预测块的右下角位置。
15.根据权利要求11或12所述的装置,其特征在于,所述预设位置还包括第五位置,所述第五位置包括所述预测块的中间位置。
16.根据权利要求15所述的装置,其特征在于,所述预测模块具体还用于:在所述确定模块确定所述预测块的第二、第三和第四位置所在的样本点的值与所述第一位置所在的样本点的值相等时,且所述预测块的第五位置所在的样本点的值与所述第一位置所在的样本点的值不相等时,将所述预测块的第五位置所在的样本点的值作为所述预测块的第二区域的像素点的预测数据,所述第五位置包括所述预测块的中间位置。
17.根据权利要求14所述的装置,其特征在于,所述预测模块具体还用于: 在所述确定模块确定所述预测块的第二、第三、第四和第五位置所在的样本点的值与所述第一位置所在的样本点的值相等时,将所述预测块的第二区域的像素点的预测数据赋值为预设的数值。
18.根据权利要求12或17所述的装置,其特征在于: 所述数值包括2^),其中,η为样本点的精度值。
19.根据权利要求11或12所述的装置,其特征在于,还包括: 编码模块,用于根据所述第一区域和第二区域的像素点的预测数据进行编码操作。
20.根据权利要求19所述的装置,其特征在于,还包括: 解码模块:根据所述第一区域和第二区域的像素点的预测数据进行解码操作。
【文档编号】H04N19/176GK103841422SQ201410109690
【公开日】2014年6月4日 申请日期:2014年3月21日 优先权日:2014年3月21日
【发明者】郑萧桢 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1