CN108347606B - 电子设备及方法 - Google Patents

电子设备及方法 Download PDF

Info

Publication number
CN108347606B
CN108347606B CN201810461128.6A CN201810461128A CN108347606B CN 108347606 B CN108347606 B CN 108347606B CN 201810461128 A CN201810461128 A CN 201810461128A CN 108347606 B CN108347606 B CN 108347606B
Authority
CN
China
Prior art keywords
picture
poc
long
pictures
term reference
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
CN201810461128.6A
Other languages
English (en)
Other versions
CN108347606A (zh
Inventor
萨钦·G·德施潘德
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.)
Sharp Corp
Original Assignee
Sharp 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
Application filed by Sharp Corp filed Critical Sharp Corp
Publication of CN108347606A publication Critical patent/CN108347606A/zh
Application granted granted Critical
Publication of CN108347606B publication Critical patent/CN108347606B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/172Methods 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 picture, frame or field
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/423Methods 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 characterised by memory arrangements
    • 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
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • 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
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

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

Abstract

本发明提供一种电子设备及方法。电子设备具备:解码单元,用于从位流对SPS以及码片报头进行解码;以及确定单元,确定是否利用长期参考图片中的一个,SPS包括长期参考图片存在标志、长期参考图片的数目、一个以上的LSB值及当前图片用SPS标志,码片报头包括第一数目、第二数目、长期参考索引参数及被当前图片使用标志,在第一数目与第二数目之和的个数的各索引中,在该索引的值小于第二数目的情况下,确定单元使用与长期参考索引参数对应的当前图片用SPS标志,确定是否利用与长期参考索引参数对应的长期参考图片,在该索引的值为第二数目以上的情况下,确定单元基于与该索引对应的被当前图片使用标志,确定是否利用与该索引对应的长期参考图片。

Description

