CN103237214A - 深度图像的编解码方法和编解码装置 - Google Patents
深度图像的编解码方法和编解码装置 Download PDFInfo
- Publication number
- CN103237214A CN103237214A CN2013101275011A CN201310127501A CN103237214A CN 103237214 A CN103237214 A CN 103237214A CN 2013101275011 A CN2013101275011 A CN 2013101275011A CN 201310127501 A CN201310127501 A CN 201310127501A CN 103237214 A CN103237214 A CN 103237214A
- Authority
- CN
- China
- Prior art keywords
- pixel
- value
- numerical value
- prediction data
- individual numerical
- 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.)
- Granted
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例提供一种深度图像的编解码方法和编解码装置,通过将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值,将映射值与预测数据中像素点的像素值的和值相乘,得到第一数值,再对第一数值进行移位操作,获得第二数值,将第二数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
Description
技术领域
本发明实施例涉及图像处理技术,尤其涉及一种深度图像的编解码方法和编解码装置。
背景技术
三维视频图像系统因其包括视图像和深度图像两种类型的图像信息,使得图像视觉效果良好,得到了广泛的应用。
现有技术中,对三维视频图像的编解码处理过程一般为根据帧内预测模式获取待编码图像块的预测数据,将预测数据中像素点的像素值和值与预测数据中像素点的个数值相除,获得预测数据的像素平均值,将所述像素平均值与待编码图像块的像素值作差,获得待编码图像块的残差,对所述残差进行编码,将所述残差发送到解码端,解码端采用与编码端响应的操作获得待解码图像块的像素值。
然而,当图像块的像素值与像素点个数的取值范围较大时,采用现有技术的方法,会涉及大量的除法操作,而在硬件中除法操作需要使用较复杂的逻辑,实现复杂度高。
发明内容
本发明实施例提供一种深度图像的编解码方法和编解码装置,以降低实现的复杂度。
本发明实施例第一方面提供一种深度图像的编码方法,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;
将所述第一数值进行移位操作,获得第二数值;
若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;
根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
对所述当前图像块的残差进行编码。
结合第一方面,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
结合第一方面,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N位,获得第二数值。
结合第一方面,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N加M位,获得第二数值。
结合第一方面,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N加M位,获得第二数值;
若小于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N位,获得第二数值。
结合第一方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第一方面,所述对所述当前图像块的残差进行编码之前,还包括:
编码所述当前图像块的编码方式标志位。
结合第一方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第一方面,若所述编码方式为SDC,对所述当前图像块的残差进行编码包括:
将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;
编码所述残差映射值。
本发明实施例第二方面提供一种深度图像的解码方法,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获得映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;
将所述第三数值进行移位操作,获得第四数值;
若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;
获取所述当前图像块的残差;根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
结合第二方面,所述所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
结合第二方面,将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N位,获得第四数值;
结合第二方面,将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值。
结合第二方面,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加偏移量R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值。
若小于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N位,获得第四数值。
结合第二方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第二方面,所述获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,还包括:
获取当前图像块的编码方式标志位。
结合第二方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第二方面,若所述编码方式为SDC,所述获取当前图像块的残差包括:
获取所述当前图像块的残差映射值;
将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明实施例第三方面提供一种深度图像的编码方法,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
获取所述预测数据中像素点的个数值的映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;
对所述第五数值进行移位操作,获得第六数值;
根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
对所述当前图像块的残差进行编码。
结合第三方面,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第一数值右移N位,获得第二数值。
结合第三方面,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第五数值右移N加M位,获得第六数值。
结合第三方面,所述获取所述预测数据中像素点的个数值之后,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第五数值右移N加M位,获得第六数值;
若小于,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值;
将所述第五数值右移N位,获得第六数值。
结合第三方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第三方面,所述对所述当前图像块的残差进行编码之前,还包括:
编码所述当前图像块的编码方式标志位。
结合第三方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第三方面,若所述编码方式为SDC,对所述当前图像块的残差进行编码包括:
将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;
编码所述残差映射值。
本发明实施例第四方面提供一种深度图像的解码方法,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
获取所述预测数据中像素点的个数值的映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;
将所述第七数值进行移位操作,获得第八数值;
获得所述当前图像块的残差,根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
结合第四方面,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N位,获得第八数值。
结合第四方面,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N加M位,获得第八数值。
结合第四方面,所述获取所述预测数据中像素点的个数值之后,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N加M位,获得第八数值;
若小于,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值;
将所述第七数值右移N位,获得第八数值。
结合第四方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第四方面,所述获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,还包括:
获取当前图像块的编码方式标志位。
结合第四方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第四方面,若所述编码方式为SDC,所述获取当前图像块的残差包括:
获取所述当前图像块的残差映射值;
将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明实施例第五方面提供一种深度图像的编码装置,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;将所述第一数值进行移位操作,获得第二数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;
第二处理模块,用于根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
编码模块,用于对所述当前图像块的残差进行编码。
结合第五方面,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
结合第五方面,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N位,获得第二数值。
结合第五方面,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N加M位,获得第二数值。
结合第五方面,所述第一处理模块还用于在将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N加M位,获得第二数值;
若小于,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N位,获得第二数值。
结合第五方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第五方面,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
结合第五方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第五方面,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
本发明实施例第六方面提供一种深度图像的解码装置,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于判断所述预测数据中像素点的个数值是否为0;若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;将所述第三数值进行移位操作,获得第四数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;
所述获取模块还用于获取所述当前图像块的残差;
第二处理模块,用于根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
结合第六方面,所述所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
结合第六方面,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第三数值右移N位,获得第四数值;
结合第六方面,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第三数值右移N加M位,获得第四数值。
结合第六方面,所述第一处理模块还用于将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值;
若小于,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
第一处理模块具体用于将所述第三数值右移N位,获得第四数值。
结合第六方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第六方面,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
结合第六方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第六方面,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明实施例第七方面提供一种深度图像的编码装置,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
处理模块,用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;对所述第五数值进行移位操作,获得第六数值;根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
编码模块,用于对所述当前图像块的残差进行编码。
结合第七方面,所述处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第一数值右移N位,获得第二数值。
结合第七方面,所述处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N加M位,获得第六数值。
结合第七方面,所述处理模块还用于获取模块获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N加M位,获得第六数值;
若小于,所述处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N位,获得第六数值。
结合第七方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第七方面,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
结合第七方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第七方面,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
本发明实施例第八方面提供一种深度图像的解码装置,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;将所述第七数值进行移位操作,获得第八数值;
所述获取模块,还用于获取所述当前图像块的残差;
第二处理模块,根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
结合第八方面,所述第一处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N位,获得第八数值。
结合第八方面,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N加M位,获得第八数值。
结合第八方面,所述第一处理模块还用于获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N加M位,获得第八数值;
若小于,所述第一处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N位,获得第八数值。
结合第八方面,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
结合第八方面,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
结合第八方面,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
结合第八方面,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明实施例提供的深度图像的编解码方法和编解码装置,通过将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值,将映射值与预测数据中像素点的像素值的和值相乘,得到第一数值,再对第一数值进行移位操作,获得第二数值,将第二数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明深度图像的编码方法实施例一的流程示意图;
图2为本发明深度图像的编码方法实施例二的流程示意图;
图3为本发明深度图像的编码方法实施例三的流程示意图;
图4为本发明深度图像的编码方法实施例四的流程示意图;
图5为本发明深度图像的解码方法实施例一的流程示意图;
图6为本发明深度图像的解码方法实施例二的流程示意图;
图7为本发明深度图像的解码方法实施例三的流程示意图;
图8为本发明深度图像的解码方法实施例四的流程示意图;
图9为本发明深度图像的编码方法实施例五的流程示意图;
图10为本发明深度图像的编码方法实施例六的流程示意图;
图11为本发明深度图像的编码方法实施例七的流程示意图;
图12为本发明深度图像的编码方法实施例八的流程示意图;
图13为本发明深度图像的解码方法实施例五的流程示意图;
图14为本发明深度图像的解码方法实施例六的流程示意图;
图15为本发明深度图像的解码方法实施例七的流程示意图;
图16为本发明深度图像的解码方法实施例八的流程示意图;
图17为本发明深度图像的编码装置实施例一的结构示意图;
图18为本发明深度图像的解码装置实施例一的结构示意图;
图19为本发明深度图像的编码装置实施例二的结构示意图;
图20为本发明深度图像的解码装置实施例二的结构示意图;
图21本发明深度图像的解码装置实施例三的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
常用的深度图像编码包括深度建模模式(Depth Modeling Mode,以下简称:DMM)和简化深度编码模式(Simplified Depth Coding,以下简称SDC),其中,深度建模模式是根据预测数据的像素点的像素均值与当前图像块的像素点分别作差获取残差,对残差进行编码,简化深度编码模式是根据预测数据的像素点的像素均值与当前图像块像素点的像素均值作差获取残差,对残差进行编码;DMM与SDC具有一个共同点,即都需要获取预测数据的像素点的像素均值,像素点的像素均值为像素点的像素值的和值除以像素点的个数值的结果,由于图像块的像素点的个数值与像素点的像素值的和值都不固定,并且取值范围很广,例如,在SDC中最大的编码尺寸为32×32,每个像素点的像素值的取值范围为0~255,因此,像素点的像素值的和值的取值范围就为0~218,像素点的个数值的取范围就为0~210,因而,在编码处理过程中,会牵涉到大量的除法操作,然而,在硬件中除法操作需要使用较复杂的逻辑,像素点的像素值的和和像素点的个数的取值范围越大,除法操作的复杂度越高,会导致芯片的面积增大及执行速度变慢,本发明为解决上述问题,通过获取预测数据中像素点的个数值的映射值,并通过移位操作,使得在编码过程中,除法操作的复杂度只与像素点个数值的取值范围有关,从而降低硬件实现的复杂度。
下面以几个具体的实施例对本发明的技术方案进行详细描述。
图1为本发明深度图像的编码方法实施例一的流程示意图,本实施例的执行主体是编码装置,本实施例的方法包括:
S101:获取深度图像当前图像块的预测数据。
深度图像当前图像块的预测数据与所采用的编码模式有关,例如,采用DMM,预测数据为当前图像块相邻的上边一行及左边一列的数据;采用SDC,预测数据与帧内预测模式有关,预测数据为采用帧内预测模式获得的对应的预测数据,预测数据的尺寸与当前图像块的尺寸相同。
当前图像块可以为当前帧内预测块,此外,由于帧内预测中预测块与变换块是绑定的,帧内预测也通常以变换块为单位进行帧内预测;此时,图像块为变换块。
S102:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S103:判断所述预测数据中像素点的个数值是否为0,若否,执行S104,若是执行S107。
S104:将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;
其中,第九数值为固定值或者固定值加偏移量R,R为预测数据中像素点个数的一半,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
S105:将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值。
S106:对第一数值进行移位操作,获得第二数值;
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第一数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,因此,可通过S106的移除操作,获得第二数值,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S107:将一预设常数作为第二数值。
即当预测数据中没有像素点时,将一预设常数作为第二数值,该预设常数一般为0或128左移bit-8位,其中,bit表示图像中像素的位宽。
S108:根据第二数值与当前图像块的像素点的像素值得到当前图像块的残差。
若采用DMM的编码模式,则将第二数值分别与当前图像块的像素点的像素值作差,得到当前图像块的残差,该残差包含至少一个数据。
若采用SDC的编码模式,则将第二数值分别与当前图像块的像素点的像素均值做出,得到当前图像块的残差,该残差仅为一个数据。
S109:对当前图像块的残差进行编码。
对当前图像块的残差进行编码,并将编码后的码流发送到解码端。
在上述S108中,若涉及到的编码方式中也与对当前图像块求均值也可采用与预测图像块获取第二数值类似的方式获得,本发明对此过程不再赘述。
本实施例中,通过将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值,将映射值与预测数据中像素点的像素值的和值相乘,得到第一数值,再对第一数值进行移位操作,获得第二数值,将第二数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
图2为本发明深度图像的编码方法实施例二的流程示意图,本实施例的执行主体是编码装置,本实施例是在预测数据中像素点的个数值不为0的情况下的具体实现方式,本实施例的方法包括:
S201:获取深度图像当前图像块的预测数据。
此步骤与S101类似,在此不再赘述。
S202:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S203:将2N除以预测数据中像素点的个数值,得到映射值。
其中,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
本步骤中之所以要采用2N除以预测数据中像素点的个数值是为了避免产生浮点数。
S204:将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值。
S205:将第一数值右移N位,获得第二数值。
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第一数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,在二进制中将一个数值右移N位相当于将该数值缩小了2N倍,将一个数值左移N位,相当于将该数值增大了2N倍,因此,可通过S205的将第一数值右移N位,获得第二数值,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S206:根据第二数值与当前图像块的像素点的像素值得到当前图像块的残差。
本步骤与S108相似,在此不再赘述。
S207:对当前图像块的残差进行编码。
对当前图像块的残差进行编码,并将编码后的码流发送到解码端。
值得说明的是,在上述实施例中,针对预测数据中像素点的个数值为0的情况,与图1所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过将2N除以预测数据中像素点的个数值,得到映射值。将映射值与预测数据中像素点的像素值的和值相乘,得到第一数值,再将第一数值右移N位,获得第二数值,将第二数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中仅获取映射值的过程中涉及到除法操作,而将2N除以预测数据中像素点的个数值,得到映射值,2N为一固定值,因此,实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,在一定程度上降低了实现的复杂度,减小芯片面积,提高处理速度。
图3为本发明深度图像的编码方法实施例三的流程示意图,本实施例是在预测数据中像素点的个数值不为0的情况下的具体实现方式,本实施例的执行主体是编码装置,图3是在图2所示实施例的基础上,进一步地,在获取预测数据中的像素点的个数值之后,将预测数据中的像素点的个数值右移M位,以缩小预测数据中像素点的个数值的取值范围,再通过对第一数值的移位操作,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等,进一步降低实现的复杂度,本实施例的方法具体包括:
S301:获取深度图像当前图像块的预测数据。
此步骤与S101类似,在此不再赘述。
S302:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S303:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
将预测数据中像素点的个数值右移M位,相当于将预测数据中像素点的个数值缩小为原来的1/2M,其中M为正整数。
S304:将2N除以移位后的预测数据中像素点的个数值,得到映射值。
本步骤中之所以要采用2N除以预测数据中像素点的个数值是为了避免产生浮点数。
S305:将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值。
S306:将第一数值右移N加M位,获得第二数值。
由于将预测数据中像素点的个数值先进行了右移M位,再用2N除以移位后的预测数据中像素点的个数值,得到映射值,将其与预测数据中像素点的个数值的映射值相乘后,获得的第一数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N+M倍,因此,可通过S306的将第一数值右移N+M位,获得第二数值,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S307:根据第二数值与当前图像块的像素点的像素值得到当前图像块的残差。
本步骤与S108相似,在此不再赘述。
S308:对当前图像块的残差进行编码。
值得说明的是,在上述实施例中,针对预测数据中像素点的个数值为0的情况,与图1所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过先将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值,再将2N除以移位后的预测数据中像素点的个数值,得到映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值,将第一数值右移N加M位,获得第二数值,将第二数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中由于先将预测数据中像素点的个数值右移M位,通过2N除以移位后的预测数据中像素点的个数值,得到映射值,仅在2N除以移位后的预测数据中像素点的个数值,得到映射值的过程中涉及除法操作,而2N为一固定值,因此,实现的复杂度仅与移位后的预测数据中像素点的个数值的取值范围有关,进一步地降低了实现的复杂度,减小芯片面积,提高处理速度。
在图3所示实施例中,还有一种可替代的实现方式为,将S304’替代S304;相应地,S306’替代S306。
S304’:将2N-M除以移位后的预测数据中像素点的个数值,得到映射值。
S306’:将第一数值右移N位,获得第二数值。
其他步骤与图3相同,在此不再赘述,该种实现方式的实现原理与实现效果与图3相似,在此不再赘述。
图4为本发明深度图像的编码方法实施例四的流程示意图,本实施例的执行主体是编码装置,图4是在图2与图3的基础上,在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,针对预测数据中像素点的个数值大于预设值的采用图3所示实施例的方法,针对预测数据中像素点的个数值小于预设值的采用图2所示实施例的方法,更进一步地降低了实现的复杂度,本实施例的方法具体包括:
S401:获取深度图像当前图像块的预测数据。
S402:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S403:判断预测数据中像素点的个数值是否大于预设值,若是,执行S404,若否,执行S408。
其中,预设值一般取32、64或者128。
S404:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
S405:将2N除以移位后的预测数据中像素点的个数值,得到映射值。
S406:将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值;
S407:将第一数值右移N加M位,获得第二数值。
上述S404~S407与图3中对应的步骤类似,在此不再赘述。
S408:将2N除以预测数据中像素点的个数值,得到映射值。
S409:将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值;
S410:将第一数值右移N位,获得第二数值。
上述S408~S410与图2中对应的步骤类似,在此不再赘述。
S411:根据第二数值与当前图像块的像素点的像素值得到当前图像块的残差。
S412:对当前图像块的残差进行编码。
上述步骤中,由于增加了判断条件,可以在一定程度上降低实现的复杂度,例如,当预设值为210,当预测数据的像素点的像素值为28时,采用2N除以28,得到一个映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值,将第一数值右移N位,获得第二数值。当预测数据的像素点的像素值为212时,先将212向右移动四位,移位后为28,采用2N除以28,得到一个映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第一数值,将第一数值右移N+M位,获得第二数值。可见在上述过程中针对两个不同的预测数据中像素点的个数值的除法操作与一个像素点的个数值的除法操作的复杂度相同。因此,采用本实施例的方法可更进一步地降低实现的复杂度。
值得说明的是,上述步骤S408~S410是针对预测数据中像素点的个数值小于预设值且不为0的情况下的处理方式,若所述预测数据中像素点的个数值为0的情况,与图1所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,当预测数据中像素点的个数值大于预设值时,采用对像素点个数值移位对应的操作,实现的复杂度仅与移位后的预测数据中像素点的个数值的取值范围有关,能进一步降低实现的复杂度,当预测数据中像素点的个数值小于预设值时,采用对像素点个数值不移位对应的操作,能够保证除法的精度;由于增加了判断条件,更进一步地降低了实现的复杂度。
在上述各实施例中,在对当前图像块的残差进行编码之前还包括对当前图像块所采用的编码方式标志位进行编码,以使解码端根据编码方式标志位获知编码端所采用的编码方式,以采用对应的处理方式恢复解码图像。
编码方式标志位的长度与编码方式的种类有关,例如,若在编码过程中仅采用两种编码方式,分别为SDC和DMM,则可用1表示SDC,用0表示DMM,若编码方式更多,则可通过相应的增加比特位来表示更多的编码方式种类,本发明对此不作限制。
当编码方式采用SDC编码时,一个图像块的残差值为一个数值,可以通过将残差值映射成残差映射值,然后再对残差映射值进行编码,表示残差映射值的比特位小于表示残差的比特位,可以提高编码效率。相应地,解码端对编码结果也可以采用对应的方式进行反映射。
在具体实现时可根据映射表进行映射。例如,当残差为245时,则对应映射表中的像素值为5,采用这种方式可以减少编码比特,提高编码效率。
在上述各实施例中,为了提高除法操作的准确度,提高图像编码的准确度,使解码端能够更准确的恢复图像,涉及将2N除以预测数据中像素点的个数值,得到映射值,或者采用2N除以移位后的预测数据中像素点的个数值,得到映射值的方案,相应地可将“2N”用“2N+R”替代,其中R为偏移量,R的大小等于预测数据中像素点的个数值的一半,或者等于移位后的预测数据中像素点的一半。R为预测数据中像素点的个数的一半也可以通过将预测数据中像素点个数值右移一位获得。本实施例的深度图像的编码方法也可以应用于其他涉及到除法操作的方案中,本发明对此不作限制。
此外,上述各实施例中,由于将2N或2N+R与预测数据中像素点的个数值进行除法操作会存在一定的误差,考虑到上述实施例中的数据均有一定的数值范围,例如均值范围为0~255,为保证上述实施例的结果仍在预设范围内,经上述实施例获得的结果可进行截止(clip)操作,保证数据在预设范围内。
上述各实施例中,残差可为SDC的残差或DMM的残差。
图5为本发明深度图像的解码方法实施例一的流程示意图,本实施例的执行主体是解码装置,本实施例的方法包括:
S501:获取深度图像当前图像块的预测数据和当前图像块的残差。
深度图像当前图像块的预测数据与所采用的编码模式有关,例如,采用DMM,预测数据为当前图像块相邻的上边一行及左边一列的数据;采用SDC,预测数据与帧内预测模式有关,预测数据为采用帧内预测模式获得的对应的预测数据,预测数据的尺寸与当前图像块的尺寸相同。
当前图像块的残差为编码端发送给解码端的码流。
S502:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值;
S503:判断预测数据中像素点的个数是否为0;若否,执行S504,若是,执行S507。
S504:将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值。
其中,第九数值为固定值或者固定值加偏移量R,R为预测数据中像素点个数的一半,,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
S505:将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值。
S506:对第三数值进行移位操作,获得第四数值;
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第三数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,因此,可通过S506的移除操作,获得第四数值,使得第四数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S507:将一预设常数作为第四数值。
即当预测数据中没有像素点时,将一预设常数作为第二数值,该预设常数一般为128或0。
S508:根据残差与第四数值获得当前图像块的像素点的像素值。
若采用DMM的编码模式,则将第四数值分别与残差求和,得到当前图像块的像素点的像素值,该残差为至少一个数据。
若采用SDC的编码模式,则将第四数值与残差求和,将和值作为当前图像块的所有像素点的像素值,该残差仅为一个数据。
本实施例中,通过获取深度图像当前图像块的预测数据和当前图像块的残差;获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值;将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值,将映射值与预测数据中像素点的像素值的和值相乘;获得第三数值;将第三数值进行移位操作,获得第四数值;根据残差与第四数值获得当前图像块的像素点的像素值。解码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
图6为本发明深度图像的解码方法实施例二的流程示意图,本实施例的执行主体是解码装置,本实施例是在预测数据中像素点的个数值不为0的情况下的具体实现方式,本实施例的方法包括:
S601:获取深度图像当前图像块的预测数据和当前图像块的残差。
此步骤与S601类似,在此不再赘述。
S602:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S603:将2N除以预测数据中像素点的个数值,得到映射值。
其中,,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
本步骤中之所以要采用2N除以预测数据中像素点的个数值是为了避免产生浮点数。
S604:将映射值与预测数据中像素点的像素值的和值相乘;获得第三数值。
S605:将第三数值右移N位,获得第四数值。
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第三数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,在二进制中将一个数值右移N位相当于将该数值缩小了2N倍,将一个数值左移N位,相当于将该数值增大了2N倍,因此,可通过S605的将第三数值右移N位,获得第四数值,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S606:根据残差与第四数值获得当前图像块的像素点的像素值。
本步骤与S508相似,在此不再赘述。
值得说明的是,在上述实施例中,针对预测数据中像素点的个数值为0的情况,与图5所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过将2N除以预测数据中像素点的个数值,得到映射值。将映射值与预测数据中像素点的像素值的和值相乘,得到第三数值,再将第三数值右移N位,获得第四数值,根据残差与第四数值获得当前图像块的像素点的像素值。解码过程中仅获取映射值的过程中涉及到除法操作,而将2N除以预测数据中像素点的个数值,得到映射值,2N为一固定值,因此,实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,在一定程度上降低了实现的复杂度,减小芯片面积,提高处理速度。
图7为本发明深度图像的解码方法实施例三的流程示意图,本实施例的执行主体是编码装置,本实施例是在预测数据中像素点的个数值不为0的情况下的具体实现方式,图7是在图6所示实施例的基础上,进一步地,在获取预测数据中的像素点的个数值之后,将预测数据中的像素点的个数值右移M位,以缩小预测数据中像素点的个数值的取值范围,再通过对第一数值的移位操作,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等,进一步降低实现的复杂度,本实施例的方法具体包括:
S701:获取深度图像当前图像块的预测数据和当前图像块的残差。
此步骤与S501类似,在此不再赘述。
S702:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S703:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
将预测数据中像素点的个数值右移M位,相当于将预测数据中像素点的个数值缩小为原来的1/2M。
S704:将2N除以移位后的预测数据中像素点的个数值,得到映射值;
本步骤中之所以要采用2N除以预测数据中像素点的个数值是为了避免产生浮点数。
S705:将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值。
S706:将第三数值右移N加M位,获得第四数值。
由于将预测数据中像素点的个数值先进行了右移M位,再用2N除以除以移位后的预测数据中像素点的个数值,得到映射值,将其与预测数据中像素点的个数值的映射值相乘后,获得的第三数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N+M倍,因此,可通过S706的将第三数值右移N+M位,获得第四数值,使得第四数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S707:根据残差与第四数值获得当前图像块的像素点的像素值。
本步骤与S508相似,在此不再赘述。
值得说明的是,在上述实施例中,针对预测数据中像素点的个数值为0的情况,与图5所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过先将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值,再将2N除以移位后的预测数据中像素点的个数值,得到映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值,将第三数值右移N加M位,获得第四数值,根据残差与第四数值获得当前图像块的像素点的像素值。解码过程中由于先将预测数据中像素点的个数值右移M位,通过2N除以移位后的预测数据中像素点的个数值,得到映射值,仅在2N除以移位后的预测数据中像素点的个数值,得到映射值的过程中涉及除法操作,而2N为一固定值,因此,实现的复杂度仅与移位后的预测数据中像素点的个数值的取值范围有关,进一步地降低了实现的复杂度,减小芯片面积,提高处理速度。
在图7所示实施例中,还有一种可替代的实现方式为,将S704’替代S704;相应地,S706’替代S706,
S704’:将2N-M除以移位后的预测数据中像素点的个数值,得到映射值;
S706’:将第三数值右移N位,获得第四数值。
其他步骤与图5相同,在此不再赘述,该种实现方式的实现原理与实现效果与图5相似,在此不再赘述。
图8为本发明深度图像的解码方法实施例四的流程示意图,本实施例的执行主体是解码装置,图8是在图6与图7的基础上,在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,针对预测数据中像素点的个数值大于预设值的采用图7所示实施例的方法,针对预测数据中像素点的个数值小于预设值的采用图6所示实施例的方法,更进一步地降低了实现的复杂度,本实施例的方法具体包括:
S801:获取深度图像当前图像块的预测数据和当前图像块的残差。
S802:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S803:判断预测数据中像素点的个数值是否大于预设值,若是,执行S804,若否,执行S808。
其中,预设值一般取32、64或者128。
S804:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
S805:将2N除以移位后的预测数据中像素点的个数值,得到映射值。
S806:将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值;
S807:将第三数值右移N加M位,获得第四数值。
上述S804~S807与图7中对应的步骤类似,在此不再赘述。
S808:将2N除以预测数据中像素点的个数值,得到映射值;
S809:将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值;
S810:将第三数值右移N位,获得第四数值。
上述S808~S810与图8中对应的步骤类似,在此不再赘述。
S811:根据残差与第四数值获得当前图像块的像素点的像素值。
本步骤与S508相似,在此不再赘述。
上述步骤中,由于增加了判断条件,可以在一定程度上降低实现的复杂度,例如,当预设值为210,当预测数据的像素点的像素值为28时,采用2N除以28,得到一个映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值,将第三数值右移N位,获得第四数值。当预测数据的像素点的像素值为212时,先将212向右移动四位,移位后为28,采用2N除以28,得到一个映射值,将映射值与预测数据中像素点的像素值的和值相乘,获得第三数值,将第三数值右移N+M位,获得第四数值。可见在上述过程中针对两个不同的预测数据中像素点的个数值的除法操作与一个像素点的个数值的除法操作的复杂度相同。因此,采用本实施例的方法可更进一步地降低实现的复杂度。
值得说明的是,上述步骤S1108~S1110是针对预测数据中像素点的个数值小于预设值且不为0的情况下的处理方式,若所述预测数据中像素点的个数值为0的情况,与图8所示实施例中预测数据中像素点的个数值为0的处理方式相同,在此不再赘述。
本实施例中,通过在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,当预测数据中像素点的个数值大于预设值时,采用对像素点个数值移位对应的操作,实现的复杂度仅与移位后的预测数据中像素点的个数值的取值范围有关,能进一步降低实现的复杂度,当预测数据中像素点的个数值小于预设值时,采用对像素点个数值不移位对应的操作,能够保证除法的精度;由于增加了判断条件,更进一步地降低了实现的复杂度。
在上述各实施例中,在获取深度图像当前图像块的预测数据和当前图像块的残差之前,首先获取当前图像块的编码方式标志位,根据编码方式标志位确定编码端采用的编码方式,采用与编码方式对应的方式恢复解码图像。
编码方式标志位的长度与编码方式的种类有关,例如,若在编码过程中仅采用两种编码方式,分别为SDC和DMM,则可用1表示SDC,用0表示DMM,若编码方式更多,则可通过相应的增加比特位来表示更多的编码方式种类,本发明对此不作限制。
若编码方式采用SDC编码时,并且编码端在对残差进行编码之前,为了提高编码效率,将残差映射为残差映射值,对残差映射值进行编码,表示残差映射值的比特位小于表示残差的比特位,则解码端获得的残差实质上为残差映射值,解码端首先将残差映射值映射为残差,然后再将残差与第四数值进行计算,获得当前图像块的像素点的像素值。
在具体实现时可根据映射表进行映射。解码端的映射表与编码端的映射表相反,例如,编码端为245对应的映射值为5,则解码端5对应的映射值为245,采用该种方式不仅能够提高编码效率,并且也能提高解码端的解码效率。例如,若不采用映射的方式,解码245需要解码8个比特位,而采用映射的方式,仅需解码3个比特位。
在上述各实施例中,为了提高除法操作的准确度,提高图像编码的准确度,涉及将2N除以预测数据中像素点的个数值,得到映射值,或者采用2N除以移位后的预测数据中像素点的个数值,得到映射值的方案,相应地可将“2N”用“2N+R”替代,其中R为偏移量,R的大小等于预测数据中像素点的个数值的一半,或者等于移位后的预测数据中像素点的一半。R为预测数据中像素点的个数的一半也可以通过将预测数据中像素点个数值右移一位获得。
此外,上述各实施例中,由于将2N或2N+R与预测数据中像素点的个数值进行除法操作会存在一定的误差,考虑到上述实施例中的数据均有一定的数值范围,例如均值范围为0~255,为保证上述实施例的结果仍在预设范围内,经上述实施例获得的结果可进行截止(clip)操作,保证数据在预设范围内。
上述各实施例中,残差可为SDC的残差或DMM的残差。
值得说明的是,在上述图5至图8所示实施例中,获取当前图像块的残差的步骤也可以在获取第四数值之后,本发明对此不作限制。
图9为本发明深度图像的编码方法实施例五的流程示意图,本实施例的执行主体是编码装置,本实施例的方法包括:
S901:获取深度图像当前图像块的预测数据。
深度图像当前图像块的预测数据与所采用的编码模式有关,例如,采用DMM,预测数据为当前图像块相邻的上边一行及左边一列的数据;采用SDC,预测数据与帧内预测模式有关,预测数据为采用帧内预测模式获得的对应的预测数据,预测数据的尺寸与当前图像块的尺寸相同。
S902:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S903:获取预测数据中像素点的个数值的映射值。
其中,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
S904:将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值。
S905:对第五数值进行移位操作,获得第六数值;
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第五数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,因此,可通过S905的移除操作,获得第六数值,使得第六数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S906:根据第六数值与当前图像块的像素点的像素值得到当前图像块的残差。
S907:对当前图像块的残差进行编码。
对当前图像块的残差进行编码,并将编码后的码流发送到解码端。
在上述S906中,若涉及到的编码方式中也与对当前图像块求均值也可采用与预测图像块获取第六数值类似的方式获得,本发明对此过程不再赘述。
本实施例中,通过获取预测数据中像素点的个数值的映射值,将映射值与预测数据中像素点的像素值的和值相乘,得到第五数值,再对第五数值进行移位操作,获得第六数值,将第六数值与当前图像块的像素点的像素值得到当前图像块的残差,对当前图像块的残差进行编码,编码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
图10为本发明深度图像的编码方法实施例六的流程示意图,本实施例的执行主体是编码装置,本实施例的方法包括:
S1001:获取深度图像当前图像块的预测数据。
此步骤与S901类似,在此不再赘述。
S1002:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1003:根据预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
查找表中包含两组数据,分别为预测数据中像素点的个数值与预测数据中像素点的个数值对应的映射值,当预测数据中像素点的个数值不为0时,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。当预测数据中像素点的个数值为0时,映射值为一预设常数,一般为128或0。
S1004:将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值。
S1005:将第五数值右移N位,获得第六数值。
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第五数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,在二进制中将一个数值右移N位相当于将该数值缩小了2N倍,将一个数值左移N位,相当于将该数值增大了2N倍,因此,可通过S1005的将第一数值右移N位,获得第六数值,使得第六数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S1006:根据六数值与当前图像块的像素点的像素值得到当前图像块的残差。
本步骤与S906相似,在此不再赘述。
S1007:对当前图像块的残差进行编码。
对当前图像块的残差进行编码,并将编码后的码流发送到解码端。
本实施例中,通过查找表的方式获得预测数据中像素点的个数值对应地映射值,避免了除法操作实现复杂的问题,本实施例中查找表的大小仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度,减小芯片面积,提高处理速度。
图11为本发明深度图像的编码方法实施例七的流程示意图,本实施例的执行主体是编码装置,图11是在图10所示实施例的基础上,进一步地,在获取预测数据中的像素点的个数值之后,将预测数据中的像素点的个数值右移M位,以缩小预测数据中像素点的个数值的取值范围,再通过对第一数值的移位操作,使得第二数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等,进一步降低实现的复杂度,本实施例的方法具体包括:
S1101:获取深度图像当前图像块的预测数据。
此步骤与S901类似,在此不再赘述。
S1102:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1103:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
将预测数据中像素点的个数值右移M位,相当于将预测数据中像素点的个数值缩小为原来的1/2M。
S1104:根据移位后的预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
查找表中包含两组数据,分别为移位后的预测数据中像素点的个数值与移位后的预测数据中像素点的个数值对应的映射值,当预测数据中像素点的个数值不为0时,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。当预测数据中像素点的个数值为0时,映射值为一预设常数,一般为128或0。
S1105:将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值。
S1106:将第五数值右移N加M位,获得第六数值。
由于将预测数据中像素点的个数值先进行了右移M位,再用2N除以移位后的预测数据中像素点的个数值,得到映射值,将其与预测数据中像素点的个数值的映射值相乘后,获得的第五数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N+M倍,因此,可通过S606的将第五数值右移N+M位,获得第六数值,使得第六数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S1107:根据第六数值与当前图像块的像素点的像素值得到当前图像块的残差。
本步骤与S906相似,在此不再赘述。
S1108:对当前图像块的残差进行编码。
本实施例中,通过先将预测数据中的像素点的个数值右移M位,再通过查找表的方式获得移位后的预测数据中像素点的个数值对应地映射值,避免了除法操作实现复杂的问题,并且本实施例中查找表的大小仅与移位后的预测数据中像素点的个数值的取值范围有关,因此,进一步地降低了实现的复杂度,减小芯片面积,提高处理速度。
图12为本发明深度图像的编码方法实施例八的流程示意图,本实施例的执行主体是编码装置,图12是在图10与图11的基础上,在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,针对预测数据中像素点的个数值大于预设值的采用图11所示实施例的方法,针对预测数据中像素点的个数值小于预设值的采用图10所示实施例的方法,更进一步地降低了实现的复杂度,本实施例的方法具体包括:
S1201:获取深度图像当前图像块的预测数据。
S1202:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1203:判断预测数据中像素点的个数值是否大于预设值,若是,执行S1204,若否,执行S1208。
其中,预设值一般取32、64或者128。
S1204:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
S1205:根据移位后的预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
S1206:将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值。
S1207:将第五数值右移N加M位,获得第六数值。
上述S1204~S1207与图11中对应的步骤类似,在此不再赘述。
S1208:根据预测数据中像素点的个数值在查找表中获得个数值对应的映射值;
S1209:将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值;
S1210:将第五数值右移N位,获得第六数值。
上述S1208~S1210与图10中对应的步骤类似,在此不再赘述。
S1211:根据第六数值与当前图像块的像素点的像素值得到当前图像块的残差。
S1212:对当前图像块的残差进行编码。
上述步骤中,由于增加了判断条件,可以在一定程度上降低实现的复杂度,例如,当预设值为210,当预测数据的像素点的像素值为28时,根据28在查找表中获得28对应的映射值;将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值,将第五数值右移N位,获得第六数值。当预测数据的像素点的像素值为212时,先将212向右移动四位,移位后为28,根据28在查找表中获得28对应的映射值;将映射值与预测数据中像素点的像素值的和值相乘,获得第五数值,将第五数值右移N+M位,获得第六数值。可见在上述过程中针对两个不同的预测数据中像素点的个数值的可通过查找查找表中的同一条记录获得。因此,采用本实施例的方法可更进一步地降低实现的复杂度,并且减小查找表的大小。
本实施例中,通过在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,当预测数据中像素点的个数值大于预设值时,采用对像素点个数值移位对应的操作,避免了除法操作,并且查找表的大小仅与移位后的预测数据中像素点的个数值的取值范围有关,能进一步降低实现的复杂度,当预测数据中像素点的个数值小于预设值时,采用对像素点个数值不移位对应的操作,能够获取的映射值的精度;由于增加了判断条件,更进一步地降低了实现的复杂度。
值得说明的是,在上述各实施例中,在获取第六数值的过程中,预测数据中像素点的像素值的和值可以为采样后的像素点的和值,像素点的个数值可以为采样后的像素点的个数值,在获取采样点的过程中可以采用隔点均匀采样的方式,也可以采用部分采样的方式,所谓部分采样的方式就是将预测数据中某一区域的像素点作为采样后的像素点,例如,将预测数据中前N个像素点作为采样后的像素点,或者将中间一部分的像素点作为采样后的像素点,总之,通过减少需要计算的预测数据中像素点的个数来降低计算的复杂度及实现的复杂度的方式都可以,本发明对此不做限制。
在上述各实施例中,在对当前图像块的残差进行编码之前还包括对当前图像块所采用的编码方式标志位进行编码,以使解码端根据编码方式标志位获知编码端所采用的编码方式,以采用对应的处理方式恢复解码图像。
编码方式标志位的长度与编码方式的种类有关,例如,若在编码过程中仅采用两种编码方式,分别为SDC和DMM,则可用1表示SDC,用0表示DMM,若编码方式更多,则可通过相应的增加比特位来表示更多的编码方式种类,本发明对此不作限制。
当编码方式采用SDC编码时,一个图像块的残差值为一个数值,可以通过将残差值映射成残差映射值,然后再对残差映射值进行编码,表示残差映射值的比特位小于表示残差的比特位,可以提高编码效率。相应地,解码端对编码结果也可以采用对应的方式进行反映射。
在具体实现时可根据映射表进行映射。例如,当残差为245时,则对应映射表中的像素值为5,采用这种方式可以减少编码比特,提高编码效率。
本实施例的深度图像的编码方法也可以应用于其他涉及到除法操作的方案中,本发明对此不作限制。
图13为本发明深度图像的解码方法实施例五的流程示意图,本实施例的执行主体是解码装置,本实施例的方法包括:
S1301:获取深度图像当前图像块的预测数据和当前图像块的残差。
深度图像当前图像块的预测数据与所采用的编码模式有关,例如,采用DMM,预测数据为当前图像块相邻的上边一行及左边一列的数据;采用SDC,预测数据与帧内预测模式有关,预测数据为采用帧内预测模式获得的对应的预测数据,预测数据的尺寸与当前图像块的尺寸相同。
当前图像块的残差为编码端发送给解码端的码流。
S1302:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值;
S1303:获取预测数据中像素点的个数值的映射值。
其中,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
S1304:将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值。
S1305:对第七数值进行移位操作,获得第八数值;
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第七数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,因此,可通过S1305的移除操作,获得第八数值,使得第八数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S1306:根据残差与第八数值获得当前图像块的像素点的像素值。
若采用DMM的编码模式,则将第八数值分别与残差求和,得到当前图像块的像素点的像素值,该残差为至少一个数据。
若采用SDC的编码模式,则将第八数值与残差求和,将和值作为当前图像块的所有像素点的像素值,该残差仅为一个数据。
本实施例中,通过获取深度图像当前图像块的预测数据和当前图像块的残差;获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值;获取预测数据中像素点的个数值的映射值,将映射值与预测数据中像素点的像素值的和值相乘;获得第七数值;将第七数值进行移位操作,获得第八数值;根据残差与第八数值获得当前图像块的像素点的像素值。解码过程中的实现的复杂度仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度。
图14为本发明深度图像的解码方法实施例六的流程示意图,本实施例的执行主体是解码装置,本实施例的方法包括:
S1401:获取深度图像当前图像块的预测数据和当前图像块的残差。
此步骤与S1301类似,在此不再赘述。
S1402:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1403:根据预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
查找表中包含两组数据,分别为预测数据中像素点的个数值与预测数据中像素点的个数值对应的映射值,当预测数据中像素点的个数值不为0时,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。当预测数据中像素点的个数值为0时,映射值为一预设常数,一般为128或0。
S1404:将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值。
S1405:将第七数值右移N位,获得第八数值。
由于映射值为预测数据中像素点的个数值的倒数的2N倍,将其与预测数据中像素点的个数值的映射值相乘后,获得的第七数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N倍,在二进制中将一个数值右移N位相当于将该数值缩小了2N倍,将一个数值左移N位,相当于将该数值增大了2N倍,因此,可通过S1405的将第七数值右移N位,获得第七数值,使得第七数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S1406:根据残差与第八数值获得当前图像块的像素点的像素值。
本步骤与S1306相似,在此不再赘述。
本实施例中,通过查找表的方式获得预测数据中像素点的个数值对应地映射值,避免了除法操作实现复杂的问题,本实施例中查找表的大小仅与预测数据中像素点的个数值的取值范围有关,因此,在一定程度上降低了实现的复杂度,减小芯片面积,提高处理速度。
图15为本发明深度图像的解码方法实施例七的流程示意图,本实施例的执行主体是解码装置,图15是在图14所示实施例的基础上,进一步地,在获取预测数据中的像素点的个数值之后,将预测数据中的像素点的个数值右移M位,以缩小预测数据中像素点的个数值的取值范围,再通过对第七数值的移位操作,获得第八数值,使得第八数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等,进一步降低实现的复杂度,本实施例的方法具体包括:
S1501:获取深度图像当前图像块的预测数据和当前图像块的残差。
此步骤与S1301类似,在此不再赘述。
S1502:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1503:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
将预测数据中像素点的个数值右移M位,相当于将预测数据中像素点的个数值缩小为原来的1/2M。
S1504:根据移位后的预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
查找表中包含两组数据,分别为移位后的预测数据中像素点的个数值与移位后的预测数据中像素点的个数值对应的映射值,映射值为预测数据中像素点的个数值的倒数的2N倍,并且上述2N大于预测数据中像素点的个数值,N取整数。
S1505:将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值。
S1506:将第七数值右移N加M位,获得第八数值。
由于将预测数据中像素点的个数值先进行了右移M位,再用2N除以移位后的预测数据中像素点的个数值,得到映射值,将其与预测数据中像素点的个数值的映射值相乘后,获得的第七数值比直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果增大了2N+M倍,因此,可通过S1306的将第七数值右移N+M位,获得第八数值,使得第八数值与直接将预测数据中像素点的像素值的和与像素点的个数值相除的结果相等。
S1507:根据残差与第八数值获得当前图像块的像素点的像素值。
本步骤与S1306相似,在此不再赘述。
本实施例中,通过先将预测数据中的像素点的个数值右移M位,再通过查找表的方式获得移位后的预测数据中像素点的个数值对应地映射值,避免了除法操作实现复杂的问题,并且本实施例中查找表的大小仅与移位后的预测数据中像素点的个数值的取值范围有关,因此,进一步地降低了实现的复杂度,减小芯片面积,提高处理速度。
图16为本发明深度图像的解码方法实施例七的流程示意图,本实施例的执行主体是解码装置,图16是在图14与图15的基础上,在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,针对预测数据中像素点的个数值大于预设值的采用图15所示实施例的方法,针对预测数据中像素点的个数值小于预设值的采用图14所示实施例的方法,更进一步地降低了实现的复杂度,本实施例的方法具体包括:
S1601:获取深度图像当前图像块的预测数据和当前图像块的残差。
此步骤与S1301类似,在此不再赘述。
S1602:获取预测数据中像素点的像素值的和值与预测数据中像素点的个数值。
S1603:判断预测数据中像素点的个数值是否大于预设值,若是,执行S1604,若否,执行S1608。
其中,预设值一般取32、64或者128。
S1604:将预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值。
S1605:根据移位后的预测数据中像素点的个数值在查找表中获得个数值对应的映射值。
S1606:将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值。
S1607:将第七数值右移N加M位,获得第八数值。
上述S1604~S1607与图15中对应的步骤类似,在此不再赘述。
S1608:根据预测数据中像素点的个数值在查找表中获得个数值对应的映射值;
S1609:将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值;
S1610:将第七数值右移N位,获得第八数值。
上述S1608~S1610与图14中对应的步骤类似,在此不再赘述。
S1611:根据残差与第八数值获得当前图像块的像素点的像素值。
本步骤与S1606相似,在此不再赘述。
上述步骤中,由于增加了判断条件,可以在一定程度上降低实现的复杂度,例如,当预设值为210,当预测数据的像素点的像素值为28时,根据28在查找表中获得28对应的映射值;将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值,将第七数值右移N位,获得第八数值。当预测数据的像素点的像素值为212时,先将212向右移动四位,移位后为28,根据28在查找表中获得28对应的映射值;将映射值与预测数据中像素点的像素值的和值相乘,获得第七数值,将第七数值右移N+M位,获得第八数值。可见在上述过程中针对两个不同的预测数据中像素点的个数值的可通过查找查找表中的同一条记录获得。因此,采用本实施例的方法可更进一步地降低实现的复杂度,并且减小查找表的大小。
本实施例中,通过在获取预测数据中的像素点的个数值之后,增加一个判断条件,判断预测数据中像素点的个数值是否大于预设值,当预测数据中像素点的个数值大于预设值时,采用对像素点个数值移位对应的操作,避免了除法操作,并且查找表的大小仅与移位后的预测数据中像素点的个数值的取值范围有关,能进一步降低实现的复杂度,当预测数据中像素点的个数值小于预设值时,采用对像素点个数值不移位对应的操作,能够获取的映射值的精度;由于增加了判断条件,更进一步地降低了实现的复杂度。
值得说明的是,在上述各实施例中,在获取第八数值的过程中,预测数据中像素点的像素值的和值可以为采样后的像素点的和值,像素点的个数值可以为采样后的像素点的个数值,在获取采样点的过程中可以采用隔点均匀采样的方式,也可以采用部分采样的方式,所谓部分采样的方式就是将预测数据中某一区域的像素点作为采样后的像素点,例如,将预测数据中前N个像素点作为采样后的像素点,或者将中间一部分的像素点作为采样后的像素点,总之,通过减少需要计算的预测数据中像素点的个数来降低计算的复杂度及实现的复杂度的方式都可以,本发明对此不做限制。
在上述各实施例中,在获取深度图像当前图像块的预测数据和当前图像块的残差之前,首先获取当前图像块的编码方式标志位,根据编码方式标志位确定编码端采用的编码方式,采用与编码方式对应的方式恢复解码图像。
编码方式标志位的长度与编码方式的种类有关,例如,若在编码过程中仅采用两种编码方式,分别为SDC和DMM,则可用1表示SDC,用0表示DMM,若编码方式更多,则可通过相应的增加比特位来表示更多的编码方式种类,本发明对此不作限制。
若编码方式采用SDC编码时,并且编码端在对残差进行编码之前,为了提高编码效率,将残差映射为残差映射值,对残差映射值进行编码,表示残差映射值的比特位小于表示残差的比特位,则解码端获得的残差实质上为残差映射值,解码端首先将残差映射值映射为残差,然后再将残差与第四数值进行计算,获得当前图像块的像素点的像素值。
在具体实现时可根据映射表进行映射。解码端的映射表与编码端的映射表相反,例如,编码端为245对应的映射值为5,则解码端5对应的映射值为245,采用该种方式不仅能够提高编码效率,并且也能提高解码端的解码效率。例如,若不采用映射的方式,解码245需要解码8个比特位,而采用映射的方式,仅需解码3个比特位。
上述各实施例中,残差可为SDC的残差或DMM的残差。
值得说明的是,在上述图13至图16所示实施例中,获取当前图像块的残差的步骤也可以在获取第八数值之后执行,本发明对此不作限制。
本实施例的深度图像的解码方法也可以应用于其他涉及到除法操作的方案中,本发明对此不作限制。
图17为本发明深度图像的编码装置实施例一的结构示意图,如图17所示,本实施例的方法包括获取模块1701、第一处理模块1702、第二处理模块1703和编码模块1704,其中,获取模块1701用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;第一处理模块1702用于若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;将所述第一数值进行移位操作,获得第二数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;第二处理模块1703用于根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;编码模块1704用于对所述当前图像块的残差进行编码。
本实施例的装置,可用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
在上述实施例中,所述第一处理模块1702具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块1702具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块1702具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块1702具体用于将所述第一数值右移N加M位,获得第二数值。
本实施例的装置,可用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块1702还用于在将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值。
若大于,所述第一处理模块1702具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N加M位,获得第二数值。
若小于,所述第一处理模块1702具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值。
所述第一处理模块1702具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施中,若所述编码方式为SDC,所述编码模块具体1704用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
图18为本发明深度图像的解码装置实施例一的结构示意图,如图18所示,本实施例的装置包括获取模块1801、第一处理模块1802和第二处理模块1803,其中,获取模块1801用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块1802用于若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;将所述第三数值进行移位操作,获得第四数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;
所述第一获取模块还用于获取所述当前图像块的残差;
第二处理模块1803用于根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
本实施例的装置,可用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
在上述实施例中,所述第一处理模块1802具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值。
所述第一处理模块1802具体用于将所述第三数值右移N位,获得第四数值。
本实施例的装置,可用于执行图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块1802具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块1802具体用于将所述第三数值右移N加M位,获得第四数值。
本实施例的装置,可用于执行图7所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块1802还用于将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值。
若小于,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
第一处理模块具体用于将所述第三数值右移N位,获得第四数值。
本实施例的装置,可用于执行图8所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
图19为本发明深度图像的编码装置实施例二的结构示意图,如图19所示,本实施例的装置包括获取模块1901、处理模块1902和编码模块1903,其中,获取模块1901用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;处理模块1902用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;对所述第五数值进行移位操作,获得第六数值;根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;编码模块1903用于对所述当前图像块的残差进行编码。
本实施例的装置,可用于执行图9所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理模块1902具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块1902具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图10所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理模块1902具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块1902具体用于将所述第五数值右移N加M位,获得第六数值。
本实施例的装置,可用于执行图11所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理模块1902还用于获取模块获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理模块1902具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块1902具体用于将所述第五数值右移N加M位,获得第六数值;
若小于,所述处理模块1902具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块1902具体用于将所述第五数值右移N位,获得第六数值。
本实施例的装置,可用于执行图12所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
图20为本发明深度图像的解码装置实施例二的结构示意图,如图20所示,本实施例的解码装置包括获取模块2001、第一处理模块2002、第二处理模块2003,其中,获取模块2001用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;第一处理模块2002用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;将所述第七数值进行移位操作,获得第八数值;
所述获取模块还用于获取所述当前图像块的残差;
第二处理模块2003根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
本实施例的装置,可用于执行图13所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块2002具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块2002具体用于将所述第七数值右移N位,获得第八数值。
本实施例的装置,可用于执行图14所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块2002具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块2002具体用于将所述第七数值右移N加M位,获得第八数值。
本实施例的装置,可用于执行图15所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第一处理模块2002还用于获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块2002具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块2002具体用于将所述第七数值右移N加M位,获得第八数值;
若小于,所述第一处理模块2002具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块2002具体用于将所述第七数值右移N位,获得第八数值。
本实施例的装置,可用于执行图16所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明深度图像的编码装置实施例三的结构,包括处理器,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;判断所述预测数据中像素点的个数值是否为0;若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;将所述第一数值进行移位操作,获得第二数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;对所述当前图像块的残差进行编码。
本实施例的装置,可用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半。
在上述实施例中,所述处理器具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第一数值右移N加M位,获得第二数值。
本实施例的装置,可用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器还用于在将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第一数值右移N加M位,获得第二数值。
若小于,所述处理器具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施中,若所述编码方式为SDC,所述编码模块具体1704用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
本发明深度图像的解码装置实施例三的结构,包括处理器,所述处理器用于获取深度图像当前图像块的预测数据和所述当前图像块的残差;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;判断所述预测数据中像素点的个数值是否为0;若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;将所述第三数值进行移位操作,获得第四数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
本实施例的装置,可用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半。
在上述实施例中,所述处理器具体用于将2N除以所述预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第三数值右移N位,获得第四数值.
本实施例的装置,可用于执行图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述处理器具体用于将所述第三数值右移N加M位,获得第四数值。
本实施例的装置,可用于执行图7所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器还用于将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值。
若小于,所述处理器具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
处理器具体用于将所述第三数值右移N位,获得第四数值。
本实施例的装置,可用于执行图8所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
本发明深度图像的编码装置实施例四的结构示意图,本实施例的装置包括处理器,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;对所述第五数值进行移位操作,获得第六数值;根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;对所述当前图像块的残差进行编码。
本实施例的装置,可用于执行图9所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第一数值右移N位,获得第二数值。
本实施例的装置,可用于执行图10所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第五数值右移N加M位,获得第六数值。
本实施例的装置,可用于执行图11所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器还用于获取模块获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第五数值右移N加M位,获得第六数值;
若小于,所述处理器具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第五数值右移N位,获得第六数值。
本实施例的装置,可用于执行图12所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
本发明深度图像的解码装置实施例四的结构,本实施例的解码装置包括处理器,用于获取深度图像当前图像块的预测数据和所述当前图像块的残差;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;将所述第七数值进行移位操作,获得第八数值;根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
本实施例的装置,可用于执行图13所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第七数值右移N位,获得第八数值。
本实施例的装置,可用于执行图14所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第七数值右移N加M位,获得第八数值。
本实施例的装置,可用于执行图15所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述处理器还用于获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理器具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第七数值右移N加M位,获得第八数值;
若小于,所述处理器具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理器具体用于将所述第七数值右移N位,获得第八数值。
本实施例的装置,可用于执行图16所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
在上述实施例中,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
在上述实施例中,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
在上述实施例中,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
图21本发明深度图像的解码装置实施例三的结构示意图,如图21所示,在实际应用中,在目标区域是矩形图像块的情况下,深度图像的解码装置01的结构如图21所示,包括:熵解码单元011,反扫描单元012,反量化单元013,反变换单元014,预测单元015,组合单元016和帧存储件017。所述深度图像的解码装置01可以位于手机、平板电脑等手持终端设备以及具有视频播放功能的穿戴式终端设备中,也可位于笔记本电脑、台式电脑、通信网络的媒体处理功能节点等装置中,当编码端生成的码流经过熵解码单元011时,由所述熵解码单元011对该码流进行熵解码处理得到一组预测误差的重建数值和头信息(包括运动信息),这一组预测误差的重建数值可以看作是一个1维系数向量,然后所述1维系数向量经过反扫描单元012,由所述反扫描单元012进行反扫描处理得到2维系数块,该2维系数块经过反量化单元013的反量化处理和反变换单元013的反变换处理得到目标区域的预测误差,同时,所述头信息经过预测单元015处理得到目标区域的最终预测,所述处理过程可以参照本发明实施例提供的深度图像的解码方法,所述预测误差与所述最终预测经由组合单元016组合得到经重建的块,所述经重建的块由帧存储件017进行存储,可以在视频播放时显示在所述手机、笔记本电脑等装置的显示器上,也可以在后续预测单元015对头信息进行处理时,辅助确定最终预测。特别的,本发明实施例中,图18或图20中的获取模块1801的功能可以在视频解码装置01的熵解码单元011实现,第一处理模块1802、第二处理模块1803的功能都可以在视频解码装置01的预测单元015实现。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (68)
1.一种深度图像的编码方法,其特征在于,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;
将所述第一数值进行移位操作,获得第二数值;
若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;
根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
对所述当前图像块的残差进行编码。
2.根据权利要求1所述的方法,其特征在于,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
3.根据权利要求2所述的方法,其特征在于,
所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N位,获得第二数值。
4.根据权利要求2所述的方法,其特征在于,
所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N加M位,获得第二数值。
5.根据权利要求2所述的方法,其特征在于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N加M位,获得第二数值。
若小于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第一数值进行移位操作,获得第二数值包括:
将所述第一数值右移N位,获得第二数值。
6.根据权利要求1~5中任一项所述的方法,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
7.根据权利要求1~6中任一项所述的方法,其特征在于,所述对所述当前图像块的残差进行编码之前,还包括:
编码所述当前图像块的编码方式标志位。
8.根据权利要求7所述的方法,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
9.根据权利要求8所述的方法,其特征在于,若所述编码方式为SDC,对所述当前图像块的残差进行编码包括:
将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;
编码所述残差映射值。
10.一种深度图像的解码方法,其特征在于,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获得映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;
将所述第三数值进行移位操作,获得第四数值;
若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;
获取所述当前图像块的残差;根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
11.根据权利要求10所述的方法,其特征在于,所述所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
12.根据权利要求11所述的方法,其特征在于,
将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N位,获得第四数值。
13.根据权利要求11所述的方法,其特征在于,
将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值。
14.根据权利要求11所述的方法,其特征在于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加偏移量R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值;
若小于,所述将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值包括:
将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N位,获得第四数值。
15.根据权利要求10~14中任一项所述的方法,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
16.根据权利要求10~15中任一项所述的方法,其特征在于,所述获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,还包括:
获取当前图像块的编码方式标志位。
17.根据权利要求16所述的方法,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
18.根据权利要求17所述的方法,其特征在于,若所述编码方式为SDC,所述获取当前图像块的残差包括:
获取所述当前图像块的残差映射值;
将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
19.一种深度图像的编码方法,其特征在于,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
获取所述预测数据中像素点的个数值的映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;
对所述第五数值进行移位操作,获得第六数值;
根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
对所述当前图像块的残差进行编码。
20.根据权利要求19所述的方法,其特征在于,
所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第一数值右移N位,获得第二数值。
21.根据权利要求19所述的方法,其特征在于,
所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第五数值右移N加M位,获得第六数值。
22.根据权利要求19所述的方法,其特征在于,所述获取所述预测数据中像素点的个数值之后,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值包括:
将所述第五数值右移N加M位,获得第六数值;
若小于,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第五数值进行移位操作,获得第六数值;
将所述第五数值右移N位,获得第六数值。
23.根据权利要求19~22中任一项所述的方法,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
24.根据权利要求19~22中任一项所述的方法,其特征在于,所述对所述当前图像块的残差进行编码之前,还包括:
编码所述当前图像块的编码方式标志位。
25.根据权利要求24所述的方法,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
26.根据权利要求25所述的方法,其特征在于,若所述编码方式为SDC,对所述当前图像块的残差进行编码包括:
将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;
编码所述残差映射值。
27.一种深度图像的解码方法,其特征在于,包括:
获取深度图像当前图像块的预测数据;
获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
获取所述预测数据中像素点的个数值的映射值;
将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;
将所述第七数值进行移位操作,获得第八数值;
获得所述当前图像块的残差,根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
28.根据权利要求27所述的方法,其特征在于,
所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N位,获得第八数值。
29.根据权利要求28所述的方法,其特征在于,
所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N加M位,获得第八数值。
30.根据权利要求29所述的方法,其特征在于,所述获取所述预测数据中像素点的个数值之后,还包括:
判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述获取所述预测数据中像素点的个数值的映射值包括:
将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值包括:
将所述第七数值右移N加M位,获得第八数值;
若小于,所述获取所述预测数据中像素点的个数值的映射值包括:
根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述对所述第七数值进行移位操作,获得第八数值;
将所述第七数值右移N位,获得第八数值。
31.根据权利要求27~30中任一项所述的方法,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
32.根据权利要求27~31中任一项所述的方法,其特征在于,所述获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,还包括:
获取当前图像块的编码方式标志位。
33.根据权利要求32所述的方法,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
34.根据权利要求33所述的方法,其特征在于,若所述编码方式为SDC,所述获取当前图像块的残差包括:
获取所述当前图像块的残差映射值;
将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
35.一种深度图像的编码装置,其特征在于,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第一数值;将所述第一数值进行移位操作,获得第二数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第二数值;
第二处理模块,用于根据所述第二数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
编码模块,用于对所述当前图像块的残差进行编码。
36.根据权利要求35所述的装置,其特征在于,所述第九数值为一固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
37.根据权利要求36所述的装置,其特征在于,
所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N位,获得第二数值。
38.根据权利要求36所述的装置,其特征在于,
所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N加M位,获得第二数值。
39.根据权利要求36所述的装置,其特征在于,所述第一处理模块还用于在将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N加M位,获得第二数值;
若小于,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第一数值右移N位,获得第二数值。
40.根据权利要求35~39中任一项所述的装置,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
41.根据权利要求35~40中任一项所述的装置,其特征在于,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
42.根据权利要求41所述的装置,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
43.根据权利要求42所述的装置,其特征在于,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
44.一种深度图像的解码装置,其特征在于,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于判断所述预测数据中像素点的个数值是否为0;若所述预测数据中像素点的个数值不为0,则将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第三数值;将所述第三数值进行移位操作,获得第四数值;若所述预测数据中像素点的个数值为0,则将一预设常数作为第四数值;
所述获取模块还用于获取所述当前图像块的残差;
第二处理模块,用于根据所述残差与所述第四数值获得所述当前图像块的像素点的像素值。
45.根据权利要求44所述的装置,其特征在于,所述第九数值为固定值或者所述固定值加偏移量R,所述固定值为2N,所述偏移量为预测数据中像素点个数值的一半,或者所述偏移量为预测数据中像素点个数值右移一位。
46.根据权利要求45所述的装置,其特征在于,
所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第三数值右移N位,获得第四数值。
47.根据权利要求45所述的装置,其特征在于,
所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述第一处理模块具体用于将所述第三数值右移N加M位,获得第四数值。
48.根据权利要求45所述的装置,其特征在于,所述第一处理模块还用于将第九数值与所述预测数据中像素点的个数值进行除法操作,获取映射值之前,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
将2N或者2N加R除以所述移位后的预测数据中像素点的个数值,得到所述映射值;
所述对所述第三数值进行移位操作,获得第四数值包括:
将所述第三数值右移N加M位,获得第四数值;
若小于,所述第一处理模块具体用于将2N或者2N加R除以所述预测数据中像素点的个数值,得到所述映射值;
第一处理模块具体用于将所述第三数值右移N位,获得第四数值。
49.根据权利要求44~48中任一项所述的装置,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
50.根据权利要求44~49中任一项所述的装置,其特征在于,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
51.根据权利要求50所述的装置,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
52.根据权利要求51所述的装置,其特征在于,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
53.一种深度图像的编码装置,其特征在于,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
处理模块,用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘,获得第五数值;对所述第五数值进行移位操作,获得第六数值;根据所述第六数值与所述当前图像块的像素点的像素值得到当前图像块的残差;
编码模块,用于对所述当前图像块的残差进行编码。
54.根据权利要求53所述的装置,其特征在于,
所述处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第一数值右移N位,获得第二数值。
55.根据权利要求53所述的装置,其特征在于,
所述处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N加M位,获得第六数值。
56.根据权利要求53所述的装置,其特征在于,所述处理模块还用于获取模块获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N加M位,获得第六数值;
若小于,所述处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述处理模块具体用于将所述第五数值右移N位,获得第六数值。
57.根据权利要求53~56中任一项所述的装置,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
58.根据权利要求53~57中任一项所述的装置,其特征在于,所述编码模块还用于对所述当前图像块的残差进行编码之前,编码所述当前图像块的编码方式标志位。
59.根据权利要求58所述的装置,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
60.根据权利要求58所述的装置,其特征在于,若所述编码方式为SDC,所述编码模块具体用于将所述残差映射成残差映射值,表示所述残差映射值的比特位小于表示所述残差的比特位;编码所述残差映射值。
61.一种深度图像的解码装置,其特征在于,包括:
获取模块,用于获取深度图像当前图像块的预测数据;获取所述预测数据中像素点的像素值的和值与所述预测数据中像素点的个数值;
第一处理模块,用于获取所述预测数据中像素点的个数值的映射值;将所述映射值与所述预测数据中像素点的像素值的和值相乘;获得第七数值;将所述第七数值进行移位操作,获得第八数值;
所述获取模块,还用于获取所述当前图像块的残差;
第二处理模块,根据所述残差与所述第八数值获得所述当前图像块的像素点的像素值。
62.根据权利要求61所述的装置,其特征在于,
所述第一处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N位,获得第八数值。
63.根据权利要求61所述的装置,其特征在于,
所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N加M位,获得第八数值。
64.根据权利要求61所述的装置,其特征在于,所述第一处理模块还用于获取所述预测数据中像素点的个数值之后,判断所述预测数据中像素点的个数值是否大于预设值;
若大于,所述第一处理模块具体用于将所述预测数据中像素点的个数值右移M位,得到移位后的预测数据中像素点的个数值;
根据所述移位后的预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N加M位,获得第八数值;
若小于,所述第一处理模块具体用于根据所述预测数据中像素点的个数值在查找表中获得所述个数值对应的映射值;
所述第一处理模块具体用于将所述第七数值右移N位,获得第八数值。
65.根据权利要求61~64中任一项所述的装置,其特征在于,所述像素点的像素值的和值为采样后的像素点的和值,所述像素点的个数值为采样后的像素点的个数值。
66.根据权利要求61~65中任一项所述的装置,其特征在于,所述获取模块还用于获取深度图像当前图像块的预测数据和所述当前图像块的残差之前,获取当前图像块的编码方式标志位。
67.根据权利要求66所述的装置,其特征在于,所述编码方式为深度建模模式DMM或简化深度编码模式SDC;
相应地,所述编码方式标志位为DMM标志位或SDC标志位。
68.根据权利要求67所述的装置,其特征在于,若所述编码方式为SDC,所述获取模块具体用于获取所述当前图像块的残差映射值;将所述残差映射值映射成残差,将所述残差作为所述当前图像块的残差,表示所述残差映射值的比特位小于表示所述残差的比特位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310127501.1A CN103237214B (zh) | 2013-04-12 | 2013-04-12 | 深度图像的编解码方法和编解码装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310127501.1A CN103237214B (zh) | 2013-04-12 | 2013-04-12 | 深度图像的编解码方法和编解码装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103237214A true CN103237214A (zh) | 2013-08-07 |
CN103237214B CN103237214B (zh) | 2016-06-08 |
Family
ID=48885227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310127501.1A Active CN103237214B (zh) | 2013-04-12 | 2013-04-12 | 深度图像的编解码方法和编解码装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103237214B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841422A (zh) * | 2014-03-21 | 2014-06-04 | 华为技术有限公司 | 深度图像的帧内预测方法和装置 |
CN104079942A (zh) * | 2014-06-25 | 2014-10-01 | 华为技术有限公司 | 一种图像处理方法、装置及系统 |
WO2015055146A1 (zh) * | 2013-10-18 | 2015-04-23 | 浙江大学 | 深度图像的编码、解码处理方法及装置 |
CN104618724A (zh) * | 2013-10-17 | 2015-05-13 | 联发科技股份有限公司 | 视频编码或解码的方法及装置 |
WO2015196929A1 (zh) * | 2014-06-26 | 2015-12-30 | 华为技术有限公司 | 一种帧内深度图像块编码、解码的方法及装置 |
CN106464908A (zh) * | 2014-06-20 | 2017-02-22 | 三星电子株式会社 | 用于传输深度图像的预测模式以供层间视频编码和解码的方法和装置 |
TWI622022B (zh) * | 2017-07-13 | 2018-04-21 | 鴻海精密工業股份有限公司 | 深度計算方法及其裝置 |
CN108134940A (zh) * | 2018-01-22 | 2018-06-08 | 合肥工业大学 | 应用于视频编解码中深度图像帧内预测的编码电路及其编码方法 |
CN109274951A (zh) * | 2017-07-13 | 2019-01-25 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929585A (zh) * | 2006-09-20 | 2007-03-14 | 四川长虹电器股份有限公司 | Ntsc制图像信号转换为pal制图像信号的插值算法 |
CN101145336A (zh) * | 2006-09-12 | 2008-03-19 | 普诚科技股份有限公司 | 影像处理方法及缩放系统 |
US20100128995A1 (en) * | 2008-01-18 | 2010-05-27 | Virginie Drugeon | Image coding method and image decoding method |
CN102790892A (zh) * | 2012-07-05 | 2012-11-21 | 清华大学 | 深度图编码方法及装置 |
-
2013
- 2013-04-12 CN CN201310127501.1A patent/CN103237214B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145336A (zh) * | 2006-09-12 | 2008-03-19 | 普诚科技股份有限公司 | 影像处理方法及缩放系统 |
CN1929585A (zh) * | 2006-09-20 | 2007-03-14 | 四川长虹电器股份有限公司 | Ntsc制图像信号转换为pal制图像信号的插值算法 |
US20100128995A1 (en) * | 2008-01-18 | 2010-05-27 | Virginie Drugeon | Image coding method and image decoding method |
CN102790892A (zh) * | 2012-07-05 | 2012-11-21 | 清华大学 | 深度图编码方法及装置 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618724A (zh) * | 2013-10-17 | 2015-05-13 | 联发科技股份有限公司 | 视频编码或解码的方法及装置 |
CN104618724B (zh) * | 2013-10-17 | 2017-11-10 | 寰发股份有限公司 | 视频编码或解码的方法及装置 |
CN104581184B (zh) * | 2013-10-18 | 2018-05-01 | 浙江大学 | 深度图像的编码、解码处理方法及装置 |
WO2015055146A1 (zh) * | 2013-10-18 | 2015-04-23 | 浙江大学 | 深度图像的编码、解码处理方法及装置 |
CN104581184A (zh) * | 2013-10-18 | 2015-04-29 | 浙江大学 | 深度图像的编码、解码处理方法及装置 |
CN103841422A (zh) * | 2014-03-21 | 2014-06-04 | 华为技术有限公司 | 深度图像的帧内预测方法和装置 |
US10368098B2 (en) | 2014-06-20 | 2019-07-30 | Samsung Electronics Co., Ltd. | Method and device for transmitting prediction mode of depth image for interlayer video encoding and decoding |
CN106464908A (zh) * | 2014-06-20 | 2017-02-22 | 三星电子株式会社 | 用于传输深度图像的预测模式以供层间视频编码和解码的方法和装置 |
CN104079942A (zh) * | 2014-06-25 | 2014-10-01 | 华为技术有限公司 | 一种图像处理方法、装置及系统 |
WO2015196860A1 (zh) * | 2014-06-25 | 2015-12-30 | 华为技术有限公司 | 一种图像处理方法、装置及系统 |
CN104079942B (zh) * | 2014-06-25 | 2017-06-06 | 华为技术有限公司 | 一种图像处理方法、装置及系统 |
CN104079943B (zh) * | 2014-06-26 | 2017-11-28 | 华为技术有限公司 | 一种帧内深度图像块编码、解码的方法及装置 |
US10218985B2 (en) | 2014-06-26 | 2019-02-26 | Huawei Technologies Co., Ltd. | Intra-frame depth map block encoding and decoding methods, and apparatus |
WO2015196929A1 (zh) * | 2014-06-26 | 2015-12-30 | 华为技术有限公司 | 一种帧内深度图像块编码、解码的方法及装置 |
US10951901B2 (en) | 2014-06-26 | 2021-03-16 | Huawei Technologies Co., Ltd. | Intra-frame depth map block encoding and decoding methods, and apparatus |
TWI622022B (zh) * | 2017-07-13 | 2018-04-21 | 鴻海精密工業股份有限公司 | 深度計算方法及其裝置 |
CN109274951A (zh) * | 2017-07-13 | 2019-01-25 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
US10380750B2 (en) | 2017-07-13 | 2019-08-13 | Hon Hai Precision Industry Co., Ltd. | Image depth calculating device and method |
CN109274951B (zh) * | 2017-07-13 | 2020-11-10 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
CN108134940A (zh) * | 2018-01-22 | 2018-06-08 | 合肥工业大学 | 应用于视频编解码中深度图像帧内预测的编码电路及其编码方法 |
CN108134940B (zh) * | 2018-01-22 | 2019-11-08 | 合肥工业大学 | 应用于视频编码中深度图像帧内预测的编码电路及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103237214B (zh) | 2016-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103237214A (zh) | 深度图像的编解码方法和编解码装置 | |
KR102071764B1 (ko) | 영상 부호화, 복호화 방법 및 장치 | |
CN101478672A (zh) | 视频编码、解码方法及装置和视频处理系统 | |
CN100415002C (zh) | 多模式多视点视频信号编码压缩方法 | |
KR101590185B1 (ko) | 3차원 메쉬정보 압축 및 복원 방법 | |
AU2020207860A1 (en) | Image encoding method and apparatus, and image decoding method and apparatus | |
CN102710934B (zh) | 一种运动预测或补偿方法 | |
CN104602017A (zh) | 视频编码器、方法和装置及其帧间模式选择方法和装置 | |
CN102611887B (zh) | 非整像素位置运动矢量的坐标值取整方法和装置 | |
CN101895768A (zh) | 一种多视点视频位流的解码方法及其解码装置 | |
CN103402091B (zh) | 云桌面图像分类与编码方法 | |
CN103024397B (zh) | 确定时域运动矢量预测值的方法和装置 | |
CN107409214A (zh) | 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备 | |
CN102801979A (zh) | 多路视频混合编码方法及装置 | |
KR20230155621A (ko) | 움직임 벡터 예측 방법 및 장치, 인코더, 그리고 디코더 | |
Wang et al. | Spherical coordinates transform-based motion model for panoramic video coding | |
CN101494778B (zh) | 一种多视点可伸缩编码框架 | |
EP3273693A1 (en) | Video encoding and decoding method, encoder and decoder | |
CN102595110B (zh) | 视频编码方法、解码方法及终端 | |
CN103716629A (zh) | 用于图像处理的方法、装置编码器和解码器 | |
CN103237213B (zh) | 视频编码方法和视频解码方法及相关装置 | |
CN103686179A (zh) | 使用参数集的编码、解码方法及装置、电子设备 | |
CN106921869A (zh) | 一种图片文件处理方法及其设备 | |
CN104506866A (zh) | 一种适用于多码流的视频编码处理方法和视频编码器 | |
CN102215405A (zh) | 3d视频信号压缩编解码方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |