CN104754347B - 视频图像序号的编码、解码方法及装置、电子设备 - Google Patents

视频图像序号的编码、解码方法及装置、电子设备 Download PDF

Info

Publication number
CN104754347B
CN104754347B CN201310733011.6A CN201310733011A CN104754347B CN 104754347 B CN104754347 B CN 104754347B CN 201310733011 A CN201310733011 A CN 201310733011A CN 104754347 B CN104754347 B CN 104754347B
Authority
CN
China
Prior art keywords
value
msb
poc
image
lsb
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310733011.6A
Other languages
English (en)
Other versions
CN104754347A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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
Priority to CN201310733011.6A priority Critical patent/CN104754347B/zh
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to KR1020167020427A priority patent/KR102266046B1/ko
Priority to US15/107,585 priority patent/US10362304B2/en
Priority to EP14875285.0A priority patent/EP3089451A4/en
Priority to PCT/CN2014/089231 priority patent/WO2015096542A1/zh
Priority to JP2016542905A priority patent/JP6511677B2/ja
Publication of CN104754347A publication Critical patent/CN104754347A/zh
Application granted granted Critical
Publication of CN104754347B publication Critical patent/CN104754347B/zh
Priority to US16/518,183 priority patent/US10827170B2/en
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/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/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/187Methods 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 scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了一种视频图像序号的编码、解码方法及装置、电子设备,其中该解码方法包括:获取对POC进行对齐操作时所使用的MSB参数和LSB参数;根据所述MSB参数和所述LSB参数确定当前图像POC值的MSB取值和LSB取值;根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值。采用本发明提供的上述技术方案,解决了相关技术中,在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,实现了不需要在BL码流中为实施POC对齐相关操作增加任何比特字段,也不需要对层的DPB中存储图像进行POC平移操作的效果。

Description

