CN104333760A - 三维图像编码方法和三维图像解码方法及相关装置 - Google Patents

三维图像编码方法和三维图像解码方法及相关装置 Download PDF

Info

Publication number
CN104333760A
CN104333760A CN201410531608.7A CN201410531608A CN104333760A CN 104333760 A CN104333760 A CN 104333760A CN 201410531608 A CN201410531608 A CN 201410531608A CN 104333760 A CN104333760 A CN 104333760A
Authority
CN
China
Prior art keywords
prediction samples
adjacent prediction
image block
current image
samples point
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
Application number
CN201410531608.7A
Other languages
English (en)
Other versions
CN104333760B (zh
Inventor
陈旭
郑萧桢
林永兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410531608.7A priority Critical patent/CN104333760B/zh
Publication of CN104333760A publication Critical patent/CN104333760A/zh
Priority to PCT/CN2015/084074 priority patent/WO2016054937A1/zh
Priority to EP15848924.5A priority patent/EP3099071A4/en
Priority to US15/362,448 priority patent/US10116965B2/en
Priority to US16/113,531 priority patent/US10397612B2/en
Application granted granted Critical
Publication of CN104333760B publication Critical patent/CN104333760B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

本发明实施例公开了一种三维图像编码方法和三维图像解码方法和相关装置。一种三维视频解码方法,可包括:从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;若解码得到的单一采样标识位指示出当前图像块对应的解码模式为单一深度帧内模式,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对第一相邻预测采样点和第二相邻预测采样点检测的结果构建采样候选列表,其中,采样候选列表具有第一索引位置和第二索引位置;从视频码流中解码得到当前图像块所对应的单一采样索引标识位。本发明实施例方案有利于降低基于SDM的编解码算法的复杂度,减少存储空间的占用需求。

Description

三维图像编码方法和三维图像解码方法及相关装置
技术领域
本发明涉及图像处理技术领域,具体涉及三维图像编码方法和三维图像解码方法和相关装置。
背景技术
随着光电采集技术的发展及不断增长的高清数字视频需求,视频数据量越来越大,有限异构的传输带宽、多样化的视频应用不断地对视频编码效率提出了更高的需求,高性能视频编码(英文:high efficient video coding,缩写:HEVC)标准的制定工作因需启动。
视频编码压缩的基本原理是利用空域、时域和码字之间的相关性,尽可能去除冗余。目前流行做法是采用基于块的混合视频编码框架,通过预测(包括帧内预测和帧间预测)、变换、量化、熵编码等步骤实现视频编码压缩。帧内预测技术利用当前图像块的空间像素信息去除当前图像块的冗余信息以获得残差。帧间预测技术利用当前图像邻近的已编码或已解码图像像素信息去除当前图像块的冗余信息以获得残差。这种编码框架显示了很强的生命力,HEVC也仍沿用这种基于块的混合视频编码框架。
三维(英文:3 Dimensions,缩写:3D)视频编解码中为了能够反映出物体深度信息,需要对深度图进行编解码。由于深度图数据较纹理图数据有着一些不同的信号特性。最突出的是有着很多深度值近似的平滑区域,很多情况下平滑区域中的采样点可采用同一深度值。因此对于深度图中的图像块引入了基于单一深度帧内模式(英文:Single depth intra mode,缩写:SDM)的编解码算法。其中,SDM的核心是简化当前图像块的重构,可用1个深度值来代表当前图像块的整个平滑区域的深度值。
在传统的基于SDM的编解码算法中,需要对当前图像块周边的至少5个相邻预测采样点按照设定检测顺序进行检测,获取得到相应深度值并写入到采样候选列表中,也就是说,传统机制中是根据至少5个相邻预测采样点的检测结果来构建采样候选列表。由于构建采样候选列表时存在至少5个相邻预测采样点需要参考,这使得传统机制的编解码复杂度可能就相对比较高,所需存储空间也相对较多。
发明内容
本发明实施例提供了一种三维图像编码方法和三维图像解码方法和相关装置,以期能够降低基于SDM的编解码算法的复杂度,减少存储空间的占用需求。
本发明第一方面提供一种三维视频解码方法,可包括:
从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;
若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
从所述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;
根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
结合第一方面,在第一种可能的实施方式中,
所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或者等于255,所述x1为正整数。
结合第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或者等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
本发明第二方面提供一种三维视频编码方法,包括:
对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置或所述第二索引位置。
结合第二方面,在第一种可能的实施方式中,
所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。
结合第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施方式中,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式,在第二方面的第六种可能的实施方式中,将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,还包括:利用位于所述采样候选列表中的所述第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的所述第二索引位置的深度值计算所述当前图像块对应的第二率失真代价;
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第二索引位置。
本发明第三方面提供一种视频解码装置,包括:
解码单元,用于从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;
检测单元,用于若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
构建单元,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
所述解码单元还用于从所述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;
图像重构单元,用于根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
结合第三方面,在第一种可能的实施方式中,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
结合第三方面的第一种可能的实施方式,在第三方面的第二种可能的实施方式中,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或者等于255,所述x1为正整数。
结合第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式,在第三方面的第三种可能的实施方式中,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或者等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
结合第三方面或第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式或第三方面的第三种可能的实施方式,在第三方面的第四种可能的实施方式中,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第三方面的第四种可能的实施方式,在第三方面的第五种可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
本发明第四方面提供一种视频编码装置,包括:
检测单元,用于对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
构建单元,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
编码单元,用于将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,
其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置或所述第二索引位置。
结合第四方面,在第一种可能的实施方式中,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
结合第四方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。
结合第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式,在第四方面的第三种可能的实施方式中,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式,在第四方面的第四种可能的实施方式中,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第四方面的第四种可能的实施方式,在第四方面的第五种可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式或第四方面的第四种可能的实施方式或第四方面的第五种可能的实施方式,在第四方面的第六种可能的实施方式中,
所述视频编码装置还包括:
测算单元,用于在将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,利用位于所述采样候选列表中的所述第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的所述第二索引位置的深度值计算所述当前图像块对应的第二率失真代价;
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第二索引位置。
可以看出,本发明一些实施例提供的编码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;将所述当前图像块对应的单一采样标识位和单一采样索引标识位写入视频码流,单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。其中,由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点,也就是说,上述方案构建采样候选列表可以只参考两个相邻预测采样点的检测结果,有利于简化构建采样候选列表的过程,可见相对于传统方案,上述方案有利于降低基于SDM的编码算法的复杂度,减少存储空间的占用需求。
可以看出,本发明一些实施例的解码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;对所述视频码流中的所述当前图像块所对应的单一采样索引标识位进行解码;并根据解码出的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值,将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点,即,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,有利于简化构建采样候选列表的过程,因此,相对于传统的方案,上述方案有利于降低基于SDM的解码算法的复杂度,减少存储空间的占用需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种三维图像编码方法的流程示意图;
图2-a是本发明实施例提供的一种当前图像块的相邻预测采样点的位置示意图;
图2-b是本发明实施例提供的另一种当前图像块的相邻预测采样点的位置示意图;
图3是本发明实施例提供的一种三维图像解码方法的流程示意图;
图4是本发明实施例提供的另一种三维图像编码方法的流程示意图;
图5是本发明实施例提供的另一种三维图像解码方法的流程示意图;
图6是本发明实施例提供的一种视频解码装置的示意图;
图7是本发明实施例提供的一种视频编码装置的示意图;
图8是本发明实施例提供的另一种视频编码装置的示意图;
图9是本发明实施例提供的另一种视频解码装置的示意图。
具体实施方式
本发明实施例提供了一种三维图像编码方法和三维图像解码方法和相关装置,以期能够降低基于SDM的编解码算法的复杂度,减少存储空间的占用需求。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面先介绍本发明实施例提供的三维视频编码方法,本发明实施例提供的三维视频编码方法的执行主体是视频编码装置,其中,该视频编码装置可以是任何需要输出或存储视频的装置,如笔记本电脑、平板电脑、个人电脑、手机或视频服务器等设备。
本发明三维视频编码方法的一实施例,一种三维视频编码方法包括:对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,所述采样候选列表具有第一索引位置和第二索引位置;将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。
首先参见图1,图1为本发明的一实施例提供的一种三维视频编码方法的流程示意图,如图1所示,本发明的一实施例提供的一种三维视频编码方法可以包括以下内容:
101、对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测可以包括:对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
可选的,在本发明一些可能实施方式中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,可包括:仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
102、根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表(英文:sample candidate list)。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值,其中,位于采样候选列表中的候选深度值亦可称之为候选采样值或候选值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
103、将所述当前图像块对应的单一采样标识位写入视频码流。
其中,单一采样标识位(英文:single_sample_flag)指示出所述当前图像块对应的解码模式是否为单一深度帧内模式(SDM),本发明实施例中主要以所述当前图像块对应的单一采样标识位指示出所述当前图像块对应的解码模式为SDM为例。例如,当所述单一采样标识位被置“0”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,当所述单一采样索引标识位被置“1”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为非单一深度帧内模式,当然反之亦可。
其中,SDM的核心是简化当前图像块的重构过程,具体可用1个深度值来重构当前图像块,使得当前图像块为平滑区域,平滑区域中的各像素点的深度值一致。
104、将所述当前图像块对应的单一采样索引标识位写入所述视频码流。
其中,所述单一采样索引(英文:single_sample_idx)标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。例如,当单一采样索引标识位置“0”时,所述单一采样索引标识位可指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置,当所述单一采样索引标识位置“1”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值(英文:predSample)位于所述采样候选列表中的第二索引位置,当然反之亦可。其中,第一索引位置和第二索引位置可能具有相同或者不同的写入优先级。
其中,在本发明一些可能的实现过程中,可以通过一次写入操作将所述当前图像块对应的单一采样索引标识位和单一采样标识位写入视频码流,也可通过两次写入操作分别将所述当前图像块对应的单一采样索引标识位和单一采样标识位写入视频码流。也就是说,步骤103和步骤104可能同步执行或者不同步执行。
可以看出,本实施例的编码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;将所述当前图像块对应的单一采样标识位和单一采样索引标识位写入视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。其中,由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,也就是说,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,有利于简化构建采样候选列表的过程,因此相对于传统方案(传统方案中构建采样候选列表参考当前图像块的至少5个相邻预测采样点),上述方案有利于降低基于SDM的编码算法的复杂度,减少存储空间的占用需求。
其中,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的实现方式可能是多种多样的。其中,所述第一相邻预测采样点和所述第二相邻预测采样点可能具有相同或不同的检测顺序。
举例来说,所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,可以包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何深度值(在这种情况下,可以认为采样候选列表之中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可以理解的是,所谓当前图像块的某个相邻预测采样点(例如第一相邻预测采样点或第二相邻预测采样点)可得,是指该当前图像块的该某个相邻预测采样点可用于帧内预测,所谓当前图像块的某个相邻预测采样点不可得,是指该当前图像块的该某个相邻预测采样点不可用于帧内预测。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点(具体位置例如图2-a中的像素点B0)、
所述当前图像块中的左上角像素点的左方相邻像素点(具体位置例如图2-a中的像素点A0)、
所述当前图像块中的左上角像素点的左上方相邻像素点(具体位置例如图2-a中的像素点B-1)、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点(具体位置例如图2-a中的像素点Bn/2)和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点(具体位置例如图2-a中的像素点An/2)。
其中,图2-a中示出,当前图像块的上边缘左方起始位置的像素点为上边缘的第0个像素点B0,当前图像块的左边缘上方起始位置的像素点为左边缘的第0个像素点A0
可选的,在本发明一些可能的实施方式中,如图2-b所示,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,还可包括:利用位于所述采样候选列表中的第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的第二索引位置的深度值计算所述当前图像块对应的第二率失真代价。
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。
当然,亦可能通过其他方式来确定所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置还是第二索引位置。例如,当位于所述采样候选列表中的第一索引位置的深度值和第二索引位置的深度值相同,则所述单一采样索引标识位可指示所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置和第二索引位置中的任意一个。
下面介绍本发明实施例提供的三维视频解码方法,本发明实施例提供的三维视频解码方法的执行主体是视频解码装置,其中,该视频解码装置可以是任何需要输出或存储视频的装置,如笔记本电脑、平板电脑、个人电脑、手机或视频服务器等设备。
本发明三维视频解码方法的一实施例,一种三维视频解码方法包括:从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;从视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
请参见图3,图3为本发明的另一实施例提供的一种三维视频解码方法的流程示意图,如图3所示,本发明的另一实施例提供的一种三维视频解码方法可以包括以下内容:
301、从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位。
302、若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测可以包括:对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
可选的,在本发明一些可能实施方式中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,可包括:仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
其中,单一采样标识位指示出所述当前图像块对应的解码模式是否为单一深度帧内模式,本发明实施例中主要以所述当前图像块对应的单一采样标识位指示出所述当前图像块对应的解码模式为SDM为例。例如当所述单一采样标识位被置“0”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,当所述单一采样索引标识位置“1”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为非单一深度帧内模式,当然反之亦可。本发明实施例中主要以所述当前图像块对应的单一采样标识位指示出所述当前图像块对应的解码模式为SDM为例。
303、从上述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位。
304、根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值。
其中,在一些可能的实现过程中,可以通过一次解码操作从视频码流中解码得到所述当前图像块所对应的单一采样索引标识位和单一采样标识位,也可通过两次解码操作分别从视频码流中解码得到所述当前图像块所对应的单一采样索引标识位和单一采样标识位。也就是说,步骤301和步骤303可能同步执行或不同步执行。
其中,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或者第二索引位置。例如当所述单一采样索引标识位置“0”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置,当所述单一采样索引标识位置“1”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置,当然反之亦可。其中,第一索引位置和第二索引位置可能具有相同或不同的写入优先级(其中,写入有些级高的索引位置优先写入候选的深度值)。
305、将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
可以看出,本实施例的解码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;对所述视频码流中的所述当前图像块所对应的单一采样索引标识位进行解码;并根据解码出的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值,将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,即,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,简化了构建采样候选列表的过程,因此相对于传统方案,上述方案有利于降低基于SDM的解码算法的复杂度,减少存储空间的占用需求。
其中,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的实现方式可能是多种多样的。其中,所述第一相邻预测采样点和所述第二相邻预测采样点可能具有相同或不同的检测顺序。
举例来说,所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,可以包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何的深度值(在这种情况下,可以认为采样候选列表中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可以理解的是,所谓当前图像块的某个相邻预测采样点(例如第一相邻预测采样点或第二相邻预测采样点)可得,是指该当前图像块的该某个相邻预测采样点可用于帧内预测,所谓当前图像块的某个相邻预测采样点不可得,是指该当前图像块的该某个相邻预测采样点不可用于帧内预测。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点(具体位置例如图2-a中的像素点B0)、
所述当前图像块中的左上角像素点的左方相邻像素点(具体位置例如图2-a中的像素点A0)、
所述当前图像块中的左上角像素点的左上方相邻像素点(具体位置例如图2-a中的像素点B-1)、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点(具体位置例如图2-a中的像素点Bn/2)和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点(具体位置例如图2-a中的像素点An/2)。
其中,图2-a中示出,当前图像块的上边缘左方起始位置的像素点为上边缘的第0个像素点B0,当前图像块的左边缘上方起始位置的像素点为左边缘的第0个像素点A0
可选的,在本发明一些可能的实施方式中,如图2-b所示,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。
为便于更好理解和实施本发明实施例的上述方案,下面结合一些具体的应用场景进行举例说明。
请参见图4,图4为本发明的另一实施例提供的另一种三维视频编码方法的流程示意图,如图4所示,本发明的另一实施例提供的另一种三维视频编码方法可以包括以下内容:
401、编码端生成采样候选列表并对所述采样候选列表进行初始化。
其中,采样候选列表具有的索引位置的数量例如可为2,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
可选的,在对采样候选列表进行初始化过程中,可在采样候选列表的第一索引位置写入第一预设深度值。
可选的,在对采样候选列表进行初始化过程中,可在采样候选列表的第二索引位置写入第二预设深度值。
402、编码端对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
其中,第一相邻预测采样点和第二相邻预测采样点是预先设定的,这就避免了编码端对当前图像块的除第一相邻预测采样点和第二相邻预测采样点之外的其他相邻预测采样点的检测,其中,由于减少了需要检测的相邻预测采样点的数量,故而有利于降低算法复杂度。
403、编码端根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表。
可以理解,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表时,若采样候选列表中第一索引位置已经写入了其他的深度值(例如采样候选列表中第一索引位置已经写入第一预设深度值),则可用所述第一相邻预测采样点的深度值,覆盖采样候选列表中第一索引位置已写入的其他深度值;若采样候选列表中第一索引位置还未写入其他任何深度值,则可直接在采样候选列表中第一索引位置写入所述第一相邻预测采样点的深度值,其他索引位置的填写以此类推。
其中,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表的实现方式可能是多种多样的。其中,所述第一相邻预测采样点和所述第二相邻预测采样点可能具有相同或不同的检测顺序。
举例来说,所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表,可以包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何深度值(在这种情况下,可以认为采样候选列表中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,还可进一步包括:若位于所述采样候选列表中的第一索引位置的深度值和位于所述采样候选列表中的第二索引位置的深度值不同,利用位于所述采样候选列表中的第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的第二索引位置的深度值计算所述当前图像块对应的第二率失真代价。
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。
可以理解的是,构建采样候选列表可包括生成采样候选列表、填写采样候选列表等步骤。或者,构建采样候选列表可包括生成采样候选列表、初始化采样候选列表和填写采样候选列表等步骤。因此,步骤401和步骤403可看做是根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的一些具体实现方式,当然,如果采样候选列表已经存在,则亦可省略生成采样候选列表的步骤。
404、编码端将所述当前图像块对应的单一采样标识位写入视频码流。
其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式。例如当所述单一采样标识位位置“0”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,当所述单一采样索引标识位置“1”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为非单一深度帧内模式,当然反之亦可。
405、编码端将所述当前图像块对应的单一采样索引标识位写入所述视频码流。
其中,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。例如当所述单一采样索引标识位置“0”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置,当所述单一采样索引标识位置“1”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置,当然反之亦可。其中,第一索引位置和第二索引位置可能具有相同或不同的写入优先级。
其中,在本发明一些可能的实现过程中,可以通过一次写入操作将所述当前图像块对应的单一采样索引标识位和单一采样标识位写入视频码流,也可通过两次写入操作分别将所述当前图像块对应的单一采样索引标识位和单一采样标识位写入视频码流。也就是说,步骤404和步骤405可能同步执行或者不同步执行。
可以看出,本实施例的编码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;将所述当前图像块对应的单一采样标识位和单一采样索引标识位写入视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,也就是说,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,相对于传统方案,上述方案有利于降低基于SDM的编码算法的复杂度,减少存储空间的占用需求。
首先参见图5,图5为本发明的另一实施例提供的一种三维视频解码方法的流程示意图,如图5所示,本发明的另一实施例提供的一种三维视频解码方法可以包括以下内容:
501、解码端从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位。
502、若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,解码端生成采样候选列表,并可对采样候选列表进行初始化。
其中,采样候选列表具有的索引位置的数量例如可为2,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
可选的,在对采样候选列表进行初始化过程中,可在采样候选列表的第一索引位置写入第一预设深度值。
可选的,在对采样候选列表进行初始化过程中,可在采样候选列表的第二索引位置写入第二预设深度值。
503、解码端对所述当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
其中,第一相邻预测采样点和第二相邻预测采样点是预先设定的,这就避免了解码端对当前图像块的除第一相邻预测采样点和第二相邻预测采样点之外的其他相邻预测采样点的检测,其中,由于减少了解码端需检测相邻预测采样点的数量,进而有利于降低算法复杂度。
504、解码端根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表。
可以理解,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表时,若采样候选列表中第一索引位置已经写入了其他的深度值(例如采样候选列表中第一索引位置已经写入第一预设深度值),则可用所述第一相邻预测采样点的深度值,覆盖采样候选列表中第一索引位置已写入的其他深度值;若采样候选列表中第一索引位置还未写入了其他任何深度值,则可直接在采样候选列表中第一索引位置写入所述第一相邻预测采样点的深度值,其他索引位置的填写以此类推。
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何深度值(在这种情况下,可以认为采样候选列表中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果填写采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能实施方式中,若位于所述采样候选列表中的第一索引位置的深度值和位于采样候选列表中的第一索引位置的深度值不同,编码端可利用位于所述采样候选列表中的第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的第二索引位置的深度值计算所述当前图像块对应的第二率失真代价。其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。
可以理解的是,构建采样候选列表可包括生成采样候选列表、填写采样候选列表等步骤。或者,构建采样候选列表可包括生成采样候选列表、初始化采样候选列表和填写采样候选列表等步骤。因此,步骤502和步骤504可看做是根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的一些具体实现方式,当然,如果采样候选列表已经存在,则亦可省略生成采样候选列表的步骤。
505、解码端从上述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位。
其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式。例如当所述单一采样标识位位置“0”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,当所述单一采样索引标识位置“1”时,所述单一采样标识位指示出所述当前图像块对应的解码模式为非单一深度帧内模式,当然反之亦可。
506、解码端根据解码得到的单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值。
507、解码端将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
其中,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。例如当所述单一采样索引标识位置“0”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置,当所述单一采样索引标识位置“1”时,所述单一采样索引标识位可以指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置,当然反之亦可。其中,第一索引位置和第二索引位置可能具有相同或不同的写入优先级。
可以看出,本实施例的解码方案中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;对所述视频码流中的所述当前图像块所对应的单一采样索引标识位进行解码;并根据解码出的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值,将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,即,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,相对于传统方案,上述方案有利于降低基于SDM的解码算法的复杂度,减少存储空间的占用需求。
下面通过一些更为具体的例子进行说明。
举例一,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点的深度值为37,当前图像块的第二相邻预测采样点的深度值为39,则编码端和解码端在采样候选列表中的第一索引位置写入第一相邻预测采样点的深度值为37,在采样候选列表中的第二索引位置写入第二相邻预测采样点的深度值为39。编码端可以利用位于采样候选列表中的第一索引位置的深度值37计算所述当前图像块对应的第一率失真代价;编码端可以利用位于所述采样候选列表中的第二索引位置的深度值39计算所述当前图像块对应的第二率失真代价。假设所述第一率失真代价大于所述第二率失真代价,因此,编码端可将当前图像块对应的单一采样标识位和单一采样索引标识位均置为“1”,以指示当前图像块的解码模式为SDM,当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。解码端可根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第二索引位置,进而可获取位于所述采样候选列表的第二索引位置的候选深度值39;将候选深度值39作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例二,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点的深度值为37,当前图像块的第二相邻预测采样点不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一相邻预测采样点的深度值为37,在采样候选列表中的第二索引位置写入深度值38(38=37+1,1为调整值)。编码端可以利用位于采样候选列表中的第一索引位置的深度值37计算所述当前图像块对应的第一率失真代价;编码端可以利用位于所述采样候选列表中的第二索引位置的深度值38计算所述当前图像块对应的第二率失真代价。假设所述第一率失真代价大于所述第二率失真代价,因此,编码端可将当前图像块对应的单一采样标识位和单一采样索引标识位均置为“1”,以指示当前图像块的解码模式为SDM,当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。解码端可根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第二索引位置,进而可获取位于所述采样候选列表的第二索引位置的候选深度值38;将候选深度值38作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例三,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点的深度值为37,当前图像块的第二相邻预测采样点不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一相邻预测采样点的深度值37,在采样候选列表中的第二索引位置写入深度值38(38=37+1,1为调整值)。编码端可以利用位于采样候选列表中的第一索引位置的深度值37计算所述当前图像块对应的第一率失真代价;编码端可以利用位于所述采样候选列表中的第二索引位置的深度值38计算所述当前图像块对应的第二率失真代价。假设所述第一率失真代价小于所述第二率失真代价,因此,编码端可将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而获取位于所述采样候选列表的第一索引位置的候选深度值37;将候选深度值37作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例四,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点的深度值为37,当前图像块的第二相邻预测采样点不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一相邻预测采样点的深度值37,在采样候选列表中的第二索引位置也写入第一相邻预测采样点的深度值37。因此,编码端可将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而可获取位于所述采样候选列表的第一索引位置的候选深度值37;将候选深度值37作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例五,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点的深度值为37,当前图像块的第二相邻预测采样点不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一相邻预测采样点的深度值37,在采样候选列表中的第二索引位置可不写入任何深度值,即,采样候选列表采用单候选方式。因此,编码端可以将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而可获取位于所述采样候选列表的第一索引位置的候选深度值37;将候选深度值37作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例六,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点和第二相邻预测采样点均不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一预设深度值2k1,在采样候选列表中的第二索引位置可不写入任何深度值,即,采样候选列表采用单候选方式。因此,编码端可以将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,获取位于所述采样候选列表的第一索引位置的候选深度值2k1;将候选深度值2k1作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例七,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点和第二相邻预测采样点均不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一预设深度值2k1,在采样候选列表中的第二索引位置写入深度值2k1+1。因此编码端可以利用位于采样候选列表中的第一索引位置的深度值2k1计算所述当前图像块对应的第一率失真代价;编码端可以利用位于所述采样候选列表中的第二索引位置的深度值2k1+1计算所述当前图像块对应的第二率失真代价。假设所述第一率失真代价小于所述第二率失真代价,编码端可以将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而可以获取位于所述采样候选列表的第一索引位置的候选深度值2k1;将候选深度值2k1作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例七,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点和第二相邻预测采样点均不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一预设深度值2k1,在采样候选列表中的第二索引位置写入深度值2k2。因此编码端可以利用位于采样候选列表中的第一索引位置的深度值2k1计算所述当前图像块对应的第一率失真代价;编码端可以利用位于所述采样候选列表中的第二索引位置的深度值2k2计算所述当前图像块对应的第二率失真代价。假设所述第一率失真代价小于所述第二率失真代价,编码端可以将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而可以获取位于所述采样候选列表的第一索引位置的候选深度值2k1;将候选深度值2k1作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
举例八,当前图像块为深度图中的8×8大小的图像块,当前图像块对应的解码模式为SDM,当前图像块的第一相邻预测采样点和第二相邻预测采样点均不可得,则编码端和解码端在采样候选列表中的第一索引位置写入第一预设深度值2k1,在采样候选列表中的第二索引位置写入深度值2k1。因此编码端可以将当前图像块对应的单一采样标识位置为“1”,以指示当前图像块的解码模式为SDM,将单一采样索引标识位均置为“0”,以指当前图像块的部分或者全部像素点的深度值位于所述采样候选列表中的第一索引位置。相应的,解码端根据从视频码率中解码得到的单一采样索引标识位的取值,确定当前图像块的部分或全部像素点的预测采样值位于采样候选列表中的第一索引位置,进而可以获取位于所述采样候选列表的第一索引位置的候选深度值2k1;将候选深度值2k1作为当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。
可以理解,上述举例只是为了解释说明,其中涉及的部分或全部参数的取值可根据实际需要进行调整。
下面还提供用于实施上述方案的相关装置。
参见图6,本发明实施例提供一种视频解码装置,可包括:
解码单元610、检测单元620、构建单元630和图像重构单元640。
其中,解码单元610,用于从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位。
检测单元620,用于若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,检测单元620可具体用于:对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
可选的,在本发明一些可能实施方式中,检测单元620可具体用于仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
构建单元630,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
所述解码单元610还用于从所述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位。
图像重构单元640,用于根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
可选的,在本发明一些可能实施方式中,构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何的深度值(在这种情况下,可以认为采样候选列表中只写入了一个候选的深度值);
或者,
构建单元630具体用于:若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小为n*n,所述n为正偶数,其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可以理解的是,本实施例的视频解码装置600的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
其中,视频解码装置600可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机或视频服务器等设备。
可以看出,本实施例的视频解码装置600对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;对所述视频码流中的所述当前图像块所对应的单一采样索引标识位进行解码;并根据解码出的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值,将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,即,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,简化了构建采样候选列表的过程,因此相对于传统方案,上述方案有利于降低基于SDM的解码算法的复杂度,减少存储空间的占用需求。
参见图7,本发明实施例提供一种视频编码装置700,可包括:
检测单元710、构建单元720和编码单元730。
其中,检测单元710,用于对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,检测单元710可具体用于:对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,检测单元710可具体用于:仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
构建单元720,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
其中,编码单元730,用于将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流。
其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置或所述第二索引位置。
可选的,在本发明一些可能的实施方式中,构建单元720具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何深度值(在这种情况下,可以认为采样候选列表之中只写入了一个候选的深度值);
或者,
构建单元720可具体用于,若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
其中,图2-a中示出,当前图像块的上边缘左方起始位置的像素点为上边缘的第0个像素点B0,当前图像块的左边缘上方起始位置的像素点为左边缘的第0个像素点A0
可选的,在本发明一些可能的实施方式中,如图2-b所示,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。
可选的,视频编码装置700还可包括:
测算单元740,用于在将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,利用位于所述采样候选列表中的所述第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的所述第二索引位置的深度值计算所述当前图像块对应的第二率失真代价;
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第二索引位置。
当然,亦可能通过其他方式来确定所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置还是第二索引位置。例如,当位于所述采样候选列表中的第一索引位置的深度值和第二索引位置的深度值相同,则所述单一采样索引标识位可指示所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置和第二索引位置中的任意一个。
可以理解的是,本实施例的视频编码装置700的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
其中,视频编码装置700可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机或视频服务器等设备。
可以看出,本实施例的视频编码装置700对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;将所述当前图像块对应的单一采样标识位和单一采样索引标识位写入视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。其中,由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,也就是说,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,有利于简化构建采样候选列表的过程,因此上述方案相对于传统方案(传统方案中构建采样候选列表参考当前图像块的至少5个相邻预测采样点),有利于降低基于SDM的编码算法的复杂度,减少存储空间的占用需求。
参见图8,图8是本发明的另一个实施例提供的视频编码装置800的结构框图。其中,视频编码装置800可包括:至少1个处理器801、存储器805和至少1个通信总线802。可选的,视频编码装置800还可包括:至少1个网络接口804和/或用户接口803。其中,用户接口803例如包括显示器(例如触摸屏、LCD、全息成像(Holographic)、CRT或者投影(Projector)等)、点击设备(例如鼠标或轨迹球(trackball)触感板或触摸屏等)、摄像头和/或拾音装置等。
其中,存储器805可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器805中的一部分还可以包括非易失性随机存取存储器。
在一些实施方式中,存储器805存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统8051,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
应用程序模块8052,包含各种应用程序,用于实现各种应用业务。
在本发明的实施例中,通过调用存储器805存储的程序或指令,处理器801用于用于对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,所述采样候选列表具有第一索引位置和第二索引位置;将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测可以包括:对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
可选的,在本发明一些可能实施方式中,对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,可包括:仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
其中,处理器801根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的实现方式可能是多种多样的。其中,所述第一相邻预测采样点和所述第二相邻预测采样点可能具有相同或者不同的检测顺序。
举例来说,处理器801根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,可以包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何深度值(在这种情况下,可以认为采样候选列表之中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。
可选的,在本发明一些可能的实施方式中,将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,处理器801还用于利用位于所述采样候选列表中的第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的第二索引位置的深度值计算所述当前图像块对应的第二率失真代价。
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第二索引位置。
当然,处理器801亦可能通过其他方式来确定所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置还是第二索引位置。例如,当位于所述采样候选列表中的第一索引位置的深度值和第二索引位置的深度值相同,则所述单一采样索引标识位可指示所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置和第二索引位置中的任意一个。
可以理解的是,本实施例的视频编码装置800的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
其中,视频编码装置800可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机或视频服务器等设备。
可以看出,本实施例的视频编码装置800对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;将所述当前图像块对应的单一采样标识位和单一采样索引标识位写入视频码流,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的第一索引位置或第二索引位置。其中,由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,也就是说,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,有利于简化构建采样候选列表的过程,因此上述方案相对于传统方案(传统方案中构建采样候选列表参考当前图像块的至少5个相邻预测采样点),有利于降低基于SDM的编码算法的复杂度,减少存储空间的占用需求。
参见图9,图9是本发明的另一个实施例提供的视频解码装置900的结构框图。其中,视频解码装置900可包括:至少1个处理器901、存储器905和至少1个通信总线902。可选的,视频解码装置900还可包括:至少1个网络接口904和/或用户接口903。其中,用户接口903例如包括显示器(例如触摸屏、LCD、全息成像(Holographic)、CRT或者投影(Projector)等)、点击设备(例如鼠标或轨迹球(trackball)触感板或触摸屏等)、摄像头和/或拾音装置等。
其中,存储器905可以包括只读存储器和随机存取存储器,并向处理器901提供指令和数据。存储器905中的一部分还可以包括非易失性随机存取存储器。
在一些实施方式中,存储器905存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统9051,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
应用程序模块9052,包含各种应用程序,用于实现各种应用业务。
在本发明的实施例中,通过调用存储器905存储的程序或指令,处理器901从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;从视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
可选的,在本发明一些可能实施方式中,第一相邻预测采样点和第二相邻预测采样点是当前图像块的预先设定的两个相邻预测采样点,因此,处理器901可对当前深度图中的当前图像块的设定的第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,所述当前图像块的可用相邻预测采样点可仅包括第一相邻预测采样点和第二相邻预测采样点。
可选的,在本发明一些可能实施方式中,处理器901可用于仅对当前深度图中的当前图像块的(设定的)第一相邻预测采样点和第二相邻预测采样点进行检测。
其中,采样候选列表具有的索引位置的数量例如可为2或更多,例如所述采样候选列表具有第一索引位置和第二索引位置。即,采样候选列表中可记录两个候选的深度值,每个索引位置可记录一个候选的深度值。
其中,采样候选列表的数据结构可能是多种多样的,本发明实施例不限定其数据结构的具体形式。
其中,处理器901根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表的实现方式可能是多种多样的。
其中,所述第一相邻预测采样点和所述第二相邻预测采样点可能具有相同或不同的检测顺序。
举例来说,处理器901根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,可以包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置(所述第一相邻预测采样点的深度值和所述第二相邻预测采样点的深度值可能相等或不等);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值(第一调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值(第二调整值为正整数)而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将无效深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,在所述采样候选列表中的第二索引位置不写入任何的深度值(在这种情况下,可以认为采样候选列表中只写入了一个候选的深度值);
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(其中,第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可以在检测到所述第二相邻预测采样点不可得之后被写入到采样候选列表的第二索引位置);
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值(第一预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第一索引位置,当然第一预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后写入到采样候选列表的第一索引位置);将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值(第二预设深度值例如可以在采样候选列表的初始化过程中被写入到采样候选列表的第二索引位置,当然,第二预设深度值亦可在检测到所述第一相邻预测采样点和所述第二相邻预测采样点均不可得之后被写入到采样候选列表的第二索引位置)。
当然,处理器901亦可按照其他实现方式,根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表。其中,解码端和编码端构建采样候选列表的机制可相同或类似。
可选的,在本发明一些可能实施方式中,第一预设深度值等于2k1,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。所述x1例如可以等于1、2、3、4或其他值。当然所述第一预设深度值为正整数。
可选的,在本发明一些可能实施方式中,第二预设深度值等于2k2,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数。所述x2例如可以等于1、2、3、4或其他值。当然所述第二预设深度值为正整数。
或者,所述第二预设深度值等于所述第一预设深度值;或者,所述第二预设深度值等于所述第一预设深度值加上第一调整值;或者,所述第二预设深度值等于所述第一预设深度值减去第二调整值。
可选的,第一调整值例如可等于1、2、3、4、6、10、20或其他值。第二调整值例如可等于1、2、3、4、6、11、25或其他值。
可选的,在本发明一些可能的实施方式中,所述当前图像块的大小例如可为n*n,所述n可为正偶数。所述第一相邻预测采样点和所述第二相邻预测采样点例如可为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
其中,图2-a中示出,当前图像块的上边缘左方起始位置的像素点为上边缘的第0个像素点B0,当前图像块的左边缘上方起始位置的像素点为左边缘的第0个像素点A0
可选的,在本发明一些可能的实施方式中,如图2-b所示,所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。或者,所述第二相邻预测采样点可以为所述当前图像块的上边缘的第(n+2)/2个像素点Bn/2的上方相邻像素点,所述第一相邻预测采样点可以为所述当前图像块的左边缘的第(n+2)/2个像素点An/2的左方相邻像素点。
可以理解的是,本实施例的视频解码装置900的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
其中,视频解码装置900可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机或视频服务器等设备。
可以看出,本实施例的视频解码装置900对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表;对所述视频码流中的所述当前图像块所对应的单一采样索引标识位进行解码;并根据解码出的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表之中的所述单一采样索引标识位指示的索引位置的候选深度值,将所述候选深度值作为所述当前图像块的部分或者全部像素点的深度值,利用所述当前图像块的所述部分或者全部像素点的深度值对所述当前图像块进行重构。由于是根据对所述第一相邻预测采样点和所述第二相邻预测采样点这两个相邻预测采样点检测的结果构建采样候选列表,即,构建采样候选列表可以只参考两个相邻预测采样点的检测结果,简化了构建采样候选列表的过程,因此相对于传统方案,上述方案有利于降低基于SDM的解码算法的复杂度,减少存储空间的占用需求。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上上述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (26)

1.一种三维视频解码方法,其特征在于,包括:
从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;
若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
从所述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;
根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
2.根据权利要求1所述的方法,其特征在于,
所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
3.根据权利要求2所述的方法,其特征在于,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或者等于255,所述x1为正整数。
4.根据权利要求2或3所述的方法,其特征在于,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或者等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
6.根据权利要求5所述的方法,其特征在于,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
7.一种三维视频编码方法,其特征在于,包括:
对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置或所述第二索引位置。
8.根据权利要求7所述的方法,其特征在于,
所述根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,包括:
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
9.根据权利要求8所述的方法,其特征在于,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。
10.根据权利要求8或9所述的方法,其特征在于,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
11.根据权利要求7至10任一项所述的方法,其特征在于,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
12.根据权利要求11所述的方法,其特征在于,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
13.根据权利要求7至12任一项所述的方法,其特征在于,将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,还包括:利用位于所述采样候选列表中的所述第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的所述第二索引位置的深度值计算所述当前图像块对应的第二率失真代价;
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第二索引位置。
14.一种视频解码装置,其特征在于,包括:
解码单元,用于从视频码流中解码得到当前深度图中的当前图像块所对应的单一采样标识位;
检测单元,用于若解码得到的所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,对所述当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测;其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
构建单元,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
所述解码单元还用于从所述视频码流中解码得到所述当前图像块所对应的单一采样索引标识位;
图像重构单元,用于根据解码得到的所述单一采样索引标识位指示的索引位置,获取位于所述采样候选列表中的所述单一采样索引标识位指示的索引位置的候选深度值;将所述候选深度值作为所述当前图像块的部分或全部像素点的预测采样值,利用所述当前图像块的所述部分或全部像素点的预测采样值对所述当前图像块进行重构。
15.根据权利要求14所述的视频解码装置,其特征在于,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
所述构建单元具体用于:若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
16.根据权利要求15所述的视频解码装置,其特征在于,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或者等于255,所述x1为正整数。
17.根据权利要求15或16所述的视频解码装置,其特征在于,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或者等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
18.根据权利要求14至17任一项所述的视频解码装置,其特征在于,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
19.根据权利要求18所述的视频解码装置,其特征在于,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
20.一种视频编码装置,其特征在于,包括:
检测单元,用于对当前深度图中的当前图像块的第一相邻预测采样点和第二相邻预测采样点进行检测,其中,所述当前图像块的可用相邻预测采样点仅包括第一相邻预测采样点和第二相邻预测采样点;
构建单元,用于根据对所述第一相邻预测采样点和所述第二相邻预测采样点检测的结果构建采样候选列表,其中,所述采样候选列表具有第一索引位置和第二索引位置;
编码单元,用于将所述当前图像块对应的单一采样标识位写入视频码流,将所述当前图像块对应的单一采样索引标识位写入所述视频码流,
其中,所述单一采样标识位指示出所述当前图像块对应的解码模式为单一深度帧内模式,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置或所述第二索引位置。
21.根据权利要求20所述的视频编码装置,其特征在于,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第二相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将所述第一相邻预测采样点的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值加上第一调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置,将所述第一相邻预测采样点的深度值减去第二调整值而得到的深度值写入到所述采样候选列表中的第二索引位置;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点可得,并且检测到所述第二相邻预测采样点不可得,将所述第一相邻预测采样点的深度值写入到所述当前图像块对应的采样候选列表中的第一索引位置;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值;
或者,
所述构建单元具体用于,若检测到所述第一相邻预测采样点不可得,并且检测到所述第二相邻预测采样点不可得,将第一预设深度值作为所述当前图像块对应的采样候选列表中的第一索引位置记录的候选值;将第二预设深度值作为所述采样候选列表中的第二索引位置记录的候选值。
22.根据权利要求21所述的视频编码装置,其特征在于,
所述第一预设深度值等于2k1,其中,所述k1等于g_bitDepthY-x1,所述g_bitDepthY等于编码比特位数,所述第一预设深度值小于或等于255,所述x1为正整数。
23.根据权利要求21或22所述的视频编码装置,其特征在于,
所述第二预设深度值等于2k2,其中,所述k2等于g_bitDepthY-x2,所述第二预设深度值小于或等于255,所述x2为不等于所述x1的正整数;
或者,
所述第二预设深度值等于所述第一预设深度值;
或者,
所述第二预设深度值等于所述第一预设深度值加上第一调整值;
或者,
所述第二预设深度值等于所述第一预设深度值减去第二调整值。
24.根据权利要求20至23任一项所述的视频编码装置,其特征在于,所述当前图像块的大小为n*n,所述n为正偶数,
其中,所述第一相邻预测采样点和所述第二相邻预测采样点为所述当前图像块的如下相邻预测采样点之中的任意两个:
所述当前图像块中的左上角像素点的上方相邻像素点、
所述当前图像块中的左上角像素点的左方相邻像素点、
所述当前图像块中的左上角像素点的左上方相邻像素点、
所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点和所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
25.根据权利要求24所述的视频编码装置,其特征在于,
所述第一相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第二相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点;
或者,
所述第二相邻预测采样点为所述当前图像块的上边缘的第(n+2)/2个像素点的上方相邻像素点,所述第一相邻预测采样点为所述当前图像块的左边缘的第(n+2)/2个像素点的左方相邻像素点。
26.根据权利要求20至25任一项所述的视频编码装置,其特征在于,所述视频编码装置还包括:
测算单元,用于在将所述当前图像块对应的单一采样索引标识位写入所述视频码流之前,利用位于所述采样候选列表中的所述第一索引位置的深度值计算所述当前图像块对应的第一率失真代价;利用位于所述采样候选列表中的所述第二索引位置的深度值计算所述当前图像块对应的第二率失真代价;
其中,若所述第一率失真代价小于或等于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第一索引位置;若所述第一率失真代价大于所述第二率失真代价,所述单一采样索引标识位指示出所述当前图像块的部分或全部像素点的预测采样值位于所述采样候选列表中的所述第二索引位置。
CN201410531608.7A 2014-10-10 2014-10-10 三维图像编码方法和三维图像解码方法及相关装置 Active CN104333760B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201410531608.7A CN104333760B (zh) 2014-10-10 2014-10-10 三维图像编码方法和三维图像解码方法及相关装置
PCT/CN2015/084074 WO2016054937A1 (zh) 2014-10-10 2015-07-15 三维图像编码方法和三维图像解码方法及相关装置
EP15848924.5A EP3099071A4 (en) 2014-10-10 2015-07-15 Three-dimensional image coding method, three-dimensional image decoding method and related device
US15/362,448 US10116965B2 (en) 2014-10-10 2016-11-28 Three-dimensional video encoding method, three-dimensional video decoding method, and related apparatus
US16/113,531 US10397612B2 (en) 2014-10-10 2018-08-27 Three-dimensional video encoding method, three-dimensional video decoding method, and related apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410531608.7A CN104333760B (zh) 2014-10-10 2014-10-10 三维图像编码方法和三维图像解码方法及相关装置

Publications (2)

Publication Number Publication Date
CN104333760A true CN104333760A (zh) 2015-02-04
CN104333760B CN104333760B (zh) 2018-11-06

Family

ID=52408399

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410531608.7A Active CN104333760B (zh) 2014-10-10 2014-10-10 三维图像编码方法和三维图像解码方法及相关装置

Country Status (4)

Country Link
US (2) US10116965B2 (zh)
EP (1) EP3099071A4 (zh)
CN (1) CN104333760B (zh)
WO (1) WO2016054937A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016054937A1 (zh) * 2014-10-10 2016-04-14 华为技术有限公司 三维图像编码方法和三维图像解码方法及相关装置
CN109417617A (zh) * 2016-06-22 2019-03-01 韩国电子通信研究院 帧内预测方法和装置
CN111343456A (zh) * 2018-12-18 2020-06-26 瑞萨电子株式会社 视频编码设备及其操作方法以及配备有视频编码设备的车辆

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016056755A1 (ko) * 2014-10-08 2016-04-14 엘지전자 주식회사 3d 비디오 부호화/복호화 방법 및 장치
CN106803962B (zh) * 2017-02-16 2019-10-18 南京理工大学 基于贝叶斯准则的3d视频深度图帧内预测模式选择方法
JP7167147B2 (ja) 2018-06-13 2022-11-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
CN109361924B (zh) * 2018-10-26 2020-11-10 西安科锐盛创新科技有限公司 图像编码方法及装置
CN109547780B (zh) * 2018-10-26 2020-06-23 武汉天娱动画设计有限公司 图像编码方法及装置
JP2022536967A (ja) * 2019-06-21 2022-08-22 ヴィド スケール インコーポレイテッド オプティカルフローによる動き補償のための精度精緻化
CN114073091A (zh) * 2019-06-21 2022-02-18 三星电子株式会社 视频编码方法和装置以及视频解码方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103597837A (zh) * 2011-06-15 2014-02-19 联发科技股份有限公司 运动和视差矢量预测的方法及装置以及3d视频编码补偿
CN103907346A (zh) * 2011-10-11 2014-07-02 联发科技股份有限公司 用于三维视频编码与高效率视频编码的运动矢量及视差矢量导出方法及其装置
CN106105195A (zh) * 2014-03-11 2016-11-09 寰发股份有限公司 用于视频编码的单一样本模式的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102017628B (zh) * 2008-04-25 2013-10-09 汤姆逊许可证公司 深度信号的编码
US20130176390A1 (en) * 2012-01-06 2013-07-11 Qualcomm Incorporated Multi-hypothesis disparity vector construction in 3d video coding with depth
US9843820B2 (en) 2012-07-05 2017-12-12 Mediatek Inc Method and apparatus of unified disparity vector derivation for 3D video coding
CN104333760B (zh) * 2014-10-10 2018-11-06 华为技术有限公司 三维图像编码方法和三维图像解码方法及相关装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103597837A (zh) * 2011-06-15 2014-02-19 联发科技股份有限公司 运动和视差矢量预测的方法及装置以及3d视频编码补偿
CN103907346A (zh) * 2011-10-11 2014-07-02 联发科技股份有限公司 用于三维视频编码与高效率视频编码的运动矢量及视差矢量导出方法及其装置
CN106105195A (zh) * 2014-03-11 2016-11-09 寰发股份有限公司 用于视频编码的单一样本模式的方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHEN,YIWEN等: ""3D-CE2:single depth intra mode for 3D-HEVC"", 《JOINT COLLABORATIVE TEAM ON 3D VIEDO CODING EXTENSIONS OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11,9TH MEETING:SAPPORO,JP》 *
POLIN LAI等: ""Non-SCCE3 Test D.1 Single Color Mode"", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11,18TH MEETING: SAPPORO,JP,30 JUNE-9 JULY 2014》 *
YI-WEN CHEN等: ""Single depth intra mode for 3D-HEVC"", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSIONS OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 8TH MEETING: VALENCIA, ES, 29 MARCH – 4 APRIL 2014 》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016054937A1 (zh) * 2014-10-10 2016-04-14 华为技术有限公司 三维图像编码方法和三维图像解码方法及相关装置
US10116965B2 (en) 2014-10-10 2018-10-30 Huawei Technologies Co., Ltd. Three-dimensional video encoding method, three-dimensional video decoding method, and related apparatus
US10397612B2 (en) 2014-10-10 2019-08-27 Huawei Technologies Co., Ltd. Three-dimensional video encoding method, three-dimensional video decoding method, and related apparatus
CN109417617A (zh) * 2016-06-22 2019-03-01 韩国电子通信研究院 帧内预测方法和装置
CN109417617B (zh) * 2016-06-22 2023-10-20 Lx 半导体科技有限公司 帧内预测方法和装置
CN111343456A (zh) * 2018-12-18 2020-06-26 瑞萨电子株式会社 视频编码设备及其操作方法以及配备有视频编码设备的车辆

Also Published As

Publication number Publication date
EP3099071A1 (en) 2016-11-30
WO2016054937A1 (zh) 2016-04-14
US10116965B2 (en) 2018-10-30
US10397612B2 (en) 2019-08-27
EP3099071A4 (en) 2017-03-22
CN104333760B (zh) 2018-11-06
US20170078701A1 (en) 2017-03-16
US20180367813A1 (en) 2018-12-20

Similar Documents

Publication Publication Date Title
CN104333760A (zh) 三维图像编码方法和三维图像解码方法及相关装置
US20200260117A1 (en) Methods and Apparatuses for Coding and Decoding Depth Map
JP7057453B2 (ja) 点群符号化方法、点群復号化方法、符号器、及び復号器
US20170195685A1 (en) Picture prediction method and related apparatus
CN104539966B (zh) 图像预测方法及相关装置
CN113196784A (zh) 点云编码结构
CN109997358A (zh) 用于自由视点视频流式传输的以解码器为中心的uv编解码器
EP3457694A1 (en) Image prediction method and related device
US20220343549A1 (en) A method and apparatus for encoding, transmitting and decoding volumetric video
CN111435551B (zh) 点云滤波方法、装置及存储介质
CN104869399A (zh) 一种信息处理方法及电子设备
US10373384B2 (en) Lightfield compression using disparity predicted replacement
WO2019199513A1 (en) A method and apparatus for encoding and decoding metadata associated with patched projection of point clouds
CN104333758A (zh) 深度图的预测方法和检测像素点的方法及相关装置
US20220180567A1 (en) Method and apparatus for point cloud coding
US10341682B2 (en) Methods and devices for panoramic video coding and decoding based on multi-mode boundary fill
CN103533324A (zh) 一种深度图像帧内编码方法、装置及编码器
WO2020185529A1 (en) A method and apparatus for encoding and decoding volumetric video
CN103533361A (zh) 多视点视差矢量的确定方法、编码设备及解码设备
US20230334714A1 (en) Coding of boundary uv2xyz index for mesh compression
CN104350748A (zh) 使用低分辨率深度图的视图合成
US11606556B2 (en) Fast patch generation for video based point cloud coding
US20230334712A1 (en) Chart based mesh compression
US20240087173A1 (en) Base mesh coding by using surface reflection symmetry
US20230308669A1 (en) Predictive coding of boundary uv information for mesh compression

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