CN113228666B - 支持视频编解码中的自适应分辨率改变 - Google Patents

支持视频编解码中的自适应分辨率改变 Download PDF

Info

Publication number
CN113228666B
CN113228666B CN201980087447.8A CN201980087447A CN113228666B CN 113228666 B CN113228666 B CN 113228666B CN 201980087447 A CN201980087447 A CN 201980087447A CN 113228666 B CN113228666 B CN 113228666B
Authority
CN
China
Prior art keywords
picture
size
decoded
image
bitstream
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
CN201980087447.8A
Other languages
English (en)
Other versions
CN113228666A (zh
Inventor
弗努·亨德里
王业奎
陈建乐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN113228666A publication Critical patent/CN113228666A/zh
Application granted granted Critical
Publication of CN113228666B publication Critical patent/CN113228666B/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/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

公开了一种视频编解码机制。该机制包括:接收包括多个图像参数集(PPS)和具有多个图像尺寸的多个图像的比特流。从第一PPS确定第一图像的第一图像尺寸。以第一图像尺寸对第一图像进行解码,以创建解码参考图像。该解码参考图像存储在解码图像缓冲区中。从第二PPS确定第二图像的第二图像尺寸。该第二图像根据帧间预测参考上述解码参考图像。该解码参考图像从上述第一图像尺寸缩放到上述第二图像尺寸。基于具有第二图像尺寸的解码参考图像以第二图像尺寸对第二图像进行解码。

Description

支持视频编解码中的自适应分辨率改变
相关申请的交叉引用
本专利申请要求FNU Hendry等人于2018年12月31日提交的发明名称为“支持视频编解码中的自适应分辨率改变”、申请号为62/787,104的美国临时专利申请的优先权,其全部内容以引用的方式并入本文。
技术领域
本公开通常涉及视频编解码,并且具体涉及用于支持视频编解码中增加的压缩的自适应分辨率改变(adaptive resolution change,ARC)机制。
背景技术
即使描述较短的视频,所需的视频数据量也可能很大,这可能会导致在带宽容量有限的通信网络上流式传输或以其他方式传送数据时产生困难。因此,视频数据在现代电信网络上传送之前通常会被压缩。因为存储资源可能有限,所以在视频存储在存储设备上时,视频的尺寸也可能是个问题。在传输或存储之前,视频数据通常在源处由视频压缩设备使用软件和/或硬件进行编码,从而减少表示数字视频图片所需的数据量。然后,压缩数据在目的地处由对视频数据进行解码的视频解压缩设备接收。由于网络资源有限且对更高视频质量的需求不断增长,需要一种在几乎不牺牲图片质量的情况下提高压缩率的改进的压缩和解压缩技术。
发明内容
在实施例中,本公开包括一种在解码器中实现的方法,该方法包括:解码器的接收器接收包括多个图像参数集(picture parameter set,PPS)和具有多个图像尺寸的多个图像的比特流;解码器的处理器从第一PPS确定第一图像的第一图像尺寸;处理器以第一图像尺寸对第一图像进行解码,以创建解码参考图像;解码器的存储器将解码参考图像存储在解码图像缓冲区中;解码器的处理器从第二PPS确定第二图像的第二图像尺寸,其中,第二图像根据帧间预测参考解码参考图像;处理器将解码参考图像从第一图像尺寸缩放到第二图像尺寸;以及处理器基于具有第二图像尺寸的解码参考图像以第二图像尺寸对第二图像进行解码。视频流可以动态地改变分辨率。一些系统通过使用帧内编码(称为帧内随机访问点(intra random access point,IRAP))图像来改变分辨率,这破坏了所有帧间预测。IRAP图像可能会清除解码图像缓冲区。例如,通过使IRAP图像中的块参考同一图像中的其他块而不参考其他图像来对IRAP图像进行编码。从数据的角度来看,这样的IRAP图像明显更大,因此编解码效率比帧间编码图像更低。此外,IRAP图像之后的帧间编码图像可能不参考IRAP图像之前的图像。因此,可能会降低帧间编码图像的编解码效率,直到重新填充解码图像缓冲区。在一些应用中,分辨率改变可能响应于网络条件的变化而发生。例如,当网络通信速度由于拥塞而变慢时,可以请求分辨率较低的视频段。因此,IRAP图像可能会在应该提高编解码效率以克服这样的网络拥塞的时刻降低编解码效率。本公开包括一种在不使用IRAP图像的情况下改变分辨率的机制。该方法避免发送额外的IRAP图像,并且避免破坏帧间预测。因此,所公开的机制提高了编解码效率,并且因此减少了编码器和/或解码器处存储器、处理器、和/或网络资源的使用。所公开的机制将具有对应的解码尺寸(例如,第一尺寸)的每个解码参考图像存储在图像缓冲区中。在分辨率改变的情况下,可以通过缩放过程来调整解码参考图像的尺寸。例如,可以接收具有第二尺寸的第二图像。然后,将解码参考图像的尺寸从第一尺寸调整为第二尺寸。由于两个图像的尺寸相同,所以帧间预测可以不中断地继续进行。这避免发送额外的IRAP图像,并且避免因为刷新解码图像缓冲区而中断帧间预测链。这样,所公开的机制在分辨率改变期间发送的比特比使用IRAP图像来发起分辨率改变的其他机制少。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,上述第一图像和上述第二图像在比特流中不被IRAP图像隔开。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,直到上述第二图像参考该解码参考图像,才对上述解码参考图像进行缩放。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,解码参考图像在缩放后被存储在临时缓冲区中。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,第一图像尺寸与第二图像尺寸不同。
可选地,在任何前述方面中,提供了该方面的另一实施方式:还包括:处理器转发第一图像和第二图像以作为解码视频序列的一部分显示。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,尽管进行了缩放,存储器仍维护解码参考图像的单个版本。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,在比特流中以亮度样本为单位指示第一图像尺寸和第二图像尺寸。
在实施例中,本公开包括一种在编码器中实现的方法,该方法包括:编码器的处理器以第一图像尺寸将第一图像编码在比特流中;处理器以第一图像尺寸对第一图像进行解码,以创建解码参考图像;编码器的存储器将解码参考图像存储在解码图像缓冲区中;处理器确定以第二图像尺寸对第二图像进行编码,其中,第二图像参考解码参考图像;处理器将解码参考图像从第一图像尺寸缩放到第二图像尺寸;处理器基于具有第二图像尺寸的解码参考图像以第二图像尺寸将第二图像编码在比特流中;在与第一图像相关联的第一PPS中指示第一图像尺寸,并且在与第二图像相关联的第二PPS中指示第二图像尺寸;以及在存储器中存储该比特流以向解码器通信。一些系统通过使用帧内编码(称为IRAP)图像来改变分辨率,这破坏了所有帧间预测。IRAP图像可能会清除解码图像缓冲区。例如,通过使IRAP图像中的块参考同一图像中的其他块而不参考其他图像来对IRAP图像进行编码。从数据的角度来看,这样的IRAP图像明显更大,因此编解码效率比帧间编码图像更低。此外,IRAP图像之后的帧间编码图像可能不参考IRAP图像之前的图像。因此,可能会降低帧间编码图像的编解码效率,直到重新填充解码图像缓冲区。在一些应用中,分辨率改变可能响应于网络条件的变化而发生。例如,当网络通信速度由于拥塞而变慢时,可以请求分辨率较低的视频段。因此,IRAP图像可能会在应该提高编解码效率以克服这样的网络拥塞的时刻降低编解码效率。本公开包括一种在不使用IRAP图像的情况下改变分辨率的机制。该方法避免发送额外的IRAP图像,并且避免破坏帧间预测。因此,所公开的机制提高了编解码效率,并且因此减少了编码器和/或解码器处存储器、处理器、和/或网络资源的使用。所公开的机制将具有对应的解码尺寸(例如,第一尺寸)的每个解码参考图像存储在图像缓冲区中。在分辨率改变的情况下,可以通过缩放过程来调整解码参考图像的尺寸。例如,可以接收具有第二尺寸的第二图像。然后,将解码参考图像的尺寸从第一尺寸调整为第二尺寸。由于两个图像的尺寸相同,所以帧间预测可以不中断地继续进行。这避免发送额外的IRAP图像,并且避免因为刷新解码图像缓冲区而中断帧间预测链。这样,所公开的机制在分辨率改变期间发送的比特比使用IRAP图像来发起分辨率改变的其他机制少。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,上述第一图像和上述第二图像在比特流中不被IRAP图像隔开。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,直到上述第二图像参考该解码参考图像,才对上述解码参考图像进行缩放。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,解码参考图像在缩放后被存储在临时缓冲区中。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,第一图像尺寸与第二图像尺寸不同。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,尽管进行了缩放,存储器仍维护解码参考图像的单个版本。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,在比特流中以亮度样本为单位指示第一图像尺寸和第二图像尺寸。
在实施例中,本公开包括一种视频编解码设备,该视频编解码设备包括处理器、耦合到处理器的接收器、以及耦合到处理器的发射器,该处理器、接收器、以及发射器用于执行任何前述方面中的方法。
在实施例中,本公开包括一种非暂时性计算机可读介质,该非暂时性计算机可读介质包括由视频编解码设备使用的计算机程序产品,该计算机程序产品包括存储在非暂时性计算机可读介质上的计算机可执行指令,使得当由处理器执行时,该计算机可执行指令使视频编解码设备执行任何前述方面中的方法。
在实施例中,本公开包括一种解码器,该解码器包括:接收装置,用于接收包括多个PPS和具有多个图像尺寸的多个图像的比特流;第一确定装置,用于从第一PPS确定第一图像的第一图像尺寸;第一解码装置,用于以第一图像尺寸对第一图像进行解码,以创建解码参考图像;存储装置,用于将解码参考图像存储在解码图像缓冲区中;第二确定装置,用于从第二PPS确定第二图像的第二图像尺寸,其中,第二图像根据帧间预测参考解码参考图像;缩放装置,用于将解码参考图像从第一图像尺寸缩放到第二图像尺寸;以及第二解码装置,用于基于具有第二图像尺寸的解码参考图像以第二图像尺寸对第二图像进行解码。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,上述解码器还用于执行任何前述方面中的方法。
在实施例中,本公开包括一种编码器,该编码器包括:第一编码装置,用于以第一图像尺寸将第一图像编码在比特流中;解码装置,用于以第一图像尺寸对第一图像进行解码,以创建解码参考图像;第一存储装置,用于将解码参考图像存储在解码图像缓冲区中;确定装置,用于确定以第二图像尺寸对第二图像进行编码,其中,第二图像参考解码参考图像;缩放装置,用于将解码参考图像从第一图像尺寸缩放到第二图像尺寸;第二编码装置,用于基于具有第二图像尺寸的解码参考图像以第二图像尺寸将第二图像编码在比特流中;尺寸指示装置,用于在与第一图像相关联的第一PPS中指示第一图像尺寸,并且在与第二图像相关联的第二PPS中指示第二图像尺寸;以及第二存储装置,用于存储上述比特流以向解码器通信。
可选地,在任何前述方面中,提供了该方面的另一实施方式:其中,上述编码器还用于执行任何前述方面中的方法。
为了清楚起见,任何前述实施例可以与任何一个或多个其他前述实施例组合,以在本公开的范围内创建新的实施例。
从下面结合附图和权利要求的具体实施方式中,将更清楚地理解这些特征和其他特征。
附图说明
为了更完整地理解本公开,现在结合附图和具体实施方式参考以下简要描述,在附图中,相同的附图标记表示相同的部分。
图1是对视频信号进行编解码的示例方法的流程图。
图2是用于视频编解码的示例编解码(codec)系统的示意图。
图3是示出示例视频编码器的示意图。
图4是示出示例视频解码器的示意图。
图5是示出包含编码视频序列的示例比特流的示意图。
图6是示出ARC机制的示意图。
图7是示例视频编解码设备的示意图。
图8是经由ARC对比特流进行编码的示例方法的流程图。
图9是经由ARC对比特流进行解码的示例方法的流程图。
图10是用于经由ARC对比特流中的视频序列进行编解码的示例系统的示意图。
具体实施方式
首先应该理解,尽管下面提供了一个或多个实施例的说明性实施方式,但是所公开的系统和/或方法可以使用任何数量的技术(无论是当前已知的技术还是现有的技术)来实施。本公开不应限于以下示出的示例性实施方式、附图、以及技术,包括本文示出和描述的示例性设计和实施方式,而是可以在所附权利要求的范围及其等同物的全部范围内进行修改。
本文使用了各种缩略语,例如,编码树块(coding tree block,CTB)、编码树单元(coding tree unit,CTU)、编码单元(coding unit,CU)、编解码视频序列(coded videosequence,CVS)、联合视频专家小组(joint video experts team,JVET)、运动受约束图块集(motion constrained tile set,MCTS)、最大传送单元(maximum transfer unit,MTU)、网络抽象层(network abstraction layer,NAL)、图像顺序计数(picture order count,POC)、原始字节序列有效载荷(raw byte sequence payload,RBSP)、序列参数集(sequenceparameter set,SPS)、通用视频编码(versatile video coding,VVC)、以及工作草案(working draft,WD)。
可以使用许多视频压缩技术以最小的数据损失来减小视频文件的大小。例如,视频压缩技术可以包括执行空间(例如,图像内)预测和/或时间(例如,图像间)预测以减小或移除视频序列中的数据冗余。对于基于块的视频编解码,视频切片(例如,视频图像或视频图像的一部分)可以被划分为视频块,视频块也可以称为树块、编码树块(CTB)、编码树单元(CTU)、编码单元(CU)、和/或编码节点。图像的帧内编码(I)切片中的视频块可以使用参考同一图像中的相邻块中的参考样本的空间预测进行编解码。图像的帧间编码的单向预测(P)或双向预测(B)切片中的视频块可以使用参考同一图像中的相邻块中的参考样本的空间预测或参考其他参考图像中的参考样本的时间预测进行编解码。图像可以称为帧和/或图片,参考图像可以称为参考帧和/或参考图片。空间预测或时间预测产生了表示图片块的预测块。残差数据表示原始图片块与预测块之间的像素差。因此,根据指向形成预测块的参考样本块的运动矢量和指示编码块与预测块之间的差的残差数据,对帧间编码块进行编码。根据帧内编码模式和残差数据对帧内编码块进行编码。为了进一步压缩,可以将残差数据从像素域变换到变换域。这些产生了可以被量化的残差变换系数。量化后的变换系数最初可以排列在二维阵列中。可以扫描量化后的变换系数,以产生变换系数的一维矢量。可以应用熵编码来实现甚至更进一步的压缩。下面将更详细地讨论这样的视频压缩技术。
为了确保能够准确地对编码视频进行解码,根据对应的视频编解码标准对视频进行编解码。视频编解码标准包括国际电信联盟(international telecommunicationunion,ITU)标准化部门(ITU-T)H.261、国际标准化组织/国际电工委员会(internationalorganization for standardization/international electrotechnical commission,ISO/IEC)运动图像专家组(motionpicture experts group,MPEG)-1第2部分、ITU-T H.262或ISO/IEC MPEG-2第2部分、ITU-TH.263、ISO/IEC MPEG-4第2部分、高级视频编码(advanced video coding,AVC)(也称为ITU-T H.264或ISO/IEC MPEG-4第10部分)、以及高效视频编码(high efficiency video coding,HEVC)(也称为ITU-T H.265或MPEG-H第2部分)。AVC包括扩展,例如,可伸缩视频编码(scalable video coding,SVC)、多视点视频编码(multiview video coding,MVC)、以及多视点视频编码加深度(multiview video codingplus depth,MVC+D)、以及三维(three dimensional,3D)AVC(3D-AVC)。HEVC包括扩展,例如,可伸缩HEVC(scalable HEVC,SHVC)、多视点HEVC(multiview HEVC,MV-HEVC)、以及3DHEVC(3D-HEVC)。ITU-T和ISO/IEC的联合视频专家小组(JVET)已经开始开发一种称为通用视频编码(versatile video coding,VVC)的视频编解码标准。VVC包括在工作草案(WD)中,该草案包括JVET-L1001-v7。
许多视频编解码系统(例如,HEVC和VVC)使用帧内随机访问点(IRAP)图像。IRAP图像根据帧内预测生成。IRAP图像可以提供各种功能/益处。第一,IRAP图像的存在指示解码过程可以从该图像开始。该功能实现随机访问特征。具体地,解码过程可以在包含IRAP图像的比特流中的任何位置开始,因此不限于从比特流的开头解码。第二,IRAP图像的存在可以刷新解码过程,使得在不参考任何先前图像(除了随机访问跳过前导(random accessskipped leading,RASL)图像)的情况下对IRAP图像之后的编码图像进行编解码。因此,比特流中的IRAP图像防止任何多图像解码错误传播到按解码顺序在IRAP图像之后的图像。瞬时解码器刷新(instantaneous decoder refresh,IDR)、断链访问(broken link access,BLA)、和/或清除随机访问(clean random access,CRA)图像是HEVC和/或VVC中的IRAP图像的示例类型。
虽然IRAP图像提供了有益的功能,但是IRAP图像也可能对压缩效率产生不利影响。第一,IRAP图像根据帧内预测进行编解码,帧内预测比帧间预测使用更多比特来对类似内容进行编码。第二,IRAP图像的存在破坏了时间预测,这导致刷新解码过程并且从解码图像缓冲区(decoded picture buffer,DPB)中移除先前的参考图像。通过从DPB中移除这样的参考图像,按解码顺序在IRAP图像之后的帧间预测图像可以访问的参考图像更少,这减少了可用的编解码选项,因此可能导致低效的编解码。因此,IRAP图像的存在可能导致比特流的比特率激增。
在视为IRAP图像的图像类型中,HEVC中的IDR图像可以以不同于其他IRAP图像类型的方式导出和/或信令通知。一些区别如下。例如,当信令通知和导出IDR图像的图像顺序计数(POC)值时,POC的最高有效位(most significant bit,MSB)部分可以不从先前的关键图像导出,而是可以被设置为等于零。此外,IDR图像的切片头可能不包含足以协助管理参考图像的信息。对于其他图像类型(例如,CRA、拖曳图像(trailing picture)、时间子层访问(temporal sublayer access,TSA)等),使用了诸如参考图像集(reference pictureset,RPS)和/或参考图像列表的信息来支持参考图像标记过程。参考图像标记涉及确定DPB中的参考图像的状态是用于参考和/或不用于参考。然而,对于IDR图像,因为IDR的存在指示解码过程应该将DPB中的所有参考图像标记为不用于参考,所以可以不信令通知这种信息。
IRAP图像也可以与前导图像相关联。前导图像是按解码顺序在IRAP图像之后但按输出(例如,显示)顺序在IRAP图像之前的图像。前导图像可以包括随机访问跳过前导(RASL)图像和随机访问可解码前导(random access decodable leading,RADL)图像。RASL图像是参考按解码顺序在IRAP图像之前的一个或多个图像进行编解码的前导图像。当解码过程开始于相关联的IRAP图像时,由于IRAP图像之前的图像未被解码,所以RASL图像可能无法正确解码。因此,参考信息不可以用于对RASL图像进行解码。RADL图像是在不直接或间接参考按解码顺序在IRAP图像之前的任何图像的情况下进行编解码的前导图像。当解码过程开始于相关联的IRAP图像时,因为RADL图像不参考在IRAP图像之前的任何图像,所以可以对RADL图像进行解码。当一个或多个RASL图像和一个或多个RADL图像与同一IRAP图像相关联时,RASL图像按输出顺序应该在RADL图像之前。IRAP图像也与拖曳图像相关联。拖曳图像是按输出顺序和解码顺序在第一IRAP图像之后并且按输出顺序和解码顺序在任何其他IRAP图像之前的图像。IRAP图像和前导图像可以被分配不同的NAL单元类型,使得这样的图像可以容易被系统级应用识别。例如,视频拼接器可以在无需解析编码比特流中的详细语法信息的情况下理解编码图像NAL单元类型。这使得视频拼接器容易区分IRAP图像、RASL图像、RADL图像、以及拖曳图像。
例如,在HEVC中,与IRAP图像相关的图像使用以下NAL单元类型。NAL类型为具有前导图像的断链访问(BLA)(BLA_W_LP)的BLA图像是按解码顺序在其之后有一个或多个前导图像的BLA图像。NAL类型为具有RADL的BLA(BLA_W_RADL)的BLA图像是按解码顺序在其之后有一个或多个RADL图像但无RASL图像的BLA图像。NAL类型为无前导图像的BLA(BLA_N_LP)的BLA图像是按解码顺序在其之后无前导图像的BLA图像。NAL类型为具有RADL的IDR(IDR_W_RADL)的IDR图像是按解码顺序在其之后有一个或多个RADL图像但无RASL图像的IDR图像。NAL类型为无前导图像的IDR(IDR_N_LP)的IDR图像是按解码顺序在其之后无前导图像的IDR图像。清除随机访问(CRA)图像的NAL类型为CRA,并且在该CRA图像之后有前导图像(例如,RASL图像和/或RADL图像)。RADL图像的NAL单元类型为RADL,RASL图像的NAL单元类型为RASL。
自适应分辨率改变(ARC)是一种用于在包含图像的比特流处于作为活动通信会话的一部分传输的状态时动态地改变这些图像之间的图像分辨率的机制。ARC可以用于许多应用。例如,ARC可以用于支持视频电话和会议中的速率自适应。具体地,ARC可以用于基于变化的网络条件来调整编解码视频。当网络条件变差(例如,可用带宽减少)时,编码器可以通过对分辨率较小的图像进行编码来适应比特流。在多方视频会议中,ARC可以用于支持由于活动的发言者的改变而引起的显示改变。例如,可以通过比其余会议参与者的视频更大的视频尺寸来显示当前活动的发言者。当活动的发言者改变时,可以相应地调整每个参与者的图像分辨率。当活动的发言者经常改变时,ARC可能更有益。ARC可以用于支持流式传输中的快速启动机制。流式传输应用可以在发起视频内容的显示之前缓冲特定长度的解码图像。以较小的分辨率初始化比特流可以允许应用更快地填充缓冲区以支持更快的显示启动。然后,一旦视频流缓冲完,则ARC可以用于提高分辨率。ARC还可以用于支持超文本传输协议(hypertext transfer protocol,DASH)上的动态自适应流式传输中的自适应流切换。例如,DASH包括表示为@mediaStreamStructureId的特征,该特征支持在具有不可解码的前导图像(例如,具有相关联的RASL图像的CRA图像)的开放图像组(open-group of picture,GOP)随机访问点处的不同表示(representation)之间切换。当同一视频的两个不同表示的比特率不同但是空间分辨率相同时,可以使用@mediaStreamStructureId机制。@mediaStreamStructureId机制支持在具有相关联的RASL图像的CRA图像处的两个表示之间切换。在这种情况下,能够以可接受的质量对与切换的CRA图像相关联的RASL图像进行解码,这实现无缝切换。通过ARC,@mediaStreamStructureId机制可以扩展为支持在空间分辨率不同的DASH表示之间切换。
如上所述的ARC机制存在特定缺陷。在许多视频编解码方案中,图像分辨率的改变只在IRAP图像发生。这存在若干问题。以合理质量编解码的IRAP图像包括比帧间编码图像明显更多的数据(例如,帧内编码图像具有比帧间编码图像明显更低的编解码效率)。因此,从处理器、存储器、以及网络通信资源的角度来看,对IRAP图像进行解码比对帧间预测图像进行解码更复杂。因此,当解码器由于当前分辨率的加载问题而请求改变分辨率时,引入了IRAP图像,这对解码器造成了其他约束。IRAP图像还可能破坏低时延缓冲区条件,迫使音频重同步,以及临时增加流的端到端时延。这样,当需要避免复杂度时,ARC可能引入额外的复杂度,这会导致用户体验较差。此外,ARC可以支持多个分辨率,这些分辨率应该被高效地信令通知给解码器。此外,ARC可以使具有第二分辨率的图像参考解码图像缓冲区中的具有第一分辨率的参考图像。在这种情况下,参考图像应该从第一分辨率重缩放到第二分辨率。因此,参考图像的多个版本可能被存储在解码图像缓冲区中,这较为低效。此外,在解码完成之后,可能不会立即显示图像。或者,图像可能被存储在解码图像缓冲区中,直到编解码器准备好按输出图像顺序显示图像。视频编解码标准未规定如何处理以下情况:在图像被解码并且存储在解码图像缓冲区中的时间和图像被显示的时间之间,图像分辨率改变。
本文公开了用于支持改进的ARC的各种机制。例如,所公开的机制允许帧间编码图像之间的分辨率改变。因此,所公开的机制不需要在IRAP图像切换分辨率。这避免了与发送额外的IRAP图像相关联的低效情况(例如,对额外的帧内编码图像进行解码、破坏帧间预测、重置图像缓冲区等)。所公开的机制通过以第一分辨率对第一图像进行解码并存储在解码图像缓冲区中来操作。第一分辨率由与第一图像相关联的第一图像参数集(PPS)指示。接收参考解码图像缓冲区中的第一图像的第二编码图像。还接收与第二图像相关联的第二PPS。第二PPS指示应该以不同于第一分辨率的第二分辨率对第二图像进行解码。分辨率之间的这种改变指示ARC。在确定第二图像参考第一图像并且确定已发生分辨率改变时,将第一图像重缩放到第二分辨率。这允许以第二分辨率正确解码第二图像,而无需发送IRAP图像来重置图像之间的帧间预测链。因此,所公开的机制减少了当比特流处于活动传输状态时用于执行分辨率改变的网络通信资源量、处理器资源量、以及存储器资源量。如果还未输出第一图像,则也可以以第二分辨率输出第一图像。这允许解码图像缓冲区维护重缩放后的图像的单个版本。这种方法还降低了复杂度,并且还降低了解码器处的存储器资源使用。
图1是对视频信号进行编解码的示例操作方法100的流程图。具体地,视频信号在编码器处进行编码。编码过程通过使用各种机制来减小视频文件大小来压缩视频信号。较小的文件大小允许将压缩的视频文件发送给用户,同时减少相关的带宽开销。然后,解码器对压缩的视频文件进行解码,以重建原始视频信号,以显示给终端用户。解码过程通常会镜像编码过程,以使解码器能够一致地重建视频信号。
在步骤101,视频信号被输入到编码器中。例如,视频信号可以是存储在存储器中的未压缩视频文件。作为另一示例,视频文件可以由诸如摄像机的视频捕获设备捕获,并且被编码以支持视频的实时流式传输。视频文件可以包括音频分量和视频分量。视频分量包含一系列图像帧,当按顺序查看时,这些图像帧会给人运动的视觉印象。帧包含以光和颜色表示的像素,光在此称为亮度分量(或亮度样本),而颜色称为色度分量(或颜色样本)。在一些示例中,帧还可以包含深度值以支持三维观看。
在步骤103,视频被划分为块。划分包括将每个帧中的像素细分为正方形块和/或矩形块以进行压缩。例如,在高效视频编码(HEVC)(也称为H.265和MPEG-H第2部分)中,帧可以首先被分为编码树单元(CTU),CTU是具有预定义尺寸(例如,64像素乘64像素)的块。CTU包含亮度样本和色度样本。可以使用编码树将CTU分为块,然后递归地细分这些块,直到实现支持进一步编码的配置。例如,可以细分帧的亮度分量,直到各个块包含相对均匀的亮度值为止。此外,可以细分帧的色度分量,直到各个块包含相对均匀的颜色值为止。因此,划分机制根据视频帧的内容而变化。
在步骤105,使用各种压缩机制来压缩在步骤103划分的图片块。例如,可以使用帧间预测和/或帧内预测。帧间预测旨在利用以下事实:共同场景中的对象倾向于出现在连续的帧中。因此,不需要在相邻帧中重复描述参考帧中的对象的块。具体地,诸如桌子的对象可以在多个帧中保持在恒定的位置。因此,该桌子被描述一次,并且相邻帧可以参考该参考帧。可以使用模式匹配机制来匹配多个帧上的对象。此外,例如由于对象移动或相机移动,运动对象可以跨多个帧表示。作为特定示例,视频可以显示在多个帧上跨屏幕移动的汽车。可以使用运动矢量来描述这种运动。运动矢量是二维矢量,提供从某一帧中的对象坐标到参考帧中的对象坐标的偏移。这样,帧间预测可以将当前帧中的图片块编码为指示相对于参考帧中的对应块的偏移的一组运动矢量。
帧内预测对公共帧中的块进行编码。帧内预测利用了帧中的亮度分量和色度分量倾向于聚集这一事实。例如,树的一部分中的绿色patch倾向于位于相似的绿色patch的相邻处。帧内预测使用多个方向预测模式(例如,HEVC中的33种)、平面模式、和直流(directcurrent,DC)模式。方向模式指示当前块与对应方向上的相邻块的样本相似/相同。平面模式指示可以基于行边缘处的相邻块来对该行/列(例如,平面)上的一系列块进行插值。实际上,平面模式通过在变化值中使用相对恒定的斜率,指示光/颜色在行/列中的平滑过渡。DC模式用于边界平滑,并指示一个块类似/相同于与所有与方向预测模式的角度方向相关联的相邻块的样本相关联的平均值。因此,帧内预测块可以将图片块表示为各种关系预测模式值而不是实际值。此外,帧间预测块可以将图片块表示为运动矢量值而不是实际值。在任一种情况下,在特定情况下,预测块可以不准确地表示图片块。任何差值都存储在残差块中。可以将变换应用于残差块以进一步压缩文件。
在步骤107,可以应用各种滤波技术。在HEVC中,根据环内滤波方案来应用滤波器。上面讨论的基于块的预测可以在解码器处产生块状图片。此外,基于块的预测方案可以对块进行编码,然后重建编码块以供以后用作参考块。环内滤波方案将噪声抑制滤波器、去块滤波器、自适应环路滤波器、以及样本自适应偏移(sample adaptive offset,SAO)滤波器重复应用于块/帧。这些滤波器减轻了这种块伪影(blocking artifact),因此可以准确地重建编码文件。此外,这些滤波器减轻了重建的参考块中的伪影,使得伪影不太可能在基于重建的参考块进行编码的后续块中创建附加伪影。
一旦视频信号被划分、压缩、以及滤波,则在步骤109将得到的数据编码在比特流中。该比特流包括以上讨论的数据以及支持在解码器处进行正确的视频信号重建所需的任何信令数据。例如,这样的数据可以包括划分数据、预测数据、残差块、以及向解码器提供编码指令的各种标志。可以将比特流存储在存储器中,以根据请求向解码器传输。比特流还可以向多个解码器广播和/或多播。比特流的创建是一个迭代过程。因此,步骤101、103、105、107、以及109可以在许多帧和块上连续和/或同时发生。图1中所示的顺序是出于清楚和易于讨论的目的给出,并不旨在将视频编解码过程限制为特定顺序。
在步骤111,解码器接收比特流并开始解码过程。具体地,解码器使用熵解码方案将比特流转换为对应的语法和视频数据。解码器在步骤111使用来自比特流的语法数据来确定帧的划分。划分应与步骤103的块划分结果相匹配。现在描述在步骤111中使用的熵编码/解码。编码器在压缩过程中做出了许多选择,例如,基于输入图像中的值的空间位置,从若干可能的选择中选择块划分方案。信令通知确切的选择可能会使用大量的二元符号(bin)。如本文所使用的,bin是被视为变量的二进制值(例如,可以根据上下文而变化的比特值)。熵编码使编码器可以丢弃在特定情况下显然不可行的任何选项,保留一组允许的选项。然后,为每个允许的选项分配一个码字。码字的长度基于允许的选项的数量(例如,一个bin用于两个选项,两个bin用于三个至四个选项,等等)。然后,编码器对用于所选选项的码字进行编码。因为码字的尺寸需要能够唯一地指示允许的选项的小子集中的一个选择,而不是需要能够唯一地指示所有可能选择的潜在大集合中的一个选择,所以该方案减小了码字的尺寸。然后,解码器通过以与编码器类似的方式确定允许的选项的集合来对选择进行解码。通过确定允许的选项的集合,解码器可以读取码字并确定编码器进行的选择。
在步骤113,解码器执行块解码。具体地,解码器使用反变换来生成残差块。然后,解码器使用残差块和对应的预测块来根据划分来重建图片块。预测块可以包括在步骤105在编码器处生成的帧内预测块和帧间预测块。然后,根据在步骤111确定的划分数据,将重建的图片块放置在重建的视频信号的帧中。如上所述,也可以通过熵编码在比特流中信令通知步骤113的语法。
在步骤115,以类似于在编码器处的步骤107的方式,对重建的视频信号的帧执行滤波。例如,噪声抑制滤波器、去块滤波器、自适应环路滤波器、以及SAO滤波器可应用于帧以去除块伪影。一旦对帧进行了滤波,则可以在步骤117将视频信号输出到显示器,以供终端用户观看。
图2是用于视频编解码的示例编解码(codinganddecoding,codec)系统200的示意图。具体地,编解码器系统200提供支持操作方法100的实现的功能。对编解码器系统200进行概括以描绘在编码器和解码器中使用的组件。编解码器系统200如关于操作方法100中的步骤101和103所讨论的那样接收并划分视频信号,这将生成划分的视频信号201。然后,在充当编码器时,如关于方法100中的步骤105、107、以及109所讨论的,编解码器系统200将划分的视频信号201压缩为编码比特流。在充当解码器时,编解码器系统200如关于操作方法100中的步骤111、113、115、以及117所讨论的那样,从比特流生成输出视频信号。编解码器系统200包括通用编解码器控制组件211、变换缩放和量化组件213、图像内估计组件215、图像内预测组件217、运动补偿组件219、运动估计组件221、缩放和反变换组件229、滤波器控制分析组件227、环内滤波器组件225、解码图像缓冲器组件223、以及报头格式化和上下文自适应二进制算术编码(context adaptive binary arithmetic coding,CABAC)组件231。这些组件如图所示地耦合。在图2中,黑线表示要编码/解码的数据的移动,而虚线表示控制其他组件的操作的控制数据的移动。编解码器系统200的组件可以全部存在于编码器中。解码器可以包括编解码器系统200的组件的子集。例如,解码器可以包括图像内预测组件217、运动补偿组件219、缩放和反变换组件229、环内滤波器组件225、以及解码图像缓冲器组件223。现在描述这些组件。
划分的视频信号201是已被编码树划分为像素块的捕获的视频序列。编码树使用各种划分模式将像素块细分为较小的像素块。然后,可以将这些块进一步细分为更小的块。这些块可以称为编码树上的节点。较大的父节点被分为较小的子节点。节点被细分的次数称为节点/编码树的深度。在一些情况下,编码单元(CU)可以包括划分的块。例如,CU可以是包含亮度块、红色差色度(Cr)块、以及蓝色差色度(Cb)块、以及CU的对应语法指令的CTU的子部分。划分模式可包括二叉树(binary tree,BT)、三叉树(triple tree,TT)、以及四叉树(quad tree,QT),分别用于将一个节点划分为两个、三个、或四个子节点,这些节点的形状根据所使用的划分模式各不相同。划分的视频信号201被转发到通用编解码器控制组件211、变换缩放和量化组件213、图像内估计组件215、滤波器控制分析组件227、以及运动估计组件221以进行压缩。
通用编解码器控制组件211用于根据应用约束做出与将视频序列的图像编码到比特流中有关的决策。例如,通用编解码器控制组件211管理相对于重建质量的比特率/比特流大小的优化。可以基于存储空间/带宽可用性和图像分辨率请求来做出这样的决策。通用编解码器控制组件211还根据传输速度来管理缓冲器利用率,以缓解缓冲器欠载和超限问题。为了管理这些问题,通用编解码器控制组件211管理其他组件的划分、预测、以及滤波。例如,通用编解码器控制组件211可以动态地增加压缩复杂度以提高分辨率并增加带宽使用,或者降低压缩复杂度以降低分辨率和带宽使用。因此,通用编解码器控制组件211控制编解码器系统200的其他组件以平衡视频信号重建质量与比特率问题。通用编解码器控制组件211创建控制数据,该控制数据控制其他组件的操作。控制数据也被转发到报头格式化和CABAC组件231,以在比特流中进行编码,以信令通知用于在解码器处的解码的参数。
划分的视频信号201还被发送到运动估计组件221和运动补偿组件219以进行帧间预测。划分的视频信号201的帧或切片可以被划分为多个视频块。运动估计组件221和运动补偿组件219相对于一个或多个参考帧中的一个或多个块对接收到的视频块执行帧间预测编解码,以提供时间预测。编解码器系统200可以执行多个编解码过程,例如以为视频数据的每个块选择适当的编解码模式。
运动估计组件221和运动补偿组件219可以高度集成,但是出于概念性目的而分开示出。由运动估计组件221执行的运动估计是生成运动矢量的过程,该运动矢量估计视频块的运动。例如,运动矢量可以指示编解码对象相对于预测块的位移。预测块是在像素差方面与待编解码块紧密匹配的块。预测块也可以称为参考块。这样的像素差可以由绝对差之和(sum of absolute difference,SAD)、平方差之和(sum of square difference,SSD)、或其他差值来确定。HEVC使用若干编解码对象,包括CTU、编码树块(CTB)、以及CU。例如,CTU可以被分为CTB,然后,CTB可以被分为CB以包括在CU中。CU可以被编码为包含预测数据的预测单元(prediction unit,PU)和/或包含用于CU的变换后的残差数据的变化单元(transformunit,TU)。运动估计组件221使用作为率失真优化过程的一部分的率失真分析来生成运动矢量、PU、以及TU。例如,运动估计组件221可以确定当前块/帧的多个参考块、多个运动矢量等,并且可以选择具有最佳率失真特性的参考块、运动矢量等。最佳率失真特性平衡了视频重建质量(例如,由于压缩而损失的数据量)与编解码效率(例如,最终编码的尺寸)。
在一些示例中,编解码器系统200可以计算存储在解码图像缓冲区组件223中的参考图像的子整数像素位置的值。例如,视频编解码器系统200可以对参考图像的四分之一像素位置、八分之一像素位置、或其他分数像素位置的值进行插值。因此,运动估计组件221可以执行相对于整数像素位置和分数像素位置的运动搜索,并且以分数像素精度输出运动矢量。运动估计组件221通过将PU的位置与参考图像的预测块的位置进行比较来计算帧间编码切片中的视频块的PU的运动矢量。运动估计组件221将计算出的运动矢量作为运动数据输出到报头格式和CABAC组件231以进行编码,并将运动矢量输出到运动补偿组件219。
由运动补偿组件219执行的运动补偿可以涉及基于由运动估计组件221确定的运动矢量来获取或生成预测块。同样,在一些示例中,运动估计组件221和运动补偿组件219可以在功能上集成在一起。在接收到当前视频块的PU的运动矢量时,运动补偿组件219可以定位运动矢量指向的预测块。然后,通过从正被编解码的当前视频块的像素值中减去预测块的像素值,形成像素差值,从而形成残差视频块。通常,运动估计组件221执行相对于亮度分量的运动估计,并且运动补偿组件219将基于亮度分量计算的运动矢量用于色度分量和亮度分量。预测块和残差块被转发到变换缩放和量化组件213。
划分的视频信号201还被发送到图像内估计组件215和图像内预测组件217。与运动估计组件221和运动补偿组件219一样,图像内估计组件215和图像内预测组件217可以是高度集成的,但是出于概念目的而分开示出。图像内估计组件215和图像内预测组件217相对于当前帧中的块来对当前块进行帧内预测,作为如上所述的由运动估计组件221和运动补偿组件219在帧之间执行的帧间预测的替代方案。特别地,图像内估计组件215确定用于对当前块进行编码的帧内预测模式。在一些示例中,图像内估计组件215从多个测试的帧内预测模式中选择适当的帧内预测模式以对当前块进行编码。然后,将所选的帧内预测模式转发到报头格式化和CABAC组件231以进行编码。
例如,图像内估计组件215对各个测试的帧内预测模式使用率失真分析来计算率失真值,并且在测试的模式当中选择具有最佳率失真特性的帧内预测模式。率失真分析通常确定编码块和原始未编码块(被编码以生成编码块)之间的失真(或误差)量,以及用于产生编码块的比特率(例如,比特数量)。图像内估计组件215根据各个编码块的失真和率来计算比值,以确定哪种帧内预测模式显示出该块的最佳率失真值。另外,图像内估计组件215可以用于基于率失真优化(rate-distortion optimization,RDO)使用深度建模模式(depth-modeling mode,DMM)来对深度图的深度块进行编解码。
当在编码器上实施时,图像内预测组件217可以基于由图像内估计组件215确定的选择的帧内预测模式从预测块生成残差块,或者当在解码器上实施时,图像内预测组件217可以从比特流读取残差块。残差块包括预测块和原始块的值之间的差,表示为矩阵。然后,残差块被转发到变换缩放和量化组件213。图像内估计组件215和图像内预测组件217可以对亮度分量和色度分量进行操作。
变换缩放和量化组件213用于进一步压缩残差块。变换缩放和量化组件213将诸如离散余弦变换(discrete cosine transform,DCT)、离散正弦变换(discrete sinetransform,DST)、或概念上类似的变换之类的变换应用于残差块,从而产生包括残差变换系数值的视频块。也可以使用小波变换、整数变换、子带变换、或其他类型的变换。上述变换可将残差信息从像素值域转换到变换域,例如频域。变换缩放和量化组件213还用于例如基于频率来对变换后的残差信息进行缩放。这种缩放涉及将缩放因子应用于残差信息,从而以不同的粒度对不同的频率信息进行量化,这可能会影响重建视频的最终视觉质量。变换缩放和量化组件213还用于对变换系数进行量化以进一步降低比特率。量化过程可以减小与一些或所有系数相关联的位深度。可以通过调整量化参数来修改量化程度。在一些示例中,变换缩放和量化组件213随后可以对包括量化后的变换系数的矩阵执行扫描。量化后的变换系数被转发到报头格式和CABAC组件231以在比特流中进行编码。
缩放和反变换组件229应用变换缩放和量化组件213的反操作以支持运动估计。缩放和反变换组件229应用反缩放、变换、以及/或量化以在像素域中重建残差块,例如,以供稍后用作参考块,该参考块可以成为另一当前块的预测块。运动估计组件221和/或运动补偿组件219可通过将残差块加回到对应的预测块来计算参考块,以用于稍后的块/帧的运动估计。滤波器应用于重建的参考块,以减轻在缩放、量化、以及变换期间创建的伪影。否则,当预测后续块时,这样的伪影可能会导致不准确的预测(并创建其他伪影)。
滤波器控制分析组件227和环内滤波器组件225将滤波器应用于残差块和/或重建的图片块。例如,来自缩放和反变换组件229的变换后的残差块可与来自图像内预测组件217和/或运动补偿组件219的对应预测块组合以重建原始图片块。然后,可以将滤波器应用于重建的图片块。在一些示例中,可替代地将滤波器应用于残差块。与图2中的其他组件一样,滤波器控制分析组件227和环内滤波器组件225是高度集成的,并且可以一起实现,但是出于概念上的目的而分开示出。应用于重建的参考块的滤波器被应用于特定的空间区域,并且包括多个参数以调整如何应用这种滤波器。滤波器控制分析组件227分析重建的参考块,以确定应该在哪里应用这种滤波器并设置对应的参数。这样的数据被转发到报头格式和CABAC组件231,作为滤波器控制数据以进行编码。环内滤波器组件225基于滤波器控制数据来应用这样的滤波器。滤波器可以包括去块滤波器、噪声抑制滤波器、SAO滤波器、以及自适应环路滤波器。取决于示例,可以在空间/像素域(例如,在重建的像素块上)或频域中应用这样的滤波器。
当作为编码器操作时,将滤波后的重建图片块、残差块、以及/或预测块存储在解码图像缓冲区组件223中,以供以后在如上所述的运动估计中使用。当作为解码器工作时,解码图像缓冲区组件223将重建和滤波后的块作为输出视频信号的一部分存储并转发给显示器。解码图像缓冲区组件223可以是能够存储预测块、残差块、以及/或重建图片块的任何存储设备。
报头格式化和CABAC组件231从编解码器系统200的各个组件接收数据,并将这些数据编码为编码比特流,以传输至解码器。具体地,报头格式化和CABAC组件231生成各种报头以对诸如通用控制数据和滤波器控制数据之类的控制数据进行编码。此外,包括帧内预测和运动数据的预测数据以及以量化后的变换系数数据形式的残差数据都被编码在比特流中。最终的比特流包括解码器重建原始划分的视频信号201所需的所有信息。这样的信息还可以包括帧内预测模式索引表(也称为码字映射表)、各个块的编码上下文定义、最可能帧内预测模式的指示、划分信息的指示,等等。可以通过使用熵编码来编码这样的数据。例如,可以通过使用上下文自适应可变长度编码(context adaptive variable lengthcoding,CAVLC)、CABAC、基于语法的上下文自适应二进制算术编码(syntax-based contextadaptive binary arithmetic coding,SBAC)、概率区间划分熵(probability intervalpartitioning entropy,PIPE)编码、或另一熵编码技术来对信息进行编码。在熵编码之后,编码的比特流可以被发送到另一设备(例如,视频解码器)或被存档以用于后续传输或检索。
图3是示出示例视频编码器300的框图。视频编码器300可以用于实施编解码器系统200的编码功能和/或实施操作方法100的步骤101、103、105、107、和/或109。编码器300划分输入视频信号,得到划分的视频信号301,该划分的视频信号301基本上类似于划分的视频信号201。然后,划分的视频信号301被编码器300的组件压缩并编码到比特流中。
具体地,将划分的视频信号301转发到图像内预测组件317以进行帧内预测。图像内预测组件317可以基本上类似于图像内估计组件215和图像内预测组件217。划分的视频信号301还被转发到运动补偿组件321以基于解码图像缓冲区组件323中的参考块进行帧间预测。运动补偿组件321可以基本上类似于运动估计组件221和运动补偿组件219。来自图像内预测组件317和运动补偿组件321的预测块和残差块被转发到变换和量化组件313以用于对残差块进行变换和量化。变换和量化组件313可以基本上类似于变换缩放和量化组件213。变换和量化后的残差块以及对应的预测块(以及相关联的控制数据)被转发到熵编码组件331,以将其编码到比特流中。熵编码组件331可以基本上类似于报头格式化和CABAC组件231。
变换和量化后的残差块和/或对应的预测块还从变换和量化组件313转发到反变换和量化组件329,以重建为参考块以供运动补偿组件321使用。反变换和量化组件329可以基本上类似于缩放和反变换组件229。取决于示例,环内滤波器组件325中的环内滤波器也被应用于残差块和/或重建的参考块。环内滤波器组件325可以基本上类似于滤波器控制分析组件227和环内滤波器组件225。环内滤波器组件325可以包括如参照环内滤波器组件225所述的多个滤波器。然后,滤波后的块被存储在解码图像缓冲区组件323中,以供运动补偿组件321用作参考块。解码图像缓冲区组件323可以基本上类似于解码图像缓冲区组件223。
图4是示出示例视频解码器400的框图。视频解码器400可以用于实施编解码器系统200的解码功能和/或实施操作方法100的步骤111、113、115、和/或117。解码器400接收例如来自编码器300的比特流,并基于该比特流生成重建的输出视频信号,以显示给终端用户。
比特流由熵解码组件433接收。熵解码组件433用于实施熵解码方案,例如CAVLC、CABAC、SBAC、PIPE编解码、或其他熵编解码技术。例如,熵解码组件433可以使用报头信息来提供上下文以解释在比特流中被编码为码字的附加数据。解码的信息包括用于解码视频信号的任何所需信息,例如通用控制数据、滤波器控制数据、划分信息、运动数据、预测数据、以及来自残差块的量化变换系数。量化后的变换系数被转发到反变换和量化组件429以重建为残差块。反变换和量化组件429可以类似于反变换和量化组件329。
重建的残差块和/或预测块被转发到图像内预测组件417,以基于帧内预测操作被重建为图片块。图像内预测组件417可以类似于图像内估计组件215和图像内预测组件217。具体地,图像内预测组件417使用预测模式来在帧中定位参考块,并将残差块应用于结果以重建帧内预测的图片块。重建的帧内预测图片块和/或残差块以及对应的帧间预测数据经由环路滤波器组件425转发到解码图像缓冲区组件423,该解码图像缓冲区组件423和环内滤波器组件425可以分别基本类似于解码图像缓冲区组件223和环内滤波器组件225。环内滤波器组件425对重建的图片块、残差块、以及/或预测块进行滤波,并且这样的信息被存储在解码图像缓冲区组件423中。来自解码图像缓冲区组件423的重建图片块被转发到运动补偿组件421以用于帧间预测。运动补偿组件421可以基本上类似于运动估计组件221和/或运动补偿组件219。具体地,运动补偿组件421使用来自参考块的运动矢量来生成预测块,并将残差块应用于结果以重建图片块。得到的重建块也可以经由环内滤波器组件425转发到解码图像缓冲区组件423。解码图像缓冲区组件423继续存储附加的重建图片块,这些重建图片块可以经由划分信息被重建为帧。这样的帧也可以位于序列中。该序列作为重建的输出视频信号向显示器输出。
图5是示出包含编码视频序列的示例比特流500的示意图。例如,比特流500可以由编解码器系统200和/或编码器300生成,由编解码器系统200和/或解码器400进行解码。作为另一示例,比特流500可以由编码器在方法100的步骤109生成,以供解码器在步骤111使用。
比特流500包括序列参数集(sequence parameter set,SPS)510、多个图像参数集(picture parameter set,PPS)512、一个或多个图块组头514、以及图片数据520。SPS 510包含对比特流500中包含的视频序列中的所有图像公共的序列数据。这样的数据可以包括图像尺寸、比特深度、编解码工具参数、比特率限制等。PPS 512包含特定于一个或多个对应图像的参数。因此,视频序列中的每个图像可以参考一个PPS 512。PPS 512可以指示可用于对应图像中的图块的编解码工具、量化参数、偏移、图像特定的编解码工具参数(例如,滤波器控制)等。图块组头514包含特定于图像中的每个图块组的参数。因此,在视频序列中的每个图块组可以有一个图块组头514。图块组头514可以包含图块组信息、图像顺序计数(POC)、参考图像列表、预测权重、图块入口点、解块参数等。应注意,一些系统将图块组头514称为切片头,并且使用这样的信息来支持切片而非图块组。在一些情况下,术语“图块组”和“图块组头514”可以与术语“切片”和“切片头”互换使用。
图片数据520包含根据帧间预测和/或帧内预测编码的视频数据以及对应的变换和量化后的残差数据。根据用于在编码之前划分图片的划分来对这样的图片数据520进行分类。例如,图片数据520被划分为图像521。图像521是指示视频序列在规定时刻的视觉状态的单个图片。多个图像521按顺序显示作为视频序列的一部分,以创造运动感。图像521也可以称为图片和/或帧。图像521被进一步分为图块。图块被进一步分为编码树单元(CTU)。编码树被应用于CTU以将CTU分为编码块。然后,可以根据帧内预测和/或帧间预测机制对上述编码块进行编码/解码。因此,图像521在编码器被编码在比特流500中。用于对图像521进行编码的编解码机制在SPS 510、PPS 512、以及图块组头514中描述。解码器可以接收比特流500。然后,解码器可以基于SPS 510、PPS 512、以及图块组头514中的数据对图像521进行解码。解码器还可以将图像521放入视频序列中以供显示。
图6是示出ARC机制600的示意图。例如,编解码器系统200、编码器300、和/或解码器400可以应用ARC机制600来改变比特流500中的图像的分辨率。作为另一示例,在方法100的执行期间,编码器和解码器可以应用ARC机制600来改变比特流的分段的分辨率。
ARC机制600可以应用于图像621、622、以及623,这些图像基本上类似于图像521。图像621、622、以及623中的每个图像可以包含有包含亮度值的亮度样本629和包含颜色值的色度样本。图像621、622、以及623的尺寸以及分辨率可以根据对应图像中的亮度样本629的数量来描述。例如,图像621和图像623包含比图像622更多的亮度样本629,因此图像621和图像623具有比图像622更高的分辨率。在所示的示例中,根据帧间预测对图像622进行编码,并且参考图像621对图像622进行编码。当根据指向图像621的对应编码块的运动矢量对图像622的至少一个编码块进行编码时,图像622参考图像621。此外,根据帧间预测对图像623进行编码,并且参考图像622对图像623进行编码。
ARC机制600允许在无需引入IRAP图像的情况下在图像621、622、以及623之间改变分辨率,并且因此改变亮度样本629的数量。虽然仍然可以使用IRAP图像例如以支持随机访问,但无需IRAP图像来支持分辨率改变。在所示的示例中,接收图像621并以第一分辨率对图像621进行解码。分辨率可以由第一PPS(例如,PPS 512)指示。然后,图像621被存储在解码图像缓冲区中。然后,图像622由解码器接收。第二PPS指示应该以第二分辨率对图像622进行解码。在所示的示例中,第二分辨率具有较少的亮度样本629,因此小于第一分辨率。分辨率的差异指示分辨率改变。因此,图像621被缩放到用于图像622的第二分辨率。图像621通过实线以较大的第一分辨率示出,通过虚线以较小的第二分辨率示出。如图所示,这是在图像621与图像622之间没有IRAP图像的情况下实现的。一旦图像621被重缩放,则图像621和图像622为同一分辨率,并且因此可以通过参考图像621来对图像622进行解码。在一个示例实施例中,可以将重缩放后的图像621存储在与未缩放的图像621分开的临时缓冲区中,以确保以第一分辨率呈现图像621。在另一示例实施例中,在解码图像缓冲区中维护缩放后的图像621的单个副本。因此,取决于显示顺序确定何时向渲染设备发送图像621以供显示,可以以缩放之前的第一分辨率或以缩放之后的第二分辨率显示图像621。
在所示的示例中,分辨率在图像622和图像623之间再次改变。然而,分辨率改变通常不会如图6所示的那样高频出现,给出该示例是为了说明ARC机制600支持增大分辨率或减小分辨率。在任何情况下,图像623在稍后的某个时间由解码器接收。第三PPS指示应该以不同于第二分辨率的第三分辨率对图像623进行解码。在所示的示例中,第三分辨率具有更多的亮度样本629,并且因此大于第二分辨率。分辨率的差异指示分辨率改变。因此,图像622被缩放到用于图像623的较大的第三分辨率。图像622通过实线以第二分辨率示出,通过虚线以第三分辨率示出。如图所示,这是在图像622与图像623之间没有IRAP图像的情况下实现的。一旦图像622被重缩放,则图像622和图像623为同一分辨率,并且因此可以通过参考图像622来对图像623进行解码。在一个示例实施例中,可以将重缩放后的图像622存储在与未缩放的图像622分开的临时缓冲区中,以确保以第二分辨率呈现图像622。在另一示例中,在解码图像缓冲区中维护缩放后的图像622的单个副本。因此,取决于显示顺序确定何时向渲染设备发送图像622以供显示,可以以缩放之前的第二分辨率或以缩放之后的第三分辨率显示图像622。也可以显示解码的图像623,并且可以继续进行编解码,直到视频序列完成或直到需要再次改变分辨率。
应注意,为了讨论的清楚而从解码器的角度描述ARC机制600。然而,ARC机制600也可以由编码器使用。例如,编码器例如基于来自解码器的请求和/或网络条件的改变来确定改变图像621、622、以及623之间的分辨率,以所选的分辨率对图像621、622、以及623进行编码,并且在对应的PPS中指示所选的分辨率。此外,编码器可以在编码之后对编码图像621、622、和/或623进行解码,以生成用于对后续图像进行编码的参考图像。这样,编码器还可以执行与解码器执行的解码步骤类似的解码步骤。
以下包括与视频编解码系统相关的附加信息。可以根据标准化文件格式存储比特流。文件格式标准包括如ISO/IEC 14496-12中所述的国际标准化组织基本媒体文件格式(international organization for standardization base media file format,ISOBMFF)、以及从ISOBMFF导出的其他文件格式标准,包括MPEG-4文件(例如,ISO/IEC14496-14)、第三代合作伙伴计划(3rd generation partnership project,3GPP)文件格式(例如,3GPP技术规范(technical specification,TS)26.244)、以及AVC文件格式(例如,ISO/IEC 14496-15)。其他机制将ISOBMFF扩展用于特定应用,例如,将NAL单元结构化视频承载在ISOBMFF(例如,ISO/IEC 14496-15)中。H.264/AVC和HEVC及其扩展是NAL单元结构化视频的示例。
ISOBMFF可以用于许多编解码器封装格式,例如AVC文件格式、多媒体容器格式(例如,MPEG-4文件格式)、3GPP文件格式(3GP)、以及数字视频广播(digital videobroadcasting,DVB)文件格式。除了连续媒体(例如,音频和视频)之外,静态媒体(例如,图片)以及元数据也可以存储在符合ISOBMFF的文件中。根据ISOBMFF结构化的文件可以用于许多目的,包括本地媒体文件播放、远程文件的渐进式下载、用于基于HTTP的动态自适应流媒体(dynamic adaptive streaming over HTTP,DASH)的分段、用于待流式传输的内容和对应的分组化指令的容器、以及记录接收到的实时媒体流。因此,ISOBMFF可以用于流式传输机制(例如,渐进式下载和/或DASH)。例如,ISOBMFF中定义的电影片段可以用于流式传输。除了连续媒体(例如,音频和视频)之外,静态媒体(例如,图片)以及元数据也可以存储在符合ISOBMFF的文件中。
符合HEVC文件格式的文件可以使用一系列称为盒子(box)的对象。盒子可以是由唯一的类型标识符和长度定义的面向对象的构建块。盒子是ISOBMFF中的基本语法结构,可以包括四字符编解码的盒子类型、盒子的字节计数、以及有效载荷。在一些示例中,符合HEVC文件格式的文件中的所有数据可以包含在盒子内,并且文件中可能没有不在盒子中的数据。因此,ISOBMFF文件可以包括一系列盒子,并且盒子可以包含其他盒子。例如,盒子的有效载荷可以包括一个或多个附加盒子。
符合ISOBMFF的文件可以包括各种类型的盒子。例如,符合ISOBMFF的文件可以包括文件类型盒子、媒体数据盒子、电影盒子、电影片段盒子等。例如,文件类型盒子可以包括文件类型和兼容性信息。媒体数据盒子可以包含样本(例如,编解码图像)。电影盒子(“moov”)包含文件中存在的连续媒体流的元数据。每个连续媒体流可以在文件中表示为轨道。例如,电影盒子可以包含描述电影的元数据(例如,样本之间的逻辑和时序关系、以及指向样本位置的指针)。电影盒子可以包括若干类型的子盒。电影盒子中的子盒可以包括一个或多个轨道盒子。轨道盒子可以包括关于电影的单个轨道的信息。轨道盒子可以包括规定单个轨道的总体信息的轨道头盒子。此外,轨道盒子可以包括包含媒体信息盒子的媒体盒子。媒体信息盒子可以包括包含对轨道中的媒体样本进行索引的数据的样本表盒子。样本表盒子中的信息可以用于在时间上定位样本,并且对于轨道中的每个样本,可以用于确定样本的类型、尺寸、容器、以及到该容器中的偏移。因此,轨道的元数据装在轨道盒子(“trak”)中,而轨道的媒体内容装在媒体数据盒子(“mdat”)中或直接装在单独的文件中。轨道的媒体内容包括样本序列,例如音频或视频访问单元。
例如,ISOBMFF规定包含基本媒体流的媒体轨道、包括媒体传输指令或表示接收的包流的提示轨道、以及包括时间同步元数据的定时元数据轨道。每个轨道的元数据包括样本描述条目的列表,每个列表提供在轨道中使用的编解码或封装格式以及用于处理该格式的初始化数据。每个样本可以与轨道的样本描述条目中的一个相关联。
ISOBMFF允许使用各种机制规定样本专用的元数据。样本表盒子(“stbl”)包含样本表,该样本表包含轨道中的媒体样本的所有时间和数据索引。样本表盒子中的表可以用于在时间上定位样本、确定样本类型(例如,I帧或非I帧)、确定样本尺寸、确定样本容器、以及确定与该容器相关联的偏移。
电影片段盒子是顶层盒子。电影片段盒子可以包含一个或多个轨道片段(“traf”)盒子。在电影片段内可以不包括轨道片段或包括多个轨道片段。轨道片段可以不包含轨道运行(track run)或包含多个轨道运行,每个轨道运行记录对应轨道的样本的连续运行。例如,每个轨道运行可以包含按规定顺序(例如,解码顺序)连续的图像的样本。轨道片段盒子包括一个或多个轨道片段的元数据。例如,轨道片段盒子可以包括轨道片段头盒子,轨道片段头盒子指示轨道标识符(identifier,ID)、基本数据偏移、样本描述索引、默认样本持续时间、默认样本尺寸、以及默认样本标志。轨道片段盒子可以包括一个或多个轨道片段运行盒子,每个轨道片段运行盒子记录轨道的样本的连续列表。例如,轨道片段盒子可以包括语法元素,该语法元素指示样本计数、数据偏移、样本标志、样本持续时间、样本尺寸、样本合成时间偏移等。在这些结构中,许多字段是可选的,并且可以设置为默认值。
ISOBMFF支持流访问点(stream access point,SAP)。SAP允许随机访问媒体流的容器。容器可以包含多个媒体流。每个媒体流是特定媒体类型的连续媒体的编码版本。SAP是容器中允许播放所标识的媒体流的位置。SAP位置允许只使用在该位置之后容器中包含的信息以及初始化数据(如果适用)来发起播放,初始化数据可以是外部可用的和/或从容器的其他部分获得。衍生规范应该规定是否使用初始化数据在SAP处访问容器、以及如何访问初始化数据。
可以使用六种类型的SAP。第1类SAP对应于封闭GOP随机访问点,其中,按解码顺序在SAP之后的所有访问单元都能被正确解码。这实现正确解码的访问单元的连续的没有间隔的时间序列。此外,按解码顺序的第一访问单元也是按合成顺序的第一访问单元。第2类SAP对应于封闭GOP随机访问点,其中,媒体流中按解码顺序的第一访问单元不是按合成顺序的第一访问单元。第3类SAP对应于开放GOP随机访问点,其中,存在按解码顺序在随机访问点之后的一些不能被正确解码的访问单元。此外,随机访问点访问单元可以不是按合成顺序的第一访问单元。第4类SAP对应于逐渐解码刷新(gradual decoding refresh,GDR)起始点。第5类SAP对应于以下情况:存在按解码顺序在第一访问单元之后的至少一个不能被正确解码的访问单元。此外,这样的访问单元具有大于TDEC的呈现时间,其中,TDEC是在用于解码的第一访问单元之后的任何访问单元的最早呈现时间。第6类SAP对应于以下情况:存在按解码顺序在第一访问单元之后的至少一个不能被正确解码的访问单元。此外,这样的访问单元具有大于TDEC的呈现时间,其中,TDEC不是在用于解码的第一访问单元之后的任何访问单元的最早呈现时间。
如ISO/IEC 23009-1中所规定的,DASH是可以使用本文所述机制的示例自适应流媒体应用。DASH规定媒体呈现描述(media presentation description,MPD)(也称为清单)的格式,并且规定媒体分段的格式。MPD描述服务器上可用的媒体,使得DASH客户端可自主选择和下载所需的媒体版本,同时动态地适应不断改变的网络条件。DASH基于分层数据模型。一个呈现由一个MPD文档描述。MPD描述了构成媒体呈现的时间周期序列。周期可以表示媒体内容周期,在该媒体内容周期期间,媒体内容的编码版本的一致列表是可用的。例如,可用比特率、语言、标题、字幕等的列表在一个周期期间可能不会改变。
在一个周期内,材料被布置为自适应集。自适应集表示一个或多个媒体内容分量的可互换编码版本的列表。例如,一个自适应集可以包括主视频分量,并且单独的自适应集可以包括主音频分量。其他可用材料(例如,字幕或音频描述)可以各自包括在单独的自适应集中。也可以以复用形式提供材料,在这种情况下,复用的可互换版本可以描述为单个自适应集。例如,自适应集可以被复用以在一个周期内包含主音频和主视频。可以通过媒体内容分量描述来单独描述每个复用的分量。
自适应集包含表示的列表。表示描述了一个或多个媒体内容分量的可传送的编码版本。表示包括一个或多个媒体流(例如,一个媒体流用于复用中的每个媒体内容分量)。自适应集内的任何单个表示都足以渲染所包含的媒体内容分量。通过在一个自适应集中收集不同的表示,MPD指示这些表示代表感知上等效的内容。因此,客户端可以在自适应集内动态地从表示切换到表示,以适应网络条件或其他因素。切换是指呈现解码数据,直到某一时间t,并且从时间t开始呈现另一表示的解码数据。如果表示被包括在一个自适应集中,并且客户端适当地切换,则将在切换中无缝感知媒体表示。客户端可能会忽略依赖编解码器或其他不支持或不合适的渲染技术的表示。在表示中,可以在时间上将内容分为分段以用于适当的访问和传送。为了访问分段,为每个分段提供统一源定位符(universal resourcelocator,URL)。因此,分段是可以通过单个HTTP请求检索的最大数据单元。
DASH的示例过程可以包括以下步骤。客户端首先获得流媒体内容(例如,电影)的MPD。MPD包括描述不同替代表示的信息,例如,流媒体内容的比特率、视频分辨率、以及帧率、音频语言、以及指示的HTTP资源(例如,初始化分段或媒体分段)的URL。基于MPD中的信息和客户端的本地信息,客户端每次可以请求所需的表示(一个分段(或分段的一部分))。这样的客户端本地信息可以包括网络带宽、解码/显示能力、以及用户偏好。当客户端检测到网络带宽改变时,客户端可以请求比特率更匹配的不同表示的分段。这种切换可能发生在该分段的随机访问点。在HTTP流媒体会话期间,用户可以请求向后搜索到媒体呈现中的过去位置或向前搜索到将来位置。这可以由客户端通过请求从最接近所需位置的分段的随机访问点开始的过去分段或将来分段来实现。用户还可以请求快进内容,这可以通过请求用于仅对帧内编码视频图像或仅对视频流的时间子列表进行解码的足够的数据来实现。
如上所述,DASH和其他视频编解码系统在改变视频内容分辨率时可能依赖随机访问点,并且因此依赖IRAP图像。本公开通过提供支持视频编解码中的自适应分辨率改变而不依赖IRAP图像充当随机访问点的机制来改进这些技术。因此,所公开的机制允许在无需引入IRAP图像的情况下在流或编解码序列内改变图像分辨率。
本公开包括以下示例实施例以在没有IRAP图像的情况下实现分辨率改变。在第一示例中,可以在比特流中信令通知可能的图像分辨率的列表。在另一示例中,上述可能的图像分辨率的列表可以包括在编解码视频序列的参数集中,其中,参数集由图像直接参考或间接参考。可以信令通知图像尺寸的数量。在示例中,默认信令通知至少一个图像尺寸。因此,代替信令通知上述图像尺寸的数量,可以信令通知上述图像尺寸的数量减1,这使得节省一个比特。可以根据以亮度样本为单位的图像宽度和高度来信令通知图像尺寸的列表。可以在至少对于编解码视频序列持续存在的参数集中信令通知上述图像尺寸的数量和上述图像分辨率的列表。这样的参数集可以是SPS。为了进一步提高信令效率,可以如下信令通知图像尺寸(宽度和高度)的列表。第一条目可以信令通知为绝对值,而每个其他条目可以信令通知为相对于先前的条目的宽度和高度的增量宽度和增量高度。还可以在由图像直接参考的参数集(例如,PPS)中信令通知图像尺寸索引。图像尺寸索引是在SPS中信令通知的图像尺寸的列表的索引。图像的图像尺寸是在SPS中通过图像尺寸索引指向的索引信令通知的图像尺寸列表中的图像宽度和高度。可以由称为picture_size_idx的语法元素信令通知图像尺寸索引。picture_size_idx的存在还可以是基于SPS中的图像尺寸列表中的图像尺寸的数量的条件。当该列表中只有一个图像尺寸时,picture_size_idx可能不存在,并且可以推断为等于零。
在第二示例中,可以如下在SPS中信令通知图像尺寸的列表。可以基于图像尺寸(例如,基于编解码视频序列的最小图像尺寸或最大图像尺寸)来执行信令通知。例如,可以信令通知图像尺寸改变的比率。这样的比率可以规定图像尺寸相对于先前的图像尺寸的改变。例如,比率为2指示当前图像宽度是先前图像宽度的两倍。同样地,图像高度可以信令通知为先前图像高度的两倍。为了节省比特,因为当前图像尺寸应该不同于先前图像尺寸,所以可以使用具有_minus2项的信令技术。不允许比率为零。还可以信令通知图像尺寸的数量。例如,默认信令通知至少一个图像尺寸。因此,可以信令通知上述图像尺寸的数量减1而非信令通知上述图像尺寸的数量,以节省比特。
在第三示例中,与输出尺寸相关的信息可以包括在由图像直接参考或间接参考的参数集中。解码器可以使用输出尺寸来确定输出图像尺寸。例如,可以在PPS中信令通知输出尺寸信息。图像输出尺寸可以被约束为SPS中信令通知的图像尺寸列表中的图像尺寸之一。因此,可以使用在SPS中信令通知的图像尺寸列表的索引来信令通知图像输出尺寸。例如,可以由称为picture_output_size_idx的语法元素信令通知图像输出尺寸。picture_output_size_idx的存在还可以是基于SPS中的图像尺寸列表的图像尺寸的数量的条件。当该列表只包含一个图像尺寸时,可以省略picture_output_size_idx。在这种情况下,可以推断picture_output_size_idx的值等于零。
在第四示例中,解码图像可以以其原始图像尺寸存储在DPB中。然后,当该解码图像被具有不同尺寸的图像参考时,可以对该解码图像进行缩放。在一些示例中,得到的缩放后的图像可以存储在临时缓冲区中。
在第五示例中,参考图像可以以原始尺寸或缩放后的尺寸(例如,放大或缩小)存在于DPB中。DPB中只能存在参考图像的一个版本。因此,当图像被缩放时,可以不维护参考的单独版本。为了简单起见,参考图像只能从原始尺寸缩放一次。当解码器准备输出DPB中的图像时,解码器应该检查图像的尺寸是否与输出尺寸不同。如果尺寸不同,则解码器可以缩放图像尺寸以匹配输出尺寸。
以下描述所公开的机制的特定示例实施方式。可以如下执行简单的ARC操作。图像的空间分辨率可能与应用于一个维度或两个维度的先前图像的标称分辨率相差0.5倍。空间分辨率改变可能增大或减小,这产生0.5和2.0的缩放比。视频格式的宽高比和色度格式可能不变。可以根据空间分辨率的改变按比例缩放剪切区域(cropping area)。可以按需对参考图像进行重缩放,这允许帧间预测在没有修改的情况下操作。可以使用1:2缩小滤波器。该滤波器可以具有零相位和5个抽头(例如,(-1,9,16,9,-1)/32)。下采样点可以在偶数样本位置处并且可以共址。同一过滤器用于亮度和色度。对于2:1上采样,可以使用半像素运动补偿插值滤波器系数来生成奇数网格位置处的附加样本。组合的上采样和下采样可能不改变色度采样点的相位或位置。
示例序列参数集RBSP的语法和语义如下。
Figure BDA0003140601060000191
num_pic_size_in_luma_samples_minus1加1规定编解码视频序列中可能存在的以亮度样本为单位的图像尺寸(宽度和高度)的数量。pic_width_in_luma_samples[i]规定编解码视频序列中可能存在的以亮度样本为单位的解码图像的第i个宽度。pic_width_in_luma_samples[i]不应该等于零,并且应该为MinCbSizeY的整数倍。pic_height_in_luma_samples[i]规定编解码视频序列中可能存在的以亮度样本为单位的解码图像的第i个高度。pic_height_in_luma_samples[i]不应该等于零,并且应该为MinCbSizeY的整数倍。
示例图像参数集RBSP的语法和语义如下。
Figure BDA0003140601060000201
pic_size_idx规定序列参数集中第i个图像尺寸的索引。参考图像参数集的图像的宽度是以亮度样本为单位的pic_width_in_luma_samples[pic_size_idx]。同样地,参考图像参数集的图像的高度是以亮度样本为单位的pic_height_in_luma_samples[pic_size_idx]。output_pic_size_idx规定用于图像的输出的图像尺寸。输出尺寸索引参考序列参数集中的图像尺寸。参考图像参数集的图像的输出宽度是以亮度样本为单位的pic_width_in_luma_samples[pic_size_idx]。同样地,参考图像参数集的图像的输出高度是以亮度样本为单位的pic_height_in_luma_samples[pic_size_idx]。
图7是示例视频编解码设备700的示意图。视频编解码设备700适用于实现如本文所述的公开的示例/实施例。视频编解码设备700包括下游端口720、上游端口750、和/或收发器单元(Tx/Rx)710,Tx/Rx 710包括用于通过网络上游和/或下游传输数据的发射器和/或接收器。视频编解码设备700还包括处理器730和用于存储数据的存储器732,处理器730包括用于处理数据的逻辑单元和/或中央处理单元(central processing unit,CPU)。视频编解码设备700还可以包括耦合到上游端口750和/或下游端口720的电、光电(optical-to-electrical,OE)组件、电光(electrical-to-optical,EO)组件、和/或无线通信组件,用于经由电、光、或无线通信网络进行数据传输。编解码设备700还可以包括用于向用户传输数据和从用户传输数据的输入和/或输出(input and/or output,I/O)设备760。I/O设备760可以包括输出设备(例如,用于显示视频数据的显示器、用于输出音频数据的扬声器等)。I/O设备760还可以包括输入设备(例如,键盘、鼠标、跟踪球等)和/或用于与这些输出设备交互的对应接口。
处理器730由硬件和软件实现。处理器730可以实现为一个或多个CPU芯片、核(例如,作为多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuit,ASIC)、以及数字信号处理器(digital signal processor,DSP)。处理器730与下游端口720、Tx/Rx 710、上游端口750、以及存储器732通信。处理器730包括编解码模块714。编解码模块714实现本文所述的公开的实施例,例如方法100、方法800、以及方法900,编解码模块714可以使用比特流500和/或ARC机制600。编解码模块714还可以实现本文所述的任何其他方法/机制。此外,编解码模块714可以实现编解码器系统200、编码器300、和/或解码器400。例如,当充当编码器时,编解码模块714可以在第一PPS中指示第一图像的分辨率大小。编解码模块714可以例如基于来自解码器的请求来确定改变比特流中的图像的分辨率大小。然后,编解码模块714可以确定以第二尺寸将第二图像编码在比特流中,并且可以在第二PPS中指示第二尺寸。然后,编解码模块714可以在DPB中将第一图像缩放到第二尺寸,并且基于第一图像经由帧间预测对第二图像进行编码。当充当解码器时,编解码模块714可以通过读取第一PPS和第二PPS来确定分辨率改变。然后,编解码模块714可以在DPB中重缩放第一图像,并且基于具有第二尺寸的第一图像以第二尺寸对第二图像进行解码。这样,编解码模块714通过在不引入IRAP图像的情况下允许比特流中的分辨率改变来改进视频编解码设备700的功能以及解决特定于视频编解码技术的问题。此外,编解码模块714影响视频编解码设备700到不同状态的转换。或者,编解码模块714可以实现为存储在存储器732中并且由处理器730执行的指令(例如,实现为存储在非暂时性介质上的计算机程序产品)。
存储器732包括一个或多个存储器类型,例如磁盘、磁带驱动器、固态驱动器、只读存储器(read-only memory,ROM)、随机存取存储器(random-access memory,RAM)、三态内容可寻址存储器(ternary content-addressable memory,TCAM)、静态随机存取存储器(static random-access memory,SRAM)等。存储器732可以用作溢出数据存储设备,以在选择执行程序时存储这些程序,并且在程序执行期间存储读取的指令和数据。
图8是经由ARC(例如,使用ARC机制600)对比特流(例如,比特流500)进行编码的示例方法800的流程图。当执行方法100时,方法800可以由编码器(例如,编解码器系统200、编码器300、和/或视频编解码设备700)使用。
方法800可以在编码器接收包括多个图片的视频序列并且例如基于用户输入确定将该视频序列编码在比特流中时开始。在步骤801,以第一图像尺寸将第一图像编码在比特流中。在步骤803,以第一图像尺寸对第一图像进行解码,以创建解码参考图像。然后,将解码参考图像存储在解码图像缓冲区中。可以将解码参考图像存储在解码图像缓冲区中以允许根据帧间预测基于解码参考图像对后续图像进行编码。例如,可以使用运动矢量通过参考第一图像的编码块对后续图像的编码块进行编码。
在步骤805,编码器可以确定以第二图像尺寸对第二图像进行编码。例如,编码器可以从解码器接收请求,该请求指示网络条件已经改变并且不同的图像分辨率(例如,更高或更低的分辨率)将实现更好的用户体验。编码器确定根据帧间预测对第二图像进行编码。具体地,编码器确定通过参考上述解码参考图像来对第二图像进行编码。在该上下文中,对解码参考图像的参考指示通过参考解码参考图像的编码块(例如,通过根据帧间预测机制使用运动矢量)来对第二图像的至少一个编码块进行编解码。第一图像尺寸与第二图像尺寸不同。这样,编码器确定第二图像尺寸与第一图像尺寸不同,因此发生了分辨率改变。因此,编码器将解码参考图像缩放到第二图像尺寸。在一些示例中,直到第二图像参考解码参考图像,才对解码参考图像进行缩放。在一些示例中,解码参考图像可以在缩放后被存储在临时缓冲区中,例如以支持维护多分辨率。在其他示例中,尽管进行了缩放,存储器仍维护解码参考图像的单个版本。
在步骤807,基于具有第二图像尺寸的解码参考图像以第二图像尺寸将第二图像编码在比特流中。第一图像和第二图像在比特流中可以不被IRAP图像隔开。因此,基于缩放后的解码参考图像的缩放和编码支持具有提高的编解码效率的改进的ARC机制。
在步骤809,编码器在与第一图像相关联的第一PPS中指示第一图像尺寸,并且在与第二图像相关联的第二PPS中指示第二图像尺寸。例如,可以在比特流中(在PPS中)以亮度样本为单位指示第一图像尺寸和第二图像尺寸。在步骤811,存储上述比特流以向解码器通信。该比特流还可以按需流式传输到解码器。
图9是经由ARC(例如,使用ARC机制600)对比特流(例如,比特流500)进行解码的示例方法900的流程图。当执行方法100时,方法900可以由解码器(例如,编解码器系统200、解码器400、和/或视频编解码设备700)使用。
方法900可以在解码器开始接收表示视频序列的编解码数据的比特流(例如作为方法800的结果)时开始。在步骤901,在解码器接收比特流。该比特流包括多个PPS和具有多个图像尺寸的多个图像。在步骤903,解码器从第一PPS确定第一图像的第一图像尺寸。解码器以第一图像尺寸对第一图像进行解码,以创建解码参考图像。解码参考图像也存储在解码图像缓冲区中。
在步骤905,解码器从第二PPS确定第二图像的第二图像尺寸。根据帧间预测通过参考解码参考图像对第二图像进行编解码。在该上下文中,对解码参考图像的参考指示通过参考解码参考图像的编码块(例如,通过根据帧间预测机制使用运动矢量)来对第二图像的至少一个编码块进行编解码。可以在比特流中(在PPS中)以亮度样本为单位指示第一图像尺寸和第二图像尺寸。
第一图像尺寸与第二图像尺寸不同。这样,解码器确定第二图像尺寸与第一图像尺寸不同,因此发生了分辨率改变。因此,在步骤907,解码器将解码参考图像缩放到第二图像尺寸。在一些示例中,直到第二图像参考解码参考图像,才对解码参考图像进行缩放。在一些示例中,解码参考图像可以在缩放后被存储在临时缓冲区中,例如以支持保持多分辨率。在其他示例中,尽管进行了缩放,存储器仍维护解码参考图像的单个版本。
在步骤909,基于具有第二图像尺寸的解码参考图像以第二图像尺寸对第二图像进行解码。第一图像和第二图像在比特流中可以不被IRAP图像隔开。因此,基于缩放后的解码参考图像的缩放和编码支持具有提高的编解码效率的改进的ARC机制。在步骤911,向显示设备转发第一图像和第二图像,以作为根据ARC生成的解码视频序列的一部分显示给用户。
图10是用于经由ARC(例如,使用ARC机制600)对比特流(例如,比特流500)中的视频序列进行编解码的示例系统1000的示意图。系统1000可以由编码器和解码器(例如,编解码器系统200、编码器300、解码器400、和/或视频编解码设备700)实现。此外,当实现方法100、方法800、和/或方法900时,可以使用系统1000。
系统1000包括视频编码器1010。视频编码器1010包括第一编码模块1011,用于以第一图像尺寸将第一图像编码在比特流中。视频编码器1010还包括解码模块1012,用于以第一图像尺寸对第一图像进行解码,以创建解码参考图像。视频编码器1010还包括第一存储模块1013,用于将解码参考图像存储在解码图像缓冲区中。视频编码器1010还包括确定模块1014,用于确定以第二图像尺寸对第二图像进行编码,其中,该第二图像参考解码参考图像。视频编码器1010还包括缩放模块1015,用于将解码参考图像缩放到第二图像尺寸。视频编码器1010还包括第二编码模块1016,用于基于具有第二图像尺寸的解码参考图像以第二图像尺寸将第二图像编码在比特流中。视频编码器1010还包括尺寸指示模块1017,用于在与第一图像相关联的第一PPS中指示第一图像尺寸,并且在与第二图像相关联的第二PPS中指示第二图像尺寸。视频编码器1010还包括第二存储模块1018,用于存储上述比特流以向解码器通信。视频编码器1010还包括发送模块1019,用于向解码器发送比特流。视频编码器1010还可以用于执行方法800的任何步骤。
系统1000还包括视频解码器1020。视频解码器1020包括接收模块1021,用于接收包括多个PPS和具有多个图像尺寸的多个图像的比特流。视频解码器1020还包括第一确定模块1022,用于从第一PPS确定第一图像的第一图像尺寸。视频解码器1020还包括第一解码模块1023,用于以第一图像尺寸对第一图像进行解码,以创建解码参考图像。视频解码器1020还包括存储模块1024,用于将解码参考图像存储在解码图像缓冲区中。视频解码器1020还包括第二确定模块1025,用于从第二PPS确定第二图像的第二图像尺寸,其中,该第二图像根据帧间预测参考解码参考图像。视频解码器1020还包括缩放模块1026,用于将解码参考图像缩放到第二图像尺寸。视频解码器1020还包括第二解码模块1027,用于基于具有第二图像尺寸的解码参考图像以第二图像尺寸对第二图像进行解码。视频解码器1020还可以用于执行方法900的任何步骤。
当第一组件和第二组件之间不存在中间组件(除了线、迹线、或另一介质)时,第一组件直接耦合至第二组件。当第一组件和第二组件之间存在除线、迹线、或另一介质之外的中间组件时,第一组件间接耦合至第二组件。术语“耦合”及其变体包括直接耦合和间接耦合。除非另有说明,否则术语“约”的使用是指包括随后数字的±10%的范围。
还应理解,本文阐述的示例性方法的步骤不必以所述顺序执行,并且这样的方法的步骤的顺序应理解为仅是示例性的。同样地,在与本公开的各种实施例一致的方法中,可以在这样的方法中包括附加步骤,并且可以省略或组合特定步骤。
虽然在本公开中已经提供了若干实施例,但是可以理解,在不脱离本公开的精神或范围的情况下,可以以许多其他特定形式来实现所公开的系统和方法。本示例被认为是说明性而非限制性的,并且本发明的意图不限于本文给出的细节。例如,可以将各种元件或组件组合或集成在另一系统中,或者可以省略或不实现一些特征。
此外,在不脱离本公开的范围的情况下,各种实施例中描述并示出为离散或分离的技术、系统、子系统、以及方法可以与其他系统、模块、技术、或方法组合或集成。本领域技术人员可以在不脱离本文公开的精神和范围的情况下确定并做出改变、替换、以及变更的其他示例。

Claims (19)

1.一种在解码器中实现的方法,所述方法包括:
所述解码器的接收器接收包括多个图像参数集PPS和具有多个图像尺寸的多个图像的比特流;
所述解码器的处理器从第一PPS确定第一图像的第一图像尺寸;
所述处理器以所述第一图像尺寸对所述第一图像进行解码,以创建解码参考图像;
所述解码器的存储器将所述解码参考图像存储在解码图像缓冲区中;
所述解码器的处理器从第二PPS确定第二图像的第二图像尺寸,其中,所述第二图像根据帧间预测参考所述解码参考图像;
所述处理器将所述解码参考图像从所述第一图像尺寸缩放到所述第二图像尺寸,其中,所述第一图像尺寸和所述第二图像尺寸为图像的分辨率,在所述比特流中以亮度样本为单位指示所述第一图像尺寸和所述第二图像尺寸;以及
所述处理器基于具有所述第二图像尺寸的所述解码参考图像以所述第二图像尺寸对所述第二图像进行解码。
2.根据权利要求1所述的方法,其中,所述第一图像和所述第二图像在所述比特流中不被帧内随机访问点IRAP图像隔开。
3.根据权利要求1至2中任一项所述的方法,其中,直到所述第二图像参考所述解码参考图像,才对所述解码参考图像进行缩放。
4.根据权利要求1至2中任一项所述的方法,其中,所述解码参考图像在缩放后被存储在临时缓冲区中。
5.根据权利要求1至2中任一项所述的方法,其中,所述第一图像尺寸与所述第二图像尺寸不同。
6.根据权利要求1至2中任一项所述的方法,还包括:所述处理器转发所述第一图像和所述第二图像以作为解码视频序列的一部分显示。
7.根据权利要求1至2中任一项所述的方法,其中,尽管进行了缩放,所述存储器仍维护所述解码参考图像的单个版本。
8.一种在编码器中实现的方法,所述方法包括:
所述编码器的处理器以第一图像尺寸将第一图像编码在比特流中;
所述处理器以所述第一图像尺寸对所述第一图像进行解码,以创建解码参考图像;
所述编码器的存储器将所述解码参考图像存储在解码图像缓冲区中;
所述处理器确定以第二图像尺寸对第二图像进行编码,其中,所述第二图像参考所述解码参考图像;
所述处理器将所述解码参考图像从所述第一图像尺寸缩放到所述第二图像尺寸,其中,所述第一图像尺寸和所述第二图像尺寸为图像的分辨率,在所述比特流中以亮度样本为单位指示所述第一图像尺寸和所述第二图像尺寸;
所述处理器基于具有所述第二图像尺寸的所述解码参考图像以所述第二图像尺寸将所述第二图像编码在所述比特流中;
在与所述第一图像相关联的第一图像参数集PPS中指示所述第一图像尺寸,并且在与所述第二图像相关联的第二PPS中指示所述第二图像尺寸;以及
在所述存储器中存储所述比特流以向解码器通信。
9.根据权利要求8所述的方法,其中,所述第一图像和所述第二图像在所述比特流中不被帧内随机访问点IRAP图像隔开。
10.根据权利要求8至9中任一项所述的方法,其中,直到所述第二图像参考所述解码参考图像,才对所述解码参考图像进行缩放。
11.根据权利要求8至9中任一项所述的方法,其中,所述解码参考图像在缩放后被存储在临时缓冲区中。
12.根据权利要求8至9中任一项所述的方法,其中,所述第一图像尺寸与所述第二图像尺寸不同。
13.根据权利要求8至9中任一项所述的方法,其中,尽管进行了缩放,所述存储器仍维护所述解码参考图像的单个版本。
14.一种视频编解码设备,包括:
处理器、耦合到所述处理器的接收器、以及耦合到所述处理器的发射器,所述处理器、所述接收器、以及所述发射器用于执行根据权利要求1至13中任一项所述的方法。
15.一种非暂时性计算机可读介质,包括由视频编解码设备使用的计算机程序产品,所述计算机程序产品包括存储在所述非暂时性计算机可读介质上的计算机可执行指令,使得当由处理器执行时,所述计算机可执行指令使所述视频编解码设备执行根据权利要求1至13中任一项所述的方法。
16.一种解码器,包括:
接收装置,用于接收包括多个图像参数集PPS和具有多个图像尺寸的多个图像的比特流;
第一确定装置,用于从第一PPS确定第一图像的第一图像尺寸;
第一解码装置,用于以所述第一图像尺寸对所述第一图像进行解码,以创建解码参考图像;
存储装置,用于将所述解码参考图像存储在解码图像缓冲区中;
第二确定装置,用于从第二PPS确定第二图像的第二图像尺寸,其中,所述第二图像根据帧间预测参考所述解码参考图像;
缩放装置,用于将所述解码参考图像从所述第一图像尺寸缩放到所述第二图像尺寸,其中,所述第一图像尺寸和所述第二图像尺寸为图像的分辨率,在所述比特流中以亮度样本为单位指示所述第一图像尺寸和所述第二图像尺寸;以及
第二解码装置,用于基于具有所述第二图像尺寸的所述解码参考图像以所述第二图像尺寸对所述第二图像进行解码。
17.根据权利要求16所述的解码器,其中,所述解码器还用于执行根据权利要求2至7中任一项所述的方法。
18.一种编码器,包括:
第一编码装置,用于以第一图像尺寸将第一图像编码在比特流中;
解码装置,用于以所述第一图像尺寸对所述第一图像进行解码,以创建解码参考图像;
第一存储装置,用于将所述解码参考图像存储在解码图像缓冲区中;
确定装置,用于确定以第二图像尺寸对第二图像进行编码,其中,所述第二图像参考所述解码参考图像;
缩放装置,用于将所述解码参考图像从所述第一图像尺寸缩放到所述第二图像尺寸,其中,所述第一图像尺寸和所述第二图像尺寸为图像的分辨率,在所述比特流中以亮度样本为单位指示所述第一图像尺寸和所述第二图像尺寸;
第二编码装置,用于基于具有所述第二图像尺寸的所述解码参考图像以所述第二图像尺寸将所述第二图像编码在所述比特流中;
尺寸指示装置,用于在与所述第一图像相关联的第一图像参数集PPS中指示所述第一图像尺寸,并且在与所述第二图像相关联的第二PPS中指示所述第二图像尺寸;以及
第二存储装置,用于存储所述比特流以向解码器通信。
19.根据权利要求18所述的编码器,其中,所述编码器还用于执行根据权利要求9至13中任一项所述的方法。
CN201980087447.8A 2018-12-31 2019-12-27 支持视频编解码中的自适应分辨率改变 Active CN113228666B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862787104P 2018-12-31 2018-12-31
US62/787,104 2018-12-31
PCT/US2019/068777 WO2020142382A1 (en) 2018-12-31 2019-12-27 Support of adaptive resolution change in video coding

Publications (2)

Publication Number Publication Date
CN113228666A CN113228666A (zh) 2021-08-06
CN113228666B true CN113228666B (zh) 2022-12-30

Family

ID=71406532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980087447.8A Active CN113228666B (zh) 2018-12-31 2019-12-27 支持视频编解码中的自适应分辨率改变

Country Status (4)

Country Link
US (1) US11652985B2 (zh)
EP (1) EP3900346A4 (zh)
CN (1) CN113228666B (zh)
WO (1) WO2020142382A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022540429A (ja) 2019-07-08 2022-09-15 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 映像符号化における参照ピクチャリサンプリング用の複数のピクチャサイズおよびコンフォーマンスウインドウの処理

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003125407A (ja) * 2001-10-15 2003-04-25 Matsushita Electric Ind Co Ltd 画像復号装置、画像復号方法および画像復号プログラム
CN105556965A (zh) * 2013-07-15 2016-05-04 诺基亚技术有限公司 用于视频编码和解码的方法、装置和计算机程序产品
CN106961609A (zh) * 2016-01-08 2017-07-18 三星电子株式会社 用于处理参考图像的应用处理器及移动终端
WO2017162911A1 (en) * 2016-03-24 2017-09-28 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN107431819A (zh) * 2014-12-31 2017-12-01 诺基亚技术有限公司 用于可伸缩视频编码和解码的层间预测

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8358701B2 (en) * 2005-04-15 2013-01-22 Apple Inc. Switching decode resolution during video decoding
US8300700B2 (en) * 2005-09-20 2012-10-30 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
US8787688B2 (en) * 2011-10-13 2014-07-22 Sharp Laboratories Of America, Inc. Tracking a reference picture based on a designated picture on an electronic device
US9451252B2 (en) * 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
US8867852B2 (en) * 2012-01-19 2014-10-21 Sharp Kabushiki Kaisha Decoding a picture based on a reference picture set on an electronic device
US9207079B2 (en) * 2012-06-21 2015-12-08 Innovative Solutions & Support, Inc. Method and system for compensating for soft iron magnetic disturbances in a heading reference system
JP6290924B2 (ja) * 2013-01-07 2018-03-07 ノキア テクノロジーズ オサケユイチア ビデオ・コーディングおよびデコーディングのための方法と装置
EP3022921A4 (en) * 2013-07-14 2017-03-15 Sharp Kabushiki Kaisha Signaling indications and constraints
CN111064965B (zh) * 2014-03-16 2022-05-24 Vid拓展公司 用于无损视频译码的信令的方法、设备和计算机可读介质
US10506244B2 (en) * 2015-03-06 2019-12-10 Qualcomm Incorporated Method and apparatus for video coding using adaptive tile sizes
EP3355581A4 (en) 2015-09-23 2019-04-17 LG Electronics Inc. BILDCODING / DECODING METHOD AND DEVICE THEREFOR
CN117857812A (zh) * 2018-02-20 2024-04-09 弗劳恩霍夫应用研究促进协会 支持变化的分辨率和/或有效地处理区域级打包的图片/视频编码
US20220360802A1 (en) * 2019-08-06 2022-11-10 Op Solutions, Llc Frame buffering in adaptive resolution management
US11659201B2 (en) * 2019-08-16 2023-05-23 Qualcomm Incorporated Systems and methods for generating scaling ratios and full resolution pictures

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003125407A (ja) * 2001-10-15 2003-04-25 Matsushita Electric Ind Co Ltd 画像復号装置、画像復号方法および画像復号プログラム
CN105556965A (zh) * 2013-07-15 2016-05-04 诺基亚技术有限公司 用于视频编码和解码的方法、装置和计算机程序产品
CN107431819A (zh) * 2014-12-31 2017-12-01 诺基亚技术有限公司 用于可伸缩视频编码和解码的层间预测
CN106961609A (zh) * 2016-01-08 2017-07-18 三星电子株式会社 用于处理参考图像的应用处理器及移动终端
WO2017162911A1 (en) * 2016-03-24 2017-09-28 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding

Also Published As

Publication number Publication date
CN113228666A (zh) 2021-08-06
US11652985B2 (en) 2023-05-16
US20210329226A1 (en) 2021-10-21
WO2020142382A1 (en) 2020-07-09
EP3900346A1 (en) 2021-10-27
EP3900346A4 (en) 2022-05-18

Similar Documents

Publication Publication Date Title
CN115002467B (zh) 用于分辨率改变的解码图像缓冲区操作的方法和设备
CN115442595B (zh) 一种码流解码的方法、解码器及存储码流的设备
EP3864842A1 (en) Header parameter set for video coding
US20220132148A1 (en) Mixed NAL Unit Picture Constraints In Video Coding
US11563967B2 (en) On intra random access point pictures and leading pictures in video coding
KR20220003618A (ko) 비디오 코딩에서 복구 포인트 시그널링
US11818337B2 (en) Constraints on reference picture lists entries
KR20230129008A (ko) 교차 랜덤 액세스 포인트 시그널링 향상
US11652985B2 (en) Support of adaptive resolution change in video coding
CN114760476B (zh) 视频解码器初始化信息信令
CN116746150A (zh) 依赖随机接入点样点条目的信令通知
CA3151525A1 (en) Alf aps constraints in video coding

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