视频图像序号的编码、解码方法及装置、电子设备
技术领域
本发明涉及通信领域,具体而言,涉及一种视频图像序号的编码、解码方法及装置、电子设备。
背景技术
正在制定的基于高性能视频编码(H.265/High Efficiency Video Coding,简称为HEVC)标准兼容的三维视频(Three-Dimensional Video,简称为3DV)编码标准MV-HEVC(HEVC Multi-view video coding extension framework)、3D-HEVC(3D High EfficiencyVideo Coding)和可伸缩视频编码(Scalable video coding,简称为SVC)中,采用了统一的高层结构设计。这个统一的设计结构基于“多层视频编码”的概念,将MV-HEVC和3D-HEVC的不同视点的纹理分量(Texture Component)和深度分量(Depth Component)、可伸缩编码的不同可伸缩层均抽象为“层(Layer)”,并使用层表示序号(LayerId)来标识不同的视点和可伸缩层。这里,将已发布的H.265/HEVC标准称为“H.265/HEVC Version 1”标准。
在多层视频编码中,同时刻获得的视频图像及其对应的编码比特组成一个接入单元(Access Unit,简称为AU)。在同一个AU中,各层图像可使用不同的编码方法。这样,在同一个AU中,某层的图像可以是能够作为随机点的帧内编码随机接入(Intra Random AccessPoint,简称为IRAP)图像,而其他某一个或多个层是普通的帧间、层间预测编码图像。在实际应用中,不同层可以根据网络传输状况、视频内容变换情况等选择各自的IRAP图像***策略。例如,对于兼容H.265/HEVC的基本层视频图像可采用较高频次的IRAP图像***策略,对增强层视频图像可采用频次较低的IRAP图像***策略。这样,使用这种逐层(layer-wise)接入的多层视频编码结构,可以在不出现大的码率激增的情况下,保证多层视频编码码流的随机接入性能。
对于多层视频编码码流,其基本层(Base Layer,简称为BL)码流必须符合H.265/HEVC Version 1标准的规范。换言之,多层视频编码码流必须保证根据H.265/HEVCVersion 1标准设计的解码器能够正确解码从多层视频编码码流中提取出的BL码流。特别地,对于MV-HEVC和3D-HEVC,BL对应于基本视点(Base View)或独立视点(IndependentView),EL对应于增强视点(Enhancement View)或非独立视点(Dependent View)。实际应用中,可通过提取多层视频编码码流的方法,获得仅用于传统二维电视播放的基本视点码流、支持三维立体显示的双视点码流以及支持更加丰富三维立体显示的多视点码流。
在H.265/HEVC Version 1标准中,IRAP图像的类型有三种,分别是解码立即刷新(Instantaneous Decoding Refresh,简称为IDR)图像、断开连接访问(Broken LinkAccess,简称为BLA)图像和清除随机存取(Clean Random Access,简称为CRA)图像。这三种图像均使用帧内(Intra)编码方式进行编码,其解码不依赖于其他图像。这三种图像类型的不同之处在于对视频图像序号(Picture Order Count,POC)和解码图像缓冲区(DecodedPicture Buffer,DPB)的操作。
POC是H.265/HEVC Version 1中用于标识图像播放顺序的序号。根据H.265/HEVCVersion1标准,图像的POC值由两部分组成。使用PicOrderCntVal表示图像的POC值,则:PicOrderCntVal=PicOrderCntMsb+PicOrderCntLsb。其中,PicOrderCntMsb是图像POC值的最高有效位(Most Significant Bit,简称为MSB)取值,PicOrderCntLsb是图像POC值的最低有效位(Least Significant Bit,简称为LSB)。通常情况下,PicOrderCntMsb的取值等于按解码顺序当前图像的前一个TemporalId等于0的图像的PicOrderCntMsb的取值,PicOrderCntLsb的取值等于分片(slice)头信息中的slice_pic_order_cnt_lsb字段的取值。slice_pic_order_cnt_lsb字段的比特数由序列参数集(Sequance Parameter Set,SPS)中的log2_max_pic_order_cnt_lsb_minus4确定,所需比特数等于log2_max_pic_order_cnt_lsb_minus4+4。
在H.265/HEVC Version 1中,若当前图像是IDR图像,则PicOrderCntMsb的取值将被置为0,分片头信息中不包含slice_pic_order_cnt_lsb字段,PicOrderCntLsb的取值默认为0。若当前图像是BLA图像,则PicOrderCntMsb的取值将被置为0,分片头信息中包含slice_pic_order_cnt_lsb字段用于确定PicOrderCntLsb的取值。若当前图像是CRA图像且标志位HandleCraAsBlaFlag的取值等于0,则使用通常方法计算POC;若当前图像是CRA图像且标志位HandleCraAsBlaFlag的取值等于1,则使用BLA图像的方法计算该CRA图像的POC值。
需要说明的是,在多层视频编码标准中,不论图像类型,增强层(EnhancementLayer,简称为EL)的分片头信息中始终包含slice_pic_order_cnt_lsb字段。
在此基础上,对于多层视频编码码流,为保证在DPB控制过程中检测同时刻的图像,同时为方便解码器使用POC值在码流中确定各AU的起止位置,要求AU中所有图像均具有相同的POC值。对于layer-wise的编码结构,AU中可能同时包含有IRAP图像和非IRAP图像。这样,如果IRAP图像是IDR图像和BLA图像,则该AU中包含图像的POC值将不同。因此,需要为多层视频编码标准设计POC对齐(POC Alignment)功能以满足在layer-wise结构时AU中各图像可以具有相同的POC。
为解决这个问题,JCT-VC标准会议提案JCTVC-N0244中提出了一种POC对齐方法。该方法是用分片头信息中的预留比特,增加长度为1比特的poc_reset_flag字段。当该字段的取值等于1时,首先按照通常方法解码图像POC值,然后将DPB中同层(包括BL)中图像的POC值减少之前计算得到的POC值(即POC平移操作),最后将该分片所在图像的POC值被置为0。
该方法的最主要缺点是其BL码流无法兼容H.265/HEVC Version 1标准,即不能保证符合H.265/HEVC Version 1标准的解码器能够解码从多层视频编码码流中抽取得到的BL码流。
为解决该兼容性问题,JCT-VC会议提案JCTVC-O0140和JCTVC-O0213提出在JCTVC-N0244的基础上,在需要进行POC对齐时,仅将POC中的MSB置为0。进一步,JCTVC-O0213中增加了POC对齐的延迟操作选项,以应对携带有重置POC值的标志位的分片丢失和帧率不同的应用情况。JCTVC-O0176提出在IDR图像时直接进行POC对齐,而不是用显式的分片头标志位,并且在BL码流的IDR图像分片头中增加预留比特,用于计算若该图像是CRA图像而非IDR图像时的POC值,该计算得到的POC值用于EL层DPB中存储图像的POC平移操作。JCTVC-O0275提出了一种layer POC的概念,对于EL层图像,维护两套不同的POC。其中,Layer POC为不使用POC对齐条件下得到的POC值,该值用于参考图像集(Reference Picture Set,RPS)等解码算法的相关操作;另外一套是经过POC对齐处理的POC,该POC与同AU中BL图像的POC值一致,该POC值用于控制图像的输出、播放过程。JCTVC-O0275提出的方法在进行POC对齐过程中使用BL的信息,且POC对齐过程的触发使用编解码器内部维护的变量标志位,该标志位的取值与BL层图像类型相关。
以上方法存在如下缺陷:
对DPB中图像的POC平移操作将改变DPB中已存储图像的原始POC值。这样一来,如果包含有POC对齐信息的分片丢失,那么将无法对DPB中图像的POC进行正确的平移操作,使得后续的图像无法获得正确的参考图像。由于平移POC值的错误,原本已经正确解码并存储在DPB中的图像将成为“错误解码图像”。
对于层间帧率不同的情况,如果BL的IDR图像所在AU中不包含EL图像,则EL将不能进行POC对齐所需的POC平移操作,这就使得在各层DPB中,即使同AU解码得到的图像也将具有不同的POC值,从而使得解码器无法进行正确的图像输出操作。该问题也使得JCTVC-O0213中的POC延迟对齐操作无法保证可以正确解码和输出多层视频编码码流。
对于Layer POC的情况,需要维护两套不同的POC***,但这两套POC***中,POC对齐操作之后,任意两幅图像的POC之差是相等的,即两套POC***存在较大冗余。
上述方法中JCTVC-O0140和JCTVC-O0213均需要使用BL预留比特,并且多层视频编码编解码器在处理BL码流时要根据该预留比特的取值进行不同于H.265/HEVC Version 1标准的操作。这就使得已有的符合H.265/HEVC Version 1的产品设计方案不能直接用于多层视频编码产品。尽管JCTVC-O0176方法在分片层扩展中增加比特信息,不改变任何BL层解码流程,但分片层扩展信息是以字节为单位,这样就增加了分片头的额外比特开销。
为了保证正确地进行POC对齐操作,以上方法需要对可用编码结构进行较多限制。例如,JCTVC-O0176要求BL的IDR图像的AU中必须包含EL图像。这降低了多层视频编码的应用灵活性,特别是非协调联播应用(uncoordinated simulcast)。
针对相关技术中的上述问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中,在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,本发明提供了一种视频图像序号的编码、解码方法及装置、电子设备,以至少解决上述问题。
为了达到上述目的,根据本发明的一个方面,提供了一种视频图像序号POC的解码方法,包括:获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数;根据所述MSB参数和所述LSB参数确定当前图像POC值的MSB取值和LSB取值;根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值。
优选地,根据所述MSB参数确定当前图像POC值的MSB取值包括以下之一:方法一,从码流中直接获取所述码流携带的MSB参数,根据所述码流携带的MSB参数获取所述MSB取值;方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,根据所述第一指示信息推导所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值;方法三,获取用于指示所述MSB参数的获取方式的第二指示信息集;根据所述第二指示信息集确定所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值。
优选地,通过以下方式确定推导所述EL的MSB取值过程中所使用的参考POC取值:从基本层BL或EL已有解码信息中获得所述参考POC取值。
优选地,根据所述第一指示信息推导所述EL所使用的MSB取值:根据所述EL所使用的LSB比特字段长度信息,从所述参考POC取值中提取所述EL所使用的MSB取值。
优选地,从所述参考POC取值中提取所述EL所使用的MSB取值包括以下之一:使用所述参考POC取值对应的MSB取值作为所述EL所使用的MSB取值;或者,将所述参考POC取值的二进制取值中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;将所述参考POC取值的二进制取值先进行右移位操作、后进行左移位操作,其中,移位操作的二进制位数等于所述增强层EL所使用的LSB比特字段长度值。
优选地,根据所述码流携带的MSB参数获取所述MSB取值包括以下之一:根据用于标识所述MSB取值为0的标识信息获取所述当前图像POC值的所述MSB取值;将所述MSB参数取值设置为所述当前图像POC值的MSB取值;将所述MSB参数取值与以下之一取值的乘积设置为所述当前图像POC值的所述MSB取值:当前图像POC值的MSB最小容许正整数取值的乘积、所述当前图像POC值的最大LSB容许取值加1后得到的取值;将所述MSB参数取值的二进制取值进行左移位操作,将移位操作后的所述MSB参数取值作为当前图像POC值的所述MSB取值,其中,左移位的二进制位数等于所述EL所使用的LSB比特字段长度值。
优选地,根据所述第二指示信息集确定所述EL所使用的MSB取值,包括:将所述EL所使用的MSB取值设置为0;或者,使用从BL已有解码信息中的POC取值的低比特位置0后的取值作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;或者,使用从BL已有解码信息中的POC取值的低比特位置0后的取值与所述EL分片头信息携带的修正值之和作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值。
优选地,上述方法还包括:获取确定所述EL所使用的MSB取值所需的所述MSB参数的比特字段的长度。
优选地,根据所述LSB参数确定当前图像POC值的LSB取值包括:从EL的分片头信息中直接获取所述LSB参数。
优选地,根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值包括:将所述MSB取值与LSB取值之和作为所述当前图像POC取值。
优选地,获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数之前,包括:获取EL分片头信息中携带的POC对齐操作标志位,其中,在所述POC对齐操作标志位指示需要进行对齐操作时,触发获取所述MSB参数和所述LSB参数。
为了达到上述目的,根据本发明的再一个方面,还提供了一种视频图像序号POC的编码方法,其特征在于,包括:获取执行POC对齐操作时所使用的当前图像的POC值;将所述POC值的最高比特位MSB取值和最低比特位LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数;将所述MSB参数和所述LSB参数写入码流。
优选地,获取执行POC对齐操作时所使用的当前图像的POC值包括:如果与当前增强层EL图像位于同一接入单元AU的基本层BL图像存在,将所述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定所述AU中在包含BL图像时所述BL图像所应使用的POC取值,并将所述BL图像所应使用的POC取值作为所述POC值。
优选地,通过以下方法确定所述MSB取值和LSB取值:将所述POC值的二进制取值中的低比特位作为所述LSB取值,所使用的二进制低比特位的位数等于EL所使用的LSB比特字段长度值;将所述POC值与LSB取值之差作为所述MSB取值;或者,将所述POC值的二进制表示中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;将置0操作前所述POC值与所述MSB取值之差作为所述LSB取值;或者,将所述POC值的二进制取值先进行右移位操作、后进左移位操作,其中,左移位和右移位的二进制位数等于所述EL所使用的LSB比特字段长度值,将移位操作后的POC值作为所述MSB取值,将移位操作前所述POC值与所述MSB取值之差作为所述LSB取值。
优选地,将所述POC值的MSB取值映射为在执行POC对齐操作时所使用的MSB参数包括以下之一:方法一,将所述MSB取值携带于所述码流中,作为所述MSB参数;方法二,将所述MSB取值映射为用于指示在POC对齐过程中EL所使用的MSB取值的第一指示信息;方法三,将所述MSB取值映射为用于指示所述MSB参数的获取方式的第二指示信息集。
优选地,将所述MSB取值携带于所述码流中包括:将所述MSB取值直接设置为用于标识所述MSB取值为0的标识信息携带于EL图像分片头信息;或者,将所述MSB取值直接携带于EL图像分片头信息;或者,将所述MSB取值相对于以下之一取值的倍数值携带于EL图像分片头信息中:当前图像POC值的MSB最小容许正整数取值、所述当前图像POC值的最大LSB容许取值加1后得到的取值;或者,将所述MSB取值二进制取值进行右移位操作,将移位操作后的MSB取值携带于EL图像分片头信息中,其中,右移位的二进制位数等于所述EL所使用的LSB比特字段长度值。
优选地,上述方法还包括:将所述MSB参数的比特字段的长度携带于所述码流。
优选地,使用以下方法确定所述第一指示信息:选取EL已解码图像的POC取值,将其二进制取值的低比特位置为0,将低比特位置为0后的所述POC取值作为第一候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;当所述第一候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用EL信息推导POC对齐操作所使用MSB取值的指示信息;否则,选取基本层BL已解码图像的POC取值,将其二进制表示的低比特位置为0,将低比特位置为0后的所述POC取值作为第二候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;当所述第二候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用BL信息推导POC对齐操作所使用MSB取值的指示信息;或者,当所述第二候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用BL信息推导POC对齐操作所使用MSB取值的指示信息;否则,当所述第一候选MSB值与所述EL所使用的MSB取值相等时,将第一指示信息设置为用于指示使用EL信息推导POC对齐操作所使用MSB取值的指示信息。
优选地,所述第一指示信息携带于EL图像分片头信息中。
优选地,当所述MSB取值等于0时,使用以下方法确定所述第二指示信息集:在第二指示信息集中设置用于指示将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中。
优选地,当所述MSB取值不等于0时,使用以下之一方法确定所述第二指示信息集:在第二指示信息集中设置用于指示不将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中;选取BL已解码图像的POC取值,将其二进制表示的低比特位置为0,将其作为候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;当所述MSB取值等于所述候选MSB取值时,在第二指示信息集中设置用于指示直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并将该指示信息携带于EL图像分片头信息中;否则,在所述第二指示信息集中设置用于指示不直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并计算所述MSB取值与所述候选MSB取值之间的差值,将该指示信息和所述差值携带于EL图像分片头信息中。
优选地,所述LSB参数携带于EL图像分片头信息中。
优选地,获取执行POC对齐操作时所使用的当前图像的POC值之前,包括:在满足以下之一条件时,确定需要执行POC对齐操作:条件1:BL的图像为解码立即刷新IDR图像,所述IDR图像所在AU中EL存在图像且非IDR图像;条件2:BL的图像为断开连接访问BLA图像,且所述BLA图像所在AU中EL存在图像且非BLA图像;条件3:按照解码顺序,在当前AU之前的一个或多个AU中存在一个IDR或BLA的BL图像且所述一个或多个AU中不包含EL图像;条件4:EL的图像为IDR图像,所述IDR图像所在AU中BL图像存在且非IDR图像,或者所述EL的图像所在AU中不存在BL图像;条件5:EL的图像为BLA图像,且所述BLA图像所在AU中BL存在图像且非BLA图像,或者所述BLA图像所在AU中不存在BL图像。
为了达到上述目的,根据本发明的又一个方面,还提供了一种视频图像序号POC的解码装置,包括:获取模块,用于获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数;确定模块,用于根据所述MSB参数和所述LSB参数确定当前图像POC值的MSB取值和LSB取值;计算模块,用于根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值。
优选地,所述确定模块,用于通过以下之一方法确定所述MSB:方法一,从码流中直接获取所述码流携带的MSB参数,根据所述码流携带的MSB参数获取所述MSB取值;方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,根据所述第一指示信息推导所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值;方法三,获取用于指示所述MSB参数的获取方式的第二指示信息集;根据所述第二指示信息集确定所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值。
为了达到上述目的,根据本发明的又一个方面,还提供了一种视频图像序号POC的编码装置,包括:获取模块,用于获取执行POC对齐操作时所使用的当前图像的POC值;映射模块,用于将所述POC值的最高比特位MSB取值和最低比特位LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数;写入模块,用于将所述MSB参数和所述LSB参数写入码流。
优选地,所述获取模块,用于在与当前增强层EL图像位于同一接入单元AU的基本层BL图像存在时,将所述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定所述AU中在包含BL图像时所述BL图像所应使用的POC取值,并将所述BL图像所应使用的POC取值作为所述POC值。
为了达到上述目的,根据本发明的又一个方面,还提供了一种电子设备,包括:以上所述的视频图像序号POC的解码装置,和/或以上所述的视频图像序号POC的编码装置。
通过本发明,采用根据解析多层视频编码码流得到的结果获取POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数,并根据该MSB参数和LSB参数确定当前图像POC值的MSB取值和LSB取值,进而计算得到所述当前图像POC值的技术手段,解决了相关技术中,在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,实现了不需要在BL码流中为实施POC对齐相关操作增加任何比特字段,也不需要对层的DPB中存储图像进行POC平移操作的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为根据本发明实施例的视频图像序号的解码方法的流程图;
图2是根据本发明实施例的视频图像序号的解码装置的结构框图;
图3为根据本发明实施例的视频图像序号的编码方法的流程图;
图4是根据本发明实施例的视频图像序号的解码装置的结构框图;
图5是根据本发明优选实施例的视频图像序号的编码方法的流程图;
图6是根据本发明优选实施例的视频图像序号的解码方法的流程图;
图7是根据本发明优选实施例1的解码流程图;
图8是根据本发明优选实施例1的编码流程图;
图9是根据本发明优选实施例2的解码流程图;
图10是根据本发明优选实施例2的编码流程图;
图11是根据本发明优选实施例3的解码流程图;
图12是根据本发明优选实施例3的编码流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1为根据本发明实施例的视频图像序号的解码方法的流程图。如图1所示,该方法包括:步骤S102至步骤S106,
S102:获取对POC进行对齐操作时所使用的MSB参数和LSB参数;在接收的多层视频码流携带有上述MSB参数和LSB参数时,可以从该多层视频码流分片头信息中获取:例如从码流的分片头信息中获取。
S104:根据MSB参数和LSB参数确定当前图像POC值的MSB取值和LSB取值;需要说明的是,具体可以根据MSB参数和LSB参数分别获取MSB取值和LSB取值,也可以根据MSB参数和LSB参数共同确定其中的MSB参数,或LSB参数。
其中,对于MSB取值可以采用以下三种方法:
方法一,从码流中直接获取上述码流携带的MSB参数,根据上述码流携带的MSB参数获取上述MSB取值。需要说明的是,该码流可以为多层视频码流,也可以为***层码流。具体可以通过以下之一方式获取:
根据用于标识MSB取值为0的标识信息获取当前图像POC值的MSB取值;
将上述MSB参数取值设置为当前图像POC值的MSB取值;
将MSB参数取值与以下之一取值的乘积设置为当前图像POC值的MSB取值:当前图像POC值的MSB最小容许正整数取值的乘积、当前图像POC值的最大LSB容许取值加1后得到的取值;
将MSB参数取值的二进制取值进行左移位操作,将移位操作后的所述MSB参数取值作为当前图像POC值的MSB取值,其中,左移位的二进制位数等于EL所使用的LSB比特字段长度值。
方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,根据上述第一指示信息推导上述增强层EL所使用的MSB取值,得到上述当前图像POC值的MSB取值;
对于该方法,可以通过以下方式确定推导所述增强层EL的MSB取值过程中所使用的参考POC取值:从BL或EL已有解码信息中获得所述参考POC取值。
在该方法中,可以根据EL所使用的LSB比特字段长度信息,从上述参考POC取值中提取EL所使用的MSB取值。具体可以通过以下之一方式获取上述MSB取值:
使用上述参考POC取值对应的MSB取值作为所述EL所使用的MSB取值;
将上述参考POC取值的二进制取值中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于EL所使用的LSB比特字段长度值;
将所述参考POC取值的二进制取值先进行右移位操作、后进行左移位操作,其中,移位操作的二进制位数等于所述增强层EL所使用的LSB比特字段长度值。
方法三,获取用于指示上述MSB参数的获取方式的第二指示信息集;根据上述第二指示信息集确定上述EL所使用的MSB取值,得到上述当前图像POC值的MSB取值。其中,根据上述第二指示信息集确定EL所使用的MSB取值,可以通过以下之一过程实现:
将EL所使用的MSB取值设置为0;
使用从BL已有解码信息中的POC取值的低比特位置0后的取值作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;
使用从BL已有解码信息中的POC取值的低比特位置0后的取值与所述EL分片头信息携带的修正值之和作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值。
在本实施例中,还可以获取确定EL所使用的MSB取值所需的MSB参数的比特字段的长度。例如通过码流中携带的指定字段确定该长度,具体可参见实施例1,此处不再赘述。
S106:根据上述MSB取值和上述LSB取值计算得到上述当前图像POC值。例如可以将上述MSB取值与LSB取值之和作为当前图像POC取值。
在本实施中,可以从EL的分片头信息中直接获取上述LSB参数。
在步骤S102之前,还可以获取EL分片头信息中携带的POC对齐操作标志位,其中,在该POC对齐操作标志位指示需要进行对齐操作时,触发获取上述MSB参数和LSB参数。
通过上述各个步骤,采用根据解析多层视频编码码流得到的结果获取POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数,并根据该MSB参数和LSB参数确定当前图像POC值的MSB取值和LSB取值,进而计算得到所述当前图像POC值的技术手段,在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,实现了不需要在BL码流中为实施POC对齐相关操作增加任何比特字段,也不需要对层的DPB中存储图像进行POC平移操作的效果。
在本发明实施例中还提供了一种视频图像序号的解码装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述,下面对该装置中涉及到的模块进行说明,如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合,尽管以下实施例所描述的装置较佳地以软件实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的,图2是根据本发明实施例的视频图像序号的解码装置的结构框图。如图2所示,该装置包括:
获取模块20,用于获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数;
确定模块22,连接至获取模块20,用于根据上述MSB参数和上述LSB参数确定当前图像POC值的MSB取值和LSB取值;
计算模块24,连接至确定模块22,用于根据上述MSB取值和上述LSB取值计算得到上述当前图像POC值。
在本实施例中,确定模块22,用于通过以下之一方法确定上述MSB:方法一,从接收的视频码流中直接获取上述视频码流携带的MSB参数,根据上述视频码流携带的MSB参数计算得到上述MSB取值;方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,根据上述第一指示信息推导上述增强层EL所使用的MSB取值,得到上述当前图像POC值的MSB取值;方法三,获取用于指示上述MSB参数的获取方式的第二指示信息集;根据上述第二指示信息确定上述EL所使用的MSB取值,得到上述当前图像POC值的MSB取值。
通过上述各个模块的功能,可以解决在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,实现了不需要在BL码流中为实施POC对齐相关操作增加任何比特字段,也不需要对层的DPB中存储图像进行POC平移操作的效果。
本发明实施例还提供了一种视频图像序号的编码方法,图3为根据本发明实施例的视频图像序号的编码方法的流程图。该方法包括:步骤S302至步骤S306,
S302:获取执行POC对齐操作时所使用的当前图像的POC值。具体可以通过以下处理过程实现:
如果与当前增强层EL图像位于同一接入单元AU的基本层BL图像存在,将上述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定上述AU中在包含BL图像时上述BL图像所应使用的POC取值,并将上述BL图像所应使用的POC取值作为上述POC值。
S304:将上述POC值的MSB取值和LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数。该LSB参数可以携带于EL图像分片头信息中
可以通过以下方法确定上述MSB取值和LSB取值:
将上述POC值的二进制取值中的低比特位作为上述LSB取值,所使用的二进制低比特位的位数等于EL所使用的LSB比特字段长度值;将上述POC值与LSB取值之差作为上述MSB取值;或者,
将上述POC值的二进制表示中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于上述EL所使用的LSB比特字段长度值;将置0操作前上述POC值与上述MSB取值之差作为上述LSB取值;或者,
将上述POC值的二进制取值先进行右移位操作、后进左移位操作,其中,左移位和右移位的二进制位数等于上述EL所使用的LSB比特字段长度值,将移位操作后的POC值作为上述MSB取值,将移位操作前上述POC值与上述MSB取值之差作为上述LSB取值。
将上述POC值的MSB取值映射为在执行POC对齐操作时所使用的MSB参数可以通过以下方式实现:
方法一,将上述MSB取值携带于上述码流中,作为上述MSB参数;例如,将上述MSB取值直接设置为用于标识MSB取值为0的标识信息携带于EL图像分片头信息;或者,将上述MSB取值直接携带于EL图像分片头信息;或者,将上述MSB取值相对于以下之一取值的倍数值携带于EL图像分片头信息中:当前图像POC值的MSB最小容许正整数取值、当前图像POC值的最大LSB容许取值加1后得到的取值;或者,将上述MSB取值二进制取值进行右移位操作,将移位操作后的MSB取值携带于EL图像分片头信息中,其中,右移位的二进制位数等于上述EL所使用的LSB比特字段长度值。
方法二,将上述MSB取值映射为用于指示在POC对齐过程中EL所使用的MSB取值的第一指示信息;上述第一指示信息携带于EL图像分片头信息中
方法三,将上述MSB取值映射为用于指示上述MSB参数的获取方式的第二指示信息集。
在该方法中,当上述MSB取值等于0时,使用以下方法确定上述第二指示信息集:其中,在第二指示信息集中设置用于指示将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中。
在该方法中,当上述MSB取值不等于0时,使用以下之一方法确定上述第二指示信息集:
在第二指示信息集中设置用于指示不将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中;
选取BL已解码图像的POC取值,将其二进制表示的低比特位置为0,将其作为候选MSB取值,其中,置0的低比特位位数等于上述EL所使用的LSB比特字段长度值;当上述MSB取值等于上述候选MSB取值时,在第二指示信息集中设置用于指示直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并将该指示信息携带于EL图像分片头信息中;否则,在上述第二指示信息集中设置用于指示不直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并计算上述MSB取值与上述候选MSB取值之间的差值,将该指示信息和上述差值携带于EL图像分片头信息中
S306:将上述MSB参数和上述LSB参数写入码流。
在本实施例中,在步骤S302之前,还可以在满足以下之一条件时,确定需要执行POC对齐操作:
条件1:BL的图像为解码立即刷新IDR图像,上述IDR图像所在AU中EL存在图像且非IDR图像;
条件2:BL的图像为断开连接访问BLA图像,且上述BLA图像所在AU中EL存在图像且非BLA图像;
条件3:按照解码顺序,在当前AU之前的一个或多个AU中存在一个IDR或BLA的BL图像且上述一个或多个AU中不包含EL图像;
条件4:EL的图像为IDR图像,上述IDR图像所在AU中BL图像存在且非IDR图像,或者上述EL的图像所在AU中不存在BL图像;
条件5:EL的图像为BLA图像,且上述BLA图像所在AU中BL存在图像且非BLA图像,或者上述BLA图像所在AU中不存在BL图像。
在本实施例中,在获取执行POC对齐操作时所使用的当前图像的POC值之前,还可以根据预测结构和/或抗误码需求确定是否需要执行POC对齐操作。在本实施例中,还可以将上述MSB参数的比特字段的长度携带于所述码流。
在本发明实施例中还提供了一种视频图像序号的编码装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述,下面对该装置中涉及到的模块进行说明,如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合,尽管以下实施例所描述的装置较佳地以软件实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的,图4是根据本发明实施例的视频图像序号的解码装置的结构框图。如图4所示,该装置包括:
获取模块40,用于获取执行POC对齐操作时所使用的当前图像的POC值;
映射模块42,连接至获取模块40,用于将所述POC值的最高比特位MSB取值和最低比特位LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数;
写入模块44,连接至映射模块42,用于将所述MSB参数和所述LSB参数写入码流。
可选地,获取模块40,用于在与当前EL图像位于同一AU的BL图像存在时,将上述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定AU中在包含BL图像时BL图像所应使用的POC取值,并将BL图像所应使用的POC取值作为所述POC值。
在本实施例中,还提供一种电子设备,包括:以上任一所述的解码装置,和/或以上任一所述的编码装置。
本发明实施例的上述方法可以总结为:编码器判断是否需要使用视频图像序号对齐操作,在需要使用该操作的情况下,编码器从所在增强层和/或对应基本层获得视频图像对齐所需的高比特位和低比特位的取值,编码器设置与高、低比特位取值相关的语法元素取值并将其写入码流;解码器在使用视频图像序号对齐操作时,从码流中获取推导高、低比特位取值所需的信息,解码器从所在增强层和/或对应基本层获得视频图像对齐所需的高比特位和低比特位的取值,计算当前图像的视频图像序号的取值。
为了更好地了解视频图像序号的编码及解码过程,以下结合优选实施例详细说明。
以下优选实施例中图像序号的编码过程主要设计思想可以通过图5所示步骤体现,如图5所示:
S502:编码器判断是否需要使用视频图像序号对齐操作;
S504:在需要使用该操作的情况下,编码器从所在增强层和/或对应基本层获得视频图像对齐所需的高比特位和低比特位的取值。
S506:编码器设置与高、低比特位取值相关的语法元素取值并将其写入码流。
图像序号的解码过程的主要设计思想可以通过图6所示步骤体现:
S602:解码器在使用视频图像序号对齐操作时,从码流中获取推导高、低比特位取值所需的信息。
S604:解码器从所在增强层和/或对应基本层获得视频图像对齐所需的高比特位和低比特位的取值。
S606:解码器计算当前图像的视频图像序号的取值。
实施例1
图7是根据本发明优选实施例1的解码流程图。如图7所示,该流程包括:
步骤S702,解码器从码流中解析poc_alignment_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析poc_alignment_flag对应的比特字段,获得poc_alignment_flag的取值。
步骤S704,解码器判断:poc_alignment_flag的取值是否为1。若是,则执行步骤S706;否则,执行步骤S720。
步骤S706,解码器解析set_poc_msb_to_zero_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析set_poc_msb_to_zero_flag对应的比特字段,获得set_poc_msb_to_zero_flag的取值。
步骤S708,解码器判断:set_poc_msb_to_zero_flag的取值是否为1。若是,则执行步骤S710;否则,执行步骤S712。
步骤S710,解码器将变量PicOrderCntMsb的取值设置为0。执行步骤S716。
步骤S712,解码器解析bit_length_aligned_poc_msb_minus1的取值。
解码器使用ue(v)对应的解码方法从码流中解析bit_length_aligned_poc_msb_minus1对应的比特字段,获得bit_length_aligned_poc_msb_minus1的取值。
步骤S714,解码器解析aligned_poc_msb_value的取值。
解码器使用u(v)对应的解码方法从码流中解析aligned_poc_msb_value对应的比特字段,获得aligned_poc_msb_value的取值。
解码器将变量PicOrderCntMsb的取值设置为(aligned_poc_msb_value<<(log2_max_pic_order_cnt_lsb_minus4+4))的取值。其中,运算符“<<”是H.265/HEVC Version1标准中定义的对二进制数据进行左移位的操作符,移位后在低位上补0;log2_max_pic_order_cnt_lsb_minus4是在SPS中的比特字段,来自于EL使用的SPS。
可替换地,解码器将变量PicOrderCntMsb的取值设置为aligned_poc_msb_value取值与变量MaxPicOrderCntLsb取值的乘积。其中,变量MaxPicOrderCntLsb的取值使用H.265/HEVC Version 1标准中给出的方法由log2_max_pic_order_cnt_lsb_minus4计算得到。该取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。
步骤S716,解码器设置变量PicOrderCntLsb的取值。
解码器解析slice_pic_order_cnt_lsb的取值。
当poc_alignment_flag取值等于1时,解码器将变量PicOrderCntLsb的取值设置为slice_pic_order_cnt_lsb的取值。
步骤S718,当poc_alignment_flag取值等于1时,解码器将记录当前图像的POC值变量PicOrderCntVal的取值设置为PicOrderCntMsb与PicOrderCntLsb之和。执行步骤S722。
步骤S720,解码器使用H.265/HEVC Version 1标准的确定当前图像POC的取值PicOrderCntVal。执行步骤S722。
步骤S722,解码器计算POC过程结束。
需要说明的是,在本优选实施例中,上述码流如表1所示,包含:标识是否使用POC对齐操作的信息;标识POC对齐操作过程中MSB获取方法的信息,包括:标识是否将POC的MSB取值设置为0的信息,标识POC的MSB信息在码流中的比特长度的信息,标识POC对齐操作中MSB取值的信息。
对应的码流中,携带有如下比特字段:标识是否使用POC对齐操作的比特字段;标识POC对齐操作过程中MSB获取方法的比特字段,包括:标识是否将POC的MSB取值设置为0的比特字段,标识POC的MSB信息在码流中的比特长度的比特字段,标识POC对齐操作中MSB取值的比特字段。
表1
表1中各字段的语义(对应的解码器操作)如下。其中,slice_pic_order_cnt_lsb字段是现有方法中已有的比特字段。
poc_alignment_flag取值等于1时表示解码器在解码过程中需要使用POC对齐操作;反之,取值等于0时表示解码器在解码过程中可能使用、也可能不使用POC对齐操作。当码流中不包含该元素时,该元素的取值默认为0。该元素的编解码方法使用u(1)对应的编解码方法。
set_poc_msb_to_zero_flag取值等于1时表示解码器在计算当前图像POC的过程中,将PicOrderCntMsb的值设置为0;反之,取值等于0时表示解码器在计算当前图像POC的过程中,将PicOrderCntMsb的取值设置为aligned_poc_msb_value。该元素的编解码方法使用u(1)对应的编解码方法。
bit_length_aligned_poc_msb_minus1加1表示元素aligned_poc_msb_value在码流中使用的比特长度。该元素的编解码方法使用ue(v)对应的编解码方法。
aligned_poc_msb_value表示当set_poc_msb_to_zero_flag取值等于0时,PicOrderCntMsb的取值。该元素的编解码方法使用u(v)对应的编解码方法,所使用的编码比特数等于(bit_length_aligned_poc_msb_minus1+1)。
图8是根据本发明优选实施例1的编码流程图。如图8所示,该流程包括:
步骤S802,编码器判断是否需要使用POC对齐操作。
编码器将变量poc_alignment_flag的值初始化为0。
编码器根据多层视频编码预测结构判断是否需要使用POC对齐操作。对于某个EL,当如下条件之一成立时,编码器将该EL层相关变量poc_alignment_flag的取值设置为1:
条件1:BL是IDR图像,同AU中EL图像存在且不是IDR图像。
条件2:BL是BLA图像,同AU中EL图像存在且不是BLA图像。
条件3:按照解码顺序,之前的一个或多个AU中存在一个IDR或BLA的BL图像而这些AU中不包含EL图像。
条件4:EL是IDR图像,同AU中BL图像存在且不是IDR图像,或者同AU中BL图像不存在。
条件5:EL是BLA图像,同AU中BL图像存在且不是BLA图像,或者同AU中BL图像不存在。
除此之外,编码器优化模块判断需要进行POC对齐操作时,将poc_alignment_flag的取值设置为1。
编码器使用u(1)对应的编码方法将poc_alignment_flag的取值写入码流。
步骤S804,编码器判断:poc_alignment_flag的取值是否等于1。若是,执行步骤S806;否则,执行步骤S816。
步骤S806,编码器确定POC对齐操作过程中使用的POC的MSB和LSB的取值。
编码器可以根据多层视频编码预测结构判断是否需要执行POC的MSB清0操作。当如下条件之一成立时,编码器可直接将PicOrderCntMsb的取值设置为0。
条件1:BL是IDR图像,同AU中EL图像存在且不是IDR图像。
条件2:BL是BLA图像,同AU中EL图像存在且不是BLA图像。
条件3:按照解码顺序,之前的一个或多个AU中存在一个IDR或BLA的BL图像而这些AU中不包含EL图像。
对于EL上需要进行POC对齐操作的图像,编码器执行如下操作:
编码器确定该AU的POC值:如果与该EL图像位于同AU的BL图像存在,编码器将PicOrderCntMsb的取值设置为该BL图像POC取值;反之,如果与该EL图像位于同AU的BL图像不存在,编码器根据BL的帧率信息及先前已编码的BL图像的POC信息,确定若该AU中包含BL图像时该BL图像所应使用的POC取值,并将该取值赋值给变量PicOrderCntMsb。
编码器将(PicOrderCntMsb&(MaxPicOrderCntLsb–1))的取值赋值给变量PicOrderCntLsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。实际上,MaxPicOrderCntLsb的取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
编码器在不满足上述三个条件中的任一条件时,编码器使用如下方法确定PicOrderCntMsb的取值:
编码器计算(PicOrderCntMsb–PicOrderCntLsb)的取值,并将该值重新赋值给变量PicOrderCntMsb。
当PicOrderCntMsb的取值等于0时,编码器将变量set_poc_msb_to_zero的取值设置为1;反之,编码器将变量set_poc_msb_to_zero的取值设置为0。
编码器使用u(1)对应的编码方法将set_poc_msb_to_zero的取值写入码流。
步骤S808,编码器判断:set_poc_msb_to_zero的取值是否等于0。若是,则执行步骤S810;否则,执行步骤S812。
步骤S810,编码器将POC对齐过程所使用的MSB信息写入码流。
编码器计算(PicOrderCntMsb>>(log2_max_pic_order_cnt_lsb_minus4+4))的取值,并将该值重新复制给变量PicOrderCntMsb。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
编码器计算(Ceil(Log2(PicOrderCntMsb+1))–1)的取值,并将其赋值给变量bit_length_aligned_poc_msb_minus1。其中,Ceil(x)和Log2(x)为H.265/HEVC Version 1标准中定义的数学运算。
编码器使用ue(v)对应的编码方法将bit_length_aligned_poc_msb_minus1的取值写入码流。
编码器将PicOrderCntMsb的取值赋值给变量aligned_poc_msb_value,并使用u(v)对应的编码方法将aligned_poc_msb_value的取值写入码流,使用的编码比特数等于(bit_length_aligned_poc_msb_minus1+1)。
执行步骤S812。
步骤S812,编码器将POC对齐所使用的LSB信息写入码流。
编码器将PicOrderCntLsb的取值赋值给变量slice_poc_order_cnt_lsb,并使用u(v)对应的编码方法将slice_poc_order_cnt_lsb的取值写入码流,使用的编码比特数定于(log2_max_pic_order_cnt_lsb_minus4+4)。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
执行步骤S816。
步骤S814,编码器使用现有方法确定slice_poc_order_cnt_lsb的取值,并将其写入码流。
步骤S816,编码器已完成将POC相关信息写入码流。
优选实施例2
图9是根据本发明优选实施例2的解码流程图。如图9所示,该流程包括:
步骤S902,解码器从码流中解析poc_alignment_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析poc_alignment_flag对应的比特字段,获得poc_alignment_flag的取值。
步骤S904,解码器判断:poc_alignment_flag的取值是否等于1。若是,则执行步骤S906;否则,执行步骤S918。
步骤S906,解码器从码流中解析inherit_msb_from_base_layer_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析inherit_msb_from_base_layer_flag对应的比特字段,获得inherit_msb_from_base_layer_flag的取值。
步骤S908,解码器判断:inherit_msb_from_base_layer_flag的取值是否等于1。若是,则执行步骤S910;否则,执行步骤S912。
步骤S910,解码器根据已解码的BL信息,推导POC对齐过程中所使用的MSB取值。
解码器在已解码的BL层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL(Random Access Decodable Leading)图像或RASL(Random Access SkippedLeading)图像或时域子层非参考图像,将该图像的POC取值赋值给变量PicOrderCntMsb。
解码器计算(PicOrderCntMsb–(PicOrderCntMsb&(MaxPicOrderCntLsb–1)))的取值,并将该取值重新赋值给变量PicOrderCntMsb。其中,运算符“&”是H.265/HEVC Version1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。实际上,MaxPicOrderCntLsb取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。其中,log2_max_pic_order_cnt_lsb_minus4来自于BL使用的SPS。
解码器计算((PicOrderCntMsb>>(log2_max_pic_order_cnt_lsb_minus4+4))<<(log2_max_pic_order_cnt_lsb_minus4+4))的取值,并将该取值重新赋值给变量PicOrderCntMsb。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS,运算符“<<”和”>>”分别是H.265/HEVC Version 1标准中定义的比特左移和右移运算符。
执行步骤S914。
步骤S912,解码器根据当前图像的图像类型和已解码的同层信息,推导POC对齐过程中使用的MSB取值。执行步骤S914。该步骤S912可以包括以下处理步骤:
步骤S912-1:解码器判断下述条件是否全部成立:
条件1:当前EL图像的图像类型是IDR图像,或BLA图像,或CRA图像;
条件2:当前解码器维护的标志位变量NoRaslOutputFlag的取值等于1。
若上述条件全部成立,解码器执行步骤S912-2;反之,执行步骤S912-4。
步骤S912-2:解码器在已解码的同层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL图像、不是RASL图像、不是时域子层非参考图像,将该图像的POC取值赋值给变量PicOrderCntMsb。
步骤S912-3:解码器计算(PicOrderCntMsb–(PicOrderCntMsb&(MaxPicOrderCntLsb–1)))的取值,并将该取值重新赋值给变量PicOrderCntMsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。实际上,MaxPicOrderCntLsb取值等于POC的MSB最小容许正整数值,或等于POC的最大LSB容许取值加1。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
步骤S912-4,当步骤S912-1中的判断条件不全部成立时,当前EL图像是普通的帧间预测编码图像,或是CRA图像但对应的NoRaslOutputFlag的取值等于0。此时,解码器执行如下操作:
解码器将PicOrderCntMsb的取值设置为0。
步骤S914,解码器设置变量PicOrderCntLsb的取值。
解码器解析slice_pic_order_cnt_lsb的取值。
当poc_alignment_flag取值等于1时,解码器将变量PicOrderCntLsb的取值设置为slice_pic_order_cnt_lsb的取值。
步骤S916,当poc_alignment_flag取值等于1时,解码器将记录当前图像的POC值变量PicOrderCntVal的取值设置为PicOrderCntMsb与PicOrderCntLsb之和。执行步骤S920。
步骤S918,解码器使用H.265/HEVC Version 1标准的方法确定当前图像POC的取值PicOrderCntVal。执行步骤S920。
步骤S920,解码器计算POC过程结束。
在本优选实施里中,上述码流如表2所示,包含:标识是否使用POC对齐操作的信息;标识POC对齐操作中MSB获取方式的信息。对应的码流中,携带有如下比特字段:标识是否使用POC对齐操作的比特字段;标识POC对齐操作中MSB获取方法的比特字段。
表2
表2中各字段的语义(对应的解码器操作)如下。其中,slice_pic_order_cnt_lsb字段是现有方法中已有的比特字段。
poc_alignment_flag取值等于1时表示解码器在解码过程中需要使用POC对齐操作;反之,取值等于0时表示解码器在解码过程中可能使用、也可能不使用POC对齐操作。当码流中不包含该元素时,该元素的取值默认为0。该元素的编解码方法使用u(1)对应的编解码方法。
inherit_msb_from_base_layer_flag取值等于1时表示解码器在解码过程中使用BL已解码信息推导POC对齐过程中所需使用的MSB取值;反之,取值等于0时表示解码器在解码过程中不使用BL已解码信息推导POC对齐过程中所需使用的MSB取值。该元素的编解码方法使用u(1)对应的编解码方法,需要说明的是,inherit_msb_from_base_layer_flag相当于上述实施例中的“第一指示信息”。
图10是根据本发明优选实施例2的编码流程图。如图10所示,该流程包括:
步骤S1002,与步骤S802完全相同。
步骤S1004,编码器判断:poc_alignment_flag的取值是否等于1。若是,执行步骤S1006;否则,执行步骤S1010。
步骤S1006,编码器确定POC对齐操作过程中推导的MSB取值的方法,确定inherit_msb_from_base_layer_flag的取值。
简便地,当与当前EL图像位于同一个AU中的BL图像存在时,编码器将inherit_msb_from_base_layer_flag的取值设置为1,反之,编码器将inherit_msb_from_base_layer_flag的取值设置为0。
可替换地,为提高编码器性能,编码器可根据BL和EL之间的预测编码结构、不同层的帧率、抗误码性能优化和随机接入等因素,由编码器的优化模块确定inherit_msb_from_base_layer_flag的取值。
编码器使用u(1)对应的编码方法将inherit_msb_from_base_layer_flag的取值写入码流。
步骤S1008,编码器确定POC的LSB的取值。
对于EL上需要进行POC对齐操作的图像,编码器执行如下操作:
编码器确定该AU的POC值:如果与该EL图像位于同AU的BL图像存在,编码器将PicOrderCntVal的取值设置为该BL图像POC取值;反之,如果与该EL图像位于同AU的BL图像不存在,编码器根据BL的帧率信息及先前已编码的BL图像的POC信息,确定若该AU中包含BL图像时该BL图像所应使用的POC取值,并将该取值赋值给变量PicOrderCntVal。
编码器将(PicOrderCntVal&(MaxPicOrderCntLsb–1))的取值赋值给变量PicOrderCntLsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。实际上,MaxPicOrderCntLsb取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
编码器将PicOrderCntLsb的取值赋值给变量slice_poc_order_cnt_lsb,并使用u(v)对应的编码方法将slice_poc_order_cnt_lsb的取值写入码流,使用的编码比特数定于(log2_max_pic_order_cnt_lsb_minus4+4)。log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
步骤S1010,编码器使用现有方法确定slice_poc_order_cnt_lsb的取值,并将其写入码流。执行步骤S1012。
步骤S1012,编码器已完成将POC相关信息写入码流。
实施例3
图11是根据本发明优选实施例3的解码流程图。如图11所示,该流程包括:
步骤S1102,解码器从码流中解析poc_alignment_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析poc_alignment_flag对应的比特字段,获得poc_alignment_flag的取值。
步骤S1104,解码器判断:poc_alignment_flag的取值是否为1。若是,则执行步骤S1106;否则,执行步骤S1120。
步骤S1106,解码器解析clear_poc_msb_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析clear_poc_msb_flag对应的比特字段,获得clear_poc_msb_flag的取值。
步骤S1108,解码器判断:clear_poc_msb_flag的取值是否为1。若是,则执行步骤S1110;否则,执行步骤S1112。
步骤S1110,解码器将变量PicOrderCntMsb的取值设置为0。执行步骤S1116。
步骤S1112,解码器推导PicOrderCntMsb的取值。执行步骤S1116。该步骤可以包括以下处理步骤:
步骤S1112-1,解码器解析inherit_msb_from_base_layer_flag的取值。
解码器使用u(1)对应的解码方法从码流中解析inherit_msb_from_base_layer_flag对应的比特字段,获得inherit_msb_from_base_layer_flag的取值。
步骤S1112-2,解码器判断:inherit_msb_from_base_layer_flag的取值是否等于1。若是,执行步骤S1118;否则,执行步骤S1112-5。
步骤S1112-3,解码器解析poc_msb_diff_from_base_layer的取值。
解码器使用se(v)对应的解码方法从码流中解析poc_msb_diff_from_base_layer对应的比特字段,获得poc_msb_diff_from_base_layer的取值。
步骤S1112-4,解码器使用BL信息推导PicOrderCntMsb的取值。执行步骤S1112-6。
解码器在已解码的BL层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL(Random Access Decodable Leading)图像或RASL(Random Access SkippedLeading)图像或时域子层非参考图像,将该图像的POC取值赋值给变量BaseLayerPicOrderCnt。
解码器计算(BaseLayerPicOrderCnt–(BaseLayerPicOrderCnt&(MaxPicOrderCntLsb–1)))的取值,并将该取值重新赋值给变量BaseLayerPicOrderCntMsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。实际上,MaxPicOrderCntLsb取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。其中,log2_max_pic_order_cnt_lsb_minus4来自于BL使用的SPS。
解码器计算((poc_msb_diff_from_base_layer+(BaseLayerPicOrderCntMsb>>(log2_max_pic_order_cnt_lsb_minus4+4)))<<(log2_max_pic_order_cnt_lsb_minus4+4))的取值,并将其赋值给变量PicOrderCntMsb。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS,运算符“>>”和“<<”分别是H.265/HEVC Version 1标准中定义的比特左移和右移运算符。
步骤S1112-5,解码器使用EL信息推导PicOrderCntMsb的取值。执行步骤S1112-6。
解码器在已解码的同层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL图像、不是RASL图像、不是时域子层非参考图像,将该图像的POC取值赋值给变量PicOrderCntMsb。
步骤S1112-6,解码器推导PicOrderCntMsb取值过程结束。
步骤S1114,解码器设置变量PicOrderCntLsb的取值。
解码器解析slice_pic_order_cnt_lsb的取值。
当poc_alignment_flag取值等于1时,解码器将变量PicOrderCntLsb的取值设置为slice_pic_order_cnt_lsb的取值。
步骤S1116,当poc_alignment_flag取值等于1时,解码器将记录当前图像的POC值变量PicOrderCntVal的取值设置为PicOrderCntMsb与PicOrderCntLsb之和。执行步骤S1132。
步骤S1118,解码器使用H.265/HEVC Version 1标准的确定当前图像POC的取值PicOrderCntVal。执行步骤S1120。
步骤S1120,解码器计算POC过程结束。
在本优选实施例中,如表3所示码流中,包含:标识是否使用POC对齐操作的信息;标识POC对齐操作中MSB获取方式的信息。对应的码流中,携带有如下比特字段:标识是否使用POC对齐操作的比特字段;标识POC对齐操作中MSB获取方法的比特字段。
表3
表3中各字段的语义(对应的解码器操作)如下。其中,slice_pic_order_cnt_lsb字段是现有方法中已有的比特字段。
poc_alignment_flag取值等于1时表示解码器在解码过程中需要使用POC对齐操作;反之,取值等于0时表示解码器在解码过程中可能使用、也可能不使用POC对齐操作。当码流中不包含该元素时,该元素的取值默认为0。该元素的编解码方法使用u(1)对应的编解码方法。
clear_poc_msb_flag取值等于1时表示解码器在计算当前图像POC的过程中,将PicOrderCntMsb的值设置为0;反之,取值等于0时表示解码器在计算当前图像POC的过程中,将PicOrderCntMsb的取值设置为aligned_poc_msb_value。该元素的编解码方法使用u(1)对应的编解码方法,需要说明的是,clear_poc_msb_flag相当于上述实施例中的“第二指示信息”。
inherit_msb_from_base_layer_flag取值等于1时表示解码器在解码过程中使用BL已解码信息推导POC对齐过程中所需使用的MSB取值;反之,取值等于0时表示解码器在解码过程中不使用BL已解码信息推导POC对齐过程中所需使用的MSB取值。该元素的编解码方法使用u(1)对应的编解码方法。
poc_msb_diff_from_base_layer用于计算使用POC对齐操作时PicOrderCntMsb的取值。该元素的编解码方法使用se(v)对应的编解码方法。
图12是根据本发明优选实施例3的编码流程图。如图12所示,该流程包括:
步骤S1202,与步骤S1002完全相同。
步骤S1204,编码器判断:poc_alignment_flag的取值是否等于1。若是,执行步骤S1206;否则,执行步骤S1214。
步骤S1206,编码器确定POC对齐操作过程中使用的POC的MSB和LSB的取值。
编码器可以根据多层视频编码预测结构判断是否需要执行POC的MSB清0操作。当如下条件之一成立时,编码器可直接将PicOrderCntMsb的取值设置为0。
条件1:BL是IDR图像,同AU中EL图像存在且不是IDR图像。
条件2:BL是BLA图像,同AU中EL图像存在且不是BLA图像。
条件3:按照解码顺序,之前的一个或多个AU中存在一个IDR或BLA的BL图像而这些AU中不包含EL图像。
对于EL上需要进行POC对齐操作的图像,编码器执行如下操作:
编码器确定该AU的POC值:如果与该EL图像位于同AU的BL图像存在,编码器将PicOrderCntMsb的取值设置为该BL图像POC取值;反之,如果与该EL图像位于同AU的BL图像不存在,编码器根据BL的帧率信息及先前已编码的BL图像的POC信息,确定若该AU中包含BL图像时该BL图像所应使用的POC取值,并将该取值赋值给变量PicOrderCntMsb。
编码器将(PicOrderCntMsb&(MaxPicOrderCntLsb–1))的取值赋值给变量PicOrderCntLsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4)),其取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。
编码器在不满足上述三个条件中的任一条件时,编码器使用如下方法确定PicOrderCntMsb的取值:
编码器计算(PicOrderCntMsb–PicOrderCntLsb)的取值,并将该值重新赋值给变量PicOrderCntMsb。
当PicOrderCntMsb的取值等于0时,编码器将变量clear_poc_msb_flag的取值设置为1;反之,编码器将变量clear_poc_msb_flag的取值设置为0。
编码器使用u(1)对应的编码方法将clear_poc_msb_flag的取值写入码流。
步骤S1208,编码器判断:clear_poc_msb_flag的取值是否等于0。若是,则执行步骤S1210否则,执行步骤S1212。
步骤S1210,编码器确定POC对齐过程所使用的MSB信息并写入码流。执行步骤S1212。
编码器在已解码的同EL层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL(Random Access Decodable Leading)图像或RASL(Random Access SkippedLeading)图像或时域子层非参考图像,将该图像的POC取值赋值给变量prevPicOrderCnt。
编码器计算(prevPicOrderCnt>>(log2_max_pic_order_cnt_lsb_minus4+4))的取值,并将该值重新复制给变量prevPicOrderCntMsb。其中,log2_max_pic_order_cnt_lsb_minus4的取值来自于该EL使用的SPS。
如果prevPicOrderCntMsb的取值与PicOrderCntMsb的取值相等,编码器将inherit_msb_from_base_layer_flag的取值设置为0。反之,编码器将inherit_msb_from_base_layer_flag的取值设置为1。
可替换地,为提高编码器性能,编码器可根据BL和EL之间的预测编码结构、不同层的帧率、抗误码性能优化和随机接入等因素,由编码器的优化模块确定inherit_msb_from_base_layer_flag的取值。
编码器使用u(1)对应的解码方法将inherit_msb_from_base_layer_flag的取值写入码流。
当inherit_msb_from_base_layer_flag的取值等于1时,编码器使用如下方法确定poc_msb_diff_from_base_layer的取值。
编码器在已解码的BL层图像中按解码顺序查找最近一个TemporalId值等于0、且不是RADL(Random Access Decodable Leading)图像或RASL(Random Access SkippedLeading)图像或时域子层非参考图像,将该图像的POC取值赋值给变量BaseLayerPicOrderCnt。
编码器计算(BaseLayerPicOrderCnt–(BaseLayerPicOrderCnt&(MaxPicOrderCntLsb–1)))的取值,并将该取值重新赋值给变量BaseLayerPicOrderCntMsb。其中,运算符“&”是H.265/HEVC Version 1标准中定义的运算符;MaxPicOrderCntLsb的取值等于(1<<(log2_max_pic_order_cnt_lsb_minus4+4))。MaxPicOrderCntLsb取值等于POC的MSB最小容许正整数取值,或等于POC的最大LSB容许取值加1。其中,log2_max_pic_order_cnt_lsb_minus4来自于BL使用的SPS。
编码器计算((PicOrderCntVal–(BaseLayerPicOrderCntMsb>>(log2_max_pic_order_cnt_lsb_minus4+4)))<<(log2_max_pic_order_cnt_lsb_minus4+4))的取值,并将其赋值给变量poc_msb_diff_from_base_layer。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS,运算符“>>”和“<<”分别是H.265/HEVC Version 1标准中定义的比特左移和右移运算符。
编码器使用se(v)对应的编码方法将poc_msb_diff_from_base_layer的取值写入码流。
步骤S1212,编码器将POC对齐所使用的LSB信息写入码流。执行步骤S1216。
编码器将PicOrderCntLsb的取值赋值给变量slice_poc_order_cnt_lsb,并使用u(v)对应的编码方法将slice_poc_order_cnt_lsb的取值写入码流,使用的编码比特数定于(log2_max_pic_order_cnt_lsb_minus4+4)。其中,log2_max_pic_order_cnt_lsb_minus4来自于EL使用的SPS。
步骤S1214,编码器使用现有方法确定slice_poc_order_cnt_lsb的取值,并将其写入码流。
步骤S1216,编码器已完成将POC相关信息写入码流。
该电子设备可以处理以下至少一种多层视频信号:可伸缩视频,多视点视频,多视点深度,多视点视频+多视点深度。其中,立体视频是多视点视频的一种视点数等于2的特殊形式。
所述电子设备可使用前述实施例中编码器的实施方法,对多层视频信号进行编码,并输出码流。
所述电子设备可使用前述实施例中编码和/或解码的实施方法,对码流进行解析,获得解码、播放过程中所需使用的POC信息,恢复多层视频信号。
本实施例的电子设备可以是视频通信应用中相关码流生成设备和接收播放设备,例如,手机、计算机、服务器、机顶盒、便携式移动终端、数字摄像机,电视广播***设备等。
综上所述,本发明实施例实现了以下有益效果:解决了相关技术中,在多层视频编码及解码过程中,无法保证正确解码和输出多层视频编码码流以及增加网络资源的额外开销等问题,实现了不需要在BL码流中为实施POC对齐相关操作增加任何比特字段,也不需要对层的DPB中存储图像进行POC平移操作的效果。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (26)

