CN116506635B - 用于对图像执行逐步解码刷新处理的方法和系统 - Google Patents
用于对图像执行逐步解码刷新处理的方法和系统 Download PDFInfo
- Publication number
- CN116506635B CN116506635B CN202310357937.3A CN202310357937A CN116506635B CN 116506635 B CN116506635 B CN 116506635B CN 202310357937 A CN202310357937 A CN 202310357937A CN 116506635 B CN116506635 B CN 116506635B
- Authority
- CN
- China
- Prior art keywords
- gdr
- image
- region
- flag
- video sequence
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 171
- 230000000750 progressive effect Effects 0.000 title claims abstract description 19
- 238000012545 processing Methods 0.000 title abstract description 77
- 238000001914 filtration Methods 0.000 claims description 50
- 230000003044 adaptive effect Effects 0.000 claims description 36
- 238000005070 sampling Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 abstract description 19
- 230000008569 process Effects 0.000 description 87
- 238000013139 quantization Methods 0.000 description 32
- 230000015654 memory Effects 0.000 description 27
- 230000002123 temporal effect Effects 0.000 description 23
- 230000033001 locomotion Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000007906 compression Methods 0.000 description 11
- 230000006835 compression Effects 0.000 description 9
- 238000003491 array Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000011084 recovery Methods 0.000 description 7
- 230000011664 signaling Effects 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 230000006837 decompression Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101150114515 CTBS gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 201000003152 motion sickness Diseases 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
视频处理方法和装置包括:响应于接收一视频序列,对与所述视频序列相关联的参数集中第一标志数据进行编码,其中所述第一标志数据表示对所述视频序列启用或禁用逐步解码刷新(GDR);当所述第一标志数据表示对所述视频序列禁用所述GDR时,对与所述视频序列中的一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及对所述非GDR图像进行编码。
Description
相关申请的交叉引用
本公开要求在2019年12月27日提交、第62/954,011号美国临时申请的优先权,其全部内容通过引用并入本文。
技术领域
本公开一般涉及视频处理,并且更具体地,涉及用于对图像执行逐步解码刷新(GDR)处理的方法和系统。
背景技术
视频是一组采集视觉信息的静态图像(或“帧”)。为了减少存储内存和传输带宽,可以在存储或传输之前对视频进行压缩,然后在显示之前对视频进行解压缩。压缩过程通常称为编码,解压缩过程通常称为解码。有多种使用标准化视频编码技术的视频编码格式,最常见的是基于预测、变换、量化、熵编码和环内滤波。例如高效视频编码(HEVC/H.265)标准,通用视频编码(VVC/H.266)标准、AVS标准等视频编码标准指定特定视频编码格式,由标准化组织开发。随着视频标准中采用越来越多的先进视频编码技术,新的视频编码标准的编码效率越来越高。
发明内容
本公开实施例提供了一种用于视频处理的方法和装置。在一个方面,提供了一种非暂时性计算机可读介质。所述非暂时性计算机可读介质存储指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一种方法。所述方法包括:响应于接收一视频序列,对与所述视频序列相关联的参数集中的第一标志数据进行编码,其中所述第一标志数据表示对于所述视频序列启用或禁用逐步解码刷新(GDR);当所述第一标志数据表示对于所述视频序列禁用所述GDR时,对与所述视频序列中的一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及对所述非GDR图像进行编码。
在另一方面中,提供了非暂时性计算机可读介质。所述非暂时性计算机可读介质存储指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一方法。所述方法包括:响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及对所述非GDR图像进行解码。
在又一方面,提供了一种非暂时性计算机可读介质。所述非暂时性计算机可读介质存储指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一种方法。所述方法包括:响应于接收视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
在又一方面,提供了一种装置。所述装置包括:存储器,被配置为存储指令集;以及一个或多个处理器,所述一个或多个处理器通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行:响应于接收一视频序列,对与所述视频序列相关联的参数集中的第一标志数据进行编码,其中所述第一标志数据表示对于所述视频序列启用或禁用逐步解码刷新(GDR);当所述第一标志数据表示对于所述视频序列禁用所述GDR时,对与所述视频序列中的与一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及对所述非GDR图像进行编码。
在又一方面,提供了一种装置。所述装置包括:存储器,被配置为存储指令集;以及一个或多个处理器,所述一个或多个处理器通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行:响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及对所述非GDR图像进行解码。
在又一方面,提供了一种装置。所述装置包括:存储器,被配置为存储指令集;以及一个或多个处理器,所述一个或多个处理器通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行:
响应于接收到视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;
基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器
在又一方面,提供了一种方法。所述方法包括:响应于接收到视频序列,对与所述视频序列相关联的参数集中第一标志数据进行编码,其中所述第一标志数据表示对所述视频序列启用或禁用逐步解码刷新(GDR);当所述第一标志数据表示对所述视频序列禁用所述GDR,对与所述视频序列中的一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及对所述非GDR图像进行编码。
在又一方面,提供了一种方法。所述方法包括:响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及对所述非GDR图像进行解码。
在又一方面,提供了一种方法。所述方法包括:响应于接收视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
附图说明
在下面的详细描述和附图中示出了本公开的实施例和各个方面。图中所示的各种特征没有按比例绘制。
图1是示出了与本公开的一些实施例一致的示例视频序列的结构的示意图。
图2A示出了与本公开的一些实施例一致的混合视频编解码系统的示例编码过程的示意图。
图2B示出了与本公开的一些实施例一致的混合视频编解码系统的另一示例编码过程的示意图。
图3A示出了与本公开的一些实施例一致的混合视频编解码系统的示例性解码过程的示意图。
图3B示出了与本公开的一些实施例一致的混合视频编解码系统的另一示例解码过程的示意图。
图4示出了与本公开的一些实施例一致的用于对视频进行编码或解码的示例装置的框图。
图5是示出了与本公开的一些实施例一致的逐步解码刷新(GDR)的示例操作的示意图。
图6示出了与本公开的一些实施例一致的表1,其示出了启用GDR的序列参数集(SPS)的示例语法结构。
图7示出了与本公开的一些实施例一致的表2,其示出了启用GDR的图像头的示例语法结构。
图8示出了与本公开的一些实施例一致的表3,其示出了启用虚拟边界的SPS的示例语法结构。
图9示出了与本公开的一些实施例一致的表4,其示出了启用虚拟边界的图像头的示例语法结构。
图10示出了与本公开的一些实施例一致的表5,其示出了修改的图像头的示例语法结构。
图11示出了与本公开的一些实施例一致的表6,其示出了启用虚拟边界的修改的SPS的示例语法结构。
图12示出了与本公开的一些实施例一致的表7,其示出了启用虚拟边界的修改的图像头的示例语法结构。
图13示出了根据本公开的一些实施例的用于视频处理的示例过程的流程图。
图14示出了根据本公开的一些实施例的用于视频处理的另一示例过程的流程图。
图15示出了根据本公开的一些实施例的用于视频处理的又一示例过程的流程图。
具体实施方式
现在将详细参考示例性实施例,其示例在附图中示出。以下描述参照附图,除非另有说明,其中不同附图中的相同数字表示相同或相似的元件。在示例性实施例的以下描述中阐述的实施方式并不代表与本公开一致的所有实施方式。相反,它们仅是与如所附权利要求中所述的与本公开相关的方面一致的装置和方法的示例。下面更详细地描述本公开的特定方面。如果与通过引用并入的术语和/或定义相冲突的话,以本文提供的术语和定义为准。
ITU-T视频编码专家组(ITU-T VCEG)和ISO/IEC运动图像专家组(ISO/IEC MPEG)的联合视频专家小组(JVET)目前正在开发通用视频编码(VVC/H.266)标准。VVC标准旨在将其前身高效视频编码(HEVC/H.265)标准的压缩效率提高一倍。换句话说,VVC的目标是使用一半的带宽实现与HEVC/H.265相同的主观质量。
为了使用一半的带宽实现与HEVC/H.265相同的主观质量,JVET一直在使用联合探索模型(JEM)参考软件开发HEVC以外的技术。随着编码技术被纳入JEM,JEM实现了比HEVC更高的编码性能。
VVC标准是最近开发的,并且继续包括提供更好压缩性能的更多编码技术。VVC基于与HEVC、H.264/AVC、MPEG2、H.263等现代视频压缩标准中一直使用的混合视频编码系统。
视频是按时间顺序排列以存储视觉信息的一组静态图像(或“帧”)。可以使用视频采集设备(例如,相机)以时间顺序采集和存储这些图像,并且可以使用视频回放设备(例如,电视、计算机、智能手机、平板计算机、视频播放器、或任何具有显示功能的最终用户终端)显示时间序列中的此类图像。此外,在一些应用中,视频采集设备可以实时地将采集的视频发送到视频回放设备(例如,具有监视器的计算机),例如用于监视、会议或现场广播。
为了减少此类应用所需的存储空间和传输带宽,可以在存储和传输之前对视频进行压缩,并在显示之前进行解压缩。可以通过由处理器(例如,通用计算机的处理器)或专用硬件执行的软件来实现压缩和解压缩。用于压缩的模块通常被称为“编码器”,并且用于解压缩的模块通常被称为“解码器”。编码器和解码器可以统称为“编解码器”。编码器和解码器可以被实现为各种合适的硬件、软件、或其组合中的任何一种。例如,编码器和解码器的硬件实现可以包括电路,诸如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑或其任何组合。编码器和解码器的软件实现可以包括固定在计算机可读介质中的程序代码、计算机可执行指令、固件或任何合适的计算机实现的算法或过程。视频压缩和解压缩可以通过各种算法或标准来实现,例如MPEG-1、MPEG-2、MPEG-4、H.26x系列等。在一些应用中,编解码器可以从第一编码标准解压缩视频,并且使用第二编码标准重新压缩解压缩的视频,在这种情况下,编解码器可以被称为“转码器”。
视频编码过程可以识别并保留可用于重建图像的有用信息,并忽略不重要的重建信息。如果忽略不重要的信息不能被完全重建,则这样的编码过程可以被称为“有损”。否则,它可以被称为“无损”。大多数编码过程都是有损的,这是为了减少所需的存储空间和传输带宽的权衡。
被编码的图像(称为“当前图像”)的有用信息包括相对于参考图像(例如,先前编码和重建的图像)的变化。这样的变化可以包括像素的位置变化、亮度变化或颜色变化,其中位置变化是最受关注的。代表对象的一组像素的位置变化可以反映对象在参考图像和当前图像之间的运动。
未参考另一图像而编码的图像(即,它是自己的参考图像)被称为“I-图像”。使用先前图像作为参考图像编码的图像被称为“P-图像”,使用先前图像和将来图像作为参考图像编码的图像称为被称为“B图像”(参考是“双向”的)。
图1示出了根据本公开的一些实施例的示例视频序列100的结构。视频序列100可以是实况视频或已被采集和存档的视频。视频100可以是现实生活中的视频、电脑生成的视频(例如,计算机游戏视频)或二者组合(例如,具有增强现实效果的真实视频)。视频序列100可以从视频采集设备(例如,相机)、包含先前采集的视频档案(例如,存储在存储设备中的视频文件)或从视频内容提供商接收视频的视频馈送接口(例如,视频广播收发器)输入。
如图1所示,视频序列100可以包括沿时间线在时间上布置的一系列图像,包括图像102、104、106和108。图像102-106是连续的,在图像106和108之间有更多的图像。在图1中,图像102是I-图像,其参考图像是图像102本身。图像104是P-图像,其参考图像是图像102,如箭头所示。图像106是B图像,其参考图像是图像104和108,如箭头所示。在一些实施例中,图像的参考图像(例如,图像104)可以不紧接在图像之前或之后。例如,图像104的参考图像可以是图像102之前的图像。需要说明的是,图像102-106的参考图像仅仅是示例,本公开并不限定如图1所示的参考图像的实施例。
通常,由于编解码任务的计算复杂性,视频编解码器不会一次对整个图像进行编码或解码。相反,他们可以将图像分割成基本段,并逐段对图像段进行编码或解码。在本公开中,这样的基本段被称为基本处理单元(“BPU”)。例如,图1中的结构110示出了视频序列100的图像(例如,图像102-108中的任何图像)的示例结构。在结构110中,图像被划分为4×4基本处理单元,其边界被示出为虚线。在一些实施例中,基本处理单元可以在一些视频编码标准(例如,MPEG族、H.261、H.263或H.264/AVC)中被称为“宏块”,或者在一些其它视频编码标准(例如,H.265/HEVC或H.266/VVC)中被称为“编码树单元”(“CTU”)。基本处理单元可以在图像中具有可变的大小,例如128×128、64×64、32×32、16×16、4×8、16×32或任意形状和大小的像素。可以基于编码效率和要保持在基本处理单元中的细节水平的平衡来为图像选择基本处理单元的尺寸和形状。
基本处理单元可以是逻辑单元,其可以包括存储在计算机存储器中(例如,在视频帧缓冲区中)的一组不同类型的视频数据。例如,彩色图像的基本处理单元可以包括表示消色差亮度信息的亮度分量(Y)、表示颜色信息的一个或多个色度分量(例如,Cb和Cr)以及相关联的语法元素,其中亮度和色度分量可以具有与基本处理单元的相同大小。在一些视频编码标准(例如,H.265/HEVC或H.266/VVC)中,亮度和色度分量可以被称为“编码树块”(“CTB”)。对基本处理单元执行的任何操作都可以对其亮度和色度分量中的每一个重复执行。
视频编码具有多个操作阶段,其示例如图2A-2B和图3A-3B所示。对于每个阶段,基本处理单元的大小对于处理仍然可能太大,因此可以进一步分为在本公开中称为“基本处理子单元”的段。在一些实施例中,基本处理子单元可以在一些视频编码标准(例如,MPEG族、H.261、H.263或H.264/AVC)中被称为“块”,或者作为一些其他视频编码标准(例如,H.265/HEVC或H.266/VVC)中的“编码单元”(“CU”)。基本处理子单元可以具有与基本处理单元相同的大小或具有比基本处理单元更小的大小。与基本处理单元类似,基本处理子单元也是逻辑单元,其可以包括存储在计算机存储器(例如,在视频帧缓冲区中)中的一组不同类型的视频数据(例如,Y、Cb、Cr和相关联的语法元素)。对基本处理子单元执行的任何操作都可以对其亮度和色度分量中的每一个重复执行。应该注意的是,可以根据处理需要将这种划分执行到进一步的级别。还应注意,不同阶段可以使用不同的方案来划分基本处理单元。
例如,在模式决策阶段(其示例在图2A中示出,编码器可以决定对基本处理单元使用什么预测模式(例如,帧内预测或帧间预测),该基本处理单元可能太大而无法做出这样的决定。编码器可以将基本处理单元划分成多个基本处理子单元(例如,如H.265/HEVC或H.266/VVC中的CU),并且决定每个单独的基本处理子单元的预测类型。
对于另一个示例,在预测阶段(其示例在图2A-2B中示出),编码器可以在基本处理子单元(例如,CU)的级别上执行预测操作。但是,在某些情况下,基本处理子单元仍然可能太大而无法处理。编码器可以进一步将基本处理子单元划分成更小的段(例如,在H.265/HEVC或H.266/VVC中称为“预测块”或“PB”),在该级别上可以执行预测操作。
对于另一个示例,在变换阶段(其示例在图2A-2B中示出),编码器可以对残差基本处理子单元(例如,CU)执行变换操作。但是,在某些情况下,基本处理子单元仍然可能太大而无法处理。编码器可以进一步将基本处理子单元分成更小的段(例如,在H.265/HEVC或H.266/VVC中称为“变换块”或“TB”),在该级别上可以执行变换操作。需要注意的是,同一基本处理子单元的划分方案在预测阶段和变换阶段可以不同。例如,在H.265/HEVC或H.266/VVC中,相同CU的预测块和变换块可以具有不同的大小和数量。
在图1的结构110中,将基本处理单元112进一步分为3×3个基本处理子单元,其边界以虚线示出。同一图像的不同基本处理单元可以在不同的方案中划分为基本处理子单元。
在一些实施方式中,为了提供并行处理的能力以及对视频编码和解码的容错能力,可以将图像划分成用于处理的区域,使得对于图像的区域,编码或解码过程可以不依赖于来自图像的任何其他区域的信息。换句话说,图像的每个区域都可以独立处理。通过这样做,编解码器可以并行处理图像的不同区域,从而提高了编码效率。此外,当一区域的数据在处理中被损坏或在网络传输中丢失时,编解码器可以正确地编码或解码相同图像的其他区域而不依赖于被损坏或丢失的数据,从而提供容错能力。在某些视频编码标准中,可以将图像划分为不同类型的区域。例如,H.265/HEVC和H.266/VVC提供两种类型的区域:“条带(slice)”和“块片(tile)”。还应注意的是,视频序列100的不同图像可以具有用于将图像划分为区域的不同划分方案。
例如,在图1中,结构110被划分成三个区域114、116和118,其边界被示为结构110内部的实线。区域114包括四个基本处理单元。区域116和118均包括六个基本处理单元。需要说明的是,图1中110的基本处理单元、基本处理子单元和结构区域仅是示例,本公开不限制其实施例。
图2A示出了根据本公开的实施例的示例性编码过程200A的示意图。例如,编码过程200A可以由编码器执行。如图2A所示,编码器可以根据过程200A将视频序列202编码为视频位流228。类似于图1中的视频序列100,视频序列202可以包括按时间顺序排列的一组图像(称为“原始图像”)。类似于图1中的结构110,视频序列202的每个原始图像可以由编码器划分为基本处理单元、基本处理子单元或区域进行处理。在一些实施例中,编码器可以针对视频序列202的每个原始图像在基本处理单元的级别上执行过程200A。例如,编码器可以以迭代方式执行过程200A,其中编码器可以在过程200A的一次迭代中对基本处理单元进行编码。在一些实施例中,编码器可以针对视频序列202的每个原始图像的区域(例如,区域114-118)并行地执行过程200A。
参考图2A,编码器可以将视频序列202的原始图像的基本处理单元(称为“原始BPU”)馈送到预测阶段204,以生成预测数据206和预测BPU 208。编码器可以从原始BPU减去预测的BPU 208以生成残差BPU 210。编码器可以将残差BPU 210馈送到变换阶段212和量化阶段214以216生成量化变换系数216。编码器可以将预测数据206和量化变换系数216馈送到二进制编码阶段226以生成视频位流228。组件202、204、206、208、210、212、214、216、226和228可以被称为“前向路径”。在过程200A期间,在量化阶段214之后,编码器可以将经量化的变换系数216馈送到逆量化阶段218和逆变换阶段220以生成重建的残差BPU 222。编码器可以将重建的残差BPU 222添加到预测的BPU 208以生成预测参考224,其用于过程200A的下一次迭代的预测阶段204中。过程200A的组件218、220、222和224可以被称为“重建路径”。重建路径可以用于确保编码器和解码器都使用相同的参考数据进行预测。
编码器可以迭代地执行过程200A以编码原始图像的每个原始BPU(在前向路径中),并生成用于编码原始图像的下一个原始BPU(在重建路径中)的预测参考224。在对原始图像的所有原始BPU进行编码之后,编码器可以继续对视频序列202中的下一个图像进行编码。
参考过程200A,编码器可以接收由视频采集设备(例如,相机)生成的视频序列202。本文使用的术语“接收”可以指以任何方式接收、输入、获取、检索、获取、读取、访问或用于输入数据的任何动作。。
在预测阶段204,在当前迭代时,编码器可以接收原始BPU和预测参考224,并执行预测操作以生成预测数据206和预测BPU 208。预测参考224可以从过程200A的先前迭代的重建路径生成。预测阶段204的目的是通过从预测数据206和预测参考224中提取可用于将原始BPU重建为预测BPU 208的预测数据206来减少信息冗余。
理想地,预测的BPU 208可以与原始BPU相同。然而,由于非理想的预测和重建操作,预测的BPU 208通常与原始BPU略有不同。为了记录这些差异,在生成预测BPU 208,编码器可以将其从原始BPU中减去以生成残差BPU 210。例如,编码器可以从原始BPU的像素的值减去预测BPU 208的对应像素的值(例如,灰度值或RGB值)。残差BPU 210的每个像素可以具有残差值作为原始BPU和预测BPU208的相应像素之间的这种相减的结果,与原始BPU相比,预测数据206和残差BPU210可以具有更少的比特数,但是它们可以用于重建原始BPU,而不会出现明显的质量下降。因此,原始BPU被压缩。
为了进一步压缩残差BPU 210,在变换阶段212,编码器可以通过将残差BPU 210分解为一组二维“基本图案(base pattern)”来减少其空间冗余。每个基本图案与“变换系数”相关联。基本图案可以具有相同的尺寸(例如,残差BPU 210的尺寸),每个基本图案可以表示残差BPU 210的变化频率(例如,亮度变化的频率)分量。基本图案中的任何一个都不能从任何其他基本图案的任何组合(例如,线性组合)中再现。换句话说,分解可以将残差BPU210的变化分解到频域中。这种分解类似于函数的离散傅立叶变换,其中,基本图像类似于离散傅立叶变换的基本函数(例如,三角函数),并且变换系数类似于与基本函数相关联的系数。
不同的变换算法可以使用不同的基本图案。各种变换算法可以在变换阶段212处使用,例如,离散余弦变换、离散正弦变换等。变换阶段212处的变换是可逆的。也就是说,编码器可以通过变换的逆运算(称为“逆变换”)来恢复残差BPU 210。例如,为了恢复残差BPU210的像素,逆变换可以是将基本图案的对应像素的值乘以相应的相关联系数并将乘积相加以产生加权和。对于视频编码标准,编码器和解码器都可以使用相同的变换算法(因此具有相同的基本图案)。因此,编码器可以仅记录变换系数,解码器可以从中重建残差BPU210,而无需从编码器接收基本模式。与残差BPU 210相比,变换系数可以具有更少的比特,但是它们可以用于重建残差BPU 210而没有显著的质量劣化。因此,残差BPU 210被进一步压缩。
编码器可以进一步在量化阶段214压缩变换系数。在变换过程中,不同的基本图案可以表示不同的变化频率(例如,亮度变化频率)。因为人眼通常更擅长识别低频变化,所以编码器可以忽略高频变化的信息,而不会在解码中引起明显的质量劣化。例如,在量化阶段214,编码器可以通过将每个变换系数除以整数值(称为“量化参数”)并将商四舍五入到其最接近的整数来生成量化的变换系数216。在这样的操作之后,可以将高频基本图案的一些变换系数转换为零,并且可以将低频基本图案的变换系数转换为较小的整数。编码器可以忽略零值的量化变换系数216,由此变换系数被进一步压缩。该量化处理也是可逆的,其中量化变换系数216可以在量化的逆操作(称为“逆量化”)中被重建为变换系数。
因为编码器在舍入操作中忽略了该除法的余数,所以量化阶段214可能是有损的。通常,量化阶段214可以在过程200A中贡献最多的信息损失。信息损失越大,量化变换系数216所需的比特数就越少。为了获得不同级别的信息损失,编码器可以使用不同的量化参数值或量化过程的任何其他参数。
在二进制编码阶段226,编码器可以使用二进制编码技术对预测数据206和量化变换系数216进行编码,二进制编码例如为熵编码、可变长度编码、算术编码、霍夫曼编码、上下文自适应二进制算术编码,或任何其他无损或有损压缩算法。在一些实施例中,除了预测数据206和量化变换系数216之外,编码器可以在二进制编码阶段226编码其他信息,例如,在预测阶段204使用的预测模式、预测操作的参数、在变换阶段212处的变换类型。量化过程的参数(例如,量化参数)、编码器控制参数(例如,比特率控制参数)等。编码器可以使用二进制编码阶段226的输出数据来生成视频位流228。在一些实施例中,视频位流228可以被进一步打包以用于网络传输。
参照过程200A的重建路径,在逆量化阶段218,编码器可以对量化变换系数216执行逆量化,以生成重建的变换系数。在逆变换阶段220,编码器可以基于重建的变换系数生成重建残差BPU 222。编码器可以将重建残差BPU 222添加到预测BPU 208以生成将在过程200A的下一次迭代中使用的预测参考224。
应当注意的是,过程200A的其他变体可用于对视频序列202进行编码。在一些实施例中,过程200A的阶段可以由编码器以不同的顺序执行。在一些实施例中,过程200A的一个或多个阶段可以组合成单个阶段。在一些实施例中,过程200A的单个阶段可以分为多个阶段。例如,变换阶段212和量化阶段214可以组合成单个阶段。在一些实施例中,过程200A可以包括附加的阶段。在一些实施例中,过程200A可以省略图2A中的一个或多个阶段。
图2B示出了根据本公开的实施例的另一示例编码过程200B的示意图。过程200B可以修改自过程200A。例如,过程200B可以由符合混合视频编码标准(例如,H.26x系列)的编码器使用。与过程200A相比,过程200B的前向路径还包括模式决策阶段230,并将预测阶段204分为空间预测阶段2042和时间预测阶段2044,过程200B的重建路径还另外包括环路滤波阶段232和缓冲区234。
通常,预测技术可以分为两种类型:空间预测和时间预测。空间预测(例如,帧内图像预测或“帧内预测”)可以使用来自同一图像中的一个或多个已经编码的相邻BPU的像素来预测当前BPU。也就是说,空间预测中的预测参考224可以包括相邻的BPU。空间预测可以减少图像固有的空间冗余。时间预测(例如,图像间预测或“帧间预测”)可以使用来自一个或多个已经编码的图像的区域来预测当前BPU。也就是说,时间预测中的预测参考224可以包括编码图像。时间预测可以减少图像固有的时间冗余。
参考过程200B,在前向路径中,编码器在空间预测阶段2042和时间预测阶段2044执行预测操作。例如,在空间预测阶段2042,编码器可以执行帧内预测。对于被编码的图像的原始BPU,预测参考224可以包括在同一图像中已经被编码(在前向路径中)和重建(在重建路径中)的一个或多个相邻BPU。编码器可以通过插值相邻的BPU来生成预测的BPU 208。插值技术可以包括例如线性插值或内插、多项式插值或内插等。在一些实施例中,编码器可以在像素级执行插值,例如通过插值预测BPU 208的每个像素的对应像素的值。用于插值的相邻BPU可以可以位于相对于原始BPU的各个方向,例如在垂直方向(例如,在原始BPU的顶部),水平方向(例如,在原始BPU的左侧),对角线方向(例如,在原始BPU的左下、右下、左上或右上),或在所使用的视频编码标准中定义的任何方向。对于帧内预测,预测数据206可以包括,例如,所使用的相邻BPU的位置(例如,坐标)、所使用的相邻BPU的大小、插值的参数、所使用的相邻BPU相对于原始BPU的方向等。
对于另一个示例,在时间预测阶段2044,编码器可以执行帧间预测。对于当前图像的原始BPU,预测参考224可以包括已经被编码(在前向路径中)和重建(在重建路径中)的一个或多个图像(被称为“参考图像”)。在一些实施例中,可以通过逐个BPU对参考图像进行编码和重建。例如,编码器可以将重建的残差BPU 222添加到预测BPU 208以生成重建BPU。当同一张图像的所有重建的BPU都被生成时,编码器可以生成一重建图像作为参考图像。编码器可以执行“运动估计”的操作以搜索参考图像的范围(称为“搜索窗口”)中的匹配区域。可以基于原始BPU在当前图像中的位置来确定搜索窗口在参考图像中的位置。例如,搜索窗口可以在参考图像中与当前图像中的原始BPU具有相同坐标的位置处为中心,并且可以向外延伸预定距离。当编码器在搜索窗口中识别(例如,通过使用pel递归算法、块匹配算法等)类似于原始BPU的区域时,编码器可以确定这样的区域作为匹配区域。匹配区域可以具有与原始BPU不同的尺寸(例如,小于、等于、大于或具有不同的形状)。因为参考图像和当前图像在时间线上在时间上分开(例如,如图1所示),所以可以认为匹配区域随着时间的推移“移动”到原始BPU的位置。编码器可以将这种运动的方向和距离记录为“运动矢量”。当使用多个参考图像时(例如,如图1中的图像06),编码器可以搜索匹配区域并为每个参考图像确定其相关联的运动矢量。在一些实施例中,编码器可以将权重分配给各个匹配参考图像的匹配区域的像素值。
运动估计可用于识别各种类型的运动,例如平移、旋转、缩放等。对于帧间预测,预测数据206可以包括例如匹配区域的位置(例如,坐标)、与匹配区域相关联的运动矢量、参考图像的数量、与参考图像相关联的权重等。
为了生成预测的BPU 208,编码器可以执行“运动补偿”的操作。运动补偿可以用于基于预测数据206(例如,运动向量)和预测参考224来重建预测的BPU 208。例如,编码器可以根据运动矢量移动参考图像的匹配区域,其中编码器可以预测当前图像的原始BPU。当使用多个参考图像时(例如,如图1中的图像06),编码器可以根据匹配区域的各个运动矢量和平均像素值来移动参考图像的匹配区域。在一些实施例中,如果编码器已经将权重分配给各个匹配参考图像的匹配区域的像素值,则编码器可以将移动的匹配区域的像素值的加权和相加。。
在一些实施例中,帧间预测可以是单向的或双向的。单向帧间预测可以使用相对于当前图像在相同时间方向上的一个或多个参考图像。例如,图1中的图像104是单向帧间预测图像,其中参考图像(即,图像102)在图像04之前。双向帧间预测可以在相对于当前图像的两个时间方向上使用一个或多个参考图像。例如,图1中的图像106是双向帧间预测图像,其中参考图像(即,图像104和08)相对于图像104在两个时间方向上。
仍然参考过程200B的前向路径,在空间预测2042和时间预测阶段2044之后,在模式决策阶段230,编码器可以为过程200B的当前迭代选择预测模式(例如,帧内预测或帧间预测之一)。例如,编码器可以执行速率失真优化技术,其中编码器可以根据候选预测模式的比特率和候选预测模式下的重建参考图像的失真来选择预测模式以最小化成本函数的值。根据所选择的预测模式,编码器可以生成相应的预测BPU 208和预测数据206。
在过程200B的重建路径中,如果在前向路径中已经选择了帧内预测模式,则在生成预测参考224(例如,在当前图像中已经编码和重建的当前BPU)之后,编码器可以将预测参考224直接馈送到空间预测阶段2042以用于以后的使用(例如,用于插值当前图像的下一BPU)。如果在前向路径中已经选择了帧间预测模式,则在生成预测参考224(例如,其中所有BPU都已被编码和重建的当前图像)之后,编码器可以将预测参考224馈送到环路滤波器阶段232。在该阶段,编码器可以将环路滤波器应用于预测参考224,以减少或消除由帧间预测引入的失真(例如,块状伪影)。编码器可以在环路滤波器阶段232处应用各种环路滤波器技术,例如去块、采样自适应补偿、自适应环路滤波器等。可以将经环路滤波的参考图像存储在缓冲区234(或“经解码的图像缓冲区”)中以供以后使用(例如,用作视频序列202的未来图像的帧间预测参考图像)。编码器可以将一个或多个参考图像存储在缓冲区234中,以在时间预测阶段2044处使用。在一些实施例中,编码器可以在二进制编码阶段226处编码环路滤波器的参数(例如,环路滤波器强度)以及量化变换系数216、预测数据206和其他信息。
图3A示出了根据本发明的实施例的示例性解码过程300A的示意图。过程300A可以是对应于图2A中的压缩过程200A的解压缩过程。在一些实施例中,过程300A可以类似于过程200A的重建路径。解码器可以根据过程300A将视频位流228解码成视频流304。视频流304可以非常类似于视频序列202。然而,由于压缩和解压缩过程中的信息丢失(例如,图2A-2B中的量化阶段214),通常,视频流304与视频序列202不同。类似于图2A-2B中的过程200A和200B,解码器可以在基本处理单元(BPU)级别对在视频位流228中编码的每个图像执行过程300A。例如,解码器可以以迭代方式执行过程300A,其中解码器可以在过程300A的一次迭代中对基本处理单元进行解码。在一些实施例中,解码器可以针对在视频位流228中编码的每个图像的区域(例如,区域114-118)并行地执行过程300A。
如图3A所示,解码器可以将与编码图像的基本处理单元(称为“编码BPU”)相关联的视频位流228的一部分馈送到二进制解码阶段302,在二进制解码阶段302,解码器可以将该部分解码成预测数据206和量化变换系数216。解码器可以将量化变换系数216馈送到逆量化阶段218和逆变换阶段220以生成重建残差BPU222。解码器可以将预测数据206馈送到预测阶段204以生成预测BPU 208。解码器可以将重建残差BPU222添加到预测BPU 208以生成预测参考224。在一些实施例中,预测参考224可以存储在缓冲区(例如,计算机存储器中的解码图像缓冲区)中。解码器可以将预测参考224馈送到预测阶段204,用于在过程300A的下一次迭代中执行预测操作。
解码器可以迭代地执行过程300A,以解码编码图像的每个编码BPU,并生成用于编码图像的下一个编码BPU的预测参考224。在解码编码图像的所有编码BPU之后,解码器可以将该图像输出到视频流304以供显示,并且继续解码视频位流228中的下一个编码图像。
在二进制解码阶段302,解码器可以执行编码器使用的二进制编码技术(例如,熵编码、可变长度编码、算术编码、霍夫曼编码、上下文自适应二进制算术编码或任何其他无损压缩算法)的逆运算。在一些实施例中,除了预测数据206和量化的变换系数216,解码器可以在二进制解码阶段302解码其他信息,例如预测模式、预测操作的参数、变换类型、量化过程的参数(例如,量化参数)、编码器控制参数(例如,比特率控制参数)等。在一些实施例中,如果视频位流228通过网络以包的形式传输,则解码器可以在将视频位流228馈送到二进制解码级302之前对其进行解包。
图3B示出了根据本公开的实施例的另一示例解码过程300B的示意图。过程300B可以修改自过程300A。例如,过程300B可以由符合混合视频编码标准(例如,H.26x系列)的解码器使用。与过程300A相比,过程300B额外地将预测阶段204划分为空间预测阶段2042和时间预测阶段2044,并且额外地包括环路滤波阶段232和缓冲区234。
在过程300B中,对于在解码的编码图像(称为“当前图像”)的编码基本处理单元(称为“当前BPU”),由解码器从二进制解码阶段302解码的预测数据206可以包括各种类型的数据,这取决于编码器使用什么预测模式来编码当前BPU。例如,如果编码器使用帧内预测来编码当前BPU,则预测数据206可以包括指示帧内预测、帧内预测操作的参数等的预测模式指示符(例如,标志值)。帧内预测操作的参数可以包括例如用作参考的一个或多个相邻BPU的位置(例如,坐标)、相邻BPU的大小、插值的参数、相邻BPU相对于原始BPU的方向等。对于另一示例,如果由编码器使用的帧间预测来编码当前BPU,则预测数据206可以包括指示帧间预测、帧间预测操作的参数等预测模式指示符(例如,标志值)。帧间预测操作的参数可以包括例如与当前BPU相关联的参考图像的数量、分别与参考图像相关联的权重、相应参考图像中的一个或多个匹配区域的位置(例如,坐标)、分别与所述匹配区域相关联的一个或多个运动矢量等。
基于预测模式指示符,解码器可以决定是在空间预测阶段2042执行空间预测(例如,帧内预测)还是在时间预测阶段2044执行时间预测(例如,帧间预测),执行这种空间预测或时间预测的细节在图2B中描述,其不会在下文中重复。在执行这样的空间预测或时间预测之后,解码器可以生成预测的BPU 208,解码器可以添加预测的BPU 208和重建残差BPU222以生成预测参考224,如图3A中所述。
在过程300B中,解码器可以将预测参考224馈送到空间预测阶段2042或时间预测阶段2044,用于在过程300B的下一次迭代中执行预测操作。例如,如果在空间预测阶段2042使用帧内预测解码当前BPU,则在生成预测参考224(例如,解码的当前BPU)之后,解码器可以将预测参考224直接馈送到空间预测阶段2042以供以后使用(例如,用于插值当前图像的下一个BPU)。如果在时间预测阶段2044使用帧间预测解码当前BPU,则在生成预测参考224(例如,其中所有BPU都被解码的参考图像)之后,编码器可以将预测参考224馈送到环路滤波器阶段232以减少或消除失真(例如,块状伪影)。解码器可以如图2B所示的方式将环路滤波器应用于预测参考224。环路滤波的参考图像可以存储在缓冲区234(例如,计算机存储器中的解码图像缓冲区)中供以后使用(例如,用作视频位流228的未来编码图像的预测间参考图像)。解码器可以将一个或多个参考图像存储在缓冲区234中,以在时间预测阶段2044处使用。在一些实施例中,当预测数据206的预测模式指示符指示帧间预测被用于编码当前BPU时,预测数据可以进一步包括环路滤波器的参数(例如,环路滤波器强度)。
图4是根据本公开的实施例的用于对视频进行编码或解码的示例装置400的框图。如图4所示,装置400可以包括处理器402。当处理器402执行本文所述的指令时,装置400可以成为用于视频编码或解码的专用机器。处理器402可以是能够操纵或处理信息的任何类型的电路。例如,处理器402可以包括任何数量的中央处理单元(或“CPU”)、图形处理单元(或“GPU”)、神经处理单元(“NPU”)、微控制器单元(“MCU”)、光学处理器中、可编程逻辑控制器、微处理器、数字信号处理器、知识产权(IP)核心、可编程逻辑阵列(PLA)、可编程阵列逻辑(PAL)、通用阵列逻辑(GAL)、复杂可编程逻辑器件(CPLD),一种现场可编程门阵列(FPGA)、片上系统(SoC)、专用集成电路(ASIC)等的任意组合。在一些实施例中,处理器402还可以是被分组为单个逻辑组件的一组处理器。例如,如图4所示,处理器402可以包括多个处理器,包括处理器402a、处理器402b和处理器402n。
装置400还可以包括被配置为存储数据(例如,指令集、计算机代码、中间数据等)的存储器404。例如,如图4所示,所存储的数据可以包括程序指令(例如,用于实现过程200A、200B、300A或300B中的阶段)和用于处理的数据(例如,视频序列202、视频位流228或视频流304)。处理器402可以访问用于处理的程序指令和数据(例如,经由总线410),并且执行程序指令以对用于处理的数据执行操作或操纵。存储器404可以包括高速随机存取存储设备或非易失性存储设备。在一些实施例中,存储器404可以包括任意数量的随机存取存储器(RAM)、只读存储器(ROM)、光盘、磁盘、硬盘驱动器、固态驱动器、闪存驱动器、安全数字(SD)卡、记忆棒、紧凑型闪存(CF)卡等的任意组合。存储器404也可以是被分组为单个逻辑组件的一组存储器(图4中未示出)。
总线410可以是在设备400内部的组件之间传输数据的通信设备,诸如内部总线(例如,CPU-存储器总线)、外部总线(例如,通用串行总线端口、外围组件互连快速端口),或者类似物。
为了便于解释而不引起歧义,在本公开中,处理器402和其他数据处理电路统称为“数据处理电路”。数据处理电路可以完全实现为硬件,或者实现为软件、硬件或固件的组合。此外,数据处理电路可以是单个独立模块,或者可以完全或部分地组合到设备400的任何其他部件中。
设备400还可以包括网络接口406,以提供与网络(例如,因特网、内联网、局域网、移动通信网络等)的有线或无线通信。在一些实施例中,网络接口406可以包括任何数量的网络接口控制器(NIC)、射频(RF)模块、应答器、收发器、调制解调器、路由器、网关、有线网络适配器、无线网络适配器、蓝牙适配器、红外适配器、近场通信(“NFC”)适配器、蜂窝网络芯片等的任意组合。
在一些实施例中,可选地,装置400可以进一步包括外围接口408,以提供到一个或多个外围设备的连接。如图4所示,外围设备可以包括,但不限于,光标控制设备(例如,鼠标、触摸板或触摸屏)、键盘、显示器(例如,阴极射线管显示器、液晶显示器、或发光二极管显示器)、视频输入设备(例如,相机或耦合到视频档案的输入接口)等。
应当注意,视频编解码器(例如,执行过程200A、200B、300A或300B的编解码器)可以被实现为装置400中的任何软件或硬件模块的任何组合。例如,过程200A、200B、300A或30013的一些或所有阶段可以被实现为装置400的一个或多个软件模块,诸如可以被加载到存储器404中的程序实例。对于另一示例,过程200A、200B、300A或300B的一些或全部阶段可以被实现为装置400的一个或多个硬件模块,诸如专用数据处理电路(例如,FPGA、ASIC、NPU等)。
在量化和逆量化功能块(例如,图2A或图2B的量化214和逆量化218,图3A或图3B的逆量化218)中,量化参数(QP)用于确定应用于预测残差的量化(和逆量化)量。用于对图像或条带(slice)进行编码的初始QP值可以在较高的级别上发出信号,例如,使用图像参数集(PPS)中的init_qp_minus26语法元素和使用条带头中的slic_qp_delta语法元素。此外,可以使用以量化组的粒度发送的增量(delta)QP值在本地级别针对每个CU适配QP值。
在一些实时应用(例如,视频会议或远程操作系统)中,系统延迟可能是显著影响用户体验和系统可靠性的关键问题。例如,ITU-TG.114指定用于双向音频-视频通信的延迟的可接受上限为150毫秒。在另一个示例中,虚拟现实应用通常要求超低延迟小于20毫秒,以避免由头部运动和由运动引起的视觉效果之间的时间差异引起的晕动病。
在实时视频应用系统中,总延迟包括从采集帧的时间到显示帧的时间的时间段。也就是说,总延迟是编码器处的编码时间、传输信道中的传输时间、解码器处的解码时间以及解码器处的输出延迟的总和。通常,传输时间对总延迟的贡献最大。编码图像的传输时间通常等于编码图像缓冲区(CPB)的容量除以视频序列的比特率。
在本公开中,“随机接入”是指在视频序列或流的任何随机接入点处开始解码处理并且恢复内容正确的解码图像的能力。为了支持随机接入并防止错误传播,可以在视频序列中周期性地插入帧内编码随机接入点(IRAP)图像。然而,为了高编码效率,编码I图像(例如,IRAP图像)的尺寸通常大于P图像或B图像的尺寸。IRAP图像的较大尺寸会引入比平均传输延迟更高的传输延迟。因此,周期期插入IRAP图像可能无法满足低延迟视频应用程序的要求。
与所公开的实施例一致,逐步解码刷新(GDR)技术,也被称为渐进式帧内刷新(PIR)技术,可用于减少由插入IRAP图像引起的延迟,同时使得能够在视频序列中进行随机接入以进行低延迟编码。GDR可以通过将帧内编码区域分散到非帧内编码图像(例如,B或P图像)来逐步刷新图像。通过这样做,混合编码图像的大小可以彼此相似,由此可以减小或最小化CPB的大小(例如,至等于视频序列的比特率除以图像速率的值),并且可以减少总延迟中的编码时间和解码时间。
作为示例,图5是示出了与本公开的一些实施例一致的逐步解码刷新(GDR)的示例操作的示意图。图5示出了GDR周期502,其包括视频序列(例如,图1中100的视频序列)中的多个图像(例如,图像504、506、508、510和512)。GDR周期502中的第一图像被称为GDR图像504,其可以是随机接入图像,并且GDR周期502中的最后图像被称为恢复点图像512。GDR周期502中的每个图像包括帧内编码区域(由在图5的每张图像中标记为“INTRA”的垂直框表示)。每个帧内编码区域可以覆盖完整图像的不同部分。如图5所示,帧内编码区域可以在GDR周期502中逐渐覆盖全图。应当注意,尽管在图5中帧内编码区域被示出为矩形条带,但是它们可以被实现为各种形状和尺寸,并且不受本公开中描述的示例的限制。
除以帧内编码区域,GDR周期502中除了GDR图像504和恢复点图像512之外的图像(例如,图像506-510中的任何图像)可以包括两个区域:包括已经刷新的像素的“干净区域”和包括可能由于先前图像中的传输错误而损坏并且尚未被刷新(例如,可以在随后的图像中刷新)的像素的“脏区域”。当前图像(例如,图像510)的干净区域可以包括使用先前图像(例如,图像508、506和GDR图像504)的干净区域或帧内编码区域中的至少一个作为参考而重建的像素。当前图像(例如,图像510)的干净区域可以包括使用先前图像(例如,图像508、506和GDR图像504)的脏区域、干净区域或帧内编码区域中的至少一个作为参考而重建的像素。
GDR技术的原理是确保在不使用来自任何脏区域(例如,当前图像或任何先前图像的脏区域)的任何信息的情况下重建干净区域中的像素。作为示例,在图5中,GDR图像504包括脏区域514。图像506包括可以使用GDR图像504的帧内编码区域作为参考来重建的干净区域516和可以使用GDR图像504任何部分(例如,帧内编码区域或脏区域514中的至少一个)作为参考来重建的脏区域518。图像508包括可以使用像504-506的帧内编码区域(例如,图像504或506的帧内编码区域)或干净区域(例如,干净区域516)中的至少一个作为参考来重建的干净区域520,以及可以使用GDR图像504的一部分(例如,帧内编码区域或脏区域514)或者图像506的一部分(干净区域516、帧内编码区域、或脏区域518)中的至少一个作为参考来重建的脏区域522。图像510包括可以使用图像504 -508的帧内编码区域(例如,图像504、506或508的帧内编码区域)或干净区域(例如,干净区域516或520)中的至少一个作为参考来重建的干净区域524,以及可以使用GDR图像504的一部分(例如,帧内编码区域或脏区域514)、图像506的一部分(例如,干净区域516、帧内编码区域或脏区域518)、或图像508的一部分(例如,干净区域520、帧内编码区域或脏区域522)中的至少一个作为参考来重建的图像506的脏区域526。恢复点图像512包括可以使用GDR图像504的一部分(例如,帧内编码区域或脏区域514)、图像506的一部分(例如,干净区域516、帧内编码区域、脏区域)、图像508的一部分(例如,干净区域520、帧内编码区域或脏区域522)、图像510一部分(例如,干净区域524、帧内编码区域、或脏区域)中的至少一个作为参考来重建的干净区域528。
如图所示,恢复点图像512的所有像素都被刷新。使用GDR技术在输出顺序中在恢复点图像512之后进行解码可以等同于使用在GDR图像504之前的IRAP图像(假如它存在)对图像进行解码,其中IRAP图像覆盖图像504-512的所有帧内编码区域。
作为示例,图6示出了与本公开的一些实施例一致的表1,其示出了启用GDR的序列参数集(SPS)的示例语法结构的。如表1所示,GDR序列级启用标志“gdr_enabled_flag”的可以在视频序列的SPS中被用信号通知,以指示在视频序列中是否存在任何启用GDR的图像(例如,图5中的GDR周期502中的任何画面)。在一些实施例中,在VVC/H.266标准中,“gdr_enabled_flag”为真(true)(例如,等于“1”)可以指定启用GDR的图像存在于参照SPS的编码层视频序列(CLVS)中。并且“gdr_enabled_flag”为假(false)(例如,等于“0”)可以指定CLVS中不存在启用GDR的图像。
作为示例,图7示出了与本公开的一些实施例一致的表2,其示出了启用GDR的图像头的示例语法结构。如表2所示,对于视频序列的图像,可以在图像的图像头中用信号通知GDR的图像级启用标志“gdr_pic_flag”,以指示该图像是否启用了GDR(例如,是图5中GDR周期502中的任何图像)。如果图像启用GDR,则可以用信号通知参数“recovert_poc_cnt”以按输出顺序指定恢复点图像(例如,图5中的恢复点图像512)。在一些实施例中,在VVC/H.266标准中,“gdr_pic_flag”为true(例如,等于“1”)可以指定与图像头相关联的图像是启用GDR的图像,并且“gdr_pic_flag”为false(例如,等于“0”)可以指定与图像头关联的图像不是启用GDR的图像。
例如,在VVC/H.266标准中,当如表1所示的“gdr_enabled_flag”为真并且当前图像的参数“PicOrderCntVal”(图7中未示出)大于或等于与当前图像相关联的启用GDR的图像(或启用GDR的多个图像)的“PicOrderCntVal”加上“recovery_poc_cnt”时,可以对输出顺序中的当前图像和后续多个图像进行解码,就好像他们使用通过从启用GDR的图像(或启用GDR的多个图像)之前的IRAP图像开始解码过程一样。
与本公开的一些实施例一致,可以使用虚拟边界技术来实现GDR(例如,在VVC/H.266标准中)。在一些应用(例如,360度视频)中,用于特定投影格式的布局通常可以具有多个面。当这些投影格式包括多个面时,无论使用哪种紧凑的帧封装布置,都可能在帧封装图像中的两个或多个相邻面出现不连续性。如果跨此不连续性执行环内滤波操作,则渲染后在重建的视频中可以看到面接缝伪影。
为了减轻面部接缝伪影,可以跨帧封装图像中的不连续性处禁用环内滤波操作(例如,去块滤波、样本自适应偏移滤波或自适应环路滤波),这可以被称为虚拟边界技术(例如,VVC草案7采用的概念)。例如,编码器可以将不连续的边界设置为虚拟边界,并禁用跨该虚拟边界的任何环路滤波操作。通过这样做,可以禁用跨不连续性处的环路滤波。
在GDR的情况下,跨干净区域(例如,图5中的图像508的干净区域520)和脏区域(例如,图像508的脏区域522)之间的边界不应用环路滤波操作。编码器可以将干净区域和脏区域之间的边界设置为虚拟边界,并禁用跨虚拟边界的环路滤波操作。通过这样做,虚拟边界可以用作实现GDR的一种方式。
在一些实施例中,在VVC/H.266标准中(例如,在VVC草案7中),可以在SPS或图像头处用信号通知虚拟边界。作为示例,图8示出了与本公开的一些实施例一致的表3,其示出了启用虚拟边界的SPS的示例语法结构。图9示出了与本公开的一些实施例一致的表4,其示出了启用虚拟边界的图像头的示例语法结构。
如表3所示,序列级虚拟边界呈现标志“sps_virtual_boundaries_present_flag”可以在SPS中被用信号通知。例如,“sps_virtual_boundaries_present_flag”为true(例如,等于“1”)可以指定虚拟边界的信息在SPS中被信号通知,并且“sps_virtual_boundaries_present_flag”为false(例如,等于“0”)可以指定虚拟边界的信息没有在SPS中被信号通知。当一个或多个虚拟边界在SPS中被发信号通知时,可以对跨参考SPS的图像中的虚拟边界禁用环内滤波操作。
如表3所示,如果标志“sps_virtual_boundaries_present_flag”为真,则可以在SPS中发信号通知虚拟边界的数量(如由表3中的参数“sps_num_ver_virtual_boundares”和“sps_num_hor_virtual_boundaries”表示)及其位置(如由表3中的数组“sps_virtual_boundares_pos_x”和“sps_virtual_boundares_pos_y”表示)。参数“sps_num_ver_virtual_boundaries”和“sps_num_hor_virtual_boundaries”可以分别指定SPS中的数组“sps_virtual_boundares_pos_x”和“sps_virtual_boundares_pos_y”的长度。在一些实施例中,当SPS中不存在“sps_num_ver_virtual_boundaries”(或“sps_num_hor_virtual_boundaries”)时,可以推断其值为0。数组“sps_virtual_boundaries_pos_x”和“sps_virtual_boundaries_pos_y”可以分别指定以亮度样本除以8为单位第i个垂直或水平虚拟边界的位置。例如,“sps_virtual_boundaries_pos_x[i]”的值可以在1到Ceil(pic_width_in_luma_samples÷8)-1的闭区间中,其中“Ceil”表示天花板函数,并且“pic_width_in_luma_samples”是表示以亮度样本为单位的图像宽度的参数。“sps_virtual_boundaries_pos_y[i]”的值可以在1到Ceil(pic_height_in_luma_samples÷8)-1的闭区间内,其中“pic_height_in_luma_samples”是表示以亮度样本为单位的图像高度的参数。
在一些实施例中,如果标志“sps_virtual_boundaries_present_flag”是false(例如,等于“0”),则可以在图像头中用信号通知图像级虚拟边界存在标志“ph_virtual_boundaries_present_flag”,如表4所示。例如,“ph_virtual_boundaries_present_flag”为真(例如,等于“1”)可以指定虚拟边界的信息在图像标头中被信号通知,并且“ph_virtual_boundaries_present_flag”为false(例如,等于“0”)可以指定在图像头中没有信号通知虚拟边界的信息。当一个或多个虚拟边界信号在图像头中被信号通知时,可以跨包该括图像头的图像中的虚拟边界禁用环内滤波操作。在一些实施例中,当“ph_virtual_boundaries_present_flag”不存在于图像头中时,可以推断其值表示“false”。
如表4所示,如果标志“ph_virtual_boundaries_present_flag”为true(例如,等于“1”),则可以在图像头中用信号通知虚拟边界的数量(如由表4中的参数“ph_num_ver_virtual_boundares”和
(如由图4中的数组“ph_num_hor_virtual_boundares”表示)和位置
(“ph_virtual_boundares_pos_x”和“ph_virtual_boundares_pos_y”)。参数“ph_num_ver_virtual_boundaries”和“ph_num_hor_virtual_boundaries”可以分别指定图像头中的数组“ph_virtual_boundares_pos_x”和“ph_virtual_boundares_pos_y”的长度。在一些实施例中,当“ph_virtual_boundaries_pos_x”(或“ph_virtual_boundaries_pos_y”)不存在于图像头中时,可以推断其值为0。数组“ph_virtual_boundaries_pos_x”和“ph_virtual_boundaries_pos_y”可以分别指定以亮度样本除以8为单位第i个垂直或水平虚拟边界的位置。例如,“ph_virtual_boundaries_pos_x[i]”的值可以在1到Ceil(pic_width_in_luma_samples÷8)-1的闭区间内,并且“ph_virtual_boundaries_pos_y[i]”的值可以在1到Ceil(pic_height_in_luma_samples÷8)-1的闭区间内,其中“pic_height_in_luma_samples”是表示以亮度样本为单位的图像高度的参数。
在一些实施例中,在VVC/H.266标准中(例如,在VVC草案7中),变量“VirtualBoundariesDisabledFlag”可以定义为“ph_virtual_boundares_pos_x”和“ph_virtual_boundares_pos_y”(1):
但是,在使用虚拟边界实现GDR时,现有技术解决方案可能会出现两个问题。例如,如上所述,在现有技术方案中,无论序列级标志“gdr_enabled_flag”的值如何,图像级标志“gdr_pic_flag”总是在图像头中发出信号通知。也就是说,即使当GDR对序列被禁用时,该序列的每个图像的图像头仍然可以指示该图像是否启用了GDR。因此,矛盾可能发生在SPS级别和图像级别。例如,如果“gdr_enabled_flag”为false,则如果“gdr_pic_flag”为true,则可能发生冲突。
作为另一个示例,当使用虚拟边界作为干净区域和脏区域的边界来实现GDR时,在现有技术方案中,没有跨虚拟边界应用环路滤波操作。然而,作为GDR的要求,解码干净区域中的像素不能参考脏区域中的像素,但是解码脏区域中的像素可以引用干净区域中的像素。在这种情况下,完全禁用跨虚拟边界的环路滤波操作可能会施加过于严格的限制,这可能会恶化编码或解码性能。
为了解决上述问题,本发明提供了一种用于处理图像的方法、装置和系统。与本公开的一些实施例一致,为了消除SPS级别和图像级别的GDR指示标志的潜在冲突,可以修改图像头的语法结构,使得只有当在序列级别启用GDR时,才可以用信号通知图像级别的GDR指示标志。
作为示例,图10示出了与本公开的一些实施例一致的表5,其示出了经修改的图像头的示例语法结构。如表5所示,元件1002(由实线框包围)示出了与图7中的表2相比的语法修改。例如,“gdr_pic_flag”为true(例如,等于“1”)可以指定与图像头相关联的图像是启用GDR的图像,而“gdr_pic_flag”为false(例如,等于“0”)可以指定与图像头关联的图像不是启用GDR的图像。在一些实施例中,如果“gdr_pic_flag”在图像头中不存在,则可以推断其值表示“false”。
与本公开的一些实施例一致,为了消除SPS级别和图像级别的GDR指示标志的潜在冲突,可以保持图像头的语法结构不变(例如,如图7的表2所示),并且可以实现位流一致性要求(例如,如在VVC/H.266标准中定义的位流一致性),使得当序列级GDR指示标志不为true(例如,被禁用或为false)时,图像级GDR指示标志将不为true(例如,被禁用或为false)。如本文所使用的,位流一致性要求可以指能够确保与操作点相关联的位流子集符合视频编码标准(例如,VVC/H.266标准)的操作。“操作点”可以指由子位流提取过程从第二位流创建的第一位流,其中,如果第二位流的网络抽象层(NAL)单元不属于由目标时间标识符和目标层标识符列表确定的目标集合时,则可以去除该第二位流的网络抽象层(NAL)单元。例如,位流一致性要求可以被实现为,当“gdr_enabled_flag”为false时,“gdr_pic_flag”也被设置为false。
与本公开的一些实施例一致,为了在禁用跨虚拟边界的环路滤波操作中提供更高的灵活性,可以修改SPS和图像的语法结构,使得可以部分地禁用跨虚拟边界的环路滤波操作。通过这样做,可以不对虚拟边界的一侧上的像素进行滤波,但是可以对虚拟边界的另一侧上的像素滤波。例如,如果虚拟边界将一图像垂直分割成左侧和右侧,则编码器或解码器可以部分地对右侧禁用环路滤波,对右侧像素不进行滤波(例如,左侧像素的信息不用于右侧像素的环路滤波),并对左侧启用环路滤波,对左侧像素进行滤波(例如,左侧或右侧中的至少一个上的像素的信息可用于环路滤波)。
作为示例,图11示出了与本公开的一些实施例一致的表6,其示出了启用虚拟边界的修改的SPS的示例语法结构。图12示出了与本公开的一些实施例一致的表7,其示出了启用虚拟边界的修改的图像头的示例语法结构。如在本公开的附图中所示,点划线框表示其中包封的内容物或元件被删除或移除(示出为被划除)。如图11-12所示,序列级GDR指示标志“sps_virtual_boundaries_present_flag”和图像级GDR指示标志“ph_virtual_boundaries_present_flag”分别由GDR控制参数“sps_virtual_boundaries_loopfilter_disable”和“ph_virtual_boundaries_loopfilter_disable”代替,扩展为至别在序列级别和图像级别支持部分禁用环路滤波操作。
如果针对整个序列固定GDR方向(例如,从左到右、从右到左、从上到下、从下到上或其任何组合),则可以在SPS中设置GDR控制参数(例如,“sps_virtual_boundaries_loopfilter_disable”)。这可以节省比特。如果GDR方向需要在序列内更改,则GDR控制参数(例如,“ph_virtual_boundaries_loopfilter_disable”)可以设置在图像头中,这可以提供较低级别控制的更高灵活性。
与本公开的一些实施例一致,GDR控制参数“sps_virtual_boundaries_loopfilter_disable”和“ph_virtual_boundaries_loopfilter_disable”可以被配置为多个值(例如,除了“true”或“false”的表示)以表示不同的实现方案。
例如,“sps_virtual_boundaries_loopfilter_disable”为“0”可以指定在SPS中没有信号通知虚拟边界的信息。
“sps_virtual_boundaries_loopfilter_disable”为“1”可以指定在SPS中发信号通知虚拟边界的信息,并且跨虚拟边界禁用环内滤波操作。
“sps_virtual_boundaries_loopfilter_disable”为“2”可以指定在SPS中发信号通知虚拟边界的信息,并且包括如下之一:(1)禁用虚拟边界左侧的环内滤波操作;(2)左侧的环内滤波操作不使用虚拟边界右侧的任何像素的信息;(3)禁用虚拟边界上侧的环内滤波操作;或者(4)上侧的环内滤波操作不使用虚拟边界底侧的任何像素的信息。
“sps_virtual_boundaries_loopfilter_disable”为“3”可以指定在SPS中发信号通知虚拟边界的信息,并且包括如下之一:(1)禁用虚拟边界右侧的环内滤波操作;(2)右侧的环内滤波操作不使用虚拟边界左侧的任何像素的信息;(3)禁用虚拟边界底部的环内滤波操作;或者(4)底侧的环内滤波操作不使用上侧的任何像素的信息。
类似地,在另一个示例中,“ph_virtual_boundaries_loopfilter_disable”为“0”可以指定在图像头中没有信号通知虚拟边界的信息。“ph_virtual_boundaries_loopfilter_disable”为“1”可以指定在图像头中发信号通知虚拟边界的信息,并且跨虚拟边界禁用环内滤波操作。“ph_virtual_boundaries_loopfilter_disable”为“2”可以指定在图像头中发信号通知虚拟边界的信息,并且包括以下之一:(1)禁用虚拟边界左侧的环内滤波操作;(2)左侧的环内滤波操作不使用虚拟边界右侧的任何像素的信息;(3)禁用在虚拟边界的上侧的环内滤波操作;或者(4)在上侧的环内滤波操作不使用在虚拟边界的底侧上的任何像素的信息。“ph_virtual_boundaries_loopfilter_disable”为“3”可以指定在图像头中发送虚拟边界的信息,并且包括如下之一(1)禁用虚拟边界右侧的环内滤波操作;(2)右侧的环内滤波操作不使用虚拟边界左侧的任何像素的信息;(3)禁用虚拟边界底部的环内滤波操作;或者(4)底侧的环内滤波操作不使用上侧的任何像素的信息。在一些实施例中,如果“ph_virtual_boundaries_loopfilter_disable”不存在于图像头中,则可以推断其值为0。
在一些实施例中,变量“VirtualBoundariesLoopfilterDisabled”可以是定义为公式(2):
与本公开的一些实施例一致,环路滤波器可以是自适应环路滤波器(ALF)。当ALF在第一侧(例如,左侧、右侧、顶部或底部)部分禁用时,第一侧上的像素可以在滤波中被填充,并且第二侧(例如,右侧、左侧、底部或顶部)上的像素不用于滤波。
在一些实施例中,ALF的边界位置可以以如下所述方式导出:在ALF边界位置推导过程中,变量“clipLeftPos”、“clipRightPos”、“clipToPos”和“clipBottomPos”可以被设置为“-128”。
与VVC/H.266标准相比(例如,在VVC草案7中),变量“ClipToPos”可以如下确定:如果(y-(CtbSizeY-4))大于或等于0,则变量“ClipToPos”可以设置为(yCtb+CtbSizeY-4)。如果(y-(CtbSizeY-4))为负,“VirtualBoundariesLoopfilterDisabled”等于1,并且对于任何n=0,1,...,(VirtualBoundariesNumHor-1),(yCtb+y-VirtualBoundariesPosY[n])处于半开区间[1,3),则可以将“clipTopPos”设置为“VirtualBoundariesPosY[n]”(即,clipTopPos=VirtualBoundariesPosY[n])。如果(y-(CtbSizeY-4))为负,“VirtualBoundariesLoopfilterDisabled”等于3,并且对于任何n=0,1,...,(VirtualBoundariesNumHor-1),(yCtb+y-VirtualBoundariesPosY[n])处于半开区间[1,3)然后,可以将“clipTopPos”设置为“VirtualBoundariesPosY[n]”(即clipTopPos=VirtualBoundariesPosY[n])。
如果(y-(CtbSizeY-4))为负,y小于3,并且以下其中一个或多个条件成立,则可以将“clipTopPos”设置为“yCtb”:(1)当前编码树块的顶部边界是块片批(tile)的顶部边界,且“loop_filter_across_tiles_enabled_flag”等于0;(2)当前编码树块的顶部边界是条带(slice)的顶部边界,且“loop_filter_across_slices_enabled_flag”等于0;或者(3)当前编码树块的顶部边界是子图像的顶部边界,且“loop_filter_across_subpic_enabled_flag[SubPicIdx]”等于0。
与VVC/H.266标准相比(例如,在VVC草案7中),变量“clipBottomPos”可以如下确定。如果“VirtualBoundariesLoopfilterDisabled”等于1,则“VirtualBoundariesPosY[n]”不等于(pic_height_in_luma_samples-1)或0,并且对于任何n=0,...,(VirtualBoundariesNumHor-1),(VirtualBoundariesPosY[n]-yCtb-y)处于开区间(0,5),则可以将“clipBottomPos”设置为“VirtualBoundariesPosY[n]”(即clipBottomPos=VirtualBoundariesPosY[n])。
如果“VirtualBoundariesLoopfilterDisabled”等于2,“VirtualBoundariesPosY[n]”不等于(pic_height_in_luma_samples-1)或0,并且对于任何n=0,...,(VirtualBoundariesNumHor-1),(VirtualBoundariesPosY[n]-yCtb-y)处于开放区间(0,5),则可以将“clipBottomPos”设置为“VirtualBoundariesPosY[n]”(即clipBottomPos=VirtualBoundariesPosY[n])。
否则,如果(CtbSizeY-4-y)处于开区间(0,5),则“clipBottomPos”可以设置为“yCtb+CtbSizeY-4”。否则,如果(CtbSizeY-y)小于5,并且满足以下一个或多个条件,则可以将“clipBottomPos”设置为“(yCtb+CtbSizeY)”:(1)当前编码树块的底部边界为块片的底部边界,且“loop_filter_across_tiles_enabled_flag”等于0;(2)当前编码树块的底部边界为条带底部边界,且“loop_filter_across_slices_enabled_flag”等于0;或者(3)当前编码树块的底部边界是子图像的底部边界,并且“loop_filter_across_subpic_enabled_flag[SubPicIdx]”等于0。
与VVC/H.266标准相比(例如,在VVC草案7中),变量“clipLeftPos”可以如下确定。如果“VirtualBoundariesLoopfilterDisabled”等于1,并且对于任何n=0,...,(VirtualBoundariesNumVer-1),(xCtb+x-VirtualBoundariesPosX[n])处于半开区间[1,3)中,则“clipLeftPos”可以设置为“VirtualBoundariesPosX[n]”(即clipLeftPos=VirtualBoundariesPosX[n])。如果“VirtualBoundariesLoopfilterDisabled”等于3,并且对于任何n=0,...,(VirtualBoundariesNumVer-1),“xCtb+x-VirtualBoundariesPosX[n]”处于半开区间[1,3)中,则“clipLeftPos”可以设置为“VirtualBoundariesPosX[n]”(即clipLeftPos=VirtualBoundariesPosX[n])。
否则,如果x小于3,并且以下条件中的一个或多个成立,则可以将“clipLeftPos”设置为“xCtb”:(1)当前编码树块的左侧边界是块片的左侧边界,且“loop_filter_across_tiles_enabled_flag”等于0;(2)当前编码树块的左侧边界为条带的左侧边界,且“loop_filter_across_slices_enabled_flag”等于0;(3)当前编码树块的左侧边界为子图像的左侧边界,且“loop_filter_across_subpic_enabled_flag[SubPicIdx]”等于0。
与VVC/H.266标准相比(例如,在VVC草案7中),变量“clipRightPos”可以确定如下:如果“VirtualBoundariesLoopfilterDisabled”等于1,并且对于任何n=0,...,(VirtualBoundariesNumVer-1),“(VirtualBoundariesPosX[n]-xCtb-x)”处于开区间(0,5),则“clipRightPos”可以设置为“VirtualBoundariesPosX[n]”(即,clipRightPos=VirtualBoundariesPosX[n])。如果“VirtualBoundariesLoopfilterDisabled”等于2,并且对于任何n=0,...,(VirtualBoundariesNumVer-1),(VirtualBoundariesPosX[n]-xCtb-x)处于开区间(0,5)中,则“clipRightPos”可以设置为“VirtualBoundariesPosX[n]”(即,clipRightPos=VirtualBoundariesPosX[n])。
否则,如果“(CtbSizeY-x)”小于5,并且以下一个或多个条件为true,则可以将“clipRightPos”设置为(xCtb+CtbSizeY):(1)当前编码树块的右侧边界是块片的右侧边界,并且“loop_filter_across_tiless_enabled_flag”等于0;(2)当前编码树块的右侧边界是条带的右侧边界,并且“loop_filter_across_slices_enabled_flag”等于0;或者(3)当前编码树块的右侧边界是子图像的右侧边界,“loop_filter_across_subpic_enabled_flag[SubPicIdx]”等于0。
与VVC/H.266标准相比(例如,在VVC草案7中),变量“clipTopLeftFlag”和“clipBotRightFlag”可以确定如下。如果覆盖亮度位置的编码树块(xCtb,yCtb)和覆盖亮度位置的编码树块(xCtb-CtbSizeY,yCtb-CtbSizeY)属于不同的条带,并且“loop_filter_across_slices_enabled_flag”等于0,则可以将“clipTopLeftFlag”设置为1。如果覆盖亮度位置的编码树块(xCtb,yCtb)和覆盖亮度位置的编码树块(xCtb+CtbSizeY,yCtb+CtbSizeY)属于不同的条带,并且“loop_filter_across_slices_enabled_flag”等于0,则可以将“clipBotRightFlag”设置为1。
与本公开的一些实施例一致,环路滤波器可以包括采样自适应偏移(SAO)操作。当在虚拟边界的第一侧(例如,左侧、右侧、顶部或底部)上部分禁用SAO时,如果第一侧的像素上的SAO需要在第二侧(例如,右侧、左侧、底部、或顶部),则可以跳过第一侧像素上的SAO。通过这样做,第二侧上的像素不能被使用。
与本公开的一些实施例一致,在CTB修改过程中,对于所有采样位置(xSi,ySj)和(xYi,yYj),其中i=0,...,(nCtbSw-1)和j=0,...,(nCtbSh-1),可以应用以下操作。
如果满足以下一个或多个条件,则可以不修改变量“saoPicture[xSi][ySj]”:(1)变量“SaoTypeIdx[cIdx][rx][ry]”等于0;
(2)“VirtualBoundariesLoopfilterDisabled”等于1,对于任何n=0,...,(VirtualBoundariesNumVer-1),“xSj”等于((VirtualBoundariesPosX[n]/scaleWidth)-1),“SaoTypeIdx[cIdx][rx][ry]”等于2,变量“SaoEoClass[cIdx][rx][ry]”不等于1;
(3)“VirtualBoundariesLoopfilterDisabled”等于1,对于任何n=0,...,(VirtualBoundariesNumVer-1),“xSj”等于(VirtualBoundariesPosX[n]/scaleWidth),“SaoTypeIdx[cIdx][rx][ry]”等于2,和“SaoEoClass[cIdx][rx][ry]”不等于1;
(4)“VirtualBoundariesLoopfilterDisabled”等于1,对于任何n=0,...,(VirtualBoundariesNumHor-1),“ySj”等于((VirtualBoundariesPosY[n]/scaleHeight)-1),“SaoTypeIdx[cIdx][rx][ry]”等于2,“SaoEoClass[cIdx][rx][ry]”不等于0;
(5)“VirtualBoundariesLoopfilterDisabled”等于1,对于任何n=0,...,(VirtualBoundariesNumHor-1),“ySj”等于(VirtualBoundariesPosY[n]/scaleHeight),“SaoTypeIdx[cIdx][rx][ry]”等于2,和“SaoEoClass[cIdx][rx][ry]”不等于0;
(6)“VirtualBoundariesLoopfilterDisabled”等于2,对于任何n=0,...,(VirtualBoundariesNumVer-1),“xSj”等于(VirtualBoundariesPosX[n]/scaleWidth)-1),“SaoTypeIdx[cIdx][rx][ry]”等于2,以及“SaoEoClass[cIdx][rx][ry]”不等于1;
(7)“VirtualBoundariesLoopfilterDisabled”等于3,对于任何n=0,...,(VirtualBoundariesNumVer-1),“xSj”等于(VirtualBoundariesPosX[n]/scaleWidth),“SaoTypeIdx[cIdx][rx][ry]”等于2,和“SaoEoClass[cIdx][rx][ry]”不等于1;
(8)“VirtualBoundariesLoopfilterDisabled”等于2,对于任何n=0,...,(VirtualBoundariesNumHor-1),“ySj”等于((VirtualBoundariesPosY[n]/scaleHeight)-1),“SaoTypeIdx[cIdx][rx][ry]”等于2,“SaoEoClass[cIdx][rx][ry]”不等于0;或
(9)“VirtualBoundariesLoopfilterDisabled”等于3,对于任何n=0,...,(VirtualBoundariesNumHor-1),“ySj”等于(VirtualBoundariesPosY[n]/scaleHeight),“SaoTypeIdx[cIdx][rx][ry]”等于2,“SaoEoClass[cIdx][rx][ry]”不等于0。
与本公开的一些实施例一致,环路滤波器可以包括去块滤波器。在一些实施例中,当在虚拟边界的第一侧(例如,左侧、右侧、顶部或底部)上部分地禁用去块滤波器时,去块滤波器可以跳过对第一侧上的像素的处理。虚拟边界的第二侧(例如,右侧、左侧、底部或顶部)上的像素可以由去块滤波器处理。在一些实施例中,当“VirtualBoundariesLoopfilterDisabled”不是false(例如,具有值0)时,去块滤波器可以被完全禁用,去块滤波器可以跳过对虚拟边界的两侧上的像素的处理。
与本公开的一些实施例一致,图13-15示出了示例方法1300-1500的流程图。方法1300-1500可以由与视频编码器(例如,与图2A-2B描述有关的编码器)或视频解码器(例如,与图3A-3B描述有关的解码器)相关联至少一个处理器(例如,图4中的处理器)执行。在一些实施例中,方法1300-1500可以被实现为计算机程序产品(例如,体现在计算机可读介质中),其包括由计算机(例如,图4中的设备400)执行的计算机可执行指令(例如,程序代码)。在一些实施例中,方法1300-1500可以被实现为存储计算机可执行指令(例如,图4中的存储器404中的程序指令)的硬件产品(例如,图4中的存储器404)。硬件产品可以是计算机的独立或集成部分。
作为示例,图13示出了根据本公开的一些实施例的用于视频处理的示例过程1300的流程图。例如,过程1300可以由编码器执行。
在步骤1302,响应于处理器(例如,图4中的处理器402)接收视频序列(例如,图2A-2B中的视频序列202),处理器可以对与视频序列相关联的参数集(例如,SPS)中的第一标志数据(例如,如与图10-12所示出和描述相关联的“gdr_enabled_flag”)。该第一标志数据可以表示对视频序列启用或禁用逐步解码刷新(GDR)。
在步骤1304,当所述第一标志数据表示针对视频序列禁用GDR(例如,“gdr_enabled_flag”为false)时,处理器可以对与视频序列中的图像相关联的图像头进行编码,以指示该图像是非GDR图像。如本文所使用的,GDR图像可以指包括干净区域和脏区域的图像。作为示例,干净区域可以是如图5所示和所描述的干净区域516、520、524或528中的任何一个,并且脏区域可以是如图5所示和所描述的脏区域514、518、522或526中的任何一个。本公开中的非GDR图像可以指不包括干净区域或不包括脏区域的图像。
在一些实施例中,为了对图像头进行编码,处理器可以禁止对图像头中的第二标志数据(例如,如与图10-12所示和描述的有关“gdr_pic_flag”)进行编码。第二标志数据可以表示图像是否是GDR图像。
在一些实施例中,为了对图像头进行编码,处理器可以对图像头中的第二标志数据(例如,如与图10-12所示和描述有关的“gdr_pic_flag”)进行编码,并且第二标志数据表示该图像是非GDR图像(例如,“gdr_pic_flag”为false)。
在步骤1306,处理器对非GDR图像进行编码。
与本公开的一些实施例一致,当第一标志数据表示针对视频序列启用GDR(例如,“gdr_enabled_flag”为true)时,处理器可以在图像头中启用对第二标志数据(例如,如与图10-12示出和描述相关“gdr_pic_flag”)进行编码,并且第二标志数据表示图像是否是GDR图像(例如,“gdr_pic_flag”为true)。然后处理器可以对图像进行编码。
与本公开的一些实施例一致,当第一标志数据表示针对视频序列启用GDR(例如,“gdr_enabled_flag”为true)并且第二标志数据表示图像是GDR图像(例如,“gdr_pic_flag”为true)时,处理器可以将图像划分为第一区域(例如,干净区域,诸如图5中所示和描述的干净区域516、520、524或528中的任何一个)和第二区域(例如,脏区域,例如如图5所示脏区域514、518、522或526中的任何一个)。例如,第一区域可以是虚拟边界的第一侧(例如,左侧、右侧、顶部或底部),并且第二区域可以是虚拟边界的第二侧(例如,右侧、左侧、底部、或顶部)。然后,处理器可以在使用第二区域的第二像素信息对第一像素进行滤波,或仅仅使用第一区域的像素信息对第一像素施加环路滤波器时,可以对第一区域的第一像素禁用环路滤波器(例如,与图2B和图3B示出和描述有关的环路滤波器232)。之后,处理器可以使用第一区域或第二区域中的至少一个中的像素将环路滤波器应用于第二区域中的像素。
作为示例,图14示出了根据本公开的一些实施例的用于视频处理的另一示例过程1400的流程图。例如,过程1400可以由解码器执行。
在步骤1402,响应于处理器(例如,图4中的处理器402)接收视频位流(例如,图3A-3B中的视频位流228),处理器可以对视频位流的序列(例如,解码的视频序列)相关联的参数集(例如,SPS)中第一标志数据(例如,如与图10-12示出和描述有关的“gdr_enabled_flag”,)进行解码。该第一标志数据可以表示对于视频序列是启用还是禁用逐步解码刷新(GDR)。
在步骤1404,当第一标志数据表示针对序列禁用GDR(例如,“gdr_enabled_flag”为false)时,处理器可以解码与序列中的图像相关联的图像头。其中所述图像头指示该图像为非GDR图像。
在一些实施例中,为了解码图像头,处理器可以禁止对图像头中的第二标志数据(例如,如与图10-12所示和描述有关的“gdr_pic_flag”)的解码,并且确定该图像是非GDR图像,其中第二标志数据可以指示图像是否为GDR图像。在一些实施例中,为了解码图像头,处理器可以解码图像头中的第二标志数据,其中第二标志数据可以指示图像是非GDR图像(例如,“gdr_pic_flag”为false)。
在步骤1406,处理器可以解码非GDR图像。
与本公开的一些实施例一致,当第一标志数据表示针对视频序列启用GDR(例如,“gdr_enabled_flag”为true)时,处理器可以解码图像头中的第二标志数据(例如,,如与图10-12示出和描述相关的“gdr_pic_flag”)在,并且基于该第二标志数据确定图像是否是GDR图像(例如,“gdr_pic_flag”为true)。然后,处理器可以对图像进行解码。
与本公开的一些实施例一致,当第一标志数据表示针对视频序列启用GDR并且第二标志数据表示图像是GDR图像时,处理器可以使用虚拟边界将图像划分为第一区域(例如,干净区域,如图5示出和描述的干净区域516、520、524或528中的任何一个)和第二区域(例如,脏区域,如如图5所示和描述的脏区域514、518、522或526中的任何一个)。例如,第一区域可以是虚拟边界的第一侧(例如,左侧、右侧、顶部或底部),第二区域可以是虚拟边界的第二侧(例如,右侧、左侧、底部、或顶部)。然后,处理器可以禁用第一区域中的环路滤波器(例如,与图2B和3B示出和描述有关的环路滤波器232),或者仅在使用第一区域中的像素的信息的第一像素上应用环路滤波器。之后,处理器可以使用第一区域或第二区域中的至少一个中的像素将环路滤波器应用于第二区域中的像素。
作为示例,图15示出了根据本公开的一些实施例的用于视频处理的又一示例过程1500的流程图。例如,过程1500可以由编码器或解码器执行。
在步骤1502,响应于处理器(例如,图4中的处理器402)接收视频的图像,处理器基于与所述图像相关联的标志数据来确定所述图像是否是逐步解码刷新(GDR)。例如,标志数据可以处于序列级别(例如,存储在SPS中)或图像级别(例如,存储在图像头中)。
在步骤1504,基于确定图像是GDR图像,处理器可以使用虚拟边界确定图像的第一区域(例如,干净区域,如图5中所示和描述的干净区域516、520、524、或528中的任何一个)和的第二区域(例如,脏区域,如图5中所示和描述的任何脏区域514、518、522或526中的任何一个)。例如,所述第一区域可以包括左侧区域或上部区域,所述第二区域可以包括右侧区域或下部区域。
在步骤1506,当使用第二区域中的第二像素的信息对第一像素进行滤波,或者仅使用所述第一区域中的像素的信息将所述环路滤波器应用于所述第一像素时,处理器可以在第一区域中的第一像素上禁用环路滤波器(例如,与图2B和3B示出和描述有关的环路滤波器232)。。在一些实施例中,处理器可以在第一区域中禁用样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个,或者使用第一区域的像素应用样本自适应偏移、去块滤波器、或者自适应环路滤波器中的至少一个。
在步骤1508,处理器可以使用第一区域或第二区域中的至少一个中的像素将环路滤波器应用于第二区域中的像素。
与本公开的一些实施例一致,处理器可以编码或解码在序列参数集(SPS)、图像参数集(PPS)或图像头中的至少一个中的标志数据。例如,处理器可以将标志数据编码为GDR指示标志“gdr_enabled_flag”、GDR指示标志“gdr_pic_flag”,或者编码为前两者,如结合图10-12所示和描述。
在一些实施例中,还提供了包括指令的非暂时性计算机可读存储介质,并且所述指令可以由设备(诸如所公开的编码器和解码器)执行,用于执行上述方法。非暂时性介质的常见形式包括,例如,软盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、任何具有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM或任何其他闪存、NVRAM、高速缓存、寄存器、任何其他存储芯片或盒式存储、以及它们的联网版本。该设备可以包括一个或多个处理器(cpu)、输入/输出接口、网络接口和/或存储器。
可以使用以下条款进一步描述实施例:
1、一种非暂时性计算机可读介质,存储有指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一种方法,所述方法包括:
响应于接收一视频序列,对与所述视频序列相关联的参数集中的第一标志数据进行编码,其中所述第一标志数据表示对于所述视频序列启用或禁用逐步解码刷新(GDR);
当所述第一标志数据表示对于所述视频序列禁用所述GDR时,对与所述视频序列中的一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及
对所述非GDR图像进行编码。
2、根据条款1所述的非暂时性计算机可读介质,其中对所述图像头进行编码包括:
禁用对所述图像头中的第二标志数据的编码,其中,所述第二标志数据表示所述图像是否为GDR图像。
3、根据条款1所述的非暂时性计算机可读介质,其中对所述图像头进行编码包括:
对所述图像头中的第二标志数据进行编码,其中,所述第二标志数据表示所述图像为非GDR图像。
4、根据条款1所述的非暂时性计算机可读介质,其中所述指令集可由所述装置的所述至少一个处理器执行使所述装置进一步执行:
当所述第一标志数据表示对所述视频序列启用所述GDR时,启用对所述图像头中的第二标志数据的编码,其中,所述第二标志数据表示所述图像是否为GDR图像;以及
对所述图像进行编码。
5、根据条款2-4中任一项所述的非暂时性计算机可读介质,其中所述指令集可由所述装置的所述至少一个处理器执行使所述装置进一步执行:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
6、根据条款2-5中任一项所述的非暂时性计算机可读介质,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
7、根据条款1-6中任一项所述的非暂时性计算机可读介质,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
8、一种非暂时性计算机可读介质,存储有指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一种方法,所述方法包括:
响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);
当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及
对所述非GDR图像进行解码。
9、根据条款8所述的非暂时性计算机可读介质,其中对所述图像头进行解码包括:
禁用对所述图像头中的第二标志数据的解码并确定所述图像是非GDR图像,其中所述第二标志数据指示所述图像是否为GDR图像。
10、根据条款8所述的非暂时性计算机可读介质,其中对所述图像头进行解码包括:
对所述图像头中的第二标志数据进行解码,其中,所述第二标志数据指示所述图像为非GDR图像。
11、根据条款8所述的非暂时性计算机可读介质,其中可由所述装置的所述至少一个处理器执行的所述指令集使所述装置进一步执行:
当所述第一标志数据表示对所述视频序列启用所述GDR时,对所述图像头中的第二标志数据进行解码,并基于所述第二标志数据确定所述图像是否为GDR图像;以及
解码所述图像。
12、根据条款8-11中任一项所述的非暂时性计算机可读介质,其中可由所述装置的所述至少一个处理器执行的所述指令集使所述装置进一步执行:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
13、根据条款9-12中任一项所述的非暂时性计算机可读介质,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
14、根据条款8-13中任一项所述的非暂时性计算机可读介质,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
15、一种非暂时性计算机可读介质,存储有指令集,所述指令集可由装置的至少一个处理器执行以使所述装置执行一种方法,所述方法包括:
响应于接收视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;
基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
16、根据条款15所述的非暂时性计算机可读介质,其中当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器包括:
禁用所述第一区域中的样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用所述第一区域中的像素来应用所述样本自适应偏移、所述去块滤波器或所述自适应环路滤波器中的至少一个。
17、根据条款15-16中任一项所述的非暂时性计算机可读介质,其中可由所述装置的所述至少一个处理器执行的所述指令集使所述装置进一步执行:
对序列参数集(SPS)、图像参数集(PPS)或图像头中的至少一个中的所述标志数据进行编码或解码。
18、根据条款15-17中任一项所述的非暂时性计算机可读介质,其中所述第一区域包括左侧区域或上部区域,以及所述第二区域包括右侧区域或下部区域。
19、根据条款15-18中任一项所述的非暂时性计算机可读介质,其中所述标志数据具有表示所述图像是所述GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
20、一种装置,包括:
存储器,被配置为存储指令集;以及
一个或多个处理器,通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行以下操作:
响应于接收一视频序列,对与所述视频序列相关联的参数集中的第一标志数据进行编码,其中所述第一标志数据表示对于所述视频序列启用或禁用逐步解码刷新(GDR);
当所述第一标志数据表示对于所述视频序列禁用所述GDR时,对与所述视频序列中的与一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及
对所述非GDR图像进行编码。
21、如条款20所述的装置,其中对所述图像头进行编码包括:
禁用对所述图像头中的第二标志数据的编码,其中所述第二标志数据表示所述图像是否是GDR图像。
22、如条款20所述的装置,其中对所述图像头进行编码包括:
对所述图像头中的第二标志数据进行编码,其中所述第二标志数据表示所述图像是非GDR图像。
23、根据条款20所述的装置,其中所述一个或多个处理器还被配置为执行所述指令集以使所述装置执行:
当所述第一标志数据表示对所述视频序列启用所述GDR时,启用对所述图像头中的第二标志数据进行编码,其中,所述第二标志数据表示所述图像是否为GDR图像;以及
对所述图像进行编码。
24、根据条款21-23中任一项所述的装置,其中所述一个或多个处理器还被配置为执行所述指令集以使所述装置执行:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
25、根据条款21-24中任一项所述的装置,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
26、根据条款20-25中任一项所述的装置,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
27、一种装置,包括:
存储器,被配置为存储一组指令;以及
一个或多个处理器,通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行以下操作:
响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);
当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及
对所述非GDR图像进行解码。
28、如条款27所述的装置,其中对所述图像头进行解码包括:
禁止对所述图像头中的第二标志数据进行解码并确定所述图像是非GDR图像,其中所述第二标志数据指示所述图像是否为GDR图像。
29、如条款27所述的装置,其中对所述图像头进行解码包括:
对所述图像头中的第二标志数据进行解码,其中,所述第二标志数据指示所述图像为非GDR图像。
30、根据条款27所述的装置,其中所述一个或多个处理器还被配置为执行所述指令集以使所述装置执行:
当所述第一标志数据表示对所述视频序列启用所述GDR时,对所述图像头中的第二标志数据进行解码,并基于所述第二标志数据确定所述图像是否为GDR图像;以及
解码所述图像。
31、根据条款28-30中任一项所述的装置,其中所述一个或多个处理器还被配置为执行所述指令集以使所述装置执行:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
32.根据条款28-31中任一项所述的装置,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
33、根据条款27-32中任一项所述的装置,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
34、一种装置,包括:
存储器,被配置为存储指令集;以及
一个或多个处理器,通信地耦合到所述存储器并且被配置为执行所述指令集以使所述装置执行以下操作的:
响应于接收到视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;
基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
35、如条款34所述的装置,其中当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,禁用对所述第一区域中的第一像素的环路滤波器包括:
禁用所述第一区域中的样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用所述第一区域中的像素来应用所述样本自适应偏移、所述去块滤波器或所述自适应环路滤波器中的至少一个。
36、根据条款34-35中任一项所述的装置,其中所述一个或多个处理器还被配置为执行所述指令集以使所述装置执行:
对序列参数集(SPS)、图像参数集(PPS)或图像头中的至少一个中的所述标志数据进行编码或解码。
37、根据条款34-36中任一项所述的装置,其中所述第一区域包括左侧区域或上部区域,并且所述第二区域包括右侧区域或下区部域。
38、根据条款34-37中任一项所述的装置,其中所述标志数据具有表示所述图像是所述GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
39、一种方法,包括:
响应于接收到视频序列,对与所述视频序列相关联的参数集中第一标志数据进行编码,其中所述第一标志数据表示对所述视频序列启用或禁用逐步解码刷新(GDR);
当所述第一标志数据表示对所述视频序列禁用所述GDR,对与所述视频序列中的一图像相关联的图像头进行编码以指示所述图像为非GDR图像;以及
对所述非GDR图像进行编码。
40、根据条款39所述的方法,其中对所述图像头进行编码包括:
禁止对所述图像头中的第二标志数据进行编码,其中所述第二标志数据表示所述图像是否为GDR图像。
41、根据条款39所述的方法,其中对所述图像头进行编码包括:
对所述图像头中的第二标志数据进行编码,其中所述第二标志数据表示所述图像是非GDR图像。
42、根据条款39所述的方法,还包括:
当所述第一标志数据表示对所述视频序列启用所述GDR时,启用对所述图像头中的第二标志数据进行编码,其中,所述第二标志数据表示所述图像是否为GDR图像;以及
对所述图像进行编码。
43.根据条款40-42中任一项所述的方法,还包括:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
44、根据条款40-43中任一项所述的方法,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
45、根据条款39-44中任一项所述的方法,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
46.一种方法,包括:
响应于接收一视频位流,对与所述视频位流的序列相关联的参数集中的第一标志数据进行解码,其中,所述第一标志数据表示对于所述视频序列启用还是禁用逐步解码刷新(GDR);
当所述第一标志数据表示对于所述序列禁用所述GDR时,对与所述序列中的一图像相关联的图像头进行解码,其中,所述图像头指示所述图像是非GDR图像;以及
对所述非GDR图像进行解码。
47、根据条款46所述的方法,其中对所述图像头进行解码包括:
禁用对所述图像头中的第二标志数据的解码并确定所述图像是非GDR图像,其中所述第二标志数据指示所述图像是否为GDR图像。
48、根据条款46所述的方法,其中对所述图像头进行解码包括:
对所述图像头中的第二标志数据进行解码,其中,所述第二标志数据指示所述图像为非GDR图像。
49、根据条款46所述的方法,还包括:
当所述第一标志数据表示对所述视频序列启用所述GDR时,对所述图像头中的第二标志数据进行解码,并基于所述第二标志数据确定所述图像是否为GDR图像;以及
解码所述图像。
50、根据条款47-49中任一项所述的方法,还包括:
当所述第一标志数据表示对所述视频序列启用所述GDR且所述第二标志数据表示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
51、根据条款47-50中任一项所述的方法,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
52、根据条款46-51中任一项所述的方法,其中所述第二标志数据具有表示所述图像是GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
53.一种方法,包括:
响应于接收视频的一图像,基于与所述图像相关联的标志数据,确定所述图像是否是逐步解码刷新(GDR)图像;
基于确定所述图像为GDR图像,使用虚拟边界确定所述图像的第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,对所述第一区域中的第一像素禁用所述环路滤波器,以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
54、根据条款53所述的方法,其中当使用所述第二区域中的第二像素的信息对所述第一区域中的第一像素进行滤波,或者仅使用所述第一区域中的像素的信息对所述第一像素应用环路滤波器时,禁用对所述第一区域中的第一像素的环路滤波器包括:
禁用所述第一区域中的样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用所述第一区域中的像素来应用所述样本自适应偏移、所述去块滤波器或所述自适应环路滤波器中的至少一个。
55、根据条款53-54中任一项所述的方法,还包括:
对序列参数集(SPS)、图像参数集(PPS)或图像头中的至少一个中的所述标志数据进行编码或解码。
56、根据条款53-55中任一项所述的方法,其中所述第一区域包括左侧区域或上部区域,以及所述第二区域包括右侧区域或下部区域。
57、根据条款53-56中任一项所述的装置,其中所述标志数据具有表示所述图像是所述GDR图像的值“1”或表示所述图像是非GDR图像的值“0”。
应当注意,本文中的关系术语,例如“第一”和“第二”,仅用于将实体或操作与另一实体或操作区分开来,而不要求或暗示这些实体或操作之间的任何实际关系或顺序。此外,词语“包括”、“具有”、“包含”和“包括”和其他类似的形式在含义上是等效的,并且是开放式的,因为在这些单词中的任何一个后面的一个或多个项目并不意味着是这样一个或多个项目的详尽列表,或者意味着仅限于列出的一个或多个项目。
如本文所用,除非另有特别说明,否则术语“或”包括所有可能的组合,除非在不可行的情况下。例如,如果声明组件可以包括A或B,则除非另有特别声明或不可行,否则组件可以包括A、或B、或A和B。作为第二示例,如果声明组件可以包括A、B或C,则除非另有明确说明或不可行,否则组件可以包括A、或B、或C、或A和B、或A和C、或B和C、或A,B和C。
应当理解,上述实施例可以通过硬件、或软件(程序代码)、或硬件和软件的组合来实现。如果通过软件实现,则可以将其存储在上述计算机可读介质中。该软件在由处理器执行时可以执行所公开的方法。本公开中描述的计算单元和其他功能单元可以通过硬件或软件、或硬件和软件的组合来实现。本领域普通技术人员还可以理解,上述多个模块/单元可以组合为一个模块/单元,并且上述模块/单元中的每个模块/单元可以进一步划分为多个子模块/子单元。
在上述说明书中,已经参考许多具体细节描述了实施例,这些具体细节可以随实施方式而变化。可以对所描述的实施例进行某些修改和改动。对本领域技术人员来说,从本文公开的说明书和实施的考虑来看,其他实施例显而易见的。本说明书和实施例仅被视为示例,本发明的真正范围和精神由权利要求指示。附图所示的步骤序列仅用于说明目的,而不旨在限于任何特定的步骤序列。因此,本领域技术人员可以理解,这些步骤可以在实施相同方法的同时以不同的顺序执行。
在附图和说明书中,已经公开了示例性实施例。然而,可以对这些实施例进行许多变化和修改。因此,尽管采用了特定的术语,但它们仅在通用和描述性的意义上使用,而不是出于限制的目的。
Claims (18)
1.一种视频序列编码方法,所述方法包括:
接收一视频序列;
对一第一标志进行编码,所述第一标志指示在所述视频序列中启用或禁用逐步解码刷新(GDR);以及对一第二标志进行编码,所述第二标志指示所述视频序列中的一图像是GDR图像还是非GDR图像,其中:
当所述第一标志指示在所述视频序列中启用GDR时,所述第二标志具有指示所述视频序列中的所述图像是GDR图像的第一值或者具有指示所述视频序列中的所述图像是非GDR图像的第二值;和
当所述第一标志指示在所述视频序列中禁用GDR时,所述第二标志具有指示所述视频序列中的图像是非GDR图像的第二值。
2.根据权利要求1所述的方法,其中:
在与所述视频序列相关联的序列参数集(SPS)中用信号通知所述第一标志,以及在与所述视频序列中的所述图像相关联的图像头(PH)中用信号通知所述第二标志。
3.根据权利要求1所述的方法,其中,
所述第一标志具有指示对于视频序列启用GDR的第一值;或者具有指示对于视频序列中的视频序列禁用GDR的第二值。
4.根据权利要求1所述的方法,其中,
所述第二标志的第一值等于1,且第二标志的第二值等于0。
5.根据权利要求1所述的方法,所述方法进一步包括:
相应于所述第一标志指示对所述视频序列启用所述GDR且所述第二标志指示所述图像为GDR图像,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用所述第一区域中的像素的信息对所述第一像素应用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
6.根据权利要求5所述的视频序列编码方法,其中,
当使用第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用第一区域中的像素的信息对所述第一像素应用环路滤波器包括:
在所述第一区域中禁用采样自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用第一区域中的像素应用样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个。
7.一种解码比特流以输出视频流的一个或多个图像的方法,该方法包括:
接收比特流;以及
使用比特流的编码信息对一个或多个图像进行解码,其中解码包括:
对一第一标志进行解码,所述第一标志指示对于视频序列启用或禁用逐步解码刷新(GDR);以及,对一第二标志进行解码,所述第二标志指示一图像是GDR图像还是非GDR图像,其中:
当所述第一标志指示在所述视频序列中启用GDR时,所述第二标志具有指示所述视频序列中的所述图像是GDR图像的第一值或者具有指示所述视频序列中的所述图像是非GDR图像的第二值;和
当所述第一标志指示在所述视频序列中禁用GDR时,所述第二标志具有指示所述视频序列中的图像是非GDR图像的第二值。
8.根据权利要求7所述的方法,其中:
从与所述视频序列相关联的序列参数集(SPS)在解码所述第一标志,并且从与所述视频序列中的所述图像相关联的图像头(PH)中解码所述第二标志。
9.根据权利要求7所述的方法,其中,
所述第一标志具有指示对于所述视频序列启用GDR的第一值;或者具有指示对于视频序列中的视频序列禁用GDR的第二值。
10.根据权利要求7所述的方法,其中,
所述第二标志的第一值等于1,且第二标志的第二值等于0。
11.根据权利要求7所述的方法,其中,
相应于所述第一标志指示对所述视频序列启用所述GDR且所述第二标志指示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用所述第一区域中的像素的信息对所述第一像素应用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
12.根据权利要求11所述的方法,其中,
当使用第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用第一区域中的像素的信息对所述第一像素应用环路滤波器包括:
在所述第一区域中禁用采样自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用第一区域中的像素应用样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个。
13.一种非暂时性计算机可读介质,存储有根据以下方法进行处理的视频的位流,所述方法包括:
对一第一标志进行解码,所述第一标志指示对于视频序列启用或禁用逐步解码刷新(GDR);以及,对一第二标志进行解码,所述第二标志指示图像是GDR图像还是非GDR图像,其中:
当所述第一标志指示在所述视频序列中启用GDR时,所述第二标志具有指示所述视频序列中的所述图像是GDR图像的第一值或者具有指示所述视频序列中的所述图像是非GDR图像的第二值;和
当所述第一标志指示在所述视频序列中禁用GDR时,所述第二标志具有指示所述视频序列中的图像是非GDR图像的第二值。
14.根据权利要求13所述的非暂时性计算机可读介质,其中,在与所述视频序列相关联的序列参数集(SPS)中用信号通知所述第一标志,以及在与所述视频序列中的所述图像相关联的图像头(PH)中用信号通知所述第二标志。
15.根据权利要求13所述的非暂时性计算机可读介质,所述方法还包括:
所述第一标志具有指示对于所述视频序列启用GDR的第一值;或者具有指示对于所述视频序列禁用GDR的第二值。
16.根据权利要求13所述的非暂时性计算机可读介质,所述方法还包括:所述第二标志的第一值等于1,且第二标志的第二值等于0。
17.根据权利要求13所述的非暂时性计算机可读介质,所述方法还包括:
当所述第一标志指示对所述视频序列启用所述GDR且所述第二标志指示所述图像为GDR图像时,使用虚拟边界将所述图像划分为第一区域和第二区域;
当使用所述第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用所述第一区域中的像素的信息对所述第一像素应用所述环路滤波器;以及
使用所述第一区域或所述第二区域中的至少一个中的像素对所述第二区域中的像素应用所述环路滤波器。
18.根据权利要求17所述的非暂时性计算机可读介质,所述方法还包括:
当使用第二区域中的第二像素的信息对所述第一区域的第一像素进行滤波时,对所述第一像素禁用环路滤波器,或者仅使用第一区域中的像素的信息对所述第一像素应用环路滤波器包括:
在所述第一区域中禁用采样自适应偏移、去块滤波器或自适应环路滤波器中的至少一个;或者
使用第一区域中的像素应用样本自适应偏移、去块滤波器或自适应环路滤波器中的至少一个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310357937.3A CN116506635B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962954011P | 2019-12-27 | 2019-12-27 | |
US62/954,011 | 2019-12-27 | ||
PCT/US2020/062681 WO2021133519A1 (en) | 2019-12-27 | 2020-12-01 | Methods and systems for performing gradual decoding refresh processing on pictures |
CN202310357937.3A CN116506635B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
CN202080086175.2A CN114830662B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080086175.2A Division CN114830662B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116506635A CN116506635A (zh) | 2023-07-28 |
CN116506635B true CN116506635B (zh) | 2024-01-12 |
Family
ID=76546765
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310357937.3A Active CN116506635B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
CN202080086175.2A Active CN114830662B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080086175.2A Active CN114830662B (zh) | 2019-12-27 | 2020-12-01 | 用于对图像执行逐步解码刷新处理的方法和系统 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11758171B2 (zh) |
EP (1) | EP4082200A4 (zh) |
JP (1) | JP2023507911A (zh) |
KR (1) | KR20220113808A (zh) |
CN (2) | CN116506635B (zh) |
WO (1) | WO2021133519A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020032049A1 (ja) * | 2018-08-06 | 2020-02-13 | シャープ株式会社 | 動画像復号装置、および動画像符号化装置 |
CN116506635B (zh) * | 2019-12-27 | 2024-01-12 | 阿里巴巴(中国)有限公司 | 用于对图像执行逐步解码刷新处理的方法和系统 |
WO2021198309A1 (en) * | 2020-04-02 | 2021-10-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Virtual boundary signaling |
CN118541971A (zh) * | 2021-12-21 | 2024-08-23 | 交互数字Ce专利控股有限公司 | Gdr适配滤波 |
US20230217017A1 (en) * | 2022-01-05 | 2023-07-06 | Nokia Technologies Oy | Method, An Apparatus and a Computer Program Product for Implementing Gradual Decoding Refresh |
US20240187572A1 (en) * | 2022-12-06 | 2024-06-06 | Realtek Semiconductor Corp. | Coding algorithm for realizing distributed Gradual Decoding Refresh |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104823449A (zh) * | 2012-09-28 | 2015-08-05 | 高通股份有限公司 | 在视频译码中用信号表示关注区和逐渐解码刷新 |
CN104885460A (zh) * | 2013-01-07 | 2015-09-02 | 高通股份有限公司 | 在视频译码中具有时间可扩缩性支持的逐渐解码刷新 |
CN104919803A (zh) * | 2013-01-15 | 2015-09-16 | 夏普株式会社 | 具有信令的视频解码器 |
CN108933943A (zh) * | 2012-07-02 | 2018-12-04 | 太阳专利托管公司 | 图像编码方法及图像编码装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9131245B2 (en) * | 2011-09-23 | 2015-09-08 | Qualcomm Incorporated | Reference picture list construction for video coding |
US20140079138A1 (en) * | 2012-09-14 | 2014-03-20 | Sony Corporation | Simplifiication of pic_order_cnt_lsb calculation in hm8 |
US9407923B2 (en) * | 2013-05-20 | 2016-08-02 | Gamefly Israel Ltd. | Overconing lost IP packets in streaming video in IP networks |
US10638147B2 (en) * | 2018-06-01 | 2020-04-28 | Apple Inc. | Gradual decoder refresh techniques with management of reference pictures |
WO2020185959A1 (en) * | 2019-03-11 | 2020-09-17 | Futurewei Technologies, Inc. | Gradual decoding refresh in video coding |
WO2021029987A1 (en) * | 2019-08-09 | 2021-02-18 | Futurewei Technologies, Inc. | External decoding refresh (edr) in video coding |
CA3152933A1 (en) * | 2019-09-24 | 2021-04-29 | Ye-Kui Wang | Support of mixed irap and non-irap pictures within an access unit in multi-layer video bitstreams |
AU2020321174A1 (en) * | 2019-10-07 | 2022-04-28 | Huawei Technologies Co., Ltd. | DPB size based reference picture entry constraints |
US11758193B2 (en) * | 2019-11-04 | 2023-09-12 | Hfi Innovation Inc. | Signaling high-level information in video and image coding |
US11356705B2 (en) * | 2019-12-23 | 2022-06-07 | Qualcomm Incorporated | Picture header intra random access picture and gradual decoder refresh signaling in video coding |
CN116506635B (zh) * | 2019-12-27 | 2024-01-12 | 阿里巴巴(中国)有限公司 | 用于对图像执行逐步解码刷新处理的方法和系统 |
-
2020
- 2020-12-01 CN CN202310357937.3A patent/CN116506635B/zh active Active
- 2020-12-01 CN CN202080086175.2A patent/CN114830662B/zh active Active
- 2020-12-01 KR KR1020227025084A patent/KR20220113808A/ko unknown
- 2020-12-01 WO PCT/US2020/062681 patent/WO2021133519A1/en unknown
- 2020-12-01 EP EP20905125.9A patent/EP4082200A4/en active Pending
- 2020-12-01 JP JP2022532693A patent/JP2023507911A/ja active Pending
- 2020-12-01 US US17/108,534 patent/US11758171B2/en active Active
-
2023
- 2023-09-11 US US18/464,681 patent/US20230421795A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108933943A (zh) * | 2012-07-02 | 2018-12-04 | 太阳专利托管公司 | 图像编码方法及图像编码装置 |
CN104823449A (zh) * | 2012-09-28 | 2015-08-05 | 高通股份有限公司 | 在视频译码中用信号表示关注区和逐渐解码刷新 |
CN104885460A (zh) * | 2013-01-07 | 2015-09-02 | 高通股份有限公司 | 在视频译码中具有时间可扩缩性支持的逐渐解码刷新 |
CN104919803A (zh) * | 2013-01-15 | 2015-09-16 | 夏普株式会社 | 具有信令的视频解码器 |
Non-Patent Citations (2)
Title |
---|
Multiview-Video-Plus-Depth Coding Based on the Advanced Video Coding Standard;Miska M. Hannuksela;《IEEE Transactions on Image Processing》;全文 * |
可分级视频编码差错控制技术综述;许琮;《电视技术》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
US11758171B2 (en) | 2023-09-12 |
US20230421795A1 (en) | 2023-12-28 |
WO2021133519A1 (en) | 2021-07-01 |
CN114830662B (zh) | 2023-04-14 |
CN114830662A (zh) | 2022-07-29 |
CN116506635A (zh) | 2023-07-28 |
EP4082200A4 (en) | 2023-07-05 |
KR20220113808A (ko) | 2022-08-16 |
US20210203971A1 (en) | 2021-07-01 |
EP4082200A1 (en) | 2022-11-02 |
JP2023507911A (ja) | 2023-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116506635B (zh) | 用于对图像执行逐步解码刷新处理的方法和系统 | |
CN114788264B (zh) | 用于发出虚拟边界和环绕运动补偿的信号的方法 | |
US11496741B2 (en) | Methods and apparatuses for block partitioning at picture boundary | |
CN114902670B (zh) | 用信号通知子图像划分信息的方法和装置 | |
US12003751B2 (en) | High level syntax control of loop filter | |
US11956463B2 (en) | Methods for performing wrap-around motion compensation | |
US11785237B2 (en) | Methods for signaling video coding data | |
CN115152236A (zh) | 处理色度信号的方法 | |
CN116405677B (zh) | 用于在调色板模式下对视频数据进行编码的方法和装置 | |
EP4256787A1 (en) | Method for using adaptive loop filter and system thereof | |
WO2021050193A1 (en) | Method and apparatus for coding video data |
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 |