电子设备及方法
本申请是国际申请日为2013年6月26日、国际申请号为PCT/JP2013/004013、国家申请号为201380035380.6、发明名称为“用于在参数集中发信号通知长期参考图片的设备”的发明专利申请的分案申请。
技术领域
本公开一般地涉及电子设备。更具体地,本公开涉及一种用于在参数集中发信号通知长期参考图片的设备。
背景技术
电子设备已变得更小且更强大以便满足消费者需要并且以便改进便携性和方便性。消费者已变得依赖于电子设备并且已开始预期增加的功能性。电子设备的一些示例包括台式计算机、膝上型计算机、蜂窝电话、智能电话、媒体播放器、集成电路等。
一些电子设备被用于处理和显示数字媒体。例如,便携式电子设备现在允许数字媒体在消费者可能所在的几乎任何位置处消费。此外,一些电子设备可以提供数字媒体内容的下载或流式传输以用于消费者使用和娱乐。
数字媒体的逐渐流行已提出了数个问题。例如,为存储、传送和回放而高效地表示高质量数字媒体提出了数个挑战。如可以从本讨论所观察到的,更加高效地表示数字媒体的系统和方法可能是有利的。
发明内容
技术问题
期望提供用于表示数字媒体的更高效技术。
技术方案
本发明的一个方面提供了一种用于解码的电子设备,一种电子设备用于对编码图像进行解码,包括:
用于对来自所述编码图像的长期参考图片集进行解码的单元,其中,所述长期参考图片集包括:
(a)指示是否对于帧间预测利用一个或多个长期参考图片的长期参考图片指示符;
(b)在参数集中所规定的所述长期参考图片的数目;
(c)与所述长期参考图片中的一个相对应的绝对图片顺序计数(POC)的一个或多个最低有效位(LSB)值;
(d)以及指示是否对于当前图片利用与所述绝对POC的LSB值相关联的所述长期参考图片的一个或多个被当前图片使用标志(used by current picture flag);
和用于基于所述被当前图片使用标志来确定是否利用所述长期参考图片中的一个的单元。
本发明的另一方面提供了用于对输入图像进行编码的电子设备,包括:
用于生成长期参考图片集的单元,其中,所述长期参考图片集包括:
(a)指示是否对于帧间预测利用一个或多个长期参考图片的长期参考图片指示符;
(b)在参数集中所规定的所述长期参考图片的数目;
(c)与所述长期参考图片中的一个相对应的绝对图片顺序计数(POC)的一个或多个最低有效位(LSB)值;
(d)以及指示是否对于当前图片利用与所述绝对POC的LSB值相关联的所述长期参考图片的一个或多个被当前图片使用标志;
和用于对所述长期参考图片集进行编码的单元。
本发明的另一方面提供了用于通过电子设备对编码图像进行解码的方法,包括:
对来自所述编码图像的长期参考图片集进行解码,其中,所述长期参考图片集包括:
(a)指示是否对于帧间预测利用一个或多个长期参考图片的长期参考图片指示符;
(b)在参数集中所规定的所述长期参考图片的数目;
(c)与所述长期参考图片中的一个相对应的绝对POC的一个或多个LSB值;
(d)以及指示是否对于当前图片利用与所述绝对POC的LSB值相关联的所述长期参考图片的一个或多个被当前图片使用标志;
以及基于所述被当前图片使用标志来确定是否利用所述长期参考图片中的一个。
本发明的另一方面提供了用于通过电子设备对输入图像进行编码的方法,包括:
生成长期参考图片集,其中,所述长期参考图片集包括:
(a)指示是否对于帧间预测利用一个或多个长期参考图片的长期参考图片指示符;
(b)在参数集中所规定的所述长期参考图片的数目;
(c)与所述长期参考图片中的一个相对应的绝对图片顺序计数(POC)的一个或多个最低有效位(LSB)值;
(d)以及指示是否对于当前图片利用与所述绝对POC的LSB值相关联的所述长期参考图片的一个或多个被当前图片使用标志;
以及对所述长期参考图片集进行编码。
有益效果
在考虑到结合附图进行的本发明的以下具体描述后,将更容易地理解本发明的上述和其它目标、特征以及优点。
附图说明
图1是图示其中可以实现用于基于指定图片来跟踪参考图片的系统和方法的一个或多个电子设备的示例的框图;
图2是图示解码器的一个配置的框图;
图3是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的一个配置的流程图;
图4是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的更特定配置的流程图;
图5是图示由周期参数所引用的多个图片集的一个示例的图;
图6是图示多个图片集的另一示例的图;
图7是图示由周期参数所引用的多个图片集的更特定示例的图;
图8是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的一个配置的流程图;
图9是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的另一配置的流程图;
图10是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的另一配置的流程图;
图11是图示根据本文所公开的系统和方法发信号通知回绕(wrap)指示符的一个示例的图;
图12是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的另一更特定配置的流程图;
图13是图示用于确定是否已在图片集之间发生变换的方法的一个配置的流程图;
图14是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法的另一更特定配置的流程图;
图15图示可以在电子设备中利用的各种组件。
图16是图示根据本文所公开的系统和方法的使用情况的示例的图;
图17是图示用于发送长期参考图片指示符的方法的一个配置的流程图;
图18是图示用于接收长期参考图片指示符的方法的一个配置的流程图;
图19A是图示码片(slice)报头的一个配置的框图;以及
图19B是图示根据本文所公开的系统和方法的参数集和码片报头的一个配置的框图。
具体实施方式
公开了用于通过电子设备来发送长期参考图片指示符的方法。生成长期参考图片指示符。发送长期参考图片指示符。生成与长期参考图片相对应的绝对图片顺序计数(POC)。绝对POC包括最低有效位(LSB)值。发送与长期参考图片相对应的绝对POC的LSB值。生成与当前图片相对应的被当前图片使用标志。在至少一个参数集中发送该被当前图片使用标志。
可以在序列参数集(SPS)、自适应参数集(APS)、图片参数集(PPS)和/或视频参数集(VPS)中发送绝对POC的LSB值。还可以生成将对应于绝对POC的长期索引参数和被当前图片使用标志包括在至少一个参数集中的码片报头。可以发送该码片报头。
如果需要,可以发送与由长期索引参数所指示的长期参考图片相对应的绝对POC的增量最高有效位(MSB)周期。当来自长期参考图片的一个或多个POC LSB值是相同的时,可能需要发送绝对POC的增量MSB周期(delta MSB cycle)。可以在码片报头中发送绝对POC的增量MSB周期。长期索引参数可以是long_term_idx_sps[i]。
可以在SPS、APS、PPS和/或VPS中发送长期参考图片指示符。可以在SPS、APS、PPS和/或VPS中发送被当前图片使用标志。被当前图片使用标志可以是规定是否在对当前图片进行解码时利用以绝对POC所指示的第i个长期参考图片的used_by_curr_pic_lt_sps_flag[i]。
可能不在码片报头中发送被当前图片使用标志。长期参考图片指示符可以是长期参考图片存在标志。可能不在码片报头中接收与长期参考图片相对应的绝对POC的LSB值。
还可以描述用于通过电子设备来接收长期参考图片指示符的方法。接收长期参考图片指示符。在至少一个参数集中接收被当前图片使用标志。接收与长期参考图片相对应的绝对图片顺序计数(POC)的LSB值。基于被当前图片使用标志来进行关于是否利用长期参考图片的确定。
可以接收将对应于绝对POC的长期索引参数和被当前图片使用标志包括在至少一个参数集中的码片报头。如果需要,可以接收与由长期索引参数所指示的长期参考图片相对应的绝对POC的增量MSB周期。如果确定了要利用长期参考图片,则可以基于长期参考图片对当前图片进行解码。如果确定了不利用长期参考图片,则可以在没有长期参考图片的情况下对当前图片进行解码。
描述了用于对图片进行编码的电子设备。该电子设备包括处理器和存储在与该处理器电子通信的存储器中的指令。指令可被执行来生成长期参考图片指示符。指令可被执行来发送长期参考图片指示符。指令还可被执行来生成与长期参考图片相对应的绝对图片顺序计数(POC)。绝对POC包括最低有效位(LSB)值。指令附加地可被执行来发送与长期参考图片相对应的绝对POC的LSB值。指令进一步可被执行来生成与当前图片相对应的被当前图片使用标志。指令还可被执行来在至少一个参数集中发送被当前图片使用标志。
还描述了用于对图片进行解码的电子设备。该电子设备包括处理器和存储在与该处理器电子通信的存储器中的指令。指令可被执行来接收长期参考图片指示符。指令还可被执行来在至少一个参数集中接收被当前图片使用标志。指令进一步可被执行来接收与长期参考图片相对应的绝对图片顺序计数(POC)的LSB值。指令附加地可被执行来基于被当前图片使用标志来确定是否利用长期参考图片。
本文所公开的系统和方法描述了用于在电子设备上基于指定图片来跟踪参考图片的数个配置。例如,本文所公开的系统和方法描述了在降低开销引用情况下跟踪解码图片缓冲器(DPB)中的解码参考图片。例如,描述了用于长期参考图片信令的数个方式。应该注意的是,解码图片缓冲器(DPB)可以是保持用于参考的解码图片、为假想参考解码器所规定的输出再排序或输出延迟的缓冲器。
在电子设备上,解码图片缓冲器(DPB)可以用来在解码器处存储重建的(例如,解码的)图片。然后可以例如在帧间预测机制中使用这些存储的图片。当图片被乱序解码时,图片可以被存储在DPB中如此能够稍后按顺序显示它们。
在H.264或高级视频编译(AVC)标准中,使用存储器管理控制操作(MMCO)来执行DPB管理(例如,图片的删除、添加、图片的再排序等)。对于即将到来的高效率视频编译(HEVC)标准,更可靠的DPB管理方式在考虑中。更可靠的方式的一个示例基于如来自视频编译联合协作团队(JCT-VC)文档JCTVC-F493的“Absolute signaling of referencepictures”中所详述的参考图片的绝对信令。
JCTVC-F493概述了参考图片的绝对信令以识别哪些参考图片应该被保持在解码图片缓冲器(DPB)中。JCTVC-F493还提出使用缓冲器描述来支持参考图片的鲁棒错误管理的参考图片的绝对信令。特别地,JCTVC-F493概述了基于图片顺序计数(POC)来识别哪些参考图片将被保持在DPB中的两个不同的方式。图片顺序计数(POC)可以是与每个编码图片相关联的变量并且具有在回绕情况下以输出顺序随着渐增图片位置而增加的值。
在一个示例中,假定所有图片具有临时标识符(temporalID)=0。进一步假定当前POC=5并且当前DPB包含={3,2}。附加地假定图片参数集(PPC)的定义是:BufferDescription0={deltaPOC=-1,temporalID=0}、{deltaPOC=-2,temporalID=0}。deltaPOC规定参考图片离当前图片的POC值的距离,其中当前图片可以是正被解码的图片。所给出的一个方式在于引用PPS中的缓冲器描述。在这个方式中,具有POC=5的图片的码片报头包含对PPS中的BufferDescription0的引用。假定动作是将从DPB中丢弃具有POC=2的解码图片并且将具有POC=4的解码图片添加至DPB。结果,DPB然后包含={4,3}。
在一个配置中,缓冲器描述被定义为表示POCBD和TemporalIDBD的两个列表并且对于所有图片来说存在变量NumberOfPicturesInBD。这是使得POCBD包含参考图片的图片顺序计数值并且TemporalIDBD包含参考图片的对应临时标识符,两个列表都包含NumberOfPicturesInBD值。
应该注意的是,temporalID可以在视频编译联合协作团队(JCT-VC)文档JCTVC-F803中被定义如下:“temporalID规定NAL单元的临时标识符。temporalID的值对于访问单元的所有NAL单元来说应该是相同的。当访问单元包含具有等于5的nal_unit_type的任何NAL单元时,temporalID应该等于0。”应该注意的是,NAL可以是“网络抽象层”的缩写。
另一方式在于使用相对于当前POC的增量POC(delta POC)显式地发信号通知DPB的内容。在这个方式中,具有POC=5的图片的码片报头包含{deltaPOC=-1,temporalID=0}和{deltaPOC=-2,temporalID=0}。假定动作将从DPB中丢弃具有POC=2的解码图片并且将具有POC=4的解码图片添加至DPB。结果,新的DPB包含={4,3}。
由JCTVC-F493所给出的方式的一些优点如下。JCTVC-F493中的方式提供简单机制。此外,在解码器处容易检测图片的丢失。附加地,可以检测并且很好地支持具有更高临时ID的图片的整个层的丢弃。
然而,其后给出JCTVC-F493中所给出的方式的一些缺点。用于发信号通知长期参考图片的位开销能够变大。此外,可以分配固定数目的位以传递POC。结果,当达到了由所使用的位数所允许的最大值时,POC编号应该回绕到0。因此,也许不可能保证能够使用POC来唯一地识别图片。
本文所公开的系统和方法可以有助于减轻这些缺点。特别地,本文所公开的系统和方法通过降低与绝对长期图片引用相关联的开销而可能是有利的,并且可以使得图片能够被唯一地识别(例如,长期(参考)图片可能不与其它短期图片或长期图片混淆并且反之亦然)。
本文所公开的系统和方法可以提供如下描述的一个或多个附加的有益效果。本文所公开的系统和方法的一个或多个配置可以充分利用可用的POC编号空间。
[数学式1]
[0,…,MaxPOC-1]
,其中‘MaxPOC’=2log2_max_pic_order_cnt_minus4+4并且log2_max_pic_order_cnt_minus4规定在解码过程中用于图片顺序计数的变量‘MaxPOC’的值。例如,在POC回绕之后解决
[数学式2]
[0,…,MaxPOC-1]
的再使用的一个现有方式主张在将标识符(例如,POC号码)指派给图片时跨过当前使用中的POC。这导致POC空间的一部分未被使用。然而,本文所公开的系统和方法可以解决POC的跨过和所关联的POC空间收缩问题。
另一有益效果可以是用于信令的本文所公开的系统和方法的一些配置可以被自包含在每个图片中。因此,与依靠来自先前图片(其可能得以丢失或丢弃)的信息传播的方案相比错误恢复可能是较好的。例如,解码图片缓冲器(DPB)描述的一个配置不依靠嵌入在其它图片中以维持与编码器相同的DPB的信息。
本文所公开的系统和方法的一些配置的又一个有益效果可以是如果图片丢失,则一旦缓冲器描述在解码器处是可用的(这在下一个接收到的图片)就能够检测到该丢失。这允许解码器采取校正动作。又一个有益效果是如果POC分辨率是足够的,则不需要额外的位。
JCTVC-H0496提出从干净随机访问(CRA)图片开始位流。这个功能性已并入JCTVC-H1003。JCTVC-H1003概述了在不使用绝对图片顺序计数(POC)的情况下发信号通知长期参考图片。
在一些已知方式中,描述了在不使用绝对POC的情况下发信号通知长期参考图片。例如,在Benjamin Bros等人“High efficiency video coding(HEVC)text specificationdraft 7”,JCTVC-I1003,Geneva,May2012中描述了在不使用绝对POC的情况下发信号通知长期参考图片。
现在参考图对各种配置进行描述,其中同样的附图标记可以指示功能上相似的元素。如本文在图中所通常描述和图示的系统和方法能够用各式各样的不同配置加以布置和设计。因此,如图中所表示的数个配置的以下更详细描述不旨在限制要求保护的范围,而是仅仅表示系统和方法。
图1是图示其中可以实现用于基于指定图片来跟踪参考图片的系统和方法的一个或多个电子设备104的示例的框图。在这个示例中,图示了电子设备A 104a和电子设备B104b。然而,应该注意的是,在一些配置中关于电子设备A 104a和电子设备B 104b所描述的特征和/或功能性可以被组合成单个电子设备。
电子设备A 104a包括编码器108和开销信令模块112。包括在电子设备A 104a内的元素中的每一个(例如,编码器108和开销信令模块112)可以用硬件、软件或两者的组合加以实现。
电子设备A 104a可以获得输入图片106。在一些配置中,输入图片106可以使用图像传感器在电子设备A 104a上捕获到,从存储器中检索和/或从另一电子设备接收。
编码器108可以对输入图片106进行编码以产生编码数据110。例如,编码器108可以对一系列输入图片106(例如,视频)进行编码。在一个配置中,编码器108可以是高效率视频编码(HEVC)编码器。编码数据110可以是数字数据(例如,位流)。
开销信令模块112可以基于编码数据110来生成开销信令。例如,开销信令模块112可以向编码数据110添加诸如码片报头信息、序列参数集(SPS)信息、自适应参数集(APS)信息、图片参数集(PPS)信息、视频参数集(VPS)信息、图片顺序计数(POC)、参考图片指定等的开销数据。
在一些配置中,开销信令模块112可以产生指示两组图片之间的变换的回绕指示符。在一些配置中,开销信令模块112可以产生长期参考图片指示符。可以在诸如序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)以及视频参数集(VPS)中的一个或多个的参数集中发信号通知该长期参考图片指示符。将关于图17在下面更详细地讨论发送长期参考图片指示符。例如,在一些配置中电子设备A 104a可以执行关于图17所描述的方法1700。
在下面给出了关于可以由电子设备A所产生的各种开销信令的更多细节。特别地,可以由开销信令模块112取决于配置产生在下面关于解码所描述的参数、指示符或各种信息中的没有一个、一个或多个。应该注意的是,在一些配置中开销信令模块112可以被包括在编码器108内。开销信令模块112可以在降低开销引用情况下使得能实现图片跟踪。
编码器108(和开销信令模块112,例如)可以产生位流114。位流114可以包括基于输入图片106的编码图片数据。在一些配置中,位流114还可以包括开销数据,诸如码片报头信息、PPS信息等。在下面给出了关于开销数据的更多细节。因为附加的输入图片106被编码,所以位流114可以包括一个或多个编码图片。例如,位流114可以包括一个或多个编码参考图片和/或其它图片。
可以向解码器102提供位流114。在一个示例中,可以使用有线链路或无线链路向电子设备B 104b传送位流114。在一些情况下,这可以在诸如因特网或局域网(LAN)的网络之上完成。如图1中所图示的,解码器102可以与电子设备A 104a上的编码器108分开地实现在电子设备B 104b上。然而,应该注意的是,在一些配置中编码器108和解码器102可以被实现在相同的电子设备上。在编码器108和解码器102被实现在相同的电子设备上的实施方式中,例如,位流114可以通过总线提供给解码器102或者存储在存储器中以供由解码器102检索。
解码器102可以用硬件、软件或两者的组合加以实现。在一个配置中,解码器102可以是高效率视频编译(HEVC)解码器。解码器102可以接收(例如,获得)位流114。解码器102可以基于位流114来生成解码图片118(例如,一个或多个解码图片118)。解码图片118可以被显示、回放、存储在存储器中和/或传送至另一设备等。
解码器102可以包括参考图片跟踪模块116。参考图片跟踪模块116可以使得解码器102能够在降低开销引用情况下跟踪参考图片。例如,参考图片跟踪模块116可以使用比诸如JCTVC-F493中所给出的方式的现有方式所需的更少开销来跟踪解码图片缓冲器(DPB)中的参考图片。附加地或替换地,参考图片跟踪模块116可以接收长期参考图片指示符和被当前图片使用标志中的一个或多个。例如,电子设备B104b可以执行在下面关于图18所描述的方法1800。在一些配置中,参考图片跟踪模块116可以利用绝对POC来跟踪一个或多个长期参考图片。在下面给出了有关接收长期参考图片指示符的更多细节。
在现有方式中,例如,非降低开销引用可以用来规定当前图片与长期参考图片之间的关系。在现有方式中,例如,可以通过增加POC编号空间并且从而避免POC回绕问题来规定当前图片与长期参考图片之间的关系。然而,能够仅以对POC的增加位要求为代价实现增加POC编号空间。这个示例是能够用来在现有方式中避免POC回绕问题的数个可能的机制之一。然而,这个特定示例演示了现有方式中针对长期图片的更大开销方面。
例如,JCTVC-F493使用了规定绝对POC的缓冲器描述中的longterm_poc[i]字段和为长期图片规定临时ID的缓冲器描述中的longterm_temporal_id[i]字段。这以后在JCTVC-F803中被去除,JCTVC-F803不包括用于长期图片的机制。在后续讨论中,给出了跨过(长期图片)POC的方式。
现有方式可能出现问题。首先,可能需要大量开销数据来规定长期参考图片与另一图片之间的关系。例如,可能需要分配大量的开销位以适当地表示长期参考图片与另一图片之间的POC的整数差。第二,如果有限数目的位被规定以表示这个差,则当编号被再使用(例如,因为数集循环)时可能含糊不清地指示该差。
参考图片跟踪模块116可以使用在下面更详细地描述的一个或多个方式或方法以便于降低引用开销。一些示例包括使用周期参数以及基于回绕指示符或各组图片之间的变换来递减周期参数。附加地或替换地,参考图片跟踪模块116可以接收长期参考图片指示符和被当前图片使用标志中的一个或多个。参考图片跟踪模块116可以基于被当前图片使用标志来确定是否将长期参考图片用于对当前图片进行解码。在一些配置中,参考图片跟踪模块116可以基于绝对POC来跟踪长期参考图片。
应该注意的是,在一些配置中本文所描述的“参考图片”可以替代地是参考图片集合(例如,帧的组)。因此,在一些配置中本文所描述的“解码参考图片”可以替代地是“解码参考图片集合”。例如,可以像与本文所公开的系统和方法相结合地所描述的那样应用参考图片集合替换单个参考图片。参考图片集合可以包括一个或多个参考图片。参考图片集合中的两个或更多个参考图片可以对应于相同的时间实例或不同的(例如,相似的)时间实例。例如,在3维(3D)编译场景中,位流114包含多个图片,其中一些图片可以指的是左视图而一些图片可以指的是右视图。因此,参考图片集合可以识别对应于特定显示时间的左图片和右图片。
在另一示例(诸如可伸缩编译场景)中,位流可以包括不同分辨率的图片。在这个示例中,参考图片集合可以包括(例如,识别)相同图片的不同分辨率版本。
图2是图示解码器202的一个配置的框图。解码器202可以被包括在电子设备204中。例如,解码器202可以是高效率视频编译(HEVC)解码器。解码器202和/或图示为包括在解码器202中的元素中的一个或多个可以用硬件、软件或两者的组合加以实现。解码器202可以接收位流214(例如,包括在位流214中的一个或多个编码图片)以用于解码。在一些配置中,所接收到的位流214可以包括接收到的开销信息,诸如接收到的码片报头、接收到的PPS、接收到的缓冲器描述信息等。包括在位流214中的编码图片可以包括一个或多个编码参考图片和/或一个或多个其它编码图片。
接收到的符号(在包括在位流214中的一个或多个编码图片中)可以由熵解码模块254熵解码,从而产生运动信息信号256和量化的、缩放的和/或变换的系数258。
运动信息信号256可以在运动补偿模块260处与来自帧存储器264的参考帧信号284的一部分组合,所述运动补偿模块260可以产生帧间预测信号268。经量化的、缩放的和/或变换的系数258可以由逆模块262逆量化、缩放和逆变换,从而产生解码残差信号270。解码残差信号270可以被加到预测信号278以产生组合信号272。预测信号278可以是选自由帧间预测模块274所产生的帧间预测信号268或帧内预测信号276的信号。在一些配置中,这个信号选择可以基于位流214(例如,由位流214控制)。
可以根据来自组合信号272(例如,在当前帧中)的先前解码的信息来预测帧内预测信号276。组合信号272还可以由去块滤波器280滤波。结果得到的滤波信号282可以被写入帧存储器264。结果得到的滤波信号282可以包括解码图片。
帧存储器264可以包括如本文所描述的解码图片缓冲器(DPB)。DPB可以包括可以作为短期或长期参考帧被维持的一个或多个解码图片。帧存储器264还可以包括与解码图片相对应的开销信息。例如,帧存储器264可以包括码片报头、图片参数集(PPS)信息、周期参数、缓冲器描述信息等。可以从编码器(例如,编码器108、开销信令模块112)发信号通知这些信息片中的一个或多个。帧存储器264可以提供解码图片218。
解码器202可以包括参考图片跟踪模块216。参考图片跟踪模块216可以在降低引用开销情况下跟踪帧存储器264中的一个或多个参考图片。在一个实施例中,参考图片跟踪模块216可以使用周期参数来跟踪长期参考图片并且基于接收到的回绕指示符来修改(例如,递减)该周期参数。在另一示例中,可以相对于正被解码的图片执行所有参考图片周期参数的更新。可以对于当前图片(例如,正被解码的图片)执行这个更新过程一次。可以在POC的帮助下隐式地保持跟踪周期之间的变换。有时可以增加周期参数(例如,当变换是像可能在乱序图片解码中发生那样从图片集‘n’到图片集‘n-1’时)。在下面给出了关于基于指定图片来跟踪参考图片的一个或多个方式的更多细节。
附加地或替换地,参考图片跟踪模块216可以使用长期参考图片指示符来跟踪长期参考图片。长期参考图片指示符可以是由解码器202所获得的参数集的一部分,诸如序列参数集(SPS)、图片参数集(PPS)和/或自适应参数集(APS)。将关于图18在下面更详细地讨论接收和跟踪长期参考图片指示符。
参考图片跟踪模块216可以接收被当前图片使用标志。可以在一个或多个参数集(例如,SPS、PPS、APS)中接收该被当前图片使用标志。参考图片跟踪模块216可以基于被当前图片使用标志来确定是否将长期参考图片用于对当前图片进行解码。在一些配置中,参考图片跟踪模块216可以基于绝对POC来跟踪长期参考图片。在一些配置中,电子设备204可以执行关于图18所描述的方法1800。
本文所公开的系统和方法的一些配置可以使用修改的缓冲器描述。其后给出经修改的缓冲器描述的示例。缓冲器描述可以被修改成包括长期参考图片的“POC”、“poc_cycle”以及“temporalID”。应该注意的是,“poc_cycle”可以是本文所描述的周期参数的一个示例。根据本文所公开的系统和方法所给出的(修改的)缓冲器描述、(修改的)语法和/或参数可以使得能实现降低开销引用。
下表1给出了在现有方式和根据本文所公开的系统和方法的一个提出的方式中比较PPS内的缓冲器描述的一个示例。现有方式在被创建以促进JCTVC-F493的工作的“candidate working draft text of ad-hoc group 21”文档(AHG21)中详述。应该注意的是,AHG21(JCTVC-F803)分别地分组和规定“负图片”(例如,具有负deltaPOC值的那些)和“正图片”(例如,具有正deltaPOC值的那些图片)。
[表1]
Figure GDA0003508926070000171
在上面所图示的表1中,
[数学式3]
(POC0,poc_cycles0,temporalID3)
[数学式4]
(POC1,poc_cycles1,temporalID4)
表示长期(参考)图片。应该注意的是,缓冲器描述可以包括用于短期参考图片的两个列表POCBD和TemporalIDBD(分别与POC字段和TemporalID字段相对应)。此外,缓冲器描述可以包括三个列表:用于长期参考图片的POCBD、POC_CYCLE_BD以及TemporalIDBD(分别与POC字段、poc_cycle字段以及TemporalID字段相对应)。
在一些配置中,多个缓冲器描述被定义在图片参数集中。具有索引i的每个缓冲器描述包含参考图片的列表:POCBD_pps[i]、POC_CYCLE_pps[i]、DeltaPOCBD_pps[i]以及TemporalIDBD_pps[i]和变量NumberOfPicturesInBD_pps[i]。POCBD_pps[i]的第i个列表包含参考图片的图片顺序计数值。POC_CYCLE_pps[i]的第i个列表包含参考图片的poc_cycle值。TemporalIDBD_pps[i]的第i个列表包含参考图片的对应临时标识符。此外,TemporalIDBD_pps[i]的第i个列表包含NumberOfPicturesInBD_pps[i]个条目。列表的集合被称为POC_pps、POC_CYCLE_pps、DeltaPOCBD_pps以及TemporalIDBD_pps。对于deltaPOC引用,单个列表DeltaPOCBD_pps[i]包含参考图片的deltaPOC值。应该注意的是,在自组织(ad-hoc)组21的候选工作草案文本中,DeltaPOCBD_pps可以被称为DeltaPOCBD。列表POCBD_pps[i]和列表DeltaPOCBD_pps[i]中的条目的总和由值NumberOfPicturesInBD_pps[i]给出。而且,POCBD_pps[i]和POC_CYCLE_pps[i]中的条目的数目是相同的。
应该注意的是,AHG21中所给出的语法不充分地支持固定长期引用。以下列表(1)图示自组织组21(AHG21)的候选工作草案文本所需要的位率语法修改的一个示例。在列表(1)中用粗体文本给出由于现有方式而导致的改变。
列表(1)
Figure GDA0003508926070000191
positive_pictures_in_buffer_descriptions_flag规定是否存在具有正deltaPOC的任何缓冲器描述图片。bits_for_temporal_id_in_buffer_descriptions规定用于temporal_id_negative_pps[i][j]、temporal_id_positive_pps[i][j]、temporal_id_poc_pps[i][j]、temporal_id_negative[i]以及temporal_id_positive[i]的位数。number_of_bds规定图片参数集中的缓冲器描述的数目。number_of_negative_pictures_pps[i]规定具有负值的列表DeltaPOCBD_pps[i]中的条目的数目。number_of_negative_pictures_pps[i]将OffsetBD[i]的值定义为OffsetBD[i]=number_of_negative_pictures_pps[i]。number_of_negative_pictures_pps[i]的值应该是在0至max_num_ref_frames范围内(首末项包括在内)。negative_delta_poc_minus_one_pps[i][j]规定POC值的绝对距离。max_num_ref_frames规定可以由解码过程用于序列中的任何图片的帧间预测的参考帧、互补参考字段对以及非配对参考字段的最大数目。这里,参考字段表示参考帧的一部分。例如,在使用交错视频的应用中,参考帧可以由两个参考字段构成。第一参考字段可以包括参考帧中的数据的第一子集而第二参考字段可以包括参考帧中的数据的第二子集,其中第一子集和第二子集对应于不同的数据。
如果j等于0则negative_delta_poc_minus_one_pps[i][j]将变量DeltaPOCBD_pps[i][j]的值定义为DeltaPOCBD_pps[i][j]=-(negative_delta_poc_minus_one_pps[i][j]+1)。并且,如果j>0则negative_delta_poc_minus_one_pps[i][j]将变量DeltaPOCBD_pps[i][j]的值定义为DeltaPOCBD_pps[i][j]=DeltaPOCBD_pps[i][j-1]-(negative_delta_poc_minus_one_pps[i][j]+1)。DeltaPOCBD_pps[i][j]应该在-1至-MaxPOC/2范围内。
temporal_id_negative_pps[i][j]规定临时标识符并且应该由bits_for_temporal_id_in_buffer_descriptions个位来表示。temporal_id_negative_pps[i][j]被添加至列表TemporalIDBD_pps[i]。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加操作是以预定义顺序替换列表中的项目的操作。temporal_id_negative_pps[i][j]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。max_temporal_layers_minus1+1规定存在于序列中的临时层的最大数目。
number_of_positive_pictures_in_bd_pps[i]规定具有正值的列表DeltaPOCBD_pps[i]中的条目的数目。number_of_positive_pictures_in_bd_pps[i]的值应该在0至max_num_ref_frames-OffsetBD[i]范围内(首末项包括在内)。当number_of_positive_pictures_in_bd_pps[i]语法元素不存在时,number_of_positive_pictures_in_bd_pps[i]的值应该被推理为等于0。
delta_poc_minus_one_pps[i][j]规定POC值的绝对距离。如果j等于0则delta_poc_minus_one_pps[i][j]将变量DeltaPOCBD_pps[i][j+OffsetBD[i]]的值定义为DeltaPOCBD_pps[i][j+OffsetBD[i]]=delta_poc_minus_one_pps[i][j]+1,以及如果j>0则定义为DeltaPOCBD_pps[i][j+OffsetBD[i]]=DeltaPOCBD_pps[i][j-1+OffsetBD[i]]+delta_poc_minus_one_pps[i][j]+1。DeltaPOCBD_pps[i][j+OffsetBD[i]]应该在1至MaxPOC/2-1范围内。
temporal_id_positive_pps[i][j]规定临时标识符并且应该由bits_for_temporal_id_in_buffer_descriptions个位来表示。temporal_id_positive_pps[i][j]将变量TemporalIDBD_pps[i][j]的值定义为TemporalIDBD_pps[i][j+OffsetBD[i]]=temporal_id_positive_pps[i][j]。temporal_id_positive_pps[i][j]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。
列表(1)中的参数的描述的示例被给出如下。number_of_longterm_pictures_pps[i]规定列表POCBD_pps[i]和POC_CYCLE_BD_pps[i]中的条目的数目。number_of_longterm_pictures_pps[i]的值应该在0至max_num_ref_frames范围内(首末项包括在内)。max_num_ref_frames规定短期参考帧和长期参考帧的最大数目。poc_pps[i][j]规定POC值并且定义待添加至列表POCBD_pps[i]的值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc_pps[i][j]应该在0至MaxPOC-1范围内。
poc_cycle_pps[i][j]规定poc_cycle(例如,周期参数)值并且定义待添加至列表POC_CYCLE_BD_pps[i]的值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。在一些配置中poc_cycle_pps[i][j](例如,周期参数)可以小于或等于零。在这样的情况下,有符号整数可以用来表示周期参数。在其它配置中,无符号整数可以用来表示周期参数。
temporal_id_poc_pps[i][j]规定临时标识符并且如果bits_for_temporal_id_in_buffer_descriptions>0则应该存在。temporal_id_poc_pps[i][j]定义列表TemporalIDBD_pps[i]中的条目的值。temporal_id_poc_pps[i][j]被添加至列表TemporalIDBD_pps[i]。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加操作是以预定义顺序替换列表中的项目的操作。temporal_id_poc_pps[i][j]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。max_temporal_layers_minus1+1规定存在于序列中的临时层的最大数目。应该注意的是,变量NumberOfPicturesInBD_pps[i]可以被计算为number_of_negative_pictures_pps[i]+number_of_positive_pictures_pps[i]+number_of_longterm_pictures_pps[i]。
用于第i个图片参数集缓冲器描述中所传送的参考图片的负deltaPOC值和正deltaPOC值被添加至列表DeltaPOCBD_pps[i]。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。
以下列表(2)图示可以使用以下语法在具有不同周期参数(例如,poc_cycles)的PPS内创建多个缓冲器描述的替代示例配置。在列表(2)中用粗体文本给出由于现有方式而导致的改变。
列表(2)
Figure GDA0003508926070000231
在列表(2)中,另外的参数的描述的示例被给出如下。当被设定为1时,poc_cycle_steps_flag规定除了poc_cycle计数应该为与经发信号通知的缓冲器描述模型相同的经发信号通知的缓冲器描述模型生成附加的缓冲器描述。默认情况下poc_cycle_steps_flag应该是0。此外,poc_cycle_steps规定应该为经发信号通知的缓冲器描述模型生成的附加的缓冲器描述的数目。除了应该减少poc_cycle计数附加的缓冲器描述应该与经发信信号的缓冲器描述相同。在一个配置中,所生成的附加的缓冲器描述应该具有-1、-2、-3、...、-(poc_cycle_steps)的poc_cycle_pps[i][j]值。
在一些配置中,可以在位流内启用分辨率切换。在这些配置中,参考图片的分辨率可以不同于当前图片的分辨率。因此,知道哪一个机制可以用来将参考图片缩放到正确分辨率可能是有利的。发信号通知机制的一个方式在于连同缓冲器描述一起显式地发信号通知它。例如,编码器108(例如,开销信令模块112)可以向解码器102发信号通知缩放参数‘s’。因此,可以在表2中示出替代缓冲器描述。
[表2]
替代缓冲器描述
deltaPOC<sub>0</sub>,temporalID<sub>0</sub>
deltaPOC<sub>1</sub>,temporalID<sub>1</sub>
deltaPOC<sub>2</sub>,temporalID<sub>2</sub>,s<sub>0</sub>
(POC<sub>0</sub>,poc_cycles<sub>0</sub>,temporalID<sub>3</sub>,s<sub>1</sub>)
(POC<sub>1</sub>,poc_cycles<sub>1</sub>,temporalID<sub>4</sub>,s<sub>2</sub>)
在表(2)中,前两个条目具有和当前图片的分辨率匹配的分辨率。然而剩余三个条目具有不同的分辨率并且可以分别使用缩放参数,
[数学式5]
s0,s1·s2
。可以选择性地发信号通知缩放参数。例如,只有当当前图片和参考图片具有不同的分辨率才可以发信号通知它。在另一配置中,可以总是发信号通知缩放参数。在又一个配置中,可以(由解码器)例如通过使用由当前图片特性(例如,分辨率)和参考图片特性(例如,分辨率)所索引的查找表来显式地推理缩放参数。
在又一个配置中,可以针对缓冲器描述中所定义的图片的任何子集发信号通知缩放参数。例如,可以针对使用正deltaPOC值所发信号通知的参考图片的子集、使用负deltaPOC值所发信号通知的参考图片的子集、使用POC和proc_cycle所发信号通知的图片的子集来发信号通知缩放参数。在一个配置中,子集可以包括整个列表。在以下表(3)中图示了一个示例,其中
[数学式6]
negativeDeltaPOC0
[数学式7]
negativeDeltaPOC1
是负deltaPOC值,
[数学式8]
positiveDeltaPOC2
是正deltaPOC值并且
[数学式9]
s0
[数学式10]
s1
[数学式11]
s2
[数学式12]
s3
[数学式13]
s4
分别是用于第一条目、第二条目、第三条目、第四条目以及第五条目的缩放参数。
[表3]
替代缓冲器描述
negativeDeltaPOC<sub>0</sub>,temporalID<sub>0</sub>,s<sub>0</sub>
negativeDeltaPOC<sub>1</sub>,temporalID<sub>1</sub>,s<sub>1</sub>
positiveDeltaPOC<sub>2</sub>,temporalID<sub>2</sub>,s<sub>2</sub>
(POC<sub>0</sub>,poc_cycles<sub>0</sub>,temporalID<sub>3</sub>,s<sub>3</sub>)
(POC<sub>1</sub>,poc_cycles<sub>1</sub>,temporalID<sub>4</sub>,s<sub>4</sub>)
在又一个配置中,缩放参数可以指示待保持在解码图片缓冲器中的参考图片的一个或多个分辨率。在又一个配置中,缩放参数可以用来发信号通知待用于运动补偿过程的参考图片的分辨率。在又一个配置中,如果参考图片和正被解码的图片的分辨率是不相同的,则缩放参数指示运动补偿过程以用来生成预测。
在一个配置中,缩放参数发信号通知(例如,指示)像素中的水平分辨率和/或垂直分辨率的改变。在一个配置中,缩放参数发信号通知(例如,指示)所期望的水平分辨率和/或垂直分辨率与原始水平分辨率和/或垂直分辨率之间的比。在一个配置中,缩放参数是2元组,其中第一值识别针对水平分辨率的缩放而第二值识别针对垂直分辨率的缩放。
在一些配置中,可以基于缩放参数来处理参考图片的变换系数以获得所期望的分辨率。这可能有利于通过在编译参考图片的同时仅允许大于特定阈值的块尺寸而使得能实现较好的分辨率适应。
在又一个配置中,可以基于缩放参数来处理参考图片的重建像素以获得所期望的分辨率。应该注意的是,这些配置可以被应用于本文所公开的所有参考图片索引方案。
列表(3)图示针对来自AHG21的PPS的语法修改的另一示例。特别地,列表(3)图示像AHG21中所概述的码片报头中所使用的缓冲器描述语法的一个示例。然而,在列表(3)中用粗体文本表示根据本文所公开的系统和方法对AHG21中所给出的语法的修改。
列表(3)
Figure GDA0003508926070000271
列表(3)中的参数的描述的示例被给出如下。number_of_negative_pictures规定负增量POC条目的数目。number_of_negative_pictures将Offset(偏移)的值定义为偏移Offset=number_of_negative_pictures。number_of_negative_pictures的值应该在0至max_num_ref_frames范围内(首末项包括在内)。
negative_delta_poc_minus_one[i]规定POC值的绝对距离。如果i等于0则negative_delta_poc_minus_one[i]将变量POCBD[i]的值定义为POCBD[i]=(pic_order_cnt+MaxPOC-(negative_delta_poc_minus_one[i]+1))%MaxPOC,以及如果i>0则定义为POCBD[i]=(POCBD[i-1]+MaxPOC-(negative_delta_poc_minus_one[i]+1))%MaxPOC。这里,pic_order_cnt是如在码片报头中发信号通知的当前图片的POC。negative_delta_poc_minus_one[i]的值应该在0至MaxPOC-1范围内(首末项包括在内)。POCBD[i]的值应该是使得DiffPOC(currPic,refPic)的值在-1至MaxPOC/2范围内。这里,refPic是具有等于POCBD[i]的pic_order_cnt的参考图片。
DiffPOC(picA,picB)被规定如下:
代码1
Figure GDA0003508926070000281
函数POC(picX)被规定如下:POC(picX)=pic_order_cnt of picX。POC_CYCLE_BD[i]被设定为第i个负deltaPOC参考图片的poc_cycle。基于指定图片来计算第i个负deltaPOC参考图片的poc_cycle。
temporal_id_negative[i]规定临时标识符并且应该由bits_for_temporal_id_in_buffer_descriptions各位来表示,其中bits_for_temporal_id_in_buffer_descriptions是来自由当前图片所使用的图片参数集的语法元素。temporal_id_negative[i]将变量TemporalIDBD[i]的值定义为TemporalIDBD[i]=temporal_id_negative[i]。temporal_id_negative[i]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。TemporalIDBD[i]的值被限制为使得TemporalIDBD[i]必须等于在具有等于POCBD[i]的pic_order_cnt的参考图片的NAL报头中发信号通知的temporal_id。
number_of_positive_pictures规定具有正值的列表DeltaPOCBD_pps[i]中的条目的数目。number_of_positive_pictures的值应该在0至max_num_ref_frames-Offset范围内(首末项包括在内)。当number_of_positive_pictures语法元素不存在时,number_of_positive_pictures的值应该被推理为等于0。
delta_poc_minus_one[i]规定POC值得绝对距离。如果i等于0则delta_poc_minus_one[i]将变量POCBD[i+Offset]的值定义为POCBD[i+Offset]=(pic_order_cnt+(delta_poc_minus_one[i]+1))%MaxPOC,以及如果i>0则定义为POCBD[i+Offset]=(POCBD[i-1+Offset]+(delta_poc_minus_one[i]+1))%MaxPOC。这里,pic_order_cnt是如在码片报头中发信号通知的当前图片的POC。delta_poc_minus_one[i]的值应该在0至MaxPOC-1范围内(首末项包括在内)。POCBD[i+Offset]的值应该是使得DiffPOC(currPic,refPic)的值在1至MaxPOC/2-1范围内,其中refPic是具有等于POCBD[i+Offset]的pic_order_cnt的参考图片。POC_CYCLE_BD[i+Offset]被设定为第i个正deltaPOC参考图片的poc_cycle。基于指定图片来计算第i个正deltaPOC参考图片的poc_cycle。
temporal_id_positive[i]规定临时标识符并且应该由bits_for_temporal_id_in_buffer_descriptions个位来表示,其中bits_for_temporal_id_in_buffer_descriptions是来自由当前图片所使用的图片参数集的语法元素。temporal_id_positive[i]将变量TemporalIDBD[i+Offset]的值定义为TemporalIDBD[i+Offset]=temporal_id_positive[i]。temporal_id_positive[i]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。TemporalIDBD[i]的值被限制为使得TemporalIDBD[i]必须等于在具有等于POCBD[i]的pic_order_cnt的参考图片的NAL报头中发信号通知的temporal_id。
等于1的bd_poc_cycle_update_flag规定对于当前图片应该覆写所引用的缓冲器描述的POC_CYCLE_BD_pps[bd_idx][j]。在一些配置中,将来的帧还可以覆写poc_cycle信息。如果bd_poc_cycle_update_flag是0则所引用的缓冲器描述的原始POC_CYCLE_BD_pps[bd_idx][j]将被使用。poc_cycle_pps_override[j]规定一种值,该值待用来仅针对当前图片覆写POC_CYCLE_BD_pps[bd_idx][j]内的值。在替代配置中,poc_cycle_pps_override[j]规定偏移。仅对于当前图片,可以使用(POC_CYCLE_BD_pps[bd_idx][j]+poc_cycle_pps_override[j])替换POC_CYCLE_BD_pps[bd_idx][j]。
poc_pps_override[j]规定一种值,该值待用来仅针对当前图片覆写POCBD_pps[bd_idx][j]内的值。在替代配置中,poc_pps_override[j]规定偏移。仅对于当前图片,可以使用(POCBD_pps[bd_idx][j]+poc_pps_override[j])替换POCBD_pps[bd_idx][j]。temporal_id_pps_override[j]规定一种值,该值待用来仅针对当前图片覆写TemporalIDBD_pps[bd_idx][j]内的值。在替代配置中,temporal_id_pps_override[j]规定偏移。仅对于当前图片,可以使用(TemporalIDBD_pps[bd_idx][j]+temporal_id_pps_override[j])替换TemporalIDBD_pps[bd_idx][j]。
number_of_longterm_pictures规定列表POCBD和POC_CYCLE_BD中的长期图片条目的数目。number_of_longterm_pictures的值应该在0至max_num_ref_frames范围内(首末项包括在内)。max_num_ref_frames规定短期参考帧和长期参考帧的最大数目。poc[j]规定待添加至列表POCBD的POC值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc[j]应该在0至MaxPOC-1范围内。
poc_cycle[j](例如,周期参数)规定poc_cycle值并且定义待添加至列表POC_CYCLE_BD的值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc_cycle[j]可以小于或等于零或者可以占据不同的数值范围。
temporal_id_poc[j]规定临时标识符并且应该由bits_for_temporal_id_in_buffer_descriptions个位来表示。temporal_id_poc[j]定义待添加至列表TemporalIDBD的值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加操作是以预定义顺序替换列表中的项目的操作。temporal_id_poc[i][j]应该在0至max_temporal_layers_minus1范围内(首末项包括在内)。max_temporal_layers_minus1+1规定存在于序列中的临时层的最大数目。
在一些配置中,可以在列表(3)中所图示的“for”循环之前传送number_of_longterm_pictures_pps[bd_idx],从而避免对具有PPS的码片报头的依赖。替换地,bd_poc_cycle_update_flag可以用另一参数num_longterm_poccycle_override_count替换。例如,以上列表(3)中的相关代码可以用“If num_longterm_poccycle_override_count>0then For(j=0;j<num_longterm_poccycle_override_count;j++){....}”替换。
等于1的bd_reference_flag规定应该使用不在码片报头中传送的语法元素来创建当前图片的缓冲器描述。在一个配置中,用于当前图片的缓冲器描述使用图片参数集中的语法元素来创建。等于0的buffer_description_reference_flag规定应该通过在码片报头中所传送的缓冲器描述和不在码片报头中所传送的缓冲器描述的组合来创建当前图片的缓冲器描述。在一个配置中,在图片参数集中传送不在码片报头中传送的缓冲器描述。
bd_idx在一组可用缓冲器描述中识别缓冲器描述。在一个配置中,bd_idx规定应该被用于当前图片的缓冲器描述的创建的列表POCBD_pps、DeltaPOCBD_pps、POC_CYCLE_BD_pps以及TemporalIDBD_pps的索引。
与(DeltaPOCBD_pps[bd_idx],TemporalIDBD_pps[bd_idx])中的deltaPOC引用图片相对应的值被转换为图片顺序计数(例如,POC)、周期参数(例如,poc_cycle)以及临时标识符并且添加至图片缓冲器描述列表POCBD、POC_CYCLE_BD以及TemporalIDBD。与参考图片相对应的列表(POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]、TemporalIDBD_pps[bd_idx])中的值被添加至图片缓冲器描述列表POCBD、POC_CYCLE_BD以及TemporalIDBD。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。
等于1的combine_with_reference_flag规定来自活动PPS的语法元素被用来与显式信令相结合地指派列表POCBD、POC_CYCLE_BD以及TemporalIDBD中的值。当combine_with_reference_flag不存在时,combine_with_reference_flag的值应该被推理为等于0。
bd_combination_idx规定应该被与显式信令相结合地用于当前图片的缓冲器描述的创建的列表DeltaPOCBD_pps和TemporalIDBD_pps中的索引。bd_combination_idx应该由ceil(log2(number_of_bds))个位来表示。bd_combination_idx的值应该在0至number_of_bds-1范围内,其中number_of_bds是来自由当前图片所使用的图片参数集的语法元素。POCBD、POC_CYCLE_BD以及TemporalIDBD列表中的当前图片然后使用预定义机制从列表DeltaPOCBD_pps[bd_idx]、POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]以及TemporalIDBD_pps[bd_idx]添加值。在上述的一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。
其后给出以其可以应用本文所描述的系统和方法的方式的一些示例。假定具有POC=0的图片是由具有POC=
[数学式14]
MaxPOC-1
的图片和来自后续图片集的具有POC=0的图片所使用的长期(参考图片)。可以以不同的方式来指示长期(参考)图片。
以第一方式,在PPS中存在两个缓冲器描述,包括缓冲器描述A:{POC=0,poc_cycle=0,temporalID}和缓冲器描述B:{POC=0,poc_cycle=-1,temporalID}。具有POC=
[数学式15]
MaxPOC-1
的图片将指向缓冲器描述A。来自后续图片集的具有POC=0的图片将参考缓冲器描述B。
以第二替代方式,具有POC=
[数学式16]
MaxPOC-1
的图片将指向缓冲器描述A。来自后续图片集的具有POC=0的图片将参考缓冲器描述A。缓冲器描述A对应于{POC=0,poc_cycle=0,temporalID}。为了引用正确的图片,poc_cycle应该被设定为-1,因为所引用的图片属于先前的[数学式17]
[0,…,MaxPOC-1]
图片集。因此,通过在码片报头中传送“-1”,可以仅针对当前码片覆写当前设定为0的用于缓冲器描述A的poc_cycle值(例如,设定为不同的值)。在一些配置中,图片中的第一码片可以用来仅针对当前图片覆写缓冲器描述的poc_cycle值。
在一些配置中,可以在更精细级别下修改在高级别下所发信号通知的参考图片的列表。例如,可以在PPS中所传送的(例如,在高级别下发信号通知的)缓冲器描述中发信号通知参考图片的列表。然而,可以修改(例如,在更精细级别下修改)PPS中所传送的缓冲器描述。例如,可以通过删除现有条目来修改缓冲器描述。附加地或替换地,可以修改来自PPS的缓冲器描述信息以添加新的条目或者替换条目。诸如如果没有空插槽是可用的,则还可以修改来自PPS的缓冲器描述信息以使用预定义机制来添加新的条目并且替换当前条目。允许修改的有益效果是可以获得更高级别的控制。这可以代替在没有修改的情况下或除替换仅前‘n’个条目之外或替换地通过替换仅前‘n’个条目来使用来自PPS的缓冲器描述。
在一些配置中,可以定义附加的语法以替换插槽列表中的条目。在这种情况下,将规定被替换的列表中的索引和在该索引处可以替换当前条目的条目。
附加地或替换地,可以定义附加的语法以便如果插槽列表没有空位则用替换在列表中添加条目。在这种情况下,可以使用位流中较早地传送的一些信息(例如,从编码器108或开销信令模块112)显式地发信号通知或者(例如,由解码器102)隐式地推理应该被替换的列表中的索引。
列表(4)图示针对来自AHG21的PPS的语法修改的另一示例。特别地,列表(4)图示像AHG21中所概述的码片报头中所使用的缓冲器描述语法的另一示例。然而,在列表(4)中用粗体文本表示根据本文所公开的系统和方法对AHG21中所给出的语法的修改。
列表(4)
Figure GDA0003508926070000351
列表(4)包含与列表(3)的元素相似的许多元素。列表(4)还包括对码片报头的语法修改以允许参考图片的删除和/或添加。
列表(4)中的参数的描述的示例被给出如下。bd_poc_cycle_delete_count为当前图片(例如,仅)规定待从以下列表中删除的条目的数目:POCBD_pps[bd_idx]、temporalIDBD_pps[bd_idx]以及POC_CYCLE_BD_pps[bd_idx]。在一些配置中,bd_poc_cycle_delete_count可以大于或等于0。
bd_pps_delete_idx[j]规定对于当前图片,在列表中删除POC_CYCLE_BD_pps[bd_idx][bd_pps_delete_idx[j]]条目、temporalIDBD_pps[bd_idx][bd_pps_delete_idx[j]]条目以及POCBD_pps[bd_idx][bd_pps_delete_idx[j]]条目。在一些配置中,在图片被删除后,它可能不再可用于供后续解码图片引用。在其它配置中,在所有删除完成后,列表POCBD_pps[bd_idx]、temporalIDBD_pps[bd_idx]以及POC_CYCLE_BD_pps[bd_idx]中的剩余条目可以被移向初始索引(例如,第零个索引)以占据经空的插槽。可以执行这个过程,使得在任何两个被占据插槽之间没有空插槽剩余。这里,插槽对应于缓冲器描述中的条目。例如,如果列表是[插槽0=A][插槽1=空的][插槽2=B][插槽3=C][插槽4=空的][插槽5=D],则在删除之后条目被移向插槽0直到在任何两个被占据插槽之间没有空插槽剩余为止。在这个示例中,结果得到的列表是[插槽0=A][插槽1=B][插槽2=C][插槽3=D][插槽4=空的][插槽5=空的]。
bd_poc_cycle_append_count为当前图片规定待附加至以下列表的条目的数目:POCBD_pps[bd_idx]、temporalIDBD_pps[bd_idx]以及POC_CYCLE_BD_pps[bd_idx]。在一些配置中,bd_poc_cycle_append_count可以大于或等于0。
poc_pps_append[j]规定待附加至(例如,仅)当前图片的列表POCBD_pps[bd_idx]的POC值。在一些配置中,如果在列表中存在任何空插槽,则可以从最接近于零索引的空插槽开始并且然后以插槽索引的渐增顺序执行添加。
poc_cycle_pps_append[j]规定待附加至(例如,仅)当前图片的列表POC_CYCLE_BD_pps[bd_idx]的poc_cycle值。在一些配置中,如果在列表中存在任何空插槽,则可以首先填充最接近于零索引的空插槽。附加地,可以以插槽索引的渐增顺序填充插槽。在一些配置中,覆写条目、删除条目以及将条目附加至POCBD_pps[bd_idx]和POC_CYCLE_BD_pps[bd_idx]的这些操作被以预定义顺序执行。
temporal_id_pps_append[j]规定待附加至(例如,仅)当前图片的列表TemporalIDBD_pps[bd_idx]的临时标识符。在一些配置中,如果在列表中存在任何空插槽,则可以从最接近于零索引的空插槽开始并且然后以插槽索引的渐增顺序执行添加。
其后给出了本文所公开的系统和方法的配置的一些示例。在一个配置中,3元组(POC,poc_cycle,temporalID)可以用2元组(LTSlotIdx,temporalID)替换。LTSlotIndex可以是指向长期DPB中的位置的插槽索引。这个方式的一个可能的有益效果在于降低位率开销。
在另一配置中,3元组(POC,poc_cycle,temporalID)可以用(f(POC,poc_cycle),temporalID)替换,其中f(POC,poc_cycle)是将二元组(POC,poc_cycle)映射到索引的函数(例如,查找表)。在又一个配置中,代替(POC,poc_cycle),可以使用绝对POC值。在一个示例中,这个绝对POC值将不同于规定了绝对POC的JCTVC-F493中的缓冲器描述里的longterm_poc[i]字段。特别地,JCTVC-F493 longterm_poc[i]字段能够仅发信号通知在范围0和MaxPOC内的值。然而,根据本文所公开的系统和方法,可以使用AVC的最高有效位(MSB)方案和最低有效位(LSB)方案来发信号通知(并且可能得到)绝对POC值,从而提供更大的位分辨率。替换地,可以使用大于MaxPOC的数空间来发信号通知绝对POC值。
在另一配置中,根据本文所公开的系统和方法的绝对POC可以被用于引用所有参考图片(例如,短期图片和长期图片)。在另一配置中,可以使用根据本文所公开的系统和方法的绝对POC代替deltaPOC信令。在一些配置中,POC和poc_cycle可以用如其后示例中所示出的绝对POC值替换(并且可能不限于以下示例):
代码2
Figure GDA0003508926070000381
在这个示例中,‘absolute_poc_pps[i][j]’是在PPS内的第i个缓冲器描述里的第j个长期图片条目的绝对图片顺序计数。
代码3
Figure GDA0003508926070000382
在这个示例中,‘absolute_poc[j]’是缓冲器描述里的第j个长期图片条目的绝对图片顺序计数。
在一些配置中,可以在自适应码片参数集或自适应参数集(APS)中附加地或替换地承载通常包含在PPS中和/或在缓冲器描述中的一些信息或所有信息。这个信息包括以下各项中的一个或多个:number_of_longterm_pictures、poc[j],poc_cycle[j],temporal_id_poc[j]、number_of_longterm_pictures_pps[i]、poc_pps[i][j]、poc_cycle_pps[i][j]以及temporal_id_poc_pps[i][j]。例如,自适应码片参数集或自适应参数集(APS)可以包括参考图片的数目(例如,number_of_longterm_pictures)、图片顺序计数(例如,poc[j])、图片顺序计数周期参数(例如,poc_cycle[j])、临时标识符图片顺序计数参数(例如,temporal_id_poc[j])、参考图片的图片参数集数目(例如,number_of_longterm_pictures_pps[i])、图片参数集图片顺序计数(例如,poc_pps[i][j])、图片参数集图片顺序计数周期参照(例如,poc_cycle_pps[i][j])以及图片参数集临时标识符图片顺序计数参数(例如,temporal_id_poc_pps[i][j])中的一个或多个。
在一些配置中,如果信息poc_cycle[j]不同于0则可以仅(例如,从编码器108向解码器(102、202)发信号通知它。在这种情况下,可以定义替换的语法。
在又一个配置中,可以附加地或替换地与缓冲器描述信息分别地在码片报头中承载通常包含在PPS中和/或在缓冲器描述中的一些或所有信息。例如,码片报头可以承载(与缓冲器描述容器分离地)参考图片的数目(例如,number_of_longterm_pictures)、图片顺序计数(例如,poc[j])、图片顺序计数周期参数(例如,poc_cycle[j])、临时标识符图片顺序计数参数(例如,temporal_id_poc[j])、参考图片的图片参数集数目(例如,number_of_longterm_pictures_pps[i])、图片参数集图片顺序计数(例如,poc_pps[i][j])、图片参数集图片顺序计数周期参数(例如,poc_cycle_pps[i][j])以及图片参数集临时标识符图片顺序计数参数(例如,temporal_id_poc_pps[i][j])中的一个或多个。
在替代配置中,长期(参考)图片可以通过将它编索引为x.y来发信号通知,其中x=poc[j]或poc_pps[i][j]并且y是定义附加的名字空间/数空间以用于子索引长期(参考)图片的新的信息子索引。在这种情况下,可以针对每个长期(参考)图片在PPS和/或缓冲器描述(在码片报头中)中发送x个条目和y个条目。
在一些配置中,所有(参考)图片(例如,长期和短期)使用增量引用(例如,使用deltaPOC和temporalID)或绝对引用(例如,使用POC、poc_cycle以及temporalID)来引用。例如,整个解码图片缓冲器(DPB)可以包括一组接收到的图片。这些接收的图片的子集可以使用增量引用并且剩余接收到的图片可以使用绝对引用。应该注意的是,现有方式不(例如,使用POC和poc_cycle)规定与根据本文所公开的系统和方法所给出的相同的绝对引用。应该注意的是,可以与本文所描述的方法和/或方式中的一个或多个相结合地实现所描述的缓冲器描述和语法描述的配置中的一个或多个。
图3是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法300的一个配置的流程图。电子设备204(例如,解码器202)可以接收302位流。例如,解码器202可以接收302包括编码参考图片(例如,和其它编码图片)的位流214。在一些配置中,位流214还可以包括开销信息(例如,PPS、缓冲器描述信息、参数、回绕指示符、参考图片指定或标识符等)。
电子设备204可以对位流214的一部分进行解码304以产生解码参考图片。例如,解码器202可以对位流214的一部分进行解码304以产生被存储在帧存储器264中的解码参考图片。应该注意的是,位流214的一个或多个部分可以被解码304以产生一个或多个解码参考图片。
电子设备204可以在降低开销引用情况下跟踪306解码图片缓冲器(DPB)中的解码参考图片。例如,电子设备204可以使周期参数与解码参考图片相关联,并且如果接收到回绕指示符或如果确定了图片集之间的变换则修改(例如,递减或递增)该周期参数。其它方式可以被用于跟踪306解码参考图片。在下面给出了更多细节。应该注意的是,DPB可以包括一个或多个解码参考图片。
电子设备204可以基于一个或多个解码参考图片对图片进行解码308。例如,可以基于参考图片对位流214的一部分(除被解码304以产生解码参考图片的部分以外)进行解码308。例如,可以向运动补偿模块260提供解码参考图片(其已在DPB中被跟踪到)以便基于帧间预测机制来生成帧间预测信号268。帧间预测信号268然后可以用来对图片进行解码308。在一些配置或实例中,一个或多个解码参考图片可以被跟踪306并且用来对图片进行解码308。
图4是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法400的更特定配置的流程图。这个方法400可以是用于在POC被再使用时跟踪哪一个图片正被引用的一个方式。电子设备204(例如,解码器202)可以接收402位流。例如,解码器202可以接收402包括编码参考图片(例如,和其它编码图片)的位流214。在一些配置中,位流214可以包括开销信息(例如,PPS、缓冲器描述信息、参数、回绕指示符、参考图片指定或标识符等)。
电子设备204可以对位流214的一部分进行解码404以产生解码参考图片。例如,解码器202可以对位流214的一部分进行解码404以产生被存储在帧存储器264中的解码参考图片。应该注意的是,位流214的一个或多个部分可以被解码404以产生一个或多个解码参考图片。
电子设备204可以使周期参数与包括解码参考图片的解码图片集相关联406。例如,电子设备204可以使周期参数“poc_cycle”与包括解码参考图片的解码图片集相关联406。
周期参数“poc_cycle”可以被定义如下。当固定数目的位用来表示在范围
[数学式18]
[0,…,MaxPOC-1]
内的图片的POC时,
[数学式19]
MaxPOC
个唯一整数值存在。如果正被编码的图片的数目超过
[数学式20]
MaxPOC
,则图片编号机制必须再使用已经指派的POC值。在一个示例中POC编号然后发展如下:
[数学式21]
…,[0,…,MaxPOC-1]n-2
[数学式22]
[0,…,MaxPOC-1]n-1
[数学式23]
[0,…,MaxPOC-1]n
[数学式24]
[0,…,MaxPOC-1]n+1,…。
这个示例中的下标表示集合
[数学式25]
[0,…,MaxPOC-1]
已重复的次数。这个下标或集合
[数学式26]
[0,…,MaxPOC-1]
已重复的次数可以被表示为
[数学式27]
MaxPOCSetIndex。
例如,具有POC=0并且
[数学式28]
MaxPOCSetIndex=n
的图片表示序列的第
[数学式29]
(n*MaxPOC+1)th
个图片(例如,在图片集标号从1开始的假设下)。在下面关于图5给出有关周期参数“poc_cycle”的附加细节。
电子设备204可以确定408是否接收到回绕指示符。例如,每当编码器108或传送电子设备A 104a在一组图片中达到图片的预定最大数目,编码器108或传送电子设备A 104a可以发送被解码器102或接收电子设备B 104b接收的回绕指示符以指示另一组图片正被发送(例如,POC正在重置或开始另一周期)。在下面关于图11给出更多细节。
如果电子设备204确定408接收到回绕指示符,则电子设备204可以修改410(例如,递减)周期参数。例如,电子设备204针对DPB中的每个图片或每组图片来递减周期参数。在另一示例中,电子设备204可以递增周期参数。
电子设备204可以基于解码参考图片对图片进行解码412。例如,可以基于参考图片对位流214的一部分(除被解码404以产生解码参考图片的部分以外)进行解码412。例如,可以向运动补偿模块260提供解码参考图片(其已在DPB中被跟踪到)以便基于帧间预测机制来生成帧间预测信号268。帧间预测信号268然后可以用来对图片进行解码412。在一些配置或实例中,一个或多个解码参考图片可以用来对图片进行解码412。
图5是图示由周期参数所引用的多个图片集的一个示例的图。更具体地,图5图示使用周期参数基于指定图片在降低开销引用情况下跟踪参考图片的示例。特别地,图5图示与图片集A 507a相关联的周期参数(例如,poc_cycle=-1)、与图片集B 507b相关联的周期参数(例如,poc_cycle=0)以及与图片集C 507c相关联的周期参数(例如,poc_cycle=+1)。然而,应该注意的是,图片集A 507a可以或者可能不是帧的序列中的第一个图片集。例如,一个或多个图片集可以先于图片集A 507a。此外,应该注意的是,图片集C 507c可以或者可能不是帧的序列中的最后一个图片集。例如,一个或多个图片集可以紧跟图片集C507c之后。
每个图片集507a-c可以包括一个或多个图片501a-n、503a-n、505a-n。在这个示例中,每个图片集507a-c包括
[数学式30]
MaxPOC
个图片501、503、505。特别地,每个图片501、503、505可以具有对应的图片顺序计数(POC),在图5中表示为
[数学式31]
[0,1,2,…,MaxPOC-1]。
在一个示例中,包含当前解码图片的图片集的poc_cycle可以被设定为0以用于计算其它图片的poc_cycle。在一些情况下,可以乱序对图片进行解码。例如,解码器可以看到503b,然后是503a以及然后是503c。在这个示例中,假定当前正被解码的图片是具有POC=1的图片集B 507b中的图片503b。然后可以基于当前解码图片的poc_cycle来计算诸如参考图片的另一图片的poc_cycle。
图6是图示多个图片集的另一示例的图。图6包含与关于图5上面所描述的图片集507a-c相似的图片集607a-c。一个或多个图片601a-c、603a-n、605a-n可以被包括在每个图片集607a-c中。图片集607a-c可以包括
[数学式32]
MaxPOC
个图片。另外,每个图片601a-c、603a-603n、605a-605n可以具有属于如图6中所表示的集合
[数学式33]
[0,1,2,…,MaxPOC-1]
的对应图片顺序计数(POC)。
图片集607可以包括一个或多个图片。例如,图片集B 607b中的图片603a-n可以被分组为图片集。同样地,图片集C 607c中的图片605a-n可以被一起分组成图片集。图片集可以包括在被编码时彼此邻近的图片或者可以由分组在一起的随机图片构成。在另一示例中,图片集可以组成由
[数学式34]
[0,1,2,…,MaxPOC-1]
个图片构成的poc_cycle。
在一些配置中,图片集607a可以包括瞬时解码刷新(IDR)图片603a(例如,IDR访问单元)。IDR图片603a可以由编码器在位流中发信号通知。附加地或替换地,可以基于图片类型来识别IDR。在一些配置中,IDR图片603a可以向解码器202指示位流214中的后续图片将不需要对位流214中的先前图片的引用。
当IDR图片603a被解码器202解码时,POC可以被重置回为预定值。例如,在对图片集A 607a进行解码之后,接收或发信号通知IDR图片603a。这时,POC可以被重置回为0并且新的图片集,图片集B 607开始。换句话说,IDR图片603a可以规定相对于指定图片的参考图片。发送IDR图片603a的一个有益效果可能在于引入新的参考图片。将关于图7在下面更详细地描述这个有益效果。
图7是由周期参数所引用的多个图片集的更特定示例的图。图7图示了图片集707a-d和图片701、703、705以及它们关联的POC和与关于图5上面所描述的组件507a-c、501、503、505相似的poc_cycle。附加地,图7示出附加的图片集707d以及关联的图片731a-n。
图7还图示了指定图片703a。在一个配置中,用于指定图片的周期参数(例如,poc_cycle)可以被设定为0。例如,当图片集中的第一个图片(例如,POC=0)是指定图片(例如,IDR图片)时,则用于指定图片的poc_cycle可以等于0。可以相对于具有设定为0的周期参数(例如,poc_cycle=0)的图片集来计算更迟的图片集的周期参数(例如,poc_cycle)。
指定图片的一个示例是与关于图6上面所描述的IDR图片603a相似的IDR图片703a(例如,IDR访问单元)。为了方便,指定图片703a将被描述为IDR图片。然而,应该注意的是,指定图片703a可以是由编码器用位流中的信令所指示的或者可以由解码器隐式地确定的任何图片。
在一些配置中,编码器可以在位流中发送指示IDR图片703a的信号。可以基于这个信号来确定POC计数器的值。例如,该信号可以(向解码器)指示针对IDR图片将POC设定为0(例如,如果对于IDR图片来说POC不是0)。例如,IDR图片703a可以使解码器将POC计数器重置为初始值,例如0。poc_cycle还可以基于IDR图片703a。与POC相似,该信号可以指示poc_cycle应该被重置为初始值。在另一示例中,该信号可以指示没有对POC或poc_cycle的修改需要发生(如果它们对于IDR图片703a是初始值)。
IDR图片703a可以是用来设定或重置POC和poc_cycle(例如,和/或其它周期参数)的指示,所述POC和poc_cycle可以用来跟踪相对于指定图片703a的参考图片。例如,解码器202可以对集合A 707a中的图片701a-c进行解码。图片集A 707a可以具有与它相关联的周期参数poc_cycle=m。然后可以从位流214发信号通知IDR图片703a。IDR图片703a可以指示新的周期参数(例如,poc_cycle=0)并且可以指示POC=0。然后可以对图片集707b-d进行解码并且它们关联的周期参数可以从初始值递增(例如,分别poc_cycle=0、poc_cycle=+1、poc_cycle=+2)。在这个示例中,相对于新近设定的周期参数和POC来计算更迟的图片集707b-d。
如先前所描述的,IDR图片703a可以向解码器202指示位流中的后续图片将不需要对位流214中的现有图片的引用。然而,IDR图片703a可以仅发信号通知POC的或周期参数的重置。例如,图片集A可以具有poc_cycle=m的周期参数,其中m=+5。当接收到IDR图片703a时,m可以被改变为m=-1。因此,IDR图片703a可以进行参考图片相对于指定图片的poc_cycle计数。换句话说,IDR图片703a可以发信号通知poc_cycle计数以计算序列中相对于指定图片的参考图片,而不是仅仅当前图片。
图8是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法800的一个配置的流程图。电子设备204(例如,解码器202)可以接收802位流并且对位流214的一部分进行解码804以产生解码参考图片。这可以以如关于图3先前所描述的相似方式发生。
电子设备204可以基于指定图片在降低开销引用情况下跟踪解码图片缓冲器(DPB)中的解码参考图片。这可以被实现如下。电子设备204(例如,解码器202)可以确定806指定图片。在一个配置中,电子设备204可以基于位流214中所接收到的显式信令来进行这个确定806。例如,位流214可以包括规定指定图片的指示符。在一个示例中,指定图片可以是由位流214中所接收到的信令(例如,在图片参数集(PPS)中、在缓冲器描述中等)所指示的瞬时解码刷新(IDR)图片。
电子设备204可以基于指定图片来确定808图片顺序计数(POC)。例如,电子设备204可以设定或者重置与指定图片相关联的POC。例如,与指定图片相关联的POC可以被设定为0。因此,电子设备204可以基于指定图片来重置POC序列。例如,可以基于与图6中所图示的指定图片603a相关联的POC对其它图片的POC进行编号。
电子设备204可以基于指定图片来确定810周期参数(例如,poc_cycle)。例如,与包括指定图片的图片集相关联的周期参数可以被设定或者重置为0。可以基于包括指定图片(例如,IDR图片)的图片集来确定(例如,计算)用于其它图片集的周期参数。这个的一个示例被图示在图7中并且关于图7被描述。
当基于指定图片确定了POC和周期参数(例如,poc_cycle)时,必要时可以更新解码参考图片的POC和周期参数。这可以使得能实现解码图片缓冲器(DPB)中的解码参考图片的跟踪。因此,可以基于指定图片(例如,IDR图片)跟踪解码参考图片。
电子设备204可以从DPB获得812解码参考图片。例如,电子设备204可以根据基于指定图片的POC和周期参数(例如,poc_cycle)从DPB中检索解码参考图片。
电子设备204可以基于解码参考图片对图片进行解码814。这可以像关于图3上面所类似地描述的那样发生。应该注意的是,可以根据方法800跟踪一组一个或多个解码参考图片。
图9是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法900的另一配置的流程图。如先前所描述的,电子设备204可以接收902位流。电子设备204还可以对位流的一个或多个部分进行解码904以产生参考图片集合。解码参考图片集合可以包括一个或多个解码参考图片。
电子设备204可以基于指定图片在降低开销引用情况下跟踪906解码图片缓冲器(DPB)中的解码参考图片集合。这可以像关于图8上面所描述的那样完成。解码参考图片集合中的两个或更多个解码参考图片可以指的是如上面所描述的相同的或不同的时间实例(例如,相似的时间实例)。
电子设备204可以可选地确定908是否解码参考图片集合中的解码参考图片(用于对图片进行解码)的分辨率不同于当前图片的分辨率。如果两个图片之间的分辨率是不同的,则电子设备204可以基于缩放参数来处理910解码参考图片的变换系数以对图片进行解码。上面关于表(2)给出了有关分辨率切换和缩放参数的更详细描述。应该注意的是,可以通过显式地接收缩放参数或者通过隐式地(例如,使用查找表、图片分辨率特性等)确定缩放参数来确定缩放参数。
不管分辨率是相同的还是不同的,电子设备204可以基于解码参考图片集合(例如,解码参考图片集合中的解码参考图片)对图片进行解码912。
图10是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法1000的另一配置的流程图。电子设备204可以接收1002位流并且对该位流的一部分进行解码1004以产生解码参考图片。电子设备204可以基于指定图片在降低开销引用情况下跟踪1006解码图片缓冲器(DPB)中的解码参考图片集合。这可以是像上面所描述的那样完成。
电子设备204还可以获得1008缓冲器描述。上面详细地描述了缓冲器描述的一些示例。例如,以上表(1)和表(2)包括各种缓冲器描述的示例。可以由解码器从编码器接收缓冲器描述作为参数图片集(PPS)的一部分。适当的缓冲器描述的索引还可以由解码器接收作为码片报头的一部分。在获得1008缓冲器描述后,电子设备204可以确定1010是否修改该缓冲器描述。如果缓冲器描述不需要修改,则电子设备204可以基于解码参考图片对图片进行解码1014。然而,如果缓冲器描述需要修改,则电子设备204可以修改1012一个或多个条目。修改1012的示例可以包括删除条目、添加条目或替换条目。可以关于列表(4)的描述在下面找到删除、添加或替换条目的更详细描述。在修改1012完成后,电子设备204可以基于解码参考图片对图片进行解码1014。
图11是图示根据本文所公开的系统和方法发信号通知1133回绕指示符的一个示例的图。在这个示例中,图示了数个图片1137a-n、1139a-n、1141a-n、1143a-n、1145a-n和图片集1107a-e。特别地,图11图示了随着时间的推移的参考缓冲器状态1135以及回绕指示符1149的对应当前帧和定时。
在这个示例中,假定在第一时间具有poc_cycle=0的图片集B1107b中的图片B01139a是当前图片或帧。当发生变换A 1147a时,发信号通知1133a回绕指示符。在第二时间,图片集C 1107c中的图片C0 1141a是当前图片或帧。假定图片C0 1141a是用于后续图片(例如,在图片集D 1107d和图片集E 1107e中)的参考图片。例如,图片C0 1141a可以是待保持在DPB中以用于对后续图片1141b-n、1143a-n、1145a-n进行解码的长期参考图片。当发生变换B 1147b时,发信号通知1133b另一回绕指示符。如所图示的,poc_cycle参数在回绕指示符的用信号通知1133时被更新。这个过程可以用来根据本文所公开的系统和方法来跟踪参考图片。此外,应该注意的是,可以像本文所描述的那样基于解码参考图片来重置或者重新开始POC和poc_cycle。
如图11中所图示的,POC号码0至
[数学式35]
MaxPOC-1重复地对应于图片1137a-n、1139a-n、1141a-n、1143a-n、1145a-n。如上面所描述的,每个图片集1107a-e(具有POC编号0至
[数学式36]
MaxPOC-1
可以对应于周期参数(例如,poc_cycle)。
在一个配置中,可以在当前图片集(例如,图片集B 1107b)与后续更迟的图片集(例如,图片集C 1107c)之间的第一变换1147a下发信号通知1133a回绕指示符。例如,第一次POC编号从一个
[数学式37]
[0,…,MaxPOC-1]
集变换为下一个集,可以发信号通知1133回绕指示符。在一些配置中,当POC编号从一个
[数学式38]
[0,…,MaxPOC-1]
集变换为另一集时,可以发信号通知1133回绕指示符。替换地,第一次poc_cycle编号从下一个
[数学式39]
[0,…,MaxPOC-1]
图片集变换可以发信号通知1133回绕指示符。在一些配置中,当poc_cycle编号从下一个
[数学式40]
[0,…,MaxPOC-1]
图片集变换时可以发信号通知1133回绕指示符。在一些配置中,发信号通知的回绕指示符可以是表示为“poc_wraparound”的受保护消息。如本文所用的,“发信号通知”可以意指在编码器与解码器之间通信。在一些配置中,“发信号通知”还可以意指在不同的电子设备之间通信。
受保护消息可以是必须由电子设备204接收以便于维持诸如丢失图片的检测的期望功能性的消息。作为受保护消息传送消息的一个机制在于当与其它信息消息比较时向受保护消息指派更高的优先级。智能设备(例如,网络拥塞控制代理)然后可以检查这个优先级指派并且丢弃较低优先级消息以满足诸如可用网络带宽的约束。
在一些配置中,可以在位流中的图片参数集(PPS)、码片报头、自适应参数集(APS)或任何适合的位置中发信号通知回绕指示符(例如,poc_wraparound)消息。附加地或替换地,可以在带外(例如,与图片位流分开)发信号通知回绕指示符。每当回绕指示符(例如,poc_wraparound message)被解码器102接收到时,用于DPB中的每个图片(例如,每个图片集)的周期参数(例如,poc_cycle)可以递减(1,例如)。
以下列表(5)图示在图片参考集中发信号通知回绕指示符所需要的位流语法修改的示例。
列表(5)
Figure GDA0003508926070000531
等于1的‘wrap_indicator_flag’规定POC编号已从一个
[数学式41]
[0,…,MaxPOC-1]
图片集变换为下一个图片集。等于0的‘wrap_indicator_flag’另外规定。在一些配置中,等于1的‘wrap_indicator_flag’规定POC编号从一个
[数学式42]
[0,…,MaxPOC-1]
图片集变换为另一图片集。等于0的‘wrap_indicator_flag’另外规定。
在一些配置中,等于1的‘wrap_indicator_flag’规定poc_cycle已第一次对于下一个
[数学式43]
[0,…,MaxPOC-1]
图片集变换。等于0的‘wrap_indicator_flag’另外规定。
在一些配置中,等于1的‘wrap_indicator_flag’规定poc_cycle已从一个
[数学式44]
[0,…,MaxPOC-1]
图片集变换为另一图片集。等于0的‘wrap_indicator_flag’另外规定。
在一些配置中,‘wrap_indicator_flag’可以使用一个以上的位来识别附加的信息,例如,变换的方向。在另一配置中,‘wrap_indicator_flag’可以作为为使用熵编译所编译的可变长度的无符号整数被发信号通知。在另一配置中,‘wrap_indicator_flag’是作为使用熵编译所编译的可变长度的有符号整数。
seq_parameter_set_id识别由图片参数集所参考的序列参数集。seq_parameter_set_id的值应该在0至31范围内(首末项包括在内)。
pic_parameter_set_id识别在码片报头中所参考的图片参数集。pic_parameter_set_id的值应该在0至255范围内(首末项包括在内)。entropy_coding_mode_flag选择待应用于语法元素的熵解码方法。
num_temporal_layer_switching_point_flags规定有多少临时切换点标志存在。如果temporal_id_nesting_flag等于1,则num_temporal_layer_switching_point_flags应该等于0。
temporal_layer_switching_point_flag[i]规定当前访问点是否是紧跟这个访问单元之后允许更高临时id层的解码的临时切换点。如果temporal_id_nesting_flag等于1,则temporal_layer_switching_point_flag[i]应该被推理为等于1。如果temporal_id_nesting_flag等于0并且num_temporal_layer_switching_point_flags小于i,则temporal_layer_switching_point_flag[i]应该被推理为等于0。应该注意的是,当开始对更高临时层i进行解码时,能够紧跟IDR或具有小于i的temporal_id值j和等于1的temporal_switching_flag[j]的图片之后立即保证需要的参考图片的可用性。
num_ref_idx_l0_default_active_minus1规定如何针对具有等于0的num_ref_idx_active_override_flag的P码片和B码片推理num_ref_idx_l0_active_minus1。num_ref_idx_l0_default_active_minus1的值在0至31范围内(首末项包括在内)。
num_ref_idx_l1_default_active_minus1规定如何针对具有等于0的num_ref_idx_active_override_flag的B码片推理num_ref_idx_l1_active_minus1。num_ref_idx_l1_default_active_minus1的值应该在0至31范围内(首末项包括在内)。
pic_init_qp_minus26为每个码片规定SliceQPY的初始值减26。初始值在slice_qp_delta的非零值被解码时在码片层被修改,并且在cu_qp_delta的非零值在编译单元层被解码时被进一步修改。pic_init_qp_minus26的值应该在-(26+QpBdOffsetY)至+25范围内(首末项包括在内)。
等于0的constrained_intra_pred_flag规定帧内预测对于使用帧内宏块预测模式所编译的宏块的预测允许使用帧间宏块预测模式所编译的邻近宏块的残差数据和解码样本的使用。等于1的constrained_intra_pred_flag规定受约束的帧内预测,在这种情况下使用帧内宏块预测模式所编译的宏块的预测仅使用来自I宏块类型的参考数据和解码样本。
slice_granularity指示图片内的码片粒度。slice_granularity的值不应该大于Min(Log2MaxCUSize-4,log2_diff_max_min_coding_block_size)。变量SliceGranularity被设定为(slice_granularity<<1)的值。
shared_pps_info_enabled_flag规定图片参数集RBSP中的共享信息应该被用于所引用的码片。如果shared_pps_info_enabled_flag等于1,则应该对于所引用的码片应用图片参数集RBSP中的alf_param()。另外,应该应用(一个或多个)码片报头中的alf_param()。
max_cu_qp_delta_depth规定用于为编译单元规定QPY的最大容许深度。max_cu_qp_delta_depth的值应该在0至15范围内(首末项包括在内)。
变量log2MinCUDQPSize规定能够进一步修改QPY的值的最小编译单元尺寸如下:log2MinCUDQPSize=Log2MaxCUSize-max_cu_qp_delta_depth。alf_param()是确定自适应环路滤波器参数语法的函数。rbsp_trailing_bits()是对应于后面是零位直到实现字节对齐为止的停止位(等于1)的函数。
以下列表(6)图示在码片报头中发信号通知回绕指示符所需要的位流语法修改的示例。
列表(6)
Figure GDA0003508926070000571
等于1的lightweight_slice_flag规定不存在的码片报头语法元素的值应该被推理为等于前面码片中的码片报头语法元素的值。等于0的lightweight_slice_flag规定码片报头语法元素值的值在当前码片报头中传送。slice_type规定码片P、B或I的编译类型。
idr_pic_id识别瞬时解码刷新(IDR)图片。IDR图片的所有码片中的idr_pic_id的值应该保持不变。当以解码顺序的两个连续访问单元都是IDR访问单元时,第一个这样的IDR访问单元的码片中的idr_pic_id的值应该不同于第二个这样的IDR访问单元中的idr_pic_id。idr_pic_id的值应该在0至65535范围内(首末项包括在内)。
pic_order_cnt规定编译图片的图片顺序计数并且在缓冲器描述应用过程和参考图片列表创建过程中用作标识符。pic_order_cnt语法元素应该由log2_max_pic_order_cnt_minus4+4个位表示。pic_order_cnt的值应该在0至MaxPOC-1范围内(首末项包括在内)。
等于1的num_ref_idx_active_override_flag规定语法元素num_ref_idx_l0_active_minus1存在用于P码片和B码片并且num_ref_idx_l1_active_minus1存在用于B码片。等于0的ef_idx_active_override_flag规定语法元素num_ref_idx_l0_active_minus1和num_ref_idx_l1_active_minus1不存在。
当当前码片是P码片或B码片并且field_pic_flag等于0以及图片参数集中的num_ref_idx_l0_default_active_minus1的值超过15时,num_ref_idx_active_override_flag应该等于1。当当前码片是B码片并且field_pic_flag等于0以及参考参数集中的num_ref_idx_l1_default_active_minus1的值超过15时,num_ref_idx_active_override_flag应该等于1。num_ref_idx_l0_active_minus1规定应该用来对码片进行解码的参考图片列表0的最大参考索引。
当当前码片是P码片或B码片并且num_ref_idx_l0_active_minus1不存在时,num_ref_idx_l0_active_minus1应该被推理为等于num_ref_idx_l0_default_active_minus1。num_ref_idx_l0_active_minus1的范围被规定如下。如果field_pic_flag等于0,则num_ref_idx_l0_active_minus1应该在0至15范围内(首末项包括在内)。当MbaffFrameFlag等于1时,num_ref_idx_l0_active_minus1是用于帧宏块的解码的最大索引值并且2*num_ref_idx_l0_active_minus1+1是用于字段宏块的最大索引值。否则,(当field_pic_flag等于1时),num_ref_idx_l0_active_minus1应该在0至31范围内(首末项包括在内)。
num_ref_idx_l1_active_minus1规定应该用来对码片进行解码的参考图片列表1的最大参考索引。当当前码片是B码片并且num_ref_idx_l1_active_minus1不存在时,num_ref_idx_l1_active_minus1应该被推理为等于num_ref_idx_l1_default_active_minus1。num_ref_idx_l1_active_minus1的范围像在分别用于num_ref_idx_l0_active_minus1的语义中所规定的那样被约束,其中l0和列表0分别用l1和列表1替换。
no_output_of_prior_pics_flag规定解码图片缓冲器中的先前解码的图片如何在IDR图片的解码之后被处理。当IDR图片是位流中的第一个IDR图片时,no_output_of_prior_pics_flag的值对解码过程没有影响。当IDR图片不是位流中的第一个IDR图片并且从活动序列参数集得到的PicWidthInMbs、FrameHeightInMbs或max_dec_frame_buffering的值不同于从对于前面图片来说活动的序列参数集得到的PicWidthInMbs、FrameHeightInMbs或max_dec_frame_buffering时,等于1的no_output_of_prior_pics_flag可以由解码器推理,而不管no_output_of_prior_pics_flag的实际值如何。
cabac_init_idc规定用于为上下文变量确定在初始化过程中所使用的初始化表的索引。cabac_init_idc的值应该在0至2范围内(首末项包括在内)。
first_slice_in_pic_flag指示码片是否是图片的第一个码片。如果first_slice_in_pic_flag等于1时,则变量SliceAddress和LCUAddress都被设定为0并且解码从图片中的第一个最大编译单元(LCU)开始。
slice_address以码片开始的码片粒度分辨率规定地址并且应该由位流中的(Ceil(Log2(NumLCUsInPicture))+SliceGranularity)个位来表示,其中NumLCUsInPicture是图片中的LCU的数目。变量LCUAddress被设定为(slice_address>>SliceGranularity)并且以光栅扫描顺序表示码片地址的LCU部分。变量GranularityAddress被设定为(slice_address-(LCUAddress<<SliceGranularity))并且表示以z扫描顺序所表达的码片地址的子LCU部分。变量SliceAddress然后被设定为(LCUAddress<<(log2_diff_max_min_coding_block_size<<1))+(GranularityAddress<<((log2_diff_max_min_coding_block_size<<1)-SliceGranularity),并且码片解码从在码片开始坐标处可能的最大编译单元开始。
slice_qp_delta规定待用于码片中的所有宏块的亮度量化参数QPY的初始值直到由cu_qp_delta的值在编译单元层中修改为止。用于码片的初始QPY量化参数被计算为:SliceQPY=26+pic_init_qp_minus26+slice_qp_delta。slice_qp_delta的值应该被限制为使得SliceQPY在-QpBdOffsetY至+51范围内(首末项包括在内)。“QpBdOffsetY=6*bit_depth_luma_minus8”规定亮度量化参数范围偏移的值。“bit_depth_luma_minus8+8”规定亮度阵列的样本的位深度。pic_init_qp_minus26规定每个码片的SliceQPY的初始值减26。
等于1的collocated_from_l0_flag规定包含位于分区的图片应该得自列表0,否则图片应该得自列表1。ref_pic_list_modification()是识别参考图片列表修改的语法的函数。ref_pic_list_combination()是识别参考图片列表组合的语法的函数。alf_cu_control_param()是识别自适应环路滤波器编译单元控制参数的语法的函数。sao_param()是识别样本自适应偏移参数的语法的函数。
等于1的disable_deblocking_filter_idc对于特定块边缘禁用去块滤波器的应用。等于0的disable_deblocking_filter_idc对于特定块边缘启用去块滤波器的应用。去块过程使用语法元素slice_alpha_c0_offset_div2和slice_beta_offset_div2的值来控制。
以下列表(7)图示在自适应参数集(APS)中发信号通知回绕指示符所需要的位流语法修改的示例。
列表(7)
Figure GDA0003508926070000611
aps_id识别在码片报头中所参考的自适应参数集。等于1的aps_sample_adaptive_offset_flag规定SAO对于参考当前APS的码片为开。当等于0时,它规定SAO对于参考当前APS的码片为关。如果不存在活动的APS,则aps_sample_adaptive_offset_flag值被推理为0。
等于1的aps_adaptive_loop_filter_flag规定ALF对于参考当前APS的码片为开。当等于0时,它规定ALF对于参考当前APS的码片为关。如果不存在活动APS,则aps_adaptive_loop_filter_flag值被推理为0。
等于1的aps_cabac_use_flag规定CABAC解码过程应该在存在时被用于sao_param()并且在存在时用于alf_param()。当等于0时,它规定CAVLC解码过程在存在时应该被用于sao_param()并且在存在时用于alf_param()。
aps_cabac_init_idc规定用于为SAO和ALF的上下文变量确定在初始化过程中所使用的初始化表的索引。cabac_init_idc的值应该在0至2范围内(首末项包括在内)。aps_cabac_init_qp_minus26规定量化参数减26,其中量化参数被用于SAO和ALF的上下文变量的初始化过程中。alf_data_byte_count规定字节的数目。sao_data_byte_point规定字节的数目。byte_align()插入0至7个位指定达到对齐为止。
在一些配置中,图片参数集可以包括仅对应于长期图片的多个缓冲器描述。以下列表(8)图示用于发信号通知仅与长期图片相对应的多个缓冲器描述的位流语法修改的示例。
列表(8)
Figure GDA0003508926070000631
等于1的‘ongterm_pictures_only_flag_pps[i]’指示第i个缓冲器描述包含仅长期图片参考。等于0的‘longterm_pictures_only_flag_pps[i]’识别第i个缓冲器描述包含deltaPOC和长期图片参考两者。
在一些配置中,缓冲器描述可以指的是不可用于参考的图片。不可用于参考的图片指的是在当前图片之前尚未被解码的图片。附加地,不可用于参考的图片指的是在当前图片之前尚未被解码但是被识别为不再可用于参考的图片。用于识别图片不再可用于参考的过程的一个示例是通过使用IDR帧。IDR帧表示IDR帧和随后接收到的所有图片不参考在接收IDR帧之前所接收到的图片。因此,在IDR帧之前所接收到的所有帧不再可用于IDR帧和随后接收到的帧的参考。
在缓冲器描述指的是不可用于参考的图片的配置中,解码器不允许使用在预测用于对当前帧进行解码的信息时不可用于参考的图片。在一个配置中,这通过在创建一组参考帧的过程中不包括该帧而完成。因此,如果缓冲器描述指的是不可用于参考的图片,如果缓冲器描述不参考不可用于参考的图片以及如果由两个缓冲器描述所参考的其它图片是相同的,则创建一组参考帧的过程的输出可以是相同的。在另一配置中,在创建一组参考帧的过程中包括不可用于参考的图片。因此,如果缓冲器描述参考不可用于参考的图片并且如果缓冲器描述不参考不可用于参考的图片,则创建一组参考帧的过程的输出是不相同的。在这个配置中,解码器不允许在预测用于对当前帧进行解码的信息时选择不可用于参考的图片。
在一些配置中,PPS中所定义的第i个参考图片列表:POCBD_pps[i]、temporalIDBD_pps[i]、POC_CYCLE_BD_pps[i]以及列表POCBD、temporalIDBD和POC_CYCLE_BD相对于当前图片(正被解码的)以显示顺序基于参考图片是过去的图片还是将来的图片而被分割。应该注意的是,i可以取从0至number_of_bds-1的值。
在一些配置中,临时标识符可以用发信号通知或指示所对应的参考图片是否被当前图片(正被解码的)使用的标志替换。结果,PPS temporalIDBD_pps[i]中的temporalID列表temporalIDBBD和第i个temporalID列表分别由包含上述标志的列表usedByCurPicBD和usedByCurPicBD_pps[i]替换。在一些配置中,标志的值可以用来将PPS中所定义的第i个参考图片列表:POCBD_pps[i]、usedByCurPicBD_pps[i]、POC_CYCLE_BD_pps[i]以及列表thelists POCBD、usedByCurPicBD、POC_CYCLE_BD分割成一个或多个列表。在一个配置中,对于标志具有零值的条目被指派给一个列表而具有非零值(例如,1)的那些条目被指派给另一列表。应该注意的是,i可以取从0至number_of_bds-1的值。
列表(9)图示针对来自AHG21的PPS的语法修改的另一示例。特别地,列表(9)图示像AHG21工作草案中所概述的码片报头中所使用的缓冲器描述语法的另一示例。然而,在列表(9)中用粗体文本表示根据本文所公开的系统和方法对AHG21工作草案中所给出的语法的修改。
列表(9)
Figure GDA0003508926070000651
Figure GDA0003508926070000661
列表(9)包含与列表(4)的元素相似的许多元素。列表(9)还包括对允许参考图片的选择性替换实现的码片报头的语法修改。
bd_poc_cycle_replace_count规定待在列表POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]以及temporalIDBD_pps[bd__idx]中选择性地替换的条目的数目。在一些配置中,bd_poc_cycle_replace_count可以大于或等于0。bd_pps_replace_idx[j]识别待在以下列表中替换的条目的索引:POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]以及temporalIDBD_pps[bd__idx]。
对于当前图片应该替换所引用的缓冲器描述的POC_CYCLE_BD_pps[bd_idx][bd_pps_replace_idx[j]]。在一些配置中,将来的帧还可以覆写poc_cycle information。poc_cycle_pps_replace[j]规定一种值,该值待用来仅针对当前图片替换POC_CYCLE_BD_pps[bd_idx][bd_pps_replace_idx[j]]内的值。
poc_pps_replace[j]规定一种值,该值待用来仅针对当前图片替换POCBD_pps[bd_idx][bd_pps_replace_idx[j]]内的值。temporal_id_pps_replace[j]规定一种值,该值待用来仅针对当前图片替换TemporalIDBD_pps[bd_idx][bd_pps_replace_idx[j]]内的值。
在一些配置中,如果PPS中所定义的第i个参考图片列表:POCBD_pps[i]、usedByCurPicBD_pps[i]、POC_CYCLE_BD_pps[i]被分割,则首先对使用已分割列表所生成的导出列表执行选择性替换、覆写、删除以及附加操作。在操作中的全部或子集完成之后,导出列表中的条目可以被分割回(例如,恢复)为从其得到导出列表的原始列表。应该注意的是,i可以取从0至number_of_bds-1的值。
在一些配置中,对于PPS中的属于缓冲器描述的每个列表集(例如,(负deltaPOC列表、负deltaPOC usedByCurPicBD列表)集、(正deltaPOC list,正deltaPOCusedByCurPicBD列表)集以及(poc列表,poc_cycle列表,poc和poc_cycle usedByCurPicBD列表)集)分别地发信号通知选择性替换、覆写、删除以及附加操作。在另一配置中,缩放参数列表可以存在于每个列表集中。
在一些配置中,如果位流包含具有第一分辨率的第一图片和具有第二分辨率的第二图片,如果第一分辨率和第二分辨率是不相等的,以及如果第二图片不是IDR图片或者在第一图片之后且在第二图片之前未接收到序列参数集(SPS),则解码图片缓冲器可以包括具有不同分辨率的图片。编码器然后可以向解码器发信号通知解码图片缓冲器(DPB)中的参考图片被修改,使得参考图片包括以下选项中的一个:
(a)第一分辨率,
(b)第二分辨率,或
(c)第一分辨率和第二分辨率两者。
一些示例使用情况被给出如下。如果参考图片将在较低分辨率下仅被用于运动预测则选项(a)是有用的。选项(a)的示例作为图16中所图示的第一示例1653a被给出。
当位流包含继第二图片之后的第三图片时选项(b)是有用的,其中第三图片在第一分辨率下并且其中存储在DPB中的长期图片可以被用于运动预测。选项(b)的示例作为图16中所图示的第二示例1653b被给出。
当在针对较低分辨率图片的运动预测中使用参考图片的较低分辨率版本时选项(c)是有用的。附加地,当参考图片的更高分辨率版本在对继第二图片之后的第三图片进行解码时被用于运动预测时,其中第三图片在第一分辨率下。选项(c)的示例被给出作为图16中所图示的第三示例1653c。
可以使用如以下列表(10)中所示出的语法修改发信号通知分辨率切换。在下面用粗体文本表示根据本文所描述的系统和方法的修改。
列表(10)
Figure GDA0003508926070000691
如果‘adaptive_res_coding_flag’等于0,则序列不经历分辨率切换。如果‘adaptive_res_coding_flag’等于1,则序列经历分辨率切换。
refPicS0Height[i]和refPicS0Width[i]表示与负deltaPOC相对应的第i个参考图片的原始高度和宽度。refPicS1Height[i]和refPicS1Width[i]表示与正deltaPOC相对应的第i个参考图片的原始高度和宽度。curPicHeight和curPicWidth表示被解码的当前图片的高度和宽度。
‘num_negative_pics’规定以下delta_poc_s0_minus1[i]和used_by_curr_pic_s0_flag[i]语法元素的数目。num_positive_pics规定以下delta_poc_s1_minus1[i]和used_by_curr_pic_s1_flag1[i]语法元素的数目。
‘delta_poc_s0_minus1[i]’加1规定两个图片顺序计数值之间的绝对差。delta_poc_s0_minus1[i]的值应该在0至215-1范围内(首末项包括在内)。delta_poc_s0_minus1[i]对应于负deltaPOC值。
等于0的‘used_by_curr_pic_s0_flag[i]’规定具有小于当前图片的图片顺序计数的图片顺序计数的第i个参考图片不用于供由当前图片参考。‘delta_poc_s1_minus1[i]’加1规定两个图片顺序计数值之间的绝对差。delta_poc_s1_minus1[i]的值应该在0至215-1范围内(首末项包括在内)。delta_poc_s1_minus1[i]对应于正deltaPOC值。
等于0的‘used_by_curr_pic_s1_flag[i]’规定具有大于当前图片的图片顺序计数的图片顺序计数的第i个参考图片不用于供由当前图片参考。
等于0的‘used_by_curr_pic_longterm_flag[i]’规定第i个长期参考图片不用于供由当前图片参考。
等于0的‘ref_pic_s0_resolution_idx[i]’规定参考图片被缩放成使得其分辨率和正被解码的当前图片的分辨率匹配。等于1的‘ref_pic_s0_resolution_idx[i]’规定参考图片被保持在参考图片的原始分辨率下。等于2的‘ref_pic_s0_resolution_idx[i]’规定参考图片分辨率被维持既在其原始分辨率下且在当前图片的分辨率下。‘ref_pic_s0_resolution_idx[i]’在不存在时被推理为0。
等于0的‘ref_pic_s1_resolution_idx[i]’规定参考图片被缩放成使得其分辨率和正被解码的当前图片的分辨率匹配。等于1的‘ref_pic_s1_resolution_idx[i]’规定参考图片被保持在参考图片的原始分辨率下。等于2的‘ref_pic_s1_resolution_idx[i]’规定参考图片分辨率被维持既在其原始分辨率下且在当前图片的分辨率下。‘ref_pic_s1_resolution_idx[i]’在不存在时被推理为0。
在一个配置中,如果位流包含具有第一分辨率的第一图片以及具有第二分辨率的第二图片和第四图片,在第一分辨率和第二分辨率是不相等的情况下并且在第二图片不是IDR图片或者在第一图片之后且在第二图片之前未接收到序列参数集(SPS)的情况下,则第二图片可以仅参考第一分辨率的一个参考图片。在第二配置中,如果位流包含具有第一分辨率的第一图片和具有第二分辨率的第二图片,在第一分辨率和第二分辨率是不相等的情况下并且在第二图片不是IDR图片或者在第一图片之后且在第二图片之前未接收到序列参数集(SPS)的情况下,则第四图片可以仅引用未被第二分辨率的其它图片引用的第一分辨率的一个参考图片。
例如,如果第四图片前面是相同分辨率的其它图片,则第四图片可以引用除由具有相同分辨率的在第四图片前面的图片所使用的参考图片之外的为第一分辨率的一个参考图片。换句话说,当对第二分辨率的图片进行解码时,仅具有第一分辨率的一个参考图片可以在对图片进行解码时被用于参考。在具有第一分辨率的图片在对具有第二分辨率的图片进行解码时被用于参考后,被用于参考的具有第一分辨率的图片被认为具有用于后续图片的解码的第二分辨率的分辨率。
图12是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法1200的另一更特定配置的流程图。这个方法1200可以是用于在POC被再使用时跟踪哪一个图片正被引用的另一方式。电子设备204(例如,解码器202)可以接收1202位流。例如,解码器202可以接收1202包括编码参考图片的位流214。在一些配置中,位流214还可以包括开销信息(例如,PPS、缓冲器描述信息、参数、参考图片指定或标识符等)。
电子设备204可以对位流的一部分进行解码1204以产生解码参考图片。例如,解码器202可以对位流214的一部分进行解码1204以产生被存储在帧存储器264中的解码参考图片。应该注意的是,位流214的一个或多个部分可以被解码404以产生一个或多个解码参考图片。
电子设备204可以使周期参数与包括解码参考图片的解码图片集相关联1206。例如,电子设备204可以使周期参数“poc_cycle”与解码图片集或包括解码参考图片的解码图片集中的每个图片相关联1206。上面更详细地描述了周期参数“poc_cycle”。
电子设备204可以确定1208是否已在图片集之间发生变换。例如,可以通过检查正被解码的当前图片的POC(例如,
[数学式45]
CurPOC
并且将它与被解码的最后一个图片的POC(例如,
[数学式46]
LastPOC
相比较来确定1208变换。例如,如果正被解码的当前图片的POC(例如,
[数学式47]
CurPOC
)小于最后一个解码图片的POC(例如,
[数学式48]
LastPOC
)并且
[数学式49]
LastPOC-CurPOC
大于阈值
[数学式50]
TH_FWD
,则可以确定1208从较早的图片集到更迟的图片集的变换。然而,如果正被解码的当前图片的POC(例如,
[数学式51]
CurPOC
)大于被解码的最后一个图片的POC(例如,
[数学式52]
LastPOC
)并且
[数学式53]
CurPOC-LastPOC
大于阈值
[数学式54]
TH_BCKWD
,则可以确定1208从更迟的图片集到较早的图片集的变换。对于所有其它情况,可以确定1208没有变换已发生。在一些配置中,阈值可以取值
[数学式55]
TH_FWD=TH_BCKWD=MaxPOC/2。
如果电子设备204确定1208已在两个图片集之间发生了变换,则电子设备204可以修改1210周期参数。例如,当变换是从较早的图片集的时,电子设备204可以针对DPB中的每个图片或每组图片来递减周期参数。在另一示例中,当变换是从更迟的图片集时电子设备204可以针对DPB中的每个图片或每组图片来递减周期参数。因此,可以相对于正被解码的图片执行所有参考图片周期参数的更新。可以对于正被解码的每个图片执行这个更新过程(例如,确定1208是否已在图片集之间发生变换以及可能修改1210(一个或多个)周期参数)一次。
周期参数“poc_cycle”的一个替代定义可以是用于(当前)正被解码的图片的poc_cycle是0。因此,包括当前正被解码的图片的图片的集合可以是0。
任何其它图片(诸如参考图片)的poc_cycle可以被计算为参考图片的
[数学式56]
MaxPOCSetIndex
减正被解码的图片的
[数学式57]
MaxPOCSetIndex
。例如,如果正被解码的图片的
[数学式58]
MaxPOCSetIndex
是‘n’并且参考图片具有作为‘n-1’的
[数学式59]
MaxPOCSetIndex
,则参考图片的poc_cycle可以是
[数学式60]
(n-1)-n=-1。
应该注意的是,用于参考图片的poc_cycle可以取决于参考图片与正被解码的图片之间的
[数学式61]
MaxPOCSetIndex
距离。这能够通过在编码器108和解码器102两者处跟踪一个图片集
[数学式62]
[0,…,MaxPOC-1]
与另一个图片集
[数学式63]
[0,…,MaxPOC-1]
之间的变换(例如,确定1208是否已发生变换)被隐式地确定。
电子设备204可以基于解码参考图片对图片进行解码1212。例如,可以基于解码参考图片对位流214的一部分(除解码1204以产生解码参考图片的该部分以外)进行解码1212。例如,可以向运动补偿模块260提供解码参考图片(其已在DPB中被跟踪到)以便基于帧间预测机制来生成帧间预测信号268。帧间预测信号268然后可以用来对图片进行解码1212。在一些配置或实例中,一个或多个解码参考图片可以用来对图片进行解码1212。
图13是图示用于确定是否已在图片集之间发生变换的方法1300的一个配置的流程图。例如,图13提供了确定1208是否已在如图12中所图示的图片集之间发生变换的一个示例。电子设备204可以确定1302正被解码的当前图片的POC(例如,表示为“
[数学式64]
CurPOC
”)是否小于最后一个解码图片的POC(例如,表示为“
[数学式65]
LastPOC
”)。例如,电子设备204可以将被解码的当前图片的POC(例如,
[数学式66]
CurPOC
)与被最后解码的图片的POC(例如,
[数学式67]
LastPOC
)相比较来进行这个确定1302。
如果
[数学式68]
CurPOC<LastPOC
,则电子设备204可以确定1308
[数学式69]
LastPOC-CurPOC
是否大于阈值
[数学式70]
TH_FWD
。如果
[数学式71]
LastPOC-CurPOC
大于阈值
[数学式72]
TH_FWD
,则电子设备204可以确定1308已发生从较早的图片集到更迟的图片集的变换。然而,如果
[数学式73]
LastPOC-CurPOC
不大于
[数学式74]
TH_FWD
,则电子设备204可以确定1308没有变换已发生。
如果
[数学式75]
CurPOC
不小于
[数学式76]
LastPOC
,则电子设备204可以确定1304
[数学式77]
CurPOC
是否大于
[数学式78]
LastPOC
。如果电子设备204确定1304
[数学式79]
CurPOC
大于
[数学式80]
LastPOC
,则电子设备204可以确定1306
[数学式81]
CurPOC-LastPOC
是否大于阈值
[数学式82]
TH_BCKWD
。如果电子设备204确定1306
[数学式83]
CurPOC-LastPOC
大于阈值
[数学式84]
TH_BCKWD
,则电子设备204可以确定1306已发生从更迟的图片集到较早的图片集的变换。如果电子设备204确定1306
[数学式85]
CurPOC-LastPOC
不大于阈值
[数学式86]
TH_BCKWD
,则电子设备204可以确定1306没有变换已发生。
如果电子设备204确定1304
[数学式87]
CurPOC
不大于
[数学式88]
LastPOC
,则电子设备可以确定1304没有变换已发生。在一些配置中,阈值可以取值
[数学式89]
TH_FWD=TH_BCKWD=MaxPOC/2。
图14是图示用于基于指定图片在降低开销引用情况下跟踪参考图片的方法1400的另一更特定配置的流程图。这个方法1400可以是用于在POC被再使用时跟踪哪一个图片正被引用的一个方式。电子设备204(例如,解码器202)可以接收1402位流214。例如,解码器202可以接收1402包括编码参考图片(和例如,其它编码图片)的位流214。在一些配置中,位流214可以包括开销信息(例如,PPS、缓冲器描述信息、参数、参考图片指定或标识符等)。
电子设备204可以对位流214的一部分进行解码1404以产生解码参考图片。例如,解码器202可以对位流214的一部分进行解码1404以产生被存储在帧存储器264中的解码参考图片。应该注意的是,位流214的一个或多个部分可以被解码1404以产生一个或多个解码参考图片。
电子设备204可以使周期参数与包括解码参考图片的解码图片集相关联1406。例如,电子设备204可以使周期参数“poc_cycle”与包括解码参考图片的解码图片集相关联1406。
电子设备204可以确定1408是否已在图片集之间发生变换。例如,每当解码器102对一组图片中的预定数目的图片进行解码时,解码器102或电子设备B 104b可以确定1408已在两个图片集之间发生了变换。在另一示例中,每当解码器102检测到POC的周期(例如,从最大值向最小值重新开始),解码器102或电子设备B 104b可以确定1408已在两个图片集之间发生了变换。
如果电子设备204确定1408已在图片集之间发生变换,则电子设备204可以修改1410(例如,递减)周期参数。例如,电子设备204针对DPB中的每个图片或每组图片来递减周期参数。在另一示例中,电子设备204可以递增周期参数。
电子设备204可以基于解码参考图片对图片进行解码1412。例如,可以基于参考图片对位流214的一部分(除解码1404以产生解码参考图片的该部分以外)进行解码1412。例如,可以向运动补偿模块260提供解码参考图片(其已在DPB中被跟踪到)以便于基于帧间预测机制来生成帧间预测信号268。帧间预测信号268然后可以用来对图片进行解码1412。在一些配置或实例中,一个或多个解码参考图片可以用来对图片进行解码1412。
图15图示可以在电子设备1504中利用的各种组件。电子设备1504可以被实现为先前所描述的电子设备(例如,电子设备104、204)中的一个或多个。
电子设备1504包括控制电子设备1504的操作的处理器1517。处理器1517还可以被称为CPU。可以包括只读存储器(ROM)、随机存取存储器(RAM)或可以存储信息的任何类型的设备的存储器1511向处理器1517提供指令1513a(例如,可被执行指令)和数据1515a。存储器1511的一部分还可以包括非易失性随机存取存储器(NVRAM)。存储器1511可以与处理器1517电子通信。
指令1513b和数据1515b还可以驻留在处理器1517中。加载到处理器1517中的指令1513b和/或数据1515b还可以包括来自存储器1511被加载用于由处理器1517执行或处理的指令1513a和/或数据1515a。指令1513b可以由处理器1517执行以实现本文所公开的系统和方法。例如,电子设备1504可以执行上面和在下面所描述的方法300、400、800、900、1000、1200、1300、1400、1700、1800中的一个或多个。
电子设备1504可以包括用于与其它电子设备进行通信的一个或多个通信接口1519。通信接口1519可以基于有线通信技术、无线通信技术或两者。通信接口1519的示例包括串行端口、并行端口、通用串行总线(USB)、以太网适配器、IEEE1394总线接口、小型计算机系统接口(SCSI)总线接口、红外(IR)通信端口、蓝牙无线通信适配器、根据第三代合作伙伴计划(3GPP)规范的无线收发器等。
电子设备1504可以包括一个或多个输出设备和一个或多个输入设备1521。输出设备1523的示例包括扬声器、打印机等。可以被包括在电子设备1504中的一个类型的输出设备是显示设备1525。与本文所公开的配置一起使用的显示设备1525可以利用任何适合的图像投影技术,诸如阴极射线管(CRT)、液晶显示器(LCD)、发光二极管(LED)、气体等离子体、电致发光等。显示控制器1527可以被提供用于将存储在存储器1511中的数据转换成(酌情)示出在显示器1525上的文本、图形和/或运动图像。输入设备1521的示例包括键盘、鼠标、麦克风、遥控设备、按钮、游戏杆、轨迹球、触摸板、触摸屏、光笔等。
电子设备1504的各种组件由总线系统1529耦合在一起,所述总线系统1529可以包括除数据总线之外的电力总线、控制信号总线以及状态信号总线。然而,为了清楚起见,各种总线在图15中被图示为总线系统1529。图15中所图示的电子设备1504是功能框图而不是特定组件的列表。
图16是图示根据本文所公开的系统和方法的使用情况的示例的图。特别地,像上面所描述的那样图示了三个示例1653a-c。如果位流包含具有第一分辨率的第一图片和具有第二分辨率的第二图片,如果第一分辨率和第二分辨率是不相等的,以及如果第二图片不是IDR图片或者在第一图片之后且在第二图片之前未接收到序列参数集(SPS),则可能发生这三个示例。
第一示例1653a图示存储在解码图片缓冲器中的第一分辨率的图片1655a和第二分辨率的图片1657a。在第一示例1653a中,编码器可以向解码器发信号通知解码图片缓冲器(DPB)中的参考图片被修改使得参考图片是在第一分辨率下。如果参考图片将在较低分辨率下仅被用于运动预测则这可能是有用的。
第二示例1653b图示存储在解码图片缓冲器中的第一分辨率的图片1655b和第二分辨率的图片1657b。在第二示例1653b中,编码器可以向解码器发信号通知解码图片缓冲器(DPB)中的参考图片被修改使得参考图片是在第二分辨率下。这在位流包含继第二图片之后的第三图片时可能是有用的,其中第三图片在第一分辨率下并且其中存储在DPB中的长期图片可以被用于运动预测。
第三示例1653c图示存储在解码图片缓冲器中的第一分辨率的图片1655c和第二分辨率的图片1657c。在第三示例1653c中,编码器可以向解码器发信号通知解码图片缓冲器(DPB)中的参考图片被修改使得参考图片是在第一和第二分辨率下。这在参考图片的更高分辨率版本在对继第二图片之后的第三图片进行解码时被用于运动预测时可能是有用的,其中第三图片在第一分辨率下。
图17是图示用于发送长期参考图片指示符的方法1700的一个配置的流程图。电子设备104可以生成1702长期参考图片指示符。例如,长期参考图片指示符可以由电子设备104上的编码器108生成1702。电子设备104可以在SPS、PPS、APS以及VPS中的一个或多个中生成1702长期参考图片指示符。长期参考图片指示符可以指示一个或多个长期参考图片。例如,长期参考图片指示符可以是长期参考图片存在标志。长期参考图片可以被用于编译视频序列中的任何编译图片的帧间预测。
电子设备104可以发送1704长期参考图片指示符。在一些配置中,长期参考图片指示符可以由long_term_ref_pics_present_flag表示。可以在SPS、PPS、APS以及VPS中的一个或多个中发送1704长期参考图片指示符。附加地,可以在位流114中发送1704长期参考图片指示符。
在一些配置中,电子设备104可以生成1706与与长期参考图片相对应的绝对图片顺序计数(POC),绝对POC具有最低有效位(LSB)。应该注意的是在一些配置中,术语图片顺序计数(POC)可以用来指示绝对POC。另外,术语绝对POC可以对应于相对于POC空间中的特定固定点的相对POC。例如,所有绝对POC值可以由某个操作变换以生成新的图片顺序计数(POC)值。在一些情况下,这个变换操作可以是常数值的减法。换句话说,在本文所描述的一些方式中,在变换之后由此生成的新的POC值可以仍然被认为是绝对POC值。在又一个配置中,本文所描述的系统和方法的绝对POC可以是相对于变化动态的(例如,不固定的)POC值的相对POC值。电子设备104可以发送与长期参考图片相对应的绝对POC的LSB值。例如,电子设备104可以发送与可以被用于编译视频序列中的任何编译图片的帧间预测的长期参考图片中的每一个相对应的绝对POC的LSB值。可以在一个或多个参数集(例如,SPS、PPS、APS以及VPS)中发送1708用于一个或多个长期参考图片的绝对POC的LSB值。例如,在一些配置中可能不码片报头中发送或接收与长期参考图片相对应的绝对POC的LSB值。用来发送绝对POC的(一个或多个)参数集可以与用来发送长期参考图片指示符的(一个或多个)参数集相同或不同。参考图片的绝对信令的一个有益效果可以是它可以使用缓冲器描述来支持参考图片的鲁棒错误管理。绝对POC的LSB值可以被称为POC LSB值。
在一些配置中,电子设备104可以生成1710码片报头。码片报头可以包括长期索引参数。例如,长期索引参数可以是long_term_idx_sps[i]。长期索引参数可以对应于至少一个参数集中的绝对POC和被当前图片使用标志。
在一些配置中,视需要电子设备104可以生成和发送1712与由长期索引参数所指示的长期参考图片相对应的绝对POC的增量最高有效位(MSB)周期。在这种情况下,可以通过考虑当前图片的POC值来计算增量MSB周期值。当被生成和发送1712时,可以在码片报头中包括和发送绝对POC的增量MSB周期。当来自长期参考图片的一个或多个POC LSB值是相同的时可能需要生成和发送1712绝对POC的增量MSB周期。否则,可能不需要或不必生成和发送1712绝对POC的增量MSB周期。当来自长期参考图片的一个或多个POC LSB值是相同的时,delta_poc_msb_present_flag[i]可以被设定为1。在来自长期参考图片的POC LSB值是不相同的时,delta_poc_msb_present_flag[i]可以被设定为0。例如,在后者情况下可能不必发送绝对POC的增量MSB周期。
电子设备104可以发送1714包括长期索引参数的码片报头。在一些配置中,码片报头可以和与由长期索引参数所指示的长期参考图片相对应的POC的增量MSB周期一起发送和/或包括与由长期索引参数所指示的长期参考图片相对应的POC的增量MSB周期。
电子设备104可以生成1716与当前图片相对应的被当前图片使用标志。例如,被当前图片使用标志可以是当前图片用长期SPS标志,诸如used_by_current_pic_lt_sps_flag[i]。当前图片用长期SPS标志(例如,used_by_current_pic_lt_sps_flag[i])可以规定是否在对当前图片进行解码时利用以绝对图片顺序计数(POC)所指示的第i个长期参考图片。应该注意的是,虽然对SPS标志进行了描述,但是可以使用SPS、PPS、APS以及VPS中的一个或多个。在一些情况下,可以在SPS中针对每第i个长期参考图片发信号通知具有值为1的used_by_current_pic_lt_sps_flag[i]。在其它情况下,可以在SPS中针对每第i个长期参考图片发信号通知具有值为0的used_by_current_pic_lt_sps_flag[i]。因此,对于具有ABSPOCVALUE1的绝对POC值得每个长期参考图片可能存在可以被包括在SPS、PPS、APS和/或VPS中的{long_term_ref_pic_poc_sps[i]=ABSPOCVALUE1,used_by_current_pic_lt_sps_flag[i]=1}、{long_term_ref_pic_poc_sps[i]=ABSPOCVALUE1,used_by_current_pic_lt_sps_flag[i]=0}的两个元组。
电子设备104可以在至少一个参数集中发送1718被当前图片使用标志。例如,可以在SPS、PPS、APS和/或VPS中发送1718被当前图片使用标志。以这种方式,通过在SPS、PPS、APS和/或VPS中发送被当前图片使用标志,一个有益效果是可能不需要在码片报头中规定被当前图片使用标志。换句话说,在一些配置中不在码片报头中规定被当前图片使用标志。
列表(11)示出使用绝对POC在SPS中发信号通知长期参考图片的一个示例。可以在下面用粗体文本表示根据本文所描述的系统和方法的修改。
列表(11)
Figure GDA0003508926070000841
列表(11)中的参数的描述的示例被给出如下。
‘num_short_term_ref_pic_sets’规定在序列参数集中所规定的短期参考图片集的数目。num_short_term_ref_pic_sets的值范围从0至64(首末项包括在内)。解码器102必须为总数为num_short_term_ref_pic_sets+1个短期参考图片集分配空间,因为编译视频序列可以包括在当前图片的码片报头中显式地发信号通知的多达一个短期参考图片集。显式地发信号通知的短期参考图片集将在短期参考图片集的列表中总是具有等于num_short_term_ref_pic_sets的索引。
‘Short_term_ref_pic_set(i)’指的是第i个短期参考图片集信息。短期参考图片集可以存在于序列参数集(SPS)中或在码片报头中。如果短期参考图片集存在于码片报头中,则短期参考图片集语法结构的内容在图片的所有码片报头中将是相同的并且idx的值将等于来自活动的序列参数集(SPS)的num_ref_pic_sets。
‘num_long_term_ref_pics_sps’规则在序列参数集中所规定的长期参考图片的数目。num_long_term_ref_pics_sps的值范围从0至64(首末项包括在内)。
‘long_term_ref_pic_poc_lsb_sps[i]’规定在序列参数集中所规定的第i个长期参考图片的POC的最低有效位(LSB)。用来表示long_term_ref_pic_poc_sps[i]的位数等于log2_max_pic_order_cnt_lsb_minus4+4。
等于0的‘used_by_curr_pic_lt_sps_flag[i]’规定在序列参数集中所规定的第i个长期参数图片long_term_ref_pic_poc_lsb_sps[i]未被用于由当前图片参考。等于1的‘used_by_curr_pic_lt_sps_flag[i]’规定在序列参数集中所规定的第i个长期参数图片long_term_ref_pic_poc_lsb_sps[i]被用于由当前图片参考。
在一些配置中,除在SPS中之外或替换在SPS中与long_term_ref_pic_poc_lsb_sps[i]相关联的used_by_curr_pic_lt_sps_flag[i]可以被包括在图片参数集(PPS)、活动参数集(APS)和/或视频参数集(VPS)中。
以下列表(12)图示关于图(11)中所示出的修改对码片报头所进行的修改的示例。然而,应该注意的是,SPS中的信令‘used_by_curr_pic_lt_sps_flag[i]’导致它不必被规定在码片报头中。可以在下面用粗体文本表示根据本文所描述的系统和方法的修改。
列表(12)
Figure GDA0003508926070000871
列表(12)中的参数的描述的示例被给出如下。‘idr_pic_id’识别瞬时解码刷新(IDR)图片。IDR图片的所有码片中的idr_pic_id的值保持不变。当具有解码顺序的两个连续访问单元都是IDR访问单元时,第一个IDR访问单元的码片中的idr_pic_id的值应该不同于第二个IDR访问单元中的idr_pic_id。idr_pic_id的值范围从0至65535(首末项包括在内)。
‘no_output_of_prior_pics_flag’规定解码图片缓冲器中的先前解码的图片如何在IDR图片的解码之后被处理。当IDR图片是位流中的第一个IDR图片时,no_output_of_prior_pics_flag的值对解码过程没有影响。当IDR图片不是位率中的第一个IDR图片并且从活动SPS得到的pic_width_in_luma_samples、pic_height_in_luma_samples或max_dec_pic_buffering[max_temporal_layers_minus1]的值不同于从用于前面图片的活动SPS得到的pic_width_in_luma_samples、pic_height_in_luma_samples或max_dec_pic_buffering[max_temporal_layers_minus1]的值时,等于1的no_output_of_prior_pics_flag可以由解码器102推理,而不管no_output_of_prior_pics_flag的实际值如何。然而,虽然可以进行等于1的no_output_of_prior_pics_flag的推理,但是通常,它不应该进行。
‘pic_order_cnt_lsb’规定当前图片的图片顺序计数模数MaxPicOrderCntLsb。pic_order_cnt_lsb语法元素的长度是log2_max_pic_order_cnt_lsb_minus4+4个位。pic_order_cnt_lsb的值范围从0至MaxPicOrderCntLsb-1(首末项包括在内)。当pic_order_cnt_lsb不存在时,pic_order_cnt_lsb被推理为等于0。
等于1的‘short_term_ref_pic_set_sps_flag’规定应该使用活动序列参考集中的语法元素来创建当前图片的短期参考图片集。等于0的short_term_ref_pic_set_sps_flag规定应该使用码片报头中的short_term_ref_pic_set()语法结构来创建当前图片的短期参考图片。
‘short_term_ref_pic_set_idx’规定被用于当前图片的参考图片集的创建的活动SPS中所规定的短期参考图片集的列表的索引。语法元素short_term_ref_pic_set_idx由Ceil(Log2(num_short_term_ref_pic_sets))个位来表示。short_term_ref_pic_set_idx的值范围从0至num_short_term_ref_pic_sets-1(首末项包括在内),其中num_short_term_ref_pic_sets是来自活动序列参数集的语法元素。
变量StRpsIdx像在下面在列表(13)中所示出的那样被得到。
列表(13)
Figure GDA0003508926070000891
‘num_long_term_pics’规定将被包括在当前图片的长期参考图片集中并且在码片报头中直接地发信号通知的长期参考图片的数目。num_long_term_pics的值范围从0至max_dec_pic_buffering[max_temporal_layers_minus1]-NumNegativePics[StRpsIdx]-NumPositivePics[StRpsIdx](首末项包括在内)。当不存在时,num_long_term_pics的值被推理为等于0。
‘num_long_term_sps’规定在活动序列参数集中规定并且将被包括在当前图片的长期参考图片集中的长期参考图片的数目。如果num_long_term_sps不存在,则该值被推理为等于0。num_long_term_sps的值范围从0至Min(num_long_term_ref_pics_sps,max_dec_pic_buffering[max_temporal_layers_minus1]-NumNegativePics[StRpsIdx]-NumPositivePics[StRpsIdx]-num_long_term_pics)(首末项包括在内)。
‘long_term_idx_sps[i]’规定从所推理的序列参数集向当前图片的长期参考图片集继承的第i个长期参考图片的在活动序列参数集中所规定的长期参考图片的列表的索引。long_term_idx_sps'[i]'的值范围从0至num_long_term_ref_pics_sps-1(首末项包括在内)。对于0至num_long_term_sps-1范围内(首末项包括在内)的j和k的任何值,如果j小于k,则lt_ref_pic_poc_lsb_sps[long_term_idx_sps[j]]可能不小于lt_ref_pic_poc_lsb_sps[long_term_idx_sps[k]]。
‘poc_lsb_lt[i]’规定被包括在当前图片的长期参考图片集中的第i个长期参考图片的图片顺序计数值的最低有效位(LSB)的值。poc_lsb_lt[i]语法元素的长度是log2_max_pic_order_cnt_lsb_minus4+4个位。对于num_long_term_pics至num_long_term_pics+num_long_term_sps-1范围内(首末项包括在内)的j和k的任何值,如果j小于k,则poc_lsb_lt[j]可能不小于poc_lsb_lt[k]。
变量PocLsbLt[i]像在下面在列表(14)中所示出的那样被得到。
列表(14)
Figure GDA0003508926070000901
等于1的‘delta_poc_msb_present_flag[i]’规定delta_poc_msb_cycle_lt[i]存在。等于0的delta_poc_msb_present_flag[i]规定delta_poc_msb_cycle_lt[i]不存在。当在具有等于poc_lsb_lt[i]的图片顺序计数值的最低有效位的解码图片缓冲器中存在一个以上的参考图片时delta_poc_msb_present_flag[i]可以等于1。
‘delta_poc_msb_cycle_lt[i]’用来确定被包括在当前图片的长期参考图片集中的第i个长期参考图片的图片顺序计数值的最高有效位的值。
变量DeltaPocMSBCycleLt[i]像在下面在列表(15)中所示出的那样被得到。
列表(15)
Figure GDA0003508926070000902
DeltaPocMSBCycleLt[i]*MaxPicOrderCntLsb+pic_order_cnt_lsb-PocLsbLt[i]的值范围从1至224-1(首末项包括在内)。
‘used_by_curr_pic_lt_flag[i]’规定以绝对POC所指示的第i个长期参考图片是否被用于或未被用于由当前图片参考。例如,等于0的used_by_curr_pic_lt_flag[i]规定包括在当前图片的长期参考图片集中的第i个长期参考图片未被用于由当前图片参考。对于从所推理的序列参数集继承的长期参考图片,used_by_curr_pic_lt_flag[i]值作为used_by_curr_pic_lt_flag[i]=used_by_curr_pic_lt_sps_flag[long_term_idx_sps[j]]被得到。
应该了解的是,虽然列表(11)和列表(12)在SPS中为当前图片标志(例如,used_by_current_pic_lt_sps_flag[i])提供语法和语义,但是可以对于APS(例如,used_by_current_pic_lt_aps_flag[i])和/或PPS(例如,used_by_current_pic_lt_pps_flag[i])采用相似的语法和语义。
图18是图示用于接收长期参考图片指示符的方法1800的一个配置的流程图。该方法可以由电子设备104上的解码器102执行。在一些配置中,参考图片跟踪模块116可以使用长期参考图片指示符来跟踪可以用来对当前图片进行解码的参考图片。
可以接收1802长期参考图片指示符。可以从位流114接收1802长期参考图片指示符。可以在序列参数集(SPS)、自适应参数集(APS)、图片参数集(PPS)和/或视频参数集(VPS)中接收1802长期参考图片指示符。
在一些配置中,还可以接收1804与长期参考图片相对应的绝对POC的最低有效位(LSB)。可以在SPS、PPS、APS和/或VPS中接收绝对POC的LSB。
在一些配置中,可以接收1806码片报头。码片报头可以包括长期索引参数。例如,所接收1806的长期索引参数可以是long_term_idx_sps[i]。所接收1806的长期索引参数可以对应于至少一个参数集中的绝对POC和被当前图片使用标志。
可以在至少一个参数集中接收1808被当前图片使用标志。在一些配置中,长期参考图片可以由long_term_ref_pics_present_flag表示。可以在SPS、PPS、APS和/或VPS中接收1808被当前图片使用标志。换句话说,(一个或多个)参数集可以是SPS、PPS、APS和/或VPS。以这种方式,可能不在码片报头中规定被当前图片使用标志。在其中接收1808被当前图片使用标志的(一个或多个)参数集可以是在其中接收到长期参考图片指示符的相同的或不同的(一个或多个)参数集。
在一些配置中,被当前图片使用标志可以是当前图片用长期SPS标志,诸如used_by_current_pic_lt_sps_flag[i]。当前图片用长期SPS标志(例如,used_by_current_pic_lt_sps_flag[i])可以规定是否在对当前图片进行解码时利用以绝对POC所指示的第i个长期参考图片。
在一些配置中,电子设备104可以可选地接收1820与由长期索引参数所指示的长期参考图片相对应的绝对POC的增量最高有效位(MSB)周期。可以从码片报头接收和/或获得绝对POC的MSB周期。当来自长期参考图片的一个或多个POC LSB值是相同的时电子设备104可以接收绝对POC的增量MSB周期。例如,当来自长期参考图片的一个或多个POC LSB值是相同的时,电子设备104可以接收到等于1的delta_poc_msb_present_flag[i]。
在来自长期参考图片的POC LSB值是不相同的情况下,电子设备104可以接收到等于0的delta_poc_msb_present_flag[i]。在这种情况下,电子设备104可能不接收绝对POC的增量MSB周期。换句话说,电子设备104可以可选地接收1820与由长期索引参数所指示的长期参考图片相对应的POC的增量最高有效位(MSB)周期。
电子设备104可以基于被当前图片使用标志来确定1812是否利用长期参考图片。换句话说,被当前图片使用标志可以被利用来确定1812是否在对当前图片进行解码时利用长期参考图片。
如果确定了利用长期参考图片,则电子设备104可以基于该长期参考图片对当前图片进行解码1814。例如,参考图片跟踪模块116可以使用长期参考图片来对当前图片进行解码。如果确定了不利用长期参考图片,则电子设备104可以在没有长期参考图片的情况下对当前图片进行解码1816。
在一些已知配置(诸如JCTVC-I1003)中,参考图片集(RPS)的解码可以每图片发生一次。对RPS进行解码可以发生在对码片报头进行解码之后但是在任何编译单元的解码之前和在针对码片的参考图片列表构建的解码过程之前。然而,这个过程可能导致将一个或多个参考图片标记为“不用于参考”。
另外,短期参考图片可以由它们的PicOrderCntVal值识别。PicOrderCntVal可以指的是当前图片的图片顺序计数。长期参考图片由它们的pic_order_cnt_lsb值识别。可以构建图片顺序计数值的五个列表以得到参考图片集。这五个列表分别可以是具有NumPocStCurrBefore、NumPocStCurrAfter、NumPocStFoll、NumPocLtCurr以及NumPocLtFoll数目的元素的PocStCurrBefore、PocStCurrAfter、PocStFoll,PocLtCurr以及PocLtFoll。
在一些情况下,列表(16)中所示出的语法可以适用于POC值的五个列表和条目的数目的得到。
列表(16)
Figure GDA0003508926070000941
图19A是图示码片报头1961的一个配置的框图。在一个系统中,电子设备104可以发送码片报头1961。码片报头1961可以包括关于长期参考图片的数目的信息。例如,码片报头1961可以将num_long_term_pics syntax元素包括在码片报头中。
码片报头1961可以包括表示具有增量POC信息的长期参考图片(LTRP)的数目(n)1963的元素。n 1963可以对应于长期参考图片增量POC信息元素1965的数目。此外,n 1963可以被表示为num_long_term_pics。
可以存在1-n个长期参考图片增量POC信息元素1965。换句话说,每个长期参考图片可以通过发送关于它本身相对于当前图片的POC值的增量POC信息来识别。每个长期参考图片增量POC信息元素1965可以包括长期参考图片POC最低有效位(LSB)1967、长期参考图片增量POC最高有效位(MSB)周期存在标志1969、长期参考图片增量MSB周期1971以及被当前图片使用标志1973。
长期参考图片POC LSB 1967可以被表示为poc_lsb_lt[i]。被当前图片使用标志1973可以由used_by_curr_pic_lt_flag[i]来表示。
长期参考图片增量POC MSB周期存在标志1969可以指示长期参考图片增量MSB周期1971的存在。例如,如果长期参考图片增量POC MSB周期存在标志1969等于1,则可以存在长期参考图片增量MSB周期1971。长期参考图片增量POC MSB周期存在标志1969可以由delta_poc_msb_present_flag[i]表示。长期参考图片增量MSB周期1971可以由delta_poc_msb_cycle_lt[i]表示。
图19B是图示根据本文所公开的系统和方法的参数集1977和码片报头1987的一个配置的框图。图19B示出根据本文所公开的系统和方法的参数集1977和码片报头1987。可以通过发信号通知关于长期参考图片的数目的绝对信息来实现长期参考图片。可以在参数集1977中发信号通知绝对信息。参数集1977可以是序列参数集(SPS)、自适应参数集(APS)、图片参数集(PPS)和/或视频参数集(VPS)。为了清楚,图19B将参数集1977作为SPS来讨论。然而,应该了解的是,可以附加地或替换地使用APS、VPS或PPS。
参数集1977可以包括关于具有绝对POC信息元素的长期参考图片(LTRP)的数目(m)1979的信息。m 1979可以由num_long_term_ref_pics表示。m 1979可以指示长期参考图片绝对信息元素1981的数目。
可以存在1-m个元素1981。每个长期参考图片绝对信息元素1981可以包括长期参考图片绝对POC 1983的最低有效位(LSB)和被当前图片使用标志1985。长期参考图片绝对POC 1983的LSB可以由参数集1977(例如,SPS)中的long_term_ref_pic_poc_sps[j]来表示。被当前图片使用标志1985可以由参数集1977(例如,SPS)中的used_by_curr_pic_lt_sps_flag[i]来表示。
在一些配置中,除在SPS中之外或替换在SPS中与long_term_ref_pic_poc_lsb_sps[i]相关联的used_by_curr_pic_lt_sps_flag[i]可以被包括在图片参数集(PPS)、活动参数集(APS)和/或视频参数集(VPS)中。
码片报头1987可以包括表示从参数集和长期参考图片索引1991引用的长期参考图片的数目(i)1989的元素。换句话说,i 1989可以指示可以通过引用参数集1977中所发送的绝对长期参考图片信息来发信号通知长期参考图片的数目。
长期参考图片索引1991可以包括1-i个值1992。每个长期参考图片索引值1992可以对应于参数集1997中的长期参考图片绝对信息元素1981。在一些情况下,长期参考图片索引值1992的数目对应于参数集1977中的长期参考图片绝对信息元素1981的数目。每个长期参考图片索引值1992可以对应于参数集1997中的长期参考图片绝对信息元素1981。每个长期参考图片索引值1992可以由long_term_idx_sps[j]表示,其中SPS表示SPS参数集1977。
码片报头1987还可以包括表示具有增量POC信息和长期参考图片增量POC信息1994的长期参考图片的数目(j)1993的元素。n 1963、m 1979、j 1993以及i 1989可以不同于上面描述的语法元素和列表中的一个或多个内的值。例如,j 1993和i 1989可以不同于在列表(11)和列表(12)中或在关于图19A-19B给出的语法中所使用的i和j。
码片报头1987还可以包括长期参考图片增量POC信息1994。可以存在1-j个元素。每个长期参考图片增量POC信息1994可以包括长期参考图片增量POC最低有效位(LSB)1995、长期参考图片增量POC最高有效位(MSB)周期存在标志1996、长期参考图片增量POCMSB周期1997以及被当前图片使用标志1999。应该注意的是,可以针对i1989和j 1993两者(例如,针对从参数集引用的每个LTRP并且针对具有POC信息的每个LTRP)发送长期参考图片增量POC最高有效位(MSB)周期存在标志1996和长期参考图片增量POC MSB周期1997。
长期参考图片POC LSB 1995可以被表示为poc_lsb_lt[i]。被当前图片使用标志1997可以由used_by_curr_pic_lt_flag[i]表示,该used_by_curr_pic_lt_flag[i]可以在SPS、APS、PPS和/或VPS中发信号通知。可以针对每个长期参考图片增量POC信息1994发送被当前图片使用标志1999。然而,可能不针对从参数集引用的长期参考图片的数目(i)1989发送被当前图片使用标志1999。
长期参考图片增量POC MSB周期存在标志1996可以指示长期参考图片增量POCMSB周期1997的存在。例如,如果长期参考图片增量POC MSB周期存在标志1996等于1,则可以存在长期参考图片增量POC MSB周期1997。长期参考图片增量POC MSB周期存在标志1996可以由delta_poc_msb_present_flag[i]表示。长期参考图片增量POC MSB周期1997可以由delta_poc_msb_cycle_lt[i]表示。
术语“计算机可读介质”指的是能够被计算机或处理器访问的任何可用介质。如本文所用的术语“计算机可读介质”可以表示为非暂时性且有形的计算机和/或处理器可读介质。通过示例而非限制的方式,计算机可读或处理器可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘储存器、磁盘储存器或其它磁存储装置,或能够用来携带或者存储形式为指令或数据结构并且能够被计算机或处理器访问的期望的程序代码的任何其它介质。如本文中所使用的磁盘和盘包括其中磁盘通常磁性上再现数据的紧致盘(CD)、激光盘、光盘、数字通用盘(DVD)、软盘以及蓝光(注册商标)盘,然而盘用激光器光学上再现数据。
应该注意的是,本文中所描述的方法中的一个或多个可以用硬件加以实现和/或使用硬件执行。例如,本文中所描述的方法中的一个或多个可以用芯片组、专用集成电路(ASIC)、大规模集成电路(LSI)或集成电路等加以实现和/或使用芯片组、专用集成电路(ASIC)、大规模集成电路(LSI)或集成电路等实现。
本文中所公开的方法中的每一个包括一个或多个步骤或动作以用于实现所描述的方法。在不背离权利要求的范围的情况下,方法步骤和/或动作可以与彼此互换和/或组合成单个步骤。换句话说,除非对于正被描述的方法的正确操作需要步骤或动作的特定次序,否则在不背离权利要求的范围的情况下可以修改特定步骤和/或动作的次序和/或使用。
应当理解的是,权利要求不限于上面所图示的精确配置和组件。在本背离权利要求的范围的情况下,可以在本文中所描述的系统、方法以及设备的布置、操作以及细节上做出各种修改、改变以及变化。

Claims (1)

1.一种电子设备,用于从位流对经编码的图像进行解码,所述电子设备的特征在于,具备:
解码单元,用于从所述位流对序列参数集以及码片报头进行解码;以及
确定单元,确定是否利用长期参考图片中的一个,
所述序列参数集包括:
(a)指示是否对于帧间预测存在1个以上的长期参考图片的长期参考图片存在标志;
(b)在所述序列参数集中规定的所述长期参考图片的数目;
(c)与所述长期参考图片中的一个相对应的图片顺序计数的一个以上的最低有效位值;以及
(d)指示是否要利用在所述序列参数集中规定的长期参考图片的当前图片用序列参数集标志,
所述码片报头包括:
(e)表示要包括在当前图片的长期参考图片集中的、在所述码片报头中直接地发信号通知的所述长期参考图片的数目的第一数目;
(f)表示要包括在所述当前图片的长期参考图片集中的、在所述序列参数集中规定的所述长期参考图片的数目的第二数目;
(g)表示在所述序列参数集中规定的、包括在所述当前图片的长期参考图片集中的图片的索引的一个以上的长期参考索引参数;以及
(h)对于包括在所述当前图片的长期参考图片集中的所述第一数目的个数的图片指示是否要利用该图片的所述第一数目的个数的被当前图片使用标志,
在所述第一数目与所述第二数目之和的个数的各索引中,
在该索引的值小于所述第二数目的情况下,所述确定单元使用与所述长期参考索引参数对应的所述当前图片用序列参数集标志,确定是否利用与所述长期参考索引参数对应的所述长期参考图片,
在该索引的值为所述第二数目以上的情况下,所述确定单元基于与该索引对应的所述被当前图片使用标志,确定是否利用与该索引对应的所述长期参考图片。
CN201810461128.6A 2012-07-01 2013-06-26 电子设备及方法 Active CN108347606B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201261666882P 2012-07-01 2012-07-01
US61/666,882 2012-07-01
CN201380035380.6A CN104412588B (zh) 2012-07-01 2013-06-26 用于在参数集中发信号通知长期参考图片的设备
PCT/JP2013/004013 WO2014006854A1 (en) 2012-07-01 2013-06-26 Device for signaling a long-term reference picture in a parameter set

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380035380.6A Division CN104412588B (zh) 2012-07-01 2013-06-26 用于在参数集中发信号通知长期参考图片的设备

Publications (2)

Publication Number Publication Date
CN108347606A CN108347606A (zh) 2018-07-31
CN108347606B true CN108347606B (zh) 2022-08-19

Family

ID=49881630

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810461128.6A Active CN108347606B (zh) 2012-07-01 2013-06-26 电子设备及方法
CN201380035380.6A Active CN104412588B (zh) 2012-07-01 2013-06-26 用于在参数集中发信号通知长期参考图片的设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201380035380.6A Active CN104412588B (zh) 2012-07-01 2013-06-26 用于在参数集中发信号通知长期参考图片的设备

Country Status (6)

Country Link
US (1) US10230972B2 (zh)
EP (1) EP2868090A4 (zh)
JP (1) JP6190397B2 (zh)
CN (2) CN108347606B (zh)
HK (1) HK1207227A1 (zh)
WO (1) WO2014006854A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013070028A1 (ko) * 2011-11-11 2013-05-16 엘지전자 주식회사 영상 정보 전송 방법 및 장치와 이를 이용한 복호화 방법 및 장치
US10051264B2 (en) 2012-04-20 2018-08-14 Qualcomm Incorporated Marking reference pictures in video sequences having broken link pictures
US9479776B2 (en) * 2012-07-02 2016-10-25 Qualcomm Incorporated Signaling of long-term reference pictures for video coding
US9584804B2 (en) 2012-07-10 2017-02-28 Qualcomm Incorporated Coding SEI NAL units for video coding
US9584825B2 (en) * 2012-09-27 2017-02-28 Qualcomm Incorporated Long-term reference picture signaling in video coding
KR101981712B1 (ko) * 2012-11-21 2019-05-24 엘지전자 주식회사 영상 디코딩 방법 및 이를 이용하는 장치
EP2946558B1 (en) 2013-01-15 2020-04-29 Huawei Technologies Co., Ltd. Method for decoding an hevc video bitstream
CN106416250B (zh) * 2013-12-02 2020-12-04 诺基亚技术有限公司 视频编码和解码
US9848199B2 (en) * 2014-03-17 2017-12-19 Qualcomm Incorporated Device and method for scalable coding of video information
US10715833B2 (en) * 2014-05-28 2020-07-14 Apple Inc. Adaptive syntax grouping and compression in video data using a default value and an exception value
US11140418B2 (en) * 2018-07-17 2021-10-05 Qualcomm Incorporated Block-based adaptive loop filter design and signaling
EP3831064B1 (en) 2018-08-17 2024-02-07 Huawei Technologies Co., Ltd. Reference picture management in video coding
EP3854099A4 (en) * 2018-09-21 2022-06-29 Sharp Kabushiki Kaisha Systems and methods for signaling reference pictures in video coding
US10554975B1 (en) * 2018-09-30 2020-02-04 Tencent America LLC Method and apparatus for video coding
CN113810689A (zh) * 2018-12-07 2021-12-17 北京达佳互联信息技术有限公司 使用多分辨率参考图片管理的视频编解码
WO2020122062A1 (en) * 2018-12-10 2020-06-18 Sharp Kabushiki Kaisha Systems and methods for signaling reference pictures in video coding
US11196988B2 (en) 2018-12-17 2021-12-07 Apple Inc. Reference picture management and list construction
CN117176944A (zh) 2019-01-02 2023-12-05 Lg电子株式会社 对视频信号进行编解码的方法以及计算机可读介质
US11178399B2 (en) * 2019-03-12 2021-11-16 Qualcomm Incorporated Probability initialization for video coding
WO2021080710A1 (en) * 2019-09-24 2021-04-29 Futurewei Technologies, Inc. Support of mixed irap and non-irap pictures within an access unit in multi-layer video bitstreams
WO2021100724A1 (en) * 2019-11-21 2021-05-27 Sharp Kabushiki Kaisha Systems and methods for signaling reference picture lists in video coding
EP4136577A4 (en) * 2020-04-14 2024-05-01 OP Solutions, LLC METHODS AND SYSTEMS FOR VIDEO CODING USING REFERENCE REGIONS
US11290514B2 (en) 2020-05-18 2022-03-29 Tencent America LLC Method for content preparation templates for 5G common media application format based media streaming
US11477471B2 (en) * 2020-05-20 2022-10-18 Tencent America LLC Techniques for signaling combination of reference picture resampling and spatial scalability
WO2021235895A1 (ko) * 2020-05-22 2021-11-25 엘지전자 주식회사 영상 코딩 방법 및 그 장치
WO2024080916A1 (en) * 2022-10-13 2024-04-18 Telefonaktiebolaget Lm Ericsson (Publ) Inter-predicted reference picture lists
WO2024080917A1 (en) * 2022-10-13 2024-04-18 Telefonaktiebolaget Lm Ericsson (Publ) Quantization parameter (qp) coding for video compression

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1838774A (zh) * 2001-11-30 2006-09-27 株式会社Ntt都科摩 移动图像编码设备及方法、移动图像解码设备及方法
CN101252696A (zh) * 2000-05-15 2008-08-27 诺基亚有限公司 视频编码
CN102045557A (zh) * 2009-10-20 2011-05-04 鸿富锦精密工业(深圳)有限公司 视频编解码方法及使用其的视频编码、解码装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399985B (zh) * 2001-10-17 2012-10-31 松下电器产业株式会社 动态图像编码方法及装置
WO2009130561A1 (en) * 2008-04-21 2009-10-29 Nokia Corporation Method and device for video coding and decoding
CN107257492B (zh) 2011-09-07 2020-04-28 太阳专利托管公司 图像编码方法以及图像编码装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252696A (zh) * 2000-05-15 2008-08-27 诺基亚有限公司 视频编码
EP2124456A3 (en) * 2000-05-15 2010-08-11 Nokia Corporation Video coding
CN1838774A (zh) * 2001-11-30 2006-09-27 株式会社Ntt都科摩 移动图像编码设备及方法、移动图像解码设备及方法
CN102045557A (zh) * 2009-10-20 2011-05-04 鸿富锦精密工业(深圳)有限公司 视频编解码方法及使用其的视频编码、解码装置

Also Published As

Publication number Publication date
WO2014006854A1 (en) 2014-01-09
CN104412588A (zh) 2015-03-11
JP2015527756A (ja) 2015-09-17
CN108347606A (zh) 2018-07-31
JP6190397B2 (ja) 2017-08-30
EP2868090A4 (en) 2016-02-17
US20150304671A1 (en) 2015-10-22
US10230972B2 (en) 2019-03-12
EP2868090A1 (en) 2015-05-06
CN104412588B (zh) 2018-06-08
HK1207227A1 (zh) 2016-01-22

Similar Documents

Publication Publication Date Title
CN108347606B (zh) 电子设备及方法
JP6626919B2 (ja) 動画像ビットストリームを復号するための方法、および電子デバイス
US11943466B2 (en) Tracking a reference picture on an electronic device
US8787688B2 (en) Tracking a reference picture based on a designated picture on an electronic device
WO2013153822A1 (en) Devices for sending and receiving a long-term reference picture indicator
US8855433B2 (en) Tracking a reference picture based on a designated picture on an electronic device

Legal Events

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