1.一种视频图像序号POC的解码方法,其特征在于,包括:
获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数;
根据所述MSB参数和所述LSB参数确定当前图像POC值的MSB取值和LSB取值;
根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值;
其中,根据所述MSB参数确定当前图像POC值的MSB取值包括以下之一:
方法一,从码流中直接获取所述码流携带的MSB参数,根据所述码流携带的MSB参数获取所述MSB取值;
方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,并将所述第一指示信息作为所述MSB参数,根据所述第一指示信息推导所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值;
方法三,获取用于指示所述MSB参数的获取方式的第二指示信息集;根据所述第二指示信息集确定所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值。
2.根据权利要求1所述的方法,其特征在于,通过以下方式确定推导所述EL的MSB取值过程中所使用的参考POC取值:
从基本层BL或EL已有解码信息中获得所述参考POC取值。
3.根据权利要求1或2所述的方法,其特征在于,根据所述第一指示信息推导所述EL所使用的MSB取值:
根据所述EL所使用的LSB比特字段长度信息,从所述参考POC取值中提取所述EL所使用的MSB取值。
4.根据权利要求3所述的方法,其特征在于,从所述参考POC取值中提取所述EL所使用的MSB取值包括以下之一:
使用所述参考POC取值对应的MSB取值作为所述EL所使用的MSB取值;或者,
将所述参考POC取值的二进制取值中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;
将所述参考POC取值的二进制取值先进行右移位操作、后进行左移位操作,其中,移位操作的二进制位数等于所述增强层EL所使用的LSB比特字段长度值。
5.根据权利要求1所述的方法,其特征在于,根据所述码流携带的MSB参数获取所述MSB取值包括以下之一:
根据用于标识所述MSB取值为0的标识信息获取所述当前图像POC值的所述MSB取值;
将所述码流携带的MSB参数的取值设置为所述当前图像POC值的MSB取值;
将所述码流携带的MSB参数的取值与以下之一取值的乘积设置为所述当前图像POC值的所述MSB取值:当前图像POC值的MSB最小容许正整数取值的乘积、所述当前图像POC值的最大LSB容许取值加1后得到的取值;
将所述码流携带的MSB参数的取值的二进制取值进行左移位操作,将移位操作后的所述MSB参数取值作为当前图像POC值的所述MSB取值,其中,左移位的二进制位数等于所述EL所使用的LSB比特字段长度值。
6.根据权利要求1所述的方法,其特征在于,根据所述第二指示信息集确定所述EL所使用的MSB取值,包括:
将所述EL所使用的MSB取值设置为0;或者,
使用从BL已有解码信息中的POC取值的低比特位置0后的取值作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;或者,
使用从BL已有解码信息中的POC取值的低比特位置0后的取值与所述EL分片头信息携带的修正值之和作为所述EL的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值。
7.根据权利要求1至2、4至6中任一项所述的方法,其特征在于,还包括:
获取确定所述EL所使用的MSB取值所需的所述MSB参数的比特字段的长度。
8.根据权利要求3所述的方法,其特征在于,还包括:
获取确定所述EL所使用的MSB取值所需的所述MSB参数的比特字段的长度。
9.根据权利要求1所述的方法,其特征在于,根据所述LSB参数确定当前图像POC值的LSB取值包括:
从EL的分片头信息中直接获取所述LSB参数。
10.根据权利要求1所述的方法,其特征在于,根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值包括:
将所述MSB取值与LSB取值之和作为所述当前图像POC取值。
11.根据权利要求1所述的方法,其特征在于,获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数之前,包括:
获取EL分片头信息中携带的POC对齐操作标志位,其中,在所述POC对齐操作标志位指示需要进行对齐操作时,触发获取所述MSB参数和所述LSB参数。
12.一种视频图像序号POC的编码方法,其特征在于,包括:
获取执行POC对齐操作时所使用的当前图像的POC值;
将所述POC值的最高比特位MSB取值和最低比特位LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数;
将所述MSB参数和所述LSB参数写入码流;
其中,将所述POC值的MSB取值映射为在执行POC对齐操作时所使用的MSB参数包括以下之一:
方法一,将所述MSB取值携带于所述码流中,作为所述MSB参数;
方法二,将所述MSB取值映射为用于指示在POC对齐过程中EL所使用的MSB取值的第一指示信息;
方法三,将所述MSB取值映射为用于指示所述MSB参数的获取方式的第二指示信息集。
13.根据权利要求12所述的方法,其特征在于,获取执行POC对齐操作时所使用的当前图像的POC值包括:
如果与当前增强层EL图像位于同一接入单元AU的基本层BL图像存在,将所述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定所述AU中在包含BL图像时所述BL图像所应使用的POC取值,并将所述BL图像所应使用的POC取值作为所述POC值。
14.根据权利要求12所述的方法,其特征在于,通过以下方法确定所述MSB取值和LSB取值:
将所述POC值的二进制取值中的低比特位作为所述LSB取值,所使用的二进制低比特位的位数等于EL所使用的LSB比特字段长度值;将所述POC值与LSB取值之差作为所述MSB取值;或者,
将所述POC值的二进制表示中的低比特位置0,作为EL使用的MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;将置0操作前所述POC值与所述MSB取值之差作为所述LSB取值;或者,
将所述POC值的二进制取值先进行右移位操作、后进左移位操作,其中,左移位和右移位的二进制位数等于所述EL所使用的LSB比特字段长度值,将移位操作后的POC值作为所述MSB取值,将移位操作前所述POC值与所述MSB取值之差作为所述LSB取值。
15.根据权利要求12所述的方法,其特征在于,将所述MSB取值携带于所述码流中包括:
将所述MSB取值直接设置为用于标识所述MSB取值为0的标识信息携带于EL图像分片头信息;或者,
将所述MSB取值直接携带于EL图像分片头信息;或者,
将所述MSB取值相对于以下之一取值的倍数值携带于EL图像分片头信息中:当前图像POC值的MSB最小容许正整数取值、所述当前图像POC值的最大LSB容许取值加1后得到的取值;或者,
将所述MSB取值二进制取值进行右移位操作,将移位操作后的MSB取值携带于EL图像分片头信息中,其中,右移位的二进制位数等于所述EL所使用的LSB比特字段长度值。
16.根据权利要求12所述的方法,其特征在于,包括:
将所述MSB参数的比特字段的长度携带于所述码流。
17.根据权利要求12所述的方法,其特征在于,使用以下方法确定所述第一指示信息:
选取EL已解码图像的POC取值,将其二进制取值的低比特位置为0,将低比特位置为0后的所述POC取值作为第一候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;
当所述第一候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用EL信息推导POC对齐操作所使用MSB取值的指示信息;否则,选取基本层BL已解码图像的POC取值,将其二进制表示的低比特位置为0,将低比特位置为0后的所述POC取值作为第二候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;
当所述第二候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用BL信息推导POC对齐操作所使用MSB取值的指示信息;或者,
当所述第二候选MSB值与所述EL所使用的MSB取值相等时,将所述第一指示信息设置为用于指示使用BL信息推导POC对齐操作所使用MSB取值的指示信息;否则,当所述第一候选MSB值与所述EL所使用的MSB取值相等时,将第一指示信息设置为用于指示使用EL信息推导POC对齐操作所使用MSB取值的指示信息。
18.根据权利要求12所述的方法,其特征在于,所述第一指示信息携带于EL图像分片头信息中。
19.根据权利要求12所述的方法,其特征在于,当所述MSB取值等于0时,使用以下方法确定所述第二指示信息集:
在第二指示信息集中设置用于指示将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中。
20.根据权利要求12所述的方法,其特征在于,当所述MSB取值不等于0时,使用以下之一方法确定所述第二指示信息集:
在第二指示信息集中设置用于指示不将MSB值置为0的指示信息,并将该指示信息携带于EL图像分片头信息中;
选取BL已解码图像的POC取值,将其二进制表示的低比特位置为0,将其作为候选MSB取值,其中,置0的低比特位位数等于所述EL所使用的LSB比特字段长度值;当所述MSB取值等于所述候选MSB取值时,在第二指示信息集中设置用于指示直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并将该指示信息携带于EL图像分片头信息中;否则,在所述第二指示信息集中设置用于指示不直接将MSB取值设置为根据BL信息推导所得候选MSB取值的指示信息,并计算所述MSB取值与所述候选MSB取值之间的差值,将该指示信息和所述差值携带于EL图像分片头信息中。
21.根据权利要求12所述的方法,其特征在于,所述LSB参数携带于EL图像分片头信息中。
22.根据权利要求12所述的方法,其特征在于,获取执行POC对齐操作时所使用的当前图像的POC值之前,包括:在满足以下之一条件时,确定需要执行POC对齐操作:
条件1:BL的图像为解码立即刷新IDR图像,所述IDR图像所在AU中EL存在图像且非IDR图像;
条件2:BL的图像为断开连接访问BLA图像,且所述BLA图像所在AU中EL存在图像且非BLA图像;
条件3:按照解码顺序,在当前AU之前的一个或多个AU中存在一个IDR或BLA的BL图像且所述一个或多个AU中不包含EL图像;
条件4:EL的图像为IDR图像,所述IDR图像所在AU中BL图像存在且非IDR图像,或者所述EL的图像所在AU中不存在BL图像;
条件5:EL的图像为BLA图像,且所述BLA图像所在AU中BL存在图像且非BLA图像,或者所述BLA图像所在AU中不存在BL图像。
23.一种视频图像序号POC的解码装置,其特征在于,包括:
获取模块,用于获取对POC进行对齐操作时所使用的最高比特位MSB参数和最低比特位LSB参数;
确定模块,用于根据所述MSB参数和所述LSB参数确定当前图像POC值的MSB取值和LSB取值;
计算模块,用于根据所述MSB取值和所述LSB取值计算得到所述当前图像POC值;
其中,所述确定模块,用于通过以下之一方法确定所述MSB:
方法一,从码流中直接获取所述码流携带的MSB参数,根据所述码流携带的MSB参数获取所述MSB取值;
方法二,获取用于指示在POC对齐过程中增强层EL所使用的MSB取值的第一指示信息,并将所述第一指示信息作为所述MSB参数,根据所述第一指示信息推导所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值;
方法三,获取用于指示所述MSB参数的获取方式的第二指示信息集;根据所述第二指示信息集确定所述EL所使用的MSB取值,得到所述当前图像POC值的MSB取值。
24.一种视频图像序号POC的编码装置,其特征在于,包括:
获取模块,用于获取执行POC对齐操作时所使用的当前图像的POC值;
映射模块,用于将所述POC值的最高比特位MSB取值和最低比特位LSB取值映射为在执行POC对齐操作时所使用的MSB参数和LSB参数;
写入模块,用于将所述MSB参数和所述LSB参数写入码流;
其中,所述映射模块,用于通过以下之一方法将所述POC值的MSB取值映射为在执行POC对齐操作时所使用的MSB参数:
方法一,将所述MSB取值携带于所述码流中,作为所述MSB参数;
方法二,将所述MSB取值映射为用于指示在POC对齐过程中EL所使用的MSB取值的第一指示信息;
方法三,将所述MSB取值映射为用于指示所述MSB参数的获取方式的第二指示信息集。
25.根据权利要求24所述的装置,其特征在于,所述获取模块,用于在与当前增强层EL图像位于同一接入单元AU的基本层BL图像存在时,将所述POC值设置为该BL图像的POC取值;否则,根据BL的帧率信息及已编码的BL图像的POC信息,确定所述AU中在包含BL图像时所述BL图像所应使用的POC取值,并将所述BL图像所应使用的POC取值作为所述POC值。
26.一种电子设备,其特征在于,包括:权利要求23所述的装置,和/或权利要求24或25所述的装置。
CN201310733011.6A 2013-12-26 2013-12-26 视频图像序号的编码、解码方法及装置、电子设备 Active CN104754347B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201310733011.6A CN104754347B (zh) 2013-12-26 2013-12-26 视频图像序号的编码、解码方法及装置、电子设备
US15/107,585 US10362304B2 (en) 2013-12-26 2014-10-23 Method and device for coding POC, method and device for decoding POC, and electronic equipment
EP14875285.0A EP3089451A4 (en) 2013-12-26 2014-10-23 Video picture order count coding and decoding methods and apparatuses and electronic device
PCT/CN2014/089231 WO2015096542A1 (zh) 2013-12-26 2014-10-23 视频图像序号的编码、解码方法及装置、电子设备
KR1020167020427A KR102266046B1 (ko) 2013-12-26 2014-10-23 동영상 픽쳐오더카운트의 부호화, 복호화 방법 및 장치, 전자기기
JP2016542905A JP6511677B2 (ja) 2013-12-26 2014-10-23 ピクチャ順序カウントの符号化方法及び装置、復号化方法及び装置、電子機器
US16/518,183 US10827170B2 (en) 2013-12-26 2019-07-22 Method and device for coding POC, method and device for decoding POC, and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310733011.6A CN104754347B (zh) 2013-12-26 2013-12-26 视频图像序号的编码、解码方法及装置、电子设备

Publications (2)

Publication Number Publication Date
CN104754347A CN104754347A (zh) 2015-07-01
CN104754347B true CN104754347B (zh) 2019-05-17

Family

ID=53477494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310733011.6A Active CN104754347B (zh) 2013-12-26 2013-12-26 视频图像序号的编码、解码方法及装置、电子设备

Country Status (6)

Country Link
US (2) US10362304B2 (zh)
EP (1) EP3089451A4 (zh)
JP (1) JP6511677B2 (zh)
KR (1) KR102266046B1 (zh)
CN (1) CN104754347B (zh)
WO (1) WO2015096542A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104754358B (zh) * 2013-12-27 2019-02-19 中兴通讯股份有限公司 码流的生成和处理方法、装置及***
US10158867B2 (en) 2014-06-20 2018-12-18 Qualcomm Incorporated Picture order count reset for multi-layer codecs
US9807419B2 (en) * 2014-06-25 2017-10-31 Qualcomm Incorporated Recovery point SEI message in multi-layer video codecs
US9838697B2 (en) 2014-06-25 2017-12-05 Qualcomm Incorporated Multi-layer video coding
CN106303673B (zh) 2015-06-04 2021-01-22 中兴通讯股份有限公司 码流对齐、同步处理方法及发送、接收终端和通信***
CN106937121B (zh) * 2015-12-31 2021-12-10 中兴通讯股份有限公司 图像解码和编码方法、解码和编码装置、解码器及编码器
TWI799682B (zh) * 2019-02-01 2023-04-21 弗勞恩霍夫爾協會 允許逐子圖像或逐區域隨機存取之視訊編碼解碼器及使用它之視訊合成技術
AU2020352446A1 (en) * 2019-09-24 2022-04-14 Huawei Technologies Co., Ltd. Support of mixed IRAP and non-IRAP pictures within an access unit in multi-layer video bitstreams
US11356698B2 (en) 2019-12-30 2022-06-07 Tencent America LLC Method for parameter set reference constraints in coded video stream

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6897793B1 (en) * 2004-04-29 2005-05-24 Silicon Image, Inc. Method and apparatus for run length limited TMDS-like encoding of data
US9420307B2 (en) * 2011-09-23 2016-08-16 Qualcomm Incorporated Coding reference pictures for a reference picture set
WO2013048311A1 (en) * 2011-09-27 2013-04-04 Telefonaktiebolaget L M Ericsson (Publ) Decoders and methods thereof for managing pictures in video decoding process
US20130188709A1 (en) * 2012-01-25 2013-07-25 Sachin G. Deshpande Video decoder for tiles with absolute signaling
TWI616087B (zh) * 2012-01-31 2018-02-21 Vid衡器股份有限公司 可縮放高效率視訊編碼(hevc)參考圖集(rps)傳訊
CN103379320B (zh) * 2012-04-16 2016-11-23 华为技术有限公司 视频图像码流处理方法和设备
US9532052B2 (en) * 2013-04-08 2016-12-27 Qualcomm Incorporated Cross-layer POC alignment for multi-layer bitstreams that may include non-aligned IRAP pictures

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
On POC Alignment;Sachin Deshpande;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11》;20131024;第2页倒数第21行-第3页倒数第6行

Also Published As

Publication number Publication date
WO2015096542A1 (zh) 2015-07-02
EP3089451A1 (en) 2016-11-02
CN104754347A (zh) 2015-07-01
JP6511677B2 (ja) 2019-05-15
KR102266046B1 (ko) 2021-06-17
US20170013259A1 (en) 2017-01-12
KR20160104657A (ko) 2016-09-05
US10827170B2 (en) 2020-11-03
US20190349579A1 (en) 2019-11-14
JP2017507521A (ja) 2017-03-16
US10362304B2 (en) 2019-07-23
EP3089451A4 (en) 2017-01-11

Similar Documents

Publication Publication Date Title
CN104754347B (zh) 视频图像序号的编码、解码方法及装置、电子设备
US20230254495A1 (en) Layer id signaling using extension mechanism
CN104205819B (zh) 用于视频编码的方法和装置
RU2584501C1 (ru) Способ и устройство для видеокодирования
CN104604236B (zh) 用于视频编码的方法和装置
JP2022507673A (ja) ビデオシーケンスを復号するための方法、装置、コンピュータプログラム、およびビデオ符号化方法
CN102804773B (zh) 在mpeg‑2***中组合多视角视频译码子位流
JP6417039B2 (ja) 画像シーケンスのコーディングおよびデコーディングのための装置、方法およびコンピュータ・プログラム
JP6285034B2 (ja) コードストリームの生成と処理方法、装置及びシステム
CN103404140B (zh) 指示比特流子集的方法和设备
CN109155861A (zh) 用于编码媒体内容的方法和装置以及计算机程序
HUE029013T2 (en) Subband fragment layout for streaming video data
CN108141616A (zh) 多层位流的文件中的参数集信令
CN104137550A (zh) 用于多视图视频译码mvc兼容三维视频译码3dvc的深度分量去除
CN115211131A (zh) 用于全向视频的装置、方法及计算机程序
US20150139338A1 (en) Identifying Leading Pictures in Video Coding
CN107251559B (zh) 一种处理视频数据的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant