CN116320409A - 一种帧内预测的方法、装置、设备和存储介质 - Google Patents
一种帧内预测的方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN116320409A CN116320409A CN202310293889.6A CN202310293889A CN116320409A CN 116320409 A CN116320409 A CN 116320409A CN 202310293889 A CN202310293889 A CN 202310293889A CN 116320409 A CN116320409 A CN 116320409A
- Authority
- CN
- China
- Prior art keywords
- intra
- reference line
- prediction
- coding unit
- intra prediction
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 238000009499 grossing Methods 0.000 claims abstract description 80
- 238000001914 filtration Methods 0.000 claims abstract description 59
- 230000001419 dependent effect Effects 0.000 claims abstract description 11
- IESVDEZGAHUQJU-ZLBXKVHBSA-N 1-hexadecanoyl-2-(4Z,7Z,10Z,13Z,16Z,19Z-docosahexaenoyl)-sn-glycero-3-phosphocholine Chemical compound CCCCCCCCCCCCCCCC(=O)OC[C@H](COP([O-])(=O)OCC[N+](C)(C)C)OC(=O)CC\C=C/C\C=C/C\C=C/C\C=C/C\C=C/C\C=C/CC IESVDEZGAHUQJU-ZLBXKVHBSA-N 0.000 claims abstract 7
- 230000011664 signaling Effects 0.000 claims description 2
- 239000013074 reference sample Substances 0.000 description 58
- 239000000523 sample Substances 0.000 description 53
- 230000008569 process Effects 0.000 description 44
- 238000012545 processing Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 19
- 230000033001 locomotion Effects 0.000 description 18
- 230000006835 compression Effects 0.000 description 11
- 238000007906 compression Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000000153 supplemental effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/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/105—Selection 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
-
- 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/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/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/176—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 block, e.g. a macroblock
-
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
提供了帧内预测的方法和装置。该方法包括:基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波,与所述编码单元相邻有多个参考行,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号向解码器通知的;基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测;以及基于帧内预测被应用于编码单元,仅对第一参考行应用位置相关帧内预测组合PDPC。
Description
本申请要求于2018年8月29日在美国专利和商标局提交的美国临时专利申请第62/724,575号的优先权,以及要求于2018年11月26日在美国专利和商标局提交的美国专利申请第16/199,891号的优先权,其全部内容通过引用合并至本文中。
本申请对申请号为201980035894.9,申请日为2019年07月24日,发明名称为“用于多行帧内预测的方法和装置”的中国专利申请提出分案申请。
技术领域
本公开涉及视频处理技术,尤其涉及用于多行帧内预测的方法和相关装置。
背景技术
图1中示出了在高效视频编码(High Efficiency Video Coding,HEVC)中使用的帧内预测模式。在HEVC中,存在总共35个帧内预测模式,在这些帧内预测模式中,模式10(101)是水平模式,模式26(102)是垂直模式,以及模式2(103)、模式18(104)和模式34(105)是对角线模式。帧内预测模式被通过三个最可能模式(most probable mode,MPM)和32个剩余模式用信号表示。
当前,PDPC被应用于所有参考行。然而,PDPC处理将通过使用不同的参考行使得所生成的预测样本相似,这不是期望的设计。而且,帧内平滑滤波被应用于所有参考行。然而,帧内平滑滤波处理将使不同行中的参考样本更接近,这不是期望的设计。
发明内容
根据实施方式,一种帧内预测的方法,该方法由至少一个处理器执行,用于视频序列的解码,该方法包括:基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波;其中,多个参考行与所述编码单元相邻,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号通知解码器;基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测;以及基于帧内预测被应用于编码单元,仅对第一参考行应用位置相关帧内预测组合(position-dependent intraprediction combination,PDPC)。
根据实施方式,一种用于控制用于视频序列的解码的帧内预测的装置,用于视频序列的解码,该装置包括:至少一个存储器,其被配置成存储计算机程序代码;以及至少一个处理器,其被配置成访问至少一个存储器并且根据计算机程序代码进行操作。计算机程序代码包括:第一应用代码,该第一应用代码被配置成使至少一个处理器基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波;其中,多个参考行与所述编码单元相邻,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号通知解码器;第二应用代码,该第二应用代码被配置成使至少一个处理器基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测;以及第三应用代码,该第三应用代码被配置成使至少一个处理器基于帧内预测被应用于编码单元,仅对第一参考行应用PDPC。
根据实施方式,一种存储指令的非暂态计算机可读存储介质,该指令使处理器基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波;其中,多个参考行与所述编码单元相邻,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号通知解码器;基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测;以及基于帧内预测被应用于编码单元,仅对第一参考行应用PDPC。
由此可见,与所述编码单元相邻有多个参考行,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,基于与编码单元相邻的第一参考行,仅对所述第一参考行应用帧内平滑滤波。基于所述帧内平滑滤波仅被应用于所述第一参考行,对所述编码单元应用帧内预测;以及基于所述帧内预测被应用于所述编码单元,仅对所述第一参考行应用位置相关帧内预测组合PDPC基于从多个参考行中确定最接近编码单元的第一参考行,并仅对第一参考行应用帧内平滑滤波,由此PDPC和帧内平滑滤波不会被应用于所有参考行,通过PDPC处理不会使不同参考行所生成的预测样本更相似,通过帧内平滑滤波处理不会使不同行中的参考样本更接近。
附图说明
图1是HEVC中的帧内预测模式的图;
图2是根据实施方式的通信***的简化框图;
图3是根据实施方式的视频编码器和视频解码器在流式传输环境中的放置的图;
图4是根据实施方式的视频解码器的功能框图;
图5是根据实施方式的视频编码器的功能框图;
图6是在下一代视频编码(Versatile Video Coding,VVC)草案2中的帧内预测模式的图;
图7是示出一个4×4块内(0,0)和(1,0)位置的DC模式PDPC权重(wL,wT,wTL)的图;
图8是根据实施方式的用于帧内预测的与编码块单元相邻的四个参考行的示图;
图9是示出根据实施方式的控制用于视频序列的解码的帧内预测的方法的流程图;
图10是根据实施方式的用于控制用于视频序列的解码的帧内预测的装置的简化框图;
图11是适合实现实施方式的计算机***的图。
具体实施方式
图2是根据实施方式的通信***(200)的框图。通信***(200)可以包括经由网络(250)互连的至少两个终端(210-220)。对于数据的单向传输,第一终端(210)可以在本地位置处对视频数据进行编码,以经由网络(250)传输至其他终端(220)。第二终端(220)可以从网络(250)接收其他终端的已编码视频数据,对已编码数据进行解码并且显示恢复的视频数据。单向数据传输在媒体服务应用等中会是常见的。
图2示出了第二对终端(230、240),其被提供以支持例如在视频会议期间可能发生的已编码视频的双向传输。对于数据的双向传输,每个终端(230、240)可以对在本地位置处采集的视频数据进行编码,以经由网络(250)传输至其他终端。每个终端(230、240)还可以接收由其他终端传输的已编码视频数据,可以对已编码数据进行解码并且可以在本地显示设备处显示恢复的视频数据。
在图2中,终端(210-240)可以被示为服务器、个人计算机和智能电话,但是实施方式的原理不限于此。实施方式适用于膝上型计算机、平板计算机、媒体播放器和/或专用视频会议设备。网络(250)表示在终端(210-240)之间传送已编码视频数据的任何数目的网络,包括例如有线和/或无线通信网络。通信网络(250)可以在电路交换和/或分组交换信道中交换数据。代表性网络包括电信网络、局域网、广域网和/或互联网。出于本论述的目的,除非在下文中有所解释,否则网络(250)的架构和拓扑对于本实施方式的操作来说可能是无关紧要的。
图3是根据实施方式的视频编码器和视频解码器在流式传输环境中的放置的图。所公开的主题可以同等地适用于其他支持视频的应用,包括例如视频会议、数字TV、在包括CD、DVD、存储棒等的数字介质上存储压缩视频等。
流式传输***可以包括捕获子***(313),该捕获子***可以包括例如数码相机等视频源(301),所述视频源创建例如未压缩的视频样本流(302)。相较于已编码的视频比特流,样本流(302)被描绘为粗线以强调高数据量,样本流可以由耦接至相机(301)的编码器(303)处理。编码器(303)可以包括硬件、软件或其组合以实现或实施如下更详细地描述的所公开主题的各方面。相较于样本流,已编码的视频比特流(304)被描绘为细线以强调低数据量,已编码的视频比特流可以存储在流式传输服务器(305)上以供将来使用。一个或更多个流式传输客户端(306、308)可以访问流式传输服务器(305)以检索已编码的视频比特流(304)的副本(307、309)。客户端(306)可以包括解码器(310),该视频解码器对已编码的视频比特流(307)的传入副本(307)进行解码,并且创建可以在显示器(312)或其他呈现设备(未描绘)上呈现的传出视频样本流(311)。在一些流式传输***中,可以根据某些视频编码/压缩标准来对视频比特流(304、307、309)进行编码。这些标准的示例包括ITU-T H.265建议书。正在开发的视频编码标准被非正式地称为VVC。所公开的主题可以用于VVC的上下文中。
图4是根据实施方式的视频解码器(310)的功能框图。
接收器(410)可以接收将由解码器(310)解码的一个或更多个编解码器视频序列;在同一实施方式中或在另一实施方式中,一次接收一个已编码视频序列,其中每个已编码视频序列的解码独立于其他已编码视频序列。可以从信道(412)接收已编码视频序列,该信道可以是通向存储已编码的视频数据的存储设备的硬件/软件链路。接收器(410)可以接收已编码的视频数据以及其他数据,例如,可转发到他们各自的使用实体(未描绘)的已编码音频数据和/或辅助数据流。接收器(410)可以将已编码视频序列与其他数据分开。为了阻止网络抖动,缓冲存储器(415)可以耦接在接收器(410)与熵解码器/解析器(420)(此后称为“解析器”)之间。当接收器(410)从具有足够带宽和可控性的存储/转发设备或从等时同步网络接收数据时,可能不需要缓冲器(415),或者缓冲器可以是小的。为了在诸如互联网的业务分组网络上使用,可能需要缓冲器(415),缓冲器可以相对较大并且可以有利地具有自适应大小。
解码器(310)可以包括解析器(420)以根据熵编码视频序列重建符号(421)。这些符号的类别包括用于管理解码器(310)的操作的信息,以及潜在地包括用于控制诸如显示器(312)的呈现设备的潜在信息,该显示器不是解码器的组成部分,而是可以耦接至解码器,如图4所示。用于呈现设备的控制信息可以是辅助增强信息(SEI(SupplementaryEnhancement Information,SEI)消息)或视频可用性信息(Video UsabilityInformation,VUI)参数集片段(未描绘)的形式。解析器(420)可以对接收到的已编码视频序列进行解析/熵解码。已编码视频序列的编码可以根据视频编码技术或标准进行,并且可以遵循本领域技术人员公知的原理,包括:可变长度编码、霍夫曼编码(Huffman coding)、具有或不具有上下文灵敏度的算术编码等。解析器(420)可以基于与群组相对应的至少一个参数,从已编码视频序列提取用于视频解码器中的像素的子群组中的至少一个子群组的子群组参数集。子群组可以包括:图片群组(Group of Picture,GOP)、图片、图块、切片、宏块、编码单元(Coding Unit,CU)、块、变换单元(Transform Unit,TU)、预测单元(Prediction Unit,PU)等。熵解码器/解析器还可以从已编码视频序列提取信息,例如变换系数、量化器参数(quantizer parameter,QP)值、运动矢量等。
解析器(420)可以对从缓冲器(415)接收的视频序列执行熵解码/解析操作,从而创建符号(421)。解析器(420)可以接收已编码的数据,并且地对特定符号(421)进行选择性解码。此外,解析器(420)可以确定特定符号(421)是否将被提供到运动补偿预测单元(453)、缩放器/逆变换单元(451)、帧内预测单元(452)或环路滤波器(454)。
取决于已编码视频图片或一部分已编码视频图片(例如:帧间图片和帧内图片、帧间块和帧内块)的类型以及其他因素,符号(421)的重建可以涉及多个不同单元。涉及哪些单元以及涉及方式可以通过由解析器(420)根据已编码视频序列解析的子群组控制信息来控制。出于简洁起见,未描绘解析器(420)与下面的多个单元之间的这样的子群组控制信息流。
除了已经提及的功能块以外,解码器(310)可以在概念上细分成如下文所描述的数个功能单元。在商业约束下运行的实际实现方式中,这些单元中的许多单元彼此紧密交互并且至少可以部分地彼此集成。然而,出于描述所公开的主题的目的,概念上细分为下面的功能单元是适当的。
第一单元是缩放器/逆变换单元(451)。缩放器/逆变换单元(451)从解析器(420)接收作为符号(421)的量化变换系数以及控制信息,包括使用哪种变换方式、块大小、量化因子、量化缩放矩阵等。缩放器/逆变换单元可以输出包括可以输入到聚合器(455)中的样本值的块。
在一些情况下,缩放器/逆变换(451)的输出样本可以属于帧内编码块;也就是说:不使用来自先前重建的图片的预测性信息、但是可以使用来自当前图片的先前重建部分的预测性信息的块。这样的预测性信息可以由帧内图片预测单元(452)提供。在一些情况下,帧内图片预测单元(452)使用从当前(部分重建的)图片(456)提取的周围已经重建的信息来生成与正在重建的块的大小和形状相同的块。在一些情况下,聚合器(455)基于每个样本将帧内预测单元(452)已经生成的预测信息添加到由缩放器/逆变换单元(451)提供的输出样本信息。
在其他情况下,缩放器/逆变换单元(451)的输出样本可以属于帧间编码和潜在运动补偿块。在这样的情况下,运动补偿预测单元(453)可以访问参考图片缓冲器(457)以提取用于预测的样本。在根据属于块的符号(421)对提取的样本进行运动补偿之后,这些样本可以由聚合器(455)添加到缩放器/逆变换单元的输出(在这种情况下被称为残差样本或残差信号),从而生成输出样本信息。运动补偿单元提取预测样本的参考图片缓冲器内的地址可以由运动矢量控制,运动矢量以符号(421)的形式供运动补偿单元使用,符号(421)可以具有例如X、Y和参考图片分量。运动补偿还可以包括在使用子样本精确运动矢量时,从参考图片缓冲器提取的样本值的内插、运动矢量预测机制等。
聚合器(455)的输出样本可以在环路滤波器单元(454)中被各种环路滤波技术采用。视频压缩技术可以包括环路内滤波器技术,环路内滤波器技术由被包括在已编码视频比特流中并且作为来自解析器(420)的符号(421)可用于环路滤波器单元(454)的参数进行控制,然而视频压缩技术还可以响应于在对已编码图片或已编码视频序列的先前(按解码顺序)部分进行解码期间获得的元信息,以及响应于先前重建并经环路滤波的样本值。
环路滤波器单元(454)的输出可以是样本流,所述样本流可以输出到呈现设备(312)以及存储在参考图片缓冲器(457)中以供将来图片间预测使用。
一旦完全重建,某些已编码的图片就可以用作参考图片以用于将来预测。一旦已编码图片被完全重建并且已编码图片(通过例如解析器(420))被识别为参考图片,则当前参考图片(456)可以变为参考图片缓冲器(457)的一部分,并且可以在开始对随后的已编码图片进行重建之前重新分配新的当前图片存储器。
解码器(310)可以根据可以记录在例如ITU-T H.265建议书的标准中的预定视频压缩技术执行解码操作。在已编码视频序列遵循视频压缩技术或标准的语法的意义上,如在视频压缩技术文档或标准中且明确地在其中的配置文件文档中指定的,已编码视频序列可以符合由正使用的视频压缩技术或标准指定的语法。对于合规性,还要求已编码视频序列的复杂度在由视频压缩技术或标准的层级限定的范围内。在一些情况下,层级限制最大图片大小、最大帧速率、最大重建样本速率(以例如每秒兆个样本为单位进行测量)、最大参考图片大小等。在一些情况下,由层级设置的限制可以通过假想参考解码器(HypotheticalReference Decoder,HRD)规范以及在已编码视频序列中用信号表示的HRD缓冲器管理的元数据来进一步限定。
在实施方式中,接收器(410)可以连同已编码的视频一起接收附加(冗余)数据。附加数据可以被包括为已编码视频序列的一部分。附加数据可以由解码器(310)使用来正确地对数据进行解码和/或更准确地重建原始视频数据。附加数据可以是例如时间、空间或信噪比(signal-to-noise ratio,SNR)增强层、冗余切片、冗余图片、前向纠错码等形式。
图5是根据实施方式的视频编码器(303)的功能框图。
编码器(303)可以从视频源(301)(其不是编码器的一部分)接收视频样本,该视频源可以采集要由编码器(303)进行编码的视频图像。
视频源(301)可以提供要由编码器(303)编码的呈数字视频样本流形式的源视频序列,该数字视频样本流可以具有任何合适位深度(例如:8位、10位、12位......)、任何颜色空间(例如,BT.601Y CrCB、RGB......)和任何合适采样结构(例如Y CrCb 4:2:0、Y CrCb4:4:4)。在媒体服务***中,视频源(301)可以是存储先前已准备的视频的存储设备。在视频会议***中,视频源(301)可以是采集本地图像信息作为视频序列的相机。可以将视频数据提供为在按次序观看时被赋予运动的多个单独的图片。图片自身可以被组织为空间像素阵列,其中,取决于使用的采样结构、颜色空间等,每个像素可以包括一个或更多个样本。本领域技术人员可以容易地理解像素与样本之间的关系。以下描述集中于样本。
根据实施方式,编码器(303)可以实时或在由应用所要求的任何其他时间约束下,将源视频序列的图片编码且压缩成已编码视频序列(543)。施行适当的编码速度是控制器(550)的一个功能。控制器控制如下所述的其他功能单元,并且在功能上耦接至这些单元。出于简洁起见,未描绘耦接。由控制器设置的参数可以包括:速率控制相关参数(图片跳过、量化器、率失真优化技术的λ值……)、图片大小、图片群组(GOP)布局、最大运动矢量搜索范围等。本领域技术人员可以容易地识别控制器(550)的其他功能,因为它们可能属于针对特定***设计而优化的编码器(303)。
一些视频编码器以本领域技术人员容易地识别为“编码环路”的方式进行操作。作为十分简化的描述,编码环路可以包括:编码器(530)(此后称为“源编码器”)(负责基于要编码的输入图片和参考图片创建符号)的编码部分,以及嵌入在编码器(303)中的(本地)解码器(533),该解码器重建符号以创建(远程)解码器也将创建的样本数据(因为符号与已编码视频比特流之间的任何压缩在所公开的主题中考虑的视频压缩技术中是无损的)。将重建的样本流输入至参考图片存储器(534)。由于符号流的解码产生与解码器位置(本地或远程)无关的位精确结果,因此参考图片缓冲器内容在本地编码器与远程编码器之间也是位精确的。换言之,编码器的预测部分“看到”的参考图片样本与解码器在解码期间使用预测时将“看到”的样本值完全相同。参考图片同步性(以及在例如由于信道误差而无法维持同步性的情况下产生的漂移)的这种基本原理对于本领域技术人员来说是公知的。
“本地”解码器(533)的操作可以与已经在上面结合图4详细描述的“远程”解码器(310)的操作相同。然而,还简要地参照图4,当符号可用并且由熵编码器(545)和解析器(420)将符号编码/解码为已编码视频序列可以是无损的时,解码器(310)的熵解码部分——包括信道(412)、接收器(410)、缓冲存储器(415)和解析器(420)——可能不能完全在解码器(533)中实现。
此时可以观察到,除了存在于解码器中的解析/熵解码之外的任何解码器技术,也必然需要以基本上相同的功能形式存在于对应的编码器中。由于编码器技术与全面地描述的解码器技术互逆,因此可以简化对编码器技术的描述。下面仅在某些区域中需要并且提供更详细的描述。
作为其操作的一部分,源编码器(530)可以执行运动补偿预测编码,其参考来自视频序列的一个或更多个先前已编码帧(其被指定为“参考帧”)对输入帧进行预测地编码。以此方式,编码引擎(532)对输入帧的像素块与可以被选作输入帧的预测参考的参考帧的像素块之间的差异进行编码。
解码器(533)可以基于由源编码器(530)创建的符号对可以被指定为参考帧的帧的已编码视频数据进行解码。编码引擎(532)的操作可以有利地是有损处理。当已编码视频数据可以在视频解码器(图4中未示出)处被解码时,重建的视频序列通常可以是带有一些误差的源视频序列的副本。解码器(533)复制可以由视频解码器对参考帧执行的解码处理,并且可以使重建的参考帧存储在参考图片存储器(534)中。以此方式,编码器(303)可以本地地存储重建的参考帧的副本,该副本具有与将由远端视频解码器获得的重建的参考帧共同的内容(不存在传输误差)。
预测器(535)可以针对编码引擎(532)执行预测搜索。也就是说,对于要编码的新帧,预测器(535)可以在参考图片存储器(534)中搜索可以用作新图片的适当预测参考的样本数据(作为候选参考像素块)或特定元数据,例如参考图片运动矢量、块形状等。预测器(535)可以基于样本块逐像素块操作,以找到合适的预测参考。在一些情况下,如由预测器(535)获得的搜索结果所确定的,输入图片可以具有从参考图片存储器(534)中存储的多个参考图片取得的预测参考。
控制器(550)可以管理源编码器(530)的编码操作,包括例如设置用于对视频数据进行编码的参数和子群组参数。
可在熵编码器(545)中对所有上述功能单元的输出进行熵编码。熵编码器通过根据本领域技术人员已知的技术(例如霍夫曼编码、可变长度编码、算术编码等)对符号进行无损压缩,将由各种功能单元生成的符号转换成已编码视频序列。
传输器(540)可以缓冲由熵编码器(545)创建的已编码视频序列,从而为经由通信信道(560)进行传输做准备,该通信信道可以是通向可以存储已编码视频数据的存储设备的硬件/软件链路。传输器(540)可以将来自源编码器(530)的已编码视频数据与要传输的其他数据例如已编码音频数据和/或辅助数据流(未示出源)进行合并。
控制器(550)可以管理编码器(303)的操作。在编码期间,控制器(550)可以为每个已编码图片分配特定的已编码图片类型,这可能影响可以应用于相应的图片的编码技术。例如,通常可以将图片分配为以下帧类型中的一个:
帧内图片(I图片)可以是不使用序列中的任何其他帧作为预测源的情况下就可以被编码和解码的图片。一些视频编解码器容许不同类型的帧内图片,包括例如独立解码器刷新图片。本领域技术人员了解I图片的那些变型及其相应的应用和特征。
预测性图片(P图片)可以是可以使用帧内预测或帧间预测进行编码和解码的图片,该帧内预测或帧间预测使用至多一个运动矢量和参考索引来预测每个块的样本值。
双向预测性图片(B图片)可以是可以使用帧内预测或帧间预测进行编码和解码的图片,该帧内预测或帧间预测使用至多两个运动矢量和参考索引来预测每个块的样本值。类似地,多个预测性图片可以使用多于两个参考图片和相关联的元数据以用于单个块的重建。
源图片通常可以在空间上细分为多个样本块(例如,每个4×4、8×8、4×8或16×16个样本的块)并且逐块进行编码。可以参考如通过应用于块的相应的图片的编码分配而确定的其他(已经编码)块对这些块进行预测性编码。例如,可以对I图片的块进行非预测性编码,或者可以参考同一图片的已编码的块来对这些块进行预测性编码(空间预测或帧内预测)。可以参考一个先前已编码参考图片经由空间预测或经由时间预测对P图片的像素块进行非预测性编码。可以参考一个或两个先前已编码参考图片经由空间预测或经由时间预测对B图片的块进行非预测性编码。
编码器(303)可以根据例如ITU-T H265建议书的预定视频编码技术或标准来执行编码操作。在视频编码器的操作中,编码器(303)可以执行各种压缩操作,包括利用输入视频序列中的时间和空间冗余的预测性编码操作。因此,已编码视频数据可以符合由使用的视频编码技术或标准指定的语法。
在实施方式中,传输器(540)可以连同已编码的视频一起传输附加数据。源编码器(530)可以包括这样的数据作为已编码视频序列的一部分。附加数据可以包括时间/空间/SNR增强层、诸如冗余图片和切片的其他形式的冗余数据、辅助增强信息(SEI)消息、视觉可用性信息(Visual Usability Information,VUI)参数集片段等。
图6是VVC草案2中的帧内预测模式的图。
在VVC草案2中,总共有87个帧内预测模式,如图6所示,其中模式18(601)是水平模式,模式50(602)是垂直模式,以及模式2(603)、模式34(604)和模式66(605)是对角线模式。模式-1至10和模式67至76被称为广角帧内预测(Wide-Angle Intra Prediction,WAIP)模式。
PDPC被应用于以下帧内模式而无需发信号通知:平面模式、DC模式、WAIP模式、水平模式、垂直模式、左下角模式(模式2(603)))和其8个相邻角模式(模式3至10),以及右上角模式(模式66(605)))和其8个相邻角模式(模式58至65)。
根据以下PDPC表达式、使用帧内预测模式(DC,平面,角)和参考样本的线性组合来预测位于位置(x,y)处的预测样本pred(x,y):
pred(x,y)=(wL×R-1,y+wT×Rx,-1wTL×R-1,-1+(64-wL-wT+wTL)×pred(x,y)+32)>>6, (式1)
其中Rx,-1、R-1,y分别表示位于当前样本(x,y)顶部(T)和左侧(L)处的参考样本,以及R-1,-1表示位于当前块的左上(top-left,TL)角处的参考样本。
对于DC模式,针对具有宽度和高度的尺寸的块,如下计算权重(wL,wT,wTL):
wT=32>>((y<<1)>>移位),wL=32>>((x<<1)>>移位),
wTL=(wL>>4)+(wT>>4), (式2)
其中,移位=(log2(宽度)-2+log2(高度)-2+2)>>2。
对于平面模式,wTL=0,对于水平模式,wTL=wT,以及对于垂直模式,wTL=wL。PDPC权重可以只通过加法和移位来计算。可以使用式1在单个步骤中计算pred(x,y)的值。
图7是示出在VVC草案2中的一个4×4块内的(0,0)和(1,0)位置的DC模式PDPC权重(wL,wT,wTL)的图。
参照图7,部分(a)示出了一个4×4块内的(0,0)位置的DC模式PDPC权重(wL,wT,wTL)。部分(b)示出了一个4×4块内(1,0)位置的DC模式PDPC权重(wL,wT,wTL)。
如果将PDPC应用于DC模式、平面模式、水平模式和垂直模式,则不需要其他边界滤波器,例如HEVC DC模式边界滤波器或水平/垂直模式边缘滤波器。
图7的部分(a)示出了对于应用于右上角模式或对角线模式的PDPC参考样本Rx,-1,R-1,y和R-1,-1的定义。预测样本pred(x’,y’)位于预测块内的(x’,y’)处。参考样本Rx,-1的坐标x由x=x’+y’+1给出,参考样本R-1,y的坐标y类似地由y=x’+y’+1给出。
8.2.4.2.9位置相关的帧内预测组合处理
该处理的输入是:
-帧内预测模式PredModelntra,
-变量nTbW,其指定变换块宽度,
-变量nTbH,其指定变换块高度,
-变量refW,其指定参考样本宽度,
-变量refH,其指定参考样本高度,
-预测的样本predSamples[x][y],其中,X=0..nTbW-1以及y=0..nTbH-1),
-相邻样本p[x][y],其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)
-变量cldx,其指定当前块的颜色分量。
该处理的输出是经修改的预测样本predSamples[x][y],其中,x=0..nTbW-1,y=0..nTbH-1。
取决于cldx的值,函数cliplCmp被设置如下:
-如果cldx等于0,则cliplCmp被设置为等于CliplY。
-否则,cliplCmp被设置为等于CliplC。
变量nScale被设置为((Log2(nTbW)+Log2(nTbH)-2)>>2)。
如下得出参考样本阵列mainRef[x]和sidRef[y],其中,x=0..refW以及V=0..refH):
如下得出变量refL[x][y]、refT[x][y]、wT[y]、wL[x]和wTL[x][y],其中,x=0..nTbW-1,y=0..nTbH-1):
-如果predModelntra等于INTRA_PLANAR、INTRA_DC、INTRA_ANGULAR18或者INTRA_ANGULAR50,应用以下:
refL[x][y]=p[-1][y] (8-75)
refT[x][y]=p[x][-1] (8-76)
wT[y]=32>>((y<<1)>>nScale) (8-77)
wL[x]=32>>((x<<1)>>nScale) (8-78)
wTL[x][y]=(predModelntra==INTRA_DC)?((wL[x]>>4)+(wT[y]>>4)):0(8-79)
-否则,如果predModelntra等于INTRA_ANGULAR2或INTRA_ANGULAR66,则应用以下:
refL[x][y]=p[-1][x+y+1] (8-80)
refT[x][y]=p[x+y+1][-1] (8-81)
wT[y]=(32>>1)>>((y<<1)>>nScale) (8-82)
wL[x]=(32>>1)>>((x<<1)>>nScale) (8-83)
wTL[x][y]=0 (8-84)
-否则,如果predModeIntra小于或等于INTRA_ANGULR10,则应用以下排序的步骤:
-如下根据IntraPredMode使用如条款8.2.4.2.7中规定的invAngle得出变量dXPos[y]、dXFrac[y]、dXInt[y]和dX[y]:
-如下得出变量refL[x][y]、refT[x][y]、wT[y]、wL[x]和wTL[x][y]:
refL[x][y]=0 (8-86)
wT[y]=(dX[y]<refW-1)?32>>((y<<1)>>nScale):0 (8-88)
WL[x]=0 (8-89)
wTL[x][y]=0 (8-90)-否则,如果predModeIntra大于或等于INTRA_ANGLULAR58,则应用以下排序的步骤:
-如下根据IntraPredMode使用如条款8.2.4.2.7中规定的InvAngle得出变量dYPos[x]、dYFrac[x]、dYInt[x]和dY[x]:
-如下得出变量refL[x][y]、refT[x][y]、wT[y]、wL[x]和wTL[x][y]:
refT[x][y]=0 (8-93)
wT[y]=0 (8-94)
wL[x]=(dY[x]<refH-1)?32>>((x<<1)>>nScale):0 (8-95)
wTL[x][y]=0 (8-96)
-否则,refL[x][y]、refT[x][y]、wT[y]、wL[x]和wTL[x][y]都被设置为等于0。如下得出滤波后的样本filtSamples[x][y](其中,x=0..nTbW-1,y=0..nTbH-1)的值:
在VVC草案2中,对于亮度分量,在生成处理(即帧内平滑滤波处理)之前对用于帧内预测样本生成的相邻样本进行滤波。滤波由给定的帧内预测模式和变换块大小控制。如果帧内预测模式是DC模式或者变换块大小等于4×4,则不对相邻样本进行滤波。如果给定帧内预测模式与垂直模式(或水平模式)之间的距离大于预定义阈值,则启用滤波处理。对于相邻样本滤波,使用[1,2,1]滤波器和双线性滤波器。
来自VVC草案2的以下条款描述帧内平滑滤波处理:
8.2.4.2.4参考样本滤波处理
该处理的输入是:
-(未滤波的)相邻样本refUfilt[x][y],其中,x=-1,y=-1..refH-1,以及X=0..refW-1,y=-1),
-变量nTbW,其指定变换块宽度,
-变量nTbH,其指定变换块高度,
-变量refW,其指定参考样本宽度,
-变量refH,其指定参考样本高度,
-变量cIdx,其指定当前块的颜色分量。
该处理的输出是参考样本p[x][y],其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)。
变量nTbS被设置为等于(Log2(nTbW)+Log2(nTbH))>>1。
变量whRatio被设置为等于min(abs(Log2(nTbW/nTbH)),2)。
如下得出变量wideAngle:
-如果以下条件中的所有条件都为真,则wideAngle被设置为等于1。
-nTbW大于nTbH
-predModeIntra大于或等于2
-predModeIntra小于(whRatio>1)?12:8
-否则,如果以下条件中的所有条件都为真,则wideAngle被设置为等于1。
-nTbH大于nTbW
_predModeIntra小于或等于66
-predModeIntra大于(whRatio>1)?56∶60
-否则,wideAngle被设置为0。
如下得出变量filterFlag:
-如果以下条件中的一个或更多个条件为真,则filterFlag被设置为等于0:
-predModeIntra等于INTRA_DC,
-cIdx不等于0。
-否则,应用以下:
-变量minDistVerHor被设置为等于
Min(Abs(predModeIntra-50),Abs(predModeIntra-18))。
-变量intraHorVerDistThres[nTb S]在表8-4中详细规定。
-如下得出变量filterFlag:
-如果minDistVerHor大于intraHorVerDistThres[nTbS]或WideAngle等于1,则filterFlag被设置为等于1。
-否则,filterFlag被设置为等于0。
表8-4-用于各种变换块大小的intraHorVerDistThres[nTbS]的规定
nTbS=2 | nTbS=3 | nTbS=4 | nTbS=5 | nTbS=6 | nTbS=7 | |
intraHorVerDistThres[nTbS] | 20 | 14 | 2 | 0 | 20 | 0 |
对于参考样本p[x][y]的得出,应用以下:
-如果filterFlag等于1,则如下得出经滤波样本值p[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1):
p[-I][-I]=(refUnfilt[-1][0]+2*refUnfilt[-1][-1]+refUnfilt[0][-1]+2)>>2(8-20)对于y=0..refH-2
p[-1][y]=(refUnfilt[-I][y+I]+2*refUnfilt[-1][y]+refUnfilt[-I][y-I]+2)>>2 (8-21)
p[-1][refH-1]=refUnfilt[-1][refH-1] (8-22)
对于x=0..refW-2
p[x][-1]=(refUnfilt[x-1][-1]+2*refUnfilt[x][-1]+refUnfilt[x+1][-1]+2)>>2 (8-23)
p[refW-1][-1]=refUnfilt[refW-1][-1] (8-24)
-否则,参考样本值p[x][y]被设置为等于未滤波的样本值refUnfilt[x][y],其中,x=-1,y=-1..refH-1以及x=0..refW-1,y=-1)。
在VVC草案2中,多行帧内预测使用更多的参考行来进行帧内预测,并且编码器决定并以信号通知使用哪个参考行来生成帧内预测器。在帧内预测模式之前以信号通知参考行索引,且在以信号通知非零参考行索引时从帧内预测模式排除平面模式和DC模式。
图8是根据实施方式的用于帧内预测的与编码块单元(810)相邻的四个参考行(881至884)的图。
参照图8,描绘了4个参考行(881至884)的示例,并且参考行(881到884)中的每一个包括六个段A至F(820至870)。在块单元(810)的左上方也用黑色描绘了左上参考样本(880)。此外,分别用来自段B和E(830和860)的最接近的样本(890)来填充段A和F(820至870)。
再次参照图6,超出由常规帧内预测模式覆盖的预测方向范围的广角由虚线箭头指示,且分别对应于广角帧内预测模式。可以如下为非正方形块应用于这些广角:
如果块宽度大于块高度,那么右上方向上(HEVC中的帧内预测模式34)超过45度的角度。
如果块高度大于块宽度,那么左下方向上(HEVC中的帧内预测模式2)超过45度的角度。
使用原始方法来以信号通知所替换的模式,并且在解析之后将所替换的模式重新映射到广角帧内预测模式的索引。帧内预测模式的总数不变,即35,并且帧内模式编码不变。
当前,PDPC被应用于所有参考行。然而,PDPC处理将通过使用不同的参考行使得所生成的预测样本相似,这不是期望的设计。
当前,帧内平滑滤波被应用于所有参考行。然而,帧内平滑滤波处理将使不同行中的参考样本更接近,这不是期望的设计。
为了解决这些问题,下面讨论实施方式,这些实施方式可以单独使用或以任何顺序组合使用。在以下描述中,最近参考行(即,图8的参考行881)的行索引为0。将最大的以信号通知的参考行号表示为N。此外,术语“PDPC”可以指如在VVC草案2条款8.2.4.2.9中描述的简化PDPC。
在实施方式中,仅对最近的参考行应用PDPC。
在实施方式中,仅对最近的参考行应用帧内平滑滤波处理。
在实施方式中,仅对某些参考行(即,图8的881至884)应用帧内平滑滤波处理。在实施方式中,将帧内平滑滤波处理仅应用于参考行0(即,图8的881)和1(即,图8的882)。在另一实施方式中,将帧内平滑滤波处理应用于参考行0和3(即,图8的884)。在又一实施方式中,将帧内平滑滤波处理应用于参考行0和2(即,图8的883)。在又一实施方式中,不将帧内平滑滤波处理应用于一个参考行,并且将帧内平滑滤波处理应用于所有其他参考行。例如,不将帧内平滑滤波处理应用于参考行3。
在实施方式中,仅对某些选择的参考行应用PDPC。在实施方式中,仅将PDPC应用于参考行0和1。在另一实施方式中,将PDPC应用于参考行0和3。在又一实施方式中,将PDPC应用于参考行0和2。在又一实施方式中,未将PDPC应用于一个参考行,并且将PDPC应用于所有其他参考行。例如,不将PDPC应用于参考行3。
在实施方式中,仅对非零参考行(即,图8的882至884)应用PDPC,但是当PDPC被应用于非零参考行时,PDPC仅被应用于某些帧内预测模式。以下实施方式可以单独应用或以任何顺序组合应用。在实施方式中,当使用非零参考行时,PDPC仅被应用于平面模式和/或DC模式。在实施方式中,当使用非零参考行时,仅将PDPC应用于水平模式和垂直模式。在又一实施方式中,当使用非零参考行时,仅将PDPC应用于对角线模式(如图6所示的模式2或66)。在又一实施方式中,当使用非零参考行时,仅将PDPC应用于接近模式2和模式66的帧内预测模式,例如,如图6中所示的模式3至10和模式58至65。在又一实施方式中,当使用非零参考行时,仅将PDPC应用于WAIP模式。
在实施方式中,将PDPC和帧内平滑滤波处理的不同组合用于不同的参考行。在实施方式中,将PDPC和帧内平滑滤波应用于参考行0,仅将PDPC应用于参考行1,仅将帧内平滑滤波应用于参考行2,并且既不将PDPC也不将帧内平滑滤波应用于参考行3。在另一实施方式中,如果N等于4,那么将PDPC和帧内平滑滤波两者应用于参考行0,以及/或者存在仅被应用PDPC或帧内平滑滤波而不被应用两者的至少一个参考行,以及/或者存在既不被应用PDPC也不被应用帧内平滑滤波的至少一个参考行。在又一实施方式中,如果N等于3,那么将PDPC和帧内平滑滤波两者应用于参考行0,仅将PDPC应用于非零参考行中的一个非零参考行,并且既不将PDPC也不将帧内平滑滤波应用于参考行中的一个参考行。在又一实施方式中,如果N等于3,那么将PDPC和帧内平滑滤波两者应用于参考行0,仅将帧内平滑滤波应用于非零参考行中的至少一个,既不将PDPC也不将帧内平滑滤波应用于参考行中的至少一个。
在实施方式中,平面模式和DC模式也用于非零参考行,但是在不同参考行中用于平面模式和DC模式的PDPC和帧内平滑滤波是不同的。在实施方式中,在最近的参考行中将PDPC和帧内平滑滤波应用于平面模式和DC模式,并且在其他参考行中不将PDPC和帧内平滑滤波应用于平面模式和DC模式。在另一实施方式中,在最近的参考行中将PDPC和帧内平滑滤波应用于平面模式和DC模式,在非零参考行中将PDPC和帧内平滑滤波中的任一者应用于平面模式和DC模式,或者将PDPC和帧内平滑滤波都不应用于平面模式和DC模式。
在实施方式中,对于非零参考行,不将PDPC应用于的广角(wide angle)。
在实施方式中,对于非零参考行,不将帧内平滑滤波应用于广角。
在实施方式中,帧内平滑滤波是依赖于参考行的。也就是说,对于不同参考行,将帧内平滑滤波应用于不同帧内预测模式。控制哪些接近水平/垂直模式的帧内预测模式被排除于帧内平滑滤波的阈值取决于参考行索引。在实施方式中,对特定参考行索引应用帧内平滑滤波的帧内预测模式被对较小参考行索引值应用帧内平滑滤波的帧内预测模式完全覆盖,其中,较小参考行索引值是指更靠近要被预测的当前块的参考行。
在实施方式中,对于不同参考行,使用PDPC的帧内预测模式是不同的。在实施方式中,在参考行0中,将PDPC应用垂直方向和水平方向。然而,在非零参考行中,不将PDPC应用于垂直方向和水平方向。
以下文本描述基于VVC草案2的使用对非零参考行禁用帧内平滑滤波的实施方式的文本改变(使用下划线和删除线)。
8.2.4.2.1一般帧内样本预测
该处理的输入是:
-样本位置(xTbCmp,yTbCmp),其指定相对于当前图片的左上样本的当前变换块的左上样本;
-变量predModeIntra,其指定帧内预测模式,
-变量nTbW,其指定变换块宽度,
-变量nTbH,其指定变换块高度,
-变量refLine,其指定参考行索引,
-变量cIdx,其指定当前块的颜色分量。
该处理的输出是预测样本predSamples[x][y],其中,
x=0..nTbW-1,y=0..nTbH-1。
变量whRatio被设置为等于min(abs(Log2(nTbW/nTbH)),2)。
如下得出变量refW和refH:
refW=(nTbH>nTbW)?(nTbW+(nTbH>>whRatio)+Ceil(nTbH/32)):(nTbW*2) (8-15)
refH=(nTbW>nTbH)?(nTbH+(nTbW>>whRatio)+Ceil(nTbW/32)):(nTbH*2) (8-16)
对于参考样本p[x][y](其中,x=-1,y=-1..refH-1以及x=0..refW-l,y=-1)的生成,应用以下有序步骤:
1.用样本位置(xTbCmp,yTbCmp)、参考样本宽度refW、参考样本高度refH,颜色分量索引cIdx作为输入,以及用参考样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.2中规定的参考样本可用性标记处理。
2.当至少一个样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)被标记为“不可用于帧内预测”时,则用参考样本宽度refW、参考样本高度refH、参考样本refUnfilt[x][y](其中,x=-I,y=-1..refH-1,以及x=0..refW-I,y=-I)以及颜色分量索引cIdx作为输入,以及用修改后的参考样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.3中规定的参考样本替代处理。
3.用未滤波的样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)、变换块宽度nTbW、变换块高度nTbH、参考样本宽度refW、参考样本高度refH、参考行索引refLine以及颜色分量索引cIdx作为输入,以及用参考样本p[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.4中规定的参考样本滤波处理。
根据predModeIntra的帧内样本预测处理以下应用:
-如果predModeIntra等于INTRA_PLANAR,则用参考样本阵列p、变换块宽度nTbW和变换块高度nTbH作为输入,调用在条款8.2.4.2.5中规定的对应帧内预测模式处理,并且输出是预测样本阵列predSamples。
-否则,如果predModeIntra等于INTRA_DC,则用变换块宽度nTbW、变换块高度nTbH和参考样本阵列p作为输入,调用在条款8.2.4.2.6中规定的对应帧内预测模式处理,并且输出是预测样本阵列predSamples。
-否则如果predModeIntra等于INTRA_CCLM,则用设置为等于(xTbCmp,yTbCmp)的样本位置(xTbC,yTbC)、预测块宽度nTbW和预测块高度nTbH、以及参考样本阵列p作为输入,调用在条款8.2.4.2.8中规定的对应帧内预测模式处理,并且输出是预测样本阵列predSampes。
-否则,用帧内预测模式predModeIntra、变换块宽度nTbW、变换块高度nTbH、参考样本宽度refW、参考样本高度refH和参考样本阵列p作为输入,并且用修改的帧内预测模式predModeIntra和预测样本阵列predSamples作为输出,调用在条款8.2.4.2.7中规定的对应的帧内预测模式处理。
当以下条件之一为真时,用帧内预测模式predModeIntra、变换块宽度nTbW、变换块高度nTbH、预测样本predSamples[x][y](其中,X=0..nTbW-1,y=0..nTbH-1)、参考样本宽度refW、参考样本高度refH、参考样本p[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)和颜色分量索引cIdx作为输入,调用在条款8.2.4.2.9中规定的位置相关预测组合处理,并且输出是经修改的预测样本阵列predSamples。
-predModeIntra等于INTRA_PLANAR
-predModeIntra等于INTRA_DC
-predModeIntra等于INTRA_ANGULARI8
-predModeIntra等于INTRA_ANGULAR50
-predModeIntra小于或等于INTRA_ANGULARI0
-predModeIntra大于或等于INTRA_ANGULAR58
8.2.4.2.4参考样本滤波处理
该处理的输入是:
-(未滤波的)相邻样本refUnfilt[x][y](其中,X=-1,y=-1..refH-1,以及x=0..refW-1,y=-1),
-变量nTbW,其指定变换块宽度,
-变量nTbH,其指定变换块高度,
-变量refW,其指定参考样本宽度,
-变量refH,其指定参考样本高度,
-变量refLine,其指定参考行索引,
-变量cIdx,其指定当前块的颜色分量。
该处理的输出是参考样本p[x][y],(其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)。
变量nTbS被设置为等于(Log2(nTbW)+Log2(nTbH))>>1。
变量whRatio被设置为等于min(abs(Log2(nTbW/nTbH)),2)。
如下得出变量wideAngle:
-如果以下条件中的所有条件都为真,则将wideAngle设置为等于1。
-nTbW大于nTbH
_predModeIntra大于或等于2
-predModeIntra小于(whRatio>1)?12∶8
-否则,如果以下条件中的所有条件都为真,则将wideAngle设置为等于1。
-nTbH大于nTbW
_predModeIntra小于或等于66
-predM0deIntra大于(whRatio>1)?56:60
-否则,wideAngle被设置为0。
如下得出变量filterFlag:
-如果以下条件中的一个或更多个条件为真,则将filterFlag设置为等于0:
-predModeIntra等于INTRA_DC,
-cIdx不等于0。
-refLine不等于0。
-否则,应用以下:
-将变量minDistVerHor设置为等于
Min(Abs(predModeIntra-50),Abs(predModeIntra-18))。
-变量intraHorVerDistThres[nTbS]在表8-4中详细指定。
-如下得出变量filterFlag:
-如果minDistVerHor大于intraHorVerDistThres[nTbS]或wideAngle等于1,则将filterFlag设置为等于1。
-否则,将filterFlag设置为等于0。
表8-4-针对各种变换块大小的intraHorVerDistThres[nTbS]的规范
nTbS=2 | nTbS=3 | nTbS=4 | nTbS=5 | nTbS=6 | nTbS=7 | |
intraHorVerDistThres[nTbS] | 20 | 14 | 2 | 0 | 20 | 0 |
对于参考样本p[x][y]的得出,应用以下:
-如果filterFlag等于1,则如下得出经滤波样本值p[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1):
p[-I][-I]=(refUnfilt[-1][0]+2*refUnfilt[-1][-1]+refUnfilt[0][-1]+2)>>2 (8-20)
对于y=0..refH-2
p[-1][y]=(refUnfilt[-I][y+I]+2*refUnfilt[-1][y]+refUnfilt[-I][y-I]+2)>>2(8-21)
p[1][refH1]=refUnfilt[1][refH-1] (8-22)
对于x=0..refW-2
p[x][-1]=(refUnfilt[x-1][-1]+2*refUnfilt[x][-1]+refUnfilt[、+1][-1]+2)>>2 (8-23)
p[refN-1][-1]=refUnfilt[refW-1][-1] (8-24)
否则,将参考样本值p[x][y]设置为等于未滤波的样本值refUnfilt[x][y],(其中,x=-1,y=-1..refH-1以及x=0..refW-1,y=-1)。
以下文本描述了基于VVC草案2的最新版本的使用对非零参考行禁用PDPC的实施方式的文本更改(使用下划线和删除线)。
8.2.4.2.1一般帧内样本预测
该处理的输入是:
-样本位置(xTbCmp,yTbCmp),其指定相对于当前图片的左上样本的当前变换块的左上样本;
-变量predModeIntra,其指定帧内预测模式,
-变量nTbW,其指定变换块宽度,
-变量nTbH,其指定变换块高度,
-变量refLine,其指定参考行宝引,
-变量cIdx,其指定当前块的颜色分量。
此处理的输出是预测样本predSamples[x][y](其中,x=0..nTbW-1,y=0..nTbH-1)。
变量whRatio被设置为等于min(abs(Log2(nTbW/nTbH)),2)。
如下得出变量refW和refH:
refw=(nTbH>nTbw)?(nTbW+(nTbH>>whRatio)+Ceil(nTbH/32)):(nTbW*2) (8-15)
refH=(nTbW>nTbH)?(nTbH+(nTbW>>whRatio)+Ceil(nTbW/32)):(nTbH*2) (8-16)
对于参考样本p[x][y](其中,x=-1,y=-1..refH-1以及x=0..refW-1,y=-1)的生成,应用以下有序步骤:
4.用样本位置(xTbCmp,yTbCmp)、参考样本宽度refW、参考样本高度refH、颜色分量索引cIdx作为输入,以及用参考样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.2中规定的参考样本可用性标记处理。
5.当至少一个样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)被标记为“不可用于帧内预测”时,则用参考样本宽度refW、参考样本高度refH、参考样本refUnfilt[x][y](其中,X=-I,y=-1..refH-1,以及x=0..refW-I,y=-I)以及颜色分量索引cIdx作为输入,以及用修改后的参考样本refUnfihf[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.3中规定的参考样本替代处理。
6.用未滤波的样本refUnfilt[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)、变换块宽度nTbW、变换块高度nTbH、参考样本宽度refW、参考样本高度refH以及颜色分量索引cIdx作为输入,以及用参考样本p[x][y](其中,x=-1,y=-1..refH-1,以及x=0..refW-1,y=-1)作为输出,调用如条款8.2.4.2.4中规定的参考样本滤波处理。
根据predModeIntra的帧内样本预测处理如下应用:
-如果predModeImra等于INTRA_PLANAR,则用参考样本阵列p、变换块宽度nTbW和变换块高度nTbH作为输入,调用在条款8.2.4.2.5中规定的对应帧内预测模式处理,并且输出是预测样本阵列predSamples。
-否则,如果predModeIntra等于INTRA_DC,则用变换块宽度nTbW、变换块高度nTbH和参考样本阵列p作为输入,调用在条款8.2.4.2.6中规定的对应帧内预测模式处理,并且输出是预测样本样本predSamples。
-否则如果predModeIntra等于INTRA_CCLM,则用设置为等于(xTbCmp,yTbCmp)的样本位置(xTbC,yTbC)、预测块宽度nTbW和高度nTbH、以及参考样本阵列p作为输入,调用在条款8.2.4.2.8中规定的对应帧内预测模式处理,并且输出是预测样本阵列predSampes。
-否则,用帧内预测模式predModeIntra、变换块宽度nTbW、变换块高度nTbH、参考样本宽度refW、参考样本高度refH和参考样本阵列p作为输入,并且用修改的帧内预测模式predModeIntra和预测样本阵列predSamples作为输出,调用在条款8.2.4.2.7中规定的对应帧内预测模式处理。
当以下条件之一为真时,用帧内预测模式predModeIntra、变换块宽度nTbW、变换块高度nTbH、预测样本predSamples[x][y](其中,x=0..nTbW-1,y=0..nTbH-1)、参考样本宽度refW、参考样本高度refH、参考样本p[x][y](其中,x=-l,y=-1..refH-1,以及x=0..refW-l,y=-1)和颜色分量索引cIdx作为输入,调用在条款8.2.4.2.9中规定的位置相关预测组合处理,并且输出是经修改的预测样本阵列predSamples:
-predModeIntra等于INTRA_PLANAR
-predModeIntra等于INTRA_DC
-predModeIntra等于INTRA_ANGULARI8
-predModeIntra等于INTRA_ANGULAR50
-predModeIntra小于或等于INTRA_ANGULARI0
-predModeIntra大于或等于INTRA_ANGULAR58
refLine为0
图9是示出根据实施方式的帧内预测的方法(900)的流程图,所述方法用于视频序列的解码。在一些实现方式中,图9的一个或更多个处理块可以由解码器310执行。在一些实现方式中,图9的一个或更多个处理块可以由与解码器(310)分开或包括解码器(310)的另一设备或一组设备(例如,编码器(303))来执行。
参照图9,在第一块(910)中,方法(900)包括:基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波;其中,多个参考行与所述编码单元相邻,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号通知解码器。
在第二块(920)中,方法(900)包括:基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测。
在第三块(930)中,方法(900)包括:基于帧内预测被应用于编码单元,仅对第一参考行应用PDPC。
方法(900)还可以包括:对多个参考行之中的第二参考行应用帧内平滑滤波。
方法(900)还可以包括:若多个参考行之中包括单参考行,对多个参考行之中除单参考行以外的其他参考行应用帧内平滑滤波。
方法(900)还可以包括:基于帧内预测被应用于编码单元,对多个参考行之中的第二参考行应用PDPC。
方法(900)还可以包括:若多个参考行之中包括单参考行,基于帧内预测被应用于编码单元,对多个参考行之中除单参考行以外的其他参考行应用PDPC。
方法(900)还可以包括:确定与帧内预测模式相对应的帧内预测角度是否大于与编码单元的对角线方向相对应的预定角度,帧内预测模式用于对视频序列进行解码;并且基于帧内预测角度被确定为大于预定角度,阻止对多个参考行之中除了第一参考行之外的其他参考行应用帧内平滑滤波。
方法(900)还可以包括:确定与帧内预测模式相对应的帧内预测角度是否大于与编码单元的对角线方向相对应的预定角度,所述帧内预测模式用于对所述视频序列进行解码;并且基于帧内预测角度被确定为大于预定角度,阻止对多个参考行之中除了第一参考行之外的其他参考行应用PDPC。
方法(900)还可以包括:基于用于对视频序列进行解码的帧内预测模式和至少一个参考行的索引,对该至少一个参考行应用帧内平滑滤波;所述至少一个参考行处于述多个参考行之中除了所述第一参考行之外的其他参考行中。
方法(900)还可以包括:基于多个参考行之中的第二参考行的索引,确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的水平方向相邻;确定用于对视频序列进行解码的当前帧内预测模式的当前索引值是否在阈值索引范围内,并且基于当前索引值被确定为在阈值索引范围内,阻止对第二参考行应用帧内平滑滤波。
方法(900)还可以包括:基于多个参考行之中的第二参考行的索引,确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的垂直方向相邻;确定用于对视频序列进行解码的当前帧内预测模式的当前索引值是否在阈值索引范围内,并且基于当前索引值被确定为在阈值索引范围内,阻止对第二参考行应用帧内平滑滤波。
尽管图9示出了方法(900)的示例块,但是在一些实现方式中,与图9所描绘的这些块相比,方法(900)可以包括附加的块、更少的块、不同的块或不同地布置的块。附加地或替选地,方法(900)的两个或更多个块可以并行执行。
此外,所提出的方法可以由处理电路(例如,一个或更多个处理器或者一个或更多个集成电路)来实现。在示例中,一个或更多个处理器执行存储在非暂态计算机可读介质中的程序以执行所提出的方法中的一个或更多个方法。
图10是根据实施方式的用于控制用于视频序列的解码的帧内预测的装置(1000)的简化框图。
参照图10,装置(1000)用于视频序列的解码,包括第一应用代码(1010)、第二应用代码(1020)和第三应用代码(1030)。
第一应用代码(1010)被配置成基于与编码单元相邻的第一参考行,仅对第一参考行应用帧内平滑滤波。与所述编码单元相邻有多个参考行,所述第一参考行为所述多个参考行中最接近所述编码单元的参考行,所述第一参考行为基于参考行索引以信号向解码器通知的。
第二应用代码(1020)被配置成基于帧内平滑滤波仅被应用于第一参考行,对编码单元应用帧内预测。
第三应用代码(1030)被配置成基于帧内预测被应用于编码单元,仅对第一参考行应用PDPC。
第一应用代码(1010)还可以配置成对多个参考行之中的第二参考行应用帧内平滑滤波。
若所述多个参考行之中包括单参考行,第一应用代码(1010)还可以被配置成对多个参考行之中除单参考行以外的其他参考行应用帧内平滑滤波。
第三应用代码(1030)还可以被配置成基于帧内预测被应用于编码单元而对多个参考行之中的第二参考行应用PDPC。
若所述多个参考行之中包括单参考行,第三应用代码(1030)还可以被配置成基于帧内预测被应用于编码单元,对多个参考行之中除单参考行以外的其他参考行应用PDPC。
第一应用代码(1010)还可以被配置成确定与帧内预测模式相对应的帧内预测角度是否大于与编码单元的对角线方向相对应的预定角度,帧内预测模式用于对所述视频序列进行解码;并且基于帧内预测角度被确定为大于预定角度的,阻止对多个参考行之中除了所述第一参考行之外的其他参考行应用帧内平滑滤波。
第三应用代码(1030)还可以被配置成确定与帧内预测模式相对应的帧内预测角度是否大于与编码单元的对角线方向相对应的预定角度,所述帧内预测模式用于对所述视频序列进行解码;并且基于帧内预测角度被确定为大于预定角度,阻止对多个参考行之中除了所述第一参考行之外的其他参考行应用PDPC。
第一应用代码(1010)还可以被配置成基于用于对视频序列进行解码的帧内预测模式和至少一个参考行的索引,对该至少一个参考行应用帧内平滑滤波,所述至少一个参考行处于述多个参考行之中除了所述第一参考行之外的其他参考行中。
第一应用代码(1010)还可以被配置成基于多个参考行之中的第二参考行的索引来确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的水平方向相邻,确定用于对视频序列解码的当前帧内预测模式的当前索引值是否在阈值索引范围内,并且基于当前索引值被确定为在阈值索引范围内,阻止对第二参考行应用帧内平滑滤波。
第一应用代码(1010)还可以被配置成基于多个参考行之中的第二参考行的索引来确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的垂直方向相邻,确定用于对视频序列进行解码的当前帧内预测模式的当前索引值是否在阈值索引范围内,并且基于当前索引值被确定为在阈值索引范围内,阻止对第二参考行应用帧内平滑滤波。
上述技术可以使用计算机可读指令被实现为计算机软件,并且物理地存储在一个或更多个计算机可读介质中。
图11是适于实现实施方式的计算机***(1100)的图。
可以使用任何合适的机器代码或计算机语言来对计算机软件进行编码,所述机器代码或计算机语言可以经受汇编、编译、链接等机制以创建包括指令的代码,该指令可以由计算机中央处理单元(CPU)、图形处理单元(GPU)等直接执行,或者通过解释、微代码执行等来执行。
指令可以在各种类型的计算机或其部件上执行,包括例如个人计算机、平板计算机、服务器、智能电话、游戏设备、物联网设备等。
图11中示出的用于计算机***(1100)的部件本质上是示例性的,并且不旨在对实现实施方式的计算机软件的功能或使用范围提出任何限制。部件的配置也不应当被解释为具有与计算机***(1100)的示例性实施方式中示出的部件中的任何一个部件或部件的组合有关的任何依赖性或要求。
计算机***(1100)可以包括某些人机接口输入设备。这样的人机接口输入设备可以响应于由一个或更多个人类用户通过例如触觉输入(例如:击键、滑动、数据手套移动)、音频输入(例如:语音、拍打)、视觉输入(例如:姿势)、嗅觉输入(未描绘)进行的输入。人机接口设备还可以用于采集不一定与人的有意识输入直接有关的某些媒体,例如,音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静态图像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
输入人机接口设备可以包括以下中的一个或更多个(描绘的每个中的仅一个):键盘(1101)、鼠标(1102)、触控板(1103)、触摸屏(1110)、数据手套(1104)、操纵杆(1105)、麦克风(1106)、扫描仪(1107)、摄像机(1108)。
计算机***(1100)还可以包括某些人机接口输出设备。这样的人机接口输出设备可以通过例如触觉输出、声音、光和气味/味道来刺激一个或更多个人类用户的感觉。这样的人机接口输出设备可以包括:触觉输出设备(例如,通过触摸屏(1110)、数据手套(1104)或操纵杆1105实现的触觉反馈,但是也可以存在不用作输入设备的触觉反馈设备)、音频输出设备(例如:扬声器(1109)、头戴式耳机(未描绘))、视觉输出设备(例如屏幕(1110),包括阴极射线管(cathode ray tube,CRT)屏幕、液晶显示器(liquid-crystal display,LCD)屏幕、等离子屏幕、有机发光二极管(organic light-emitting diode,OLED)屏幕,每个屏幕具有或不具有触摸屏输入能力,每个屏幕具有或不具有触觉反馈能力——其中的一些屏幕可能能够通过诸如立体图形输出的手段输出二维视觉输出或多于三维的输出;虚拟现实眼镜(未描绘)、全息显示器和烟罐(未描绘))、以及打印机(未描绘)。
计算机***(1100)还可以包括人类可访问存储设备及其相关联的介质,例如包括具有CD/DVD等介质(1121)的CD/DVD ROM/RW(1120)的光学介质、拇指驱动器(1122)、可移动硬盘驱动器或固态驱动器(1123)、遗留磁性介质(例如磁带和软盘(未描绘))、基于专用ROM/ASIC/PLD的设备(例如安全加密狗(未描绘))等。
本领域技术人员还应当理解,结合当前公开的主题使用的术语“计算机可读介质”不包含传输介质、载波或其他瞬时信号。
计算机***(1100)还可以包括到一个或更多个通信网络的接口。网络可以是例如无线的、有线的、光学的。网络还可以是本地的、广域的、城市的、车载的和工业的、实时的、延迟容忍的等。网络的示例包括:诸如以太网的局域网,无线LAN,包括全球移动通信***(global systems for mobile communication,GSM)、第三代(third generation,3G)、***(fourth generation,4G)、第五代(fifth generation,5G)、长期演进(Long-TermEvolution,LTE)等的蜂窝网络,包括有线电视、***和地面广播电视的电视有线或无线广域数字网络,包括CANBus的车载和工业网络等。某些网络通常需要附接至某些通用数据端口或***总线(1149)(诸如,例如计算机***(1100)的通用串行总线(universalserial bus,USB)端口)的外部网络接口适配器;其他网络通常通过附接至如下所述的***总线(例如,到PC计算机***的以太网接口或到智能电话计算机***的蜂窝网络接口)而集成到计算机***(1100)的核中。使用这些网络中的任何网络,计算机***(1100)可以与其他实体进行通信。这样的通信可以是单向的、仅接收的(例如,广播电视)、单向仅发送的(例如,到某些CANbus设备的CANbus)、或双向的(例如使用局域或广域数字网络到其他计算机***)。可以在如上所述的这些网络和网络接口中的每个网络和网络接口上使用某些协议和协议栈。
上述人机接口设备、人类可访问存储设备和网络接口可以被附接至计算机***(1100)的核(1140)。
核(1140)可以包括一个或更多个中央处理单元(Central Processing Unit,CPU)(1141)、图形处理单元(Graphics Processing Unit,GPU)(1142)、现场可编程门阵列(Field Programmable Gate Area,FPGA)形式的专用可编程处理单元(1143)、用于某些任务的硬件加速器(1144)等。这些设备,连同只读存储器(Read-only memory,ROM)(1145)、随机存取存储器(Random-access memory,RAM)(1146),内部大容量存储装置(例如内部非用户可访问硬盘驱动器、固态驱动器(solid-state drive,SSD)等)(1147),可以通过***总线1148连接。在一些计算机***中,可以以一个或更多个物理插头的形式访问***总线(1148),以使得能够通过附加的CPU、GPU等进行扩展。***设备可以直接地或通过***总线(1149)附接至核的***总线(1148)。***总线的架构包括***部件互连(peripheralcomponent interconnect,PCI)、USB等。
CPU(1141)、GPU(1142)、FPGA(1143)和加速器(1144)可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在ROM(1145)或RAM(1146)中。过渡数据也可以存储在RAM(1146)中,而永久数据可以存储在例如内部大容量存储装置(1147)中。可以通过使用缓存存储器来实现存储设备中的任何存储设备的快速存储和检索,该缓存存储器可以与一个或更多个CPU(1141)、GPU(1142)、大容量存储装置(1147)、ROM(1145)、RAM(1146)等紧密地相关联。
计算机可读介质上可以具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可以是为本实施方式的目的而专门设计和构造的介质和计算机代码,或者它们可以是计算机软件领域的技术人员公知和可用的类型。
作为示例而非限制,具有架构(1100)的计算机***——特别是核(1140)——可以由于处理器(包括CPU、GPU、FPGA、加速器等)执行实施在一个或更多个有形计算机可读介质中的软件而提供功能。这样的计算机可读介质可以是与如以上所介绍的用户可访问大容量存储装置相关联的介质,以及具有非暂态性的核(1140)的某些存储装置,例如核部大容量存储装置(1147)或ROM(1145)。可以将实现各种实施方式的软件存储在这样的设备中并且由核(1140)执行。根据特定需要,计算机可读介质可以包括一个或更多个存储器设备或芯片。软件可以使核(1140)——特别是其中的处理器(包括CPU、GPU、FPGA等)——执行本文中描述的特定处理或特定处理的特定部分,包括限定存储在RAM(1146)中的数据结构以及根据由软件限定的处理修改这样的数据结构。另外地或作为替选,计算机***可以由于硬连线逻辑或不然以电路(例如:加速器(1144))实施的逻辑而提供功能,该电路可以代替软件或与软件一起操作以执行本文中描述的特定处理或特定处理的特定部分。在适当的情况下,提及软件可以包含逻辑,反之提及逻辑也可以包含软件。在适当的情况下,提及计算机可读介质可以包含存储用于执行的软件的电路(例如,集成电路(integrated circuit,IC))、实施用于执行的逻辑的电路或上述两者。本实施方式包含硬件和软件的任何合适的组合。
尽管本公开内容已经描述了若干示例性实施方式,但是存在落入本公开内容的范围内的改变、置换和各种替换等效物。因此将认识到,本领域技术人员能够设想虽然本文中没有明确示出或描述、但是实施本公开内容的原理并且因此在其精神和范围内的许多***和方法。
Claims (10)
1.一种帧内预测的方法,用于视频序列的解码,其特征在于,所述方法包括:
基于与编码单元相邻的第一参考行,对所述第一参考行应用帧内平滑滤波;其中,所述编码单元相邻有多个参考行以用于帧内预测,所述第一参考行是与所述编码单元相邻的多个参考行中最接近所述编码单元的参考行;
对所述编码单元应用帧内预测;以及
基于所述帧内预测被应用于所述编码单元,对所述第一参考行应用位置相关帧内预测组合PDPC;
所述对所述第一参考行应用帧内平滑滤波包括:仅对所述第一参考行应用帧内平滑滤波,对所述多个参考行中除所述第一参考行之外的其他参考行禁用所述帧内平滑滤波。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一参考行应用位置相关帧内预测组合PDPC包括:
仅对所述第一参考行应用所述PDPC,对所述多个参考行中除所述第一参考行之外的其他参考行禁用所述PDPC。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定与帧内预测模式相对应的帧内预测角度是否大于与所述编码单元的对角线方向相对应的预定角度;所述帧内预测模式用于对所述视频序列进行解码;以及
基于所述帧内预测角度被确定为大于所述预定角度,阻止对所述多个参考行之中除了所述第一参考行之外的其他参考行应用所述帧内平滑滤波。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定与帧内预测模式相对应的帧内预测角度是否大于与所述编码单元的对角线方向相对应的预定角度;所述帧内预测模式用于对所述视频序列进行解码;以及
基于所述帧内预测角度被确定为大于所述预定角度,阻止对所述多个参考行之中除了所述第一参考行之外的其他参考行应用所述PDPC。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述多个参考行之中的第二参考行的索引,确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的水平方向模式相邻,所述第二参考行是除所述第一参考行之外的参考行;
确定用于对所述视频序列进行解码的当前帧内预测模式的当前索引值是否在所述阈值索引范围内;以及
基于所述当前索引值被确定为在所述阈值索引范围内,阻止对所述第二参考行应用所述帧内平滑滤波。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
基于所述多个参考行之中的第二参考行的索引,确定多个帧内预测模式相对应的阈值索引范围,所述多个帧内预测模式与所述编码单元的垂直方向模式相邻,所述第二参考行是除所述第一参考行之外的参考行;
确定用于对所述视频序列进行解码的当前帧内预测模式的当前索引值是否在所述阈值索引范围内;以及
基于所述当前索引值被确定为在所述阈值索引范围内,阻止对所述第二参考行应用所述帧内平滑滤波。
7.一种帧内预测的装置,用于执行视频序列的解码,其特征在于,所述装置包括第一应用单元、第二应用单元和第三应用单元:
所述第一应用单元,用于基于与编码单元相邻的多个参考行中最接近所述编码单元的第一参考行,对所述第一参考行应用帧内平滑滤波;其中,所述编码单元相邻有多个参考行以用于帧内预测,所述第一参考行为基于参考行索引以信号通知解码器;
所述第二应用单元,用于对所述编码单元应用帧内预测;以及
所述第三应用单元,用于基于所述帧内预测被应用于所述编码单元,对所述第一参考行应用位置相关帧内预测组合PDPC;
所述第一应用单元还用于仅对所述第一参考行应用帧内平滑滤波,对所述多个参考行中除所述第一参考行之外的其他参考行禁用所述帧内平滑滤波。
8.一种帧内预测的方法,用于对视频进行编码,其特征在于,所述方法包括:
基于与视频中的当前编码单元相邻的第一参考行,对所述第一参考行应用帧内平滑滤波;其中,所述编码单元相邻有多个参考行以用于帧内预测,所述第一参考行是与所述编码单元相邻的多个参考行中最接近所述编码单元的参考行;
对所述编码单元应用帧内预测;以及
基于所述帧内预测被应用于所述编码单元,对所述第一参考行应用位置相关帧内预测组合PDPC;
所述对所述第一参考行应用帧内平滑滤波包括:仅对所述第一参考行应用帧内平滑滤波,对所述多个参考行中除所述第一参考行之外的其他参考行禁用所述帧内平滑滤波。
9.一种存储指令的非暂态计算机可读存储介质,所述指令使处理器执行如权利要求1-6任意一项所述的方法,或执行如权利要求8所述的方法。
10.一种计算机设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行如权利要求1-6中任意一项所述的方法,或执行如权利要求8所述的方法。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862724575P | 2018-08-29 | 2018-08-29 | |
US62/724,575 | 2018-08-29 | ||
US16/199,891 | 2018-11-26 | ||
US16/199,891 US10491893B1 (en) | 2018-08-29 | 2018-11-26 | Method and apparatus for multi-line intra prediction |
CN201980035894.9A CN112997483B (zh) | 2018-08-29 | 2019-07-24 | 用于多行帧内预测的方法和相关装置 |
PCT/US2019/043141 WO2020046496A1 (en) | 2018-08-29 | 2019-07-24 | Method and apparatus for multi-line intra prediction |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980035894.9A Division CN112997483B (zh) | 2018-08-29 | 2019-07-24 | 用于多行帧内预测的方法和相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116320409A true CN116320409A (zh) | 2023-06-23 |
Family
ID=68617931
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310293889.6A Pending CN116320409A (zh) | 2018-08-29 | 2019-07-24 | 一种帧内预测的方法、装置、设备和存储介质 |
CN201980035894.9A Active CN112997483B (zh) | 2018-08-29 | 2019-07-24 | 用于多行帧内预测的方法和相关装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980035894.9A Active CN112997483B (zh) | 2018-08-29 | 2019-07-24 | 用于多行帧内预测的方法和相关装置 |
Country Status (6)
Country | Link |
---|---|
US (5) | US10491893B1 (zh) |
EP (1) | EP3844956A4 (zh) |
JP (2) | JP7104178B2 (zh) |
KR (2) | KR102653789B1 (zh) |
CN (2) | CN116320409A (zh) |
WO (1) | WO2020046496A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11128872B2 (en) * | 2018-07-16 | 2021-09-21 | Qualcomm Incorporated | Position dependent intra prediction combination with wide angle intra prediction |
US10491893B1 (en) * | 2018-08-29 | 2019-11-26 | Tencent America LLC | Method and apparatus for multi-line intra prediction |
KR20210084567A (ko) * | 2018-11-28 | 2021-07-07 | 주식회사 윌러스표준기술연구소 | 화면 내 예측 필터링을 이용한 비디오 신호 처리 방법 및 장치 |
US11032551B2 (en) | 2018-12-04 | 2021-06-08 | Tencent America LLC | Simplified most probable mode list generation scheme |
KR20210091322A (ko) * | 2018-12-21 | 2021-07-21 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 모드 및 크기 의존적 블록 레벨 제한의 방법 및 장치 |
CN116456082A (zh) * | 2018-12-25 | 2023-07-18 | Oppo广东移动通信有限公司 | 编码预测方法、装置及计算机存储介质 |
MX2021007841A (es) * | 2018-12-29 | 2021-10-26 | Huawei Tech Co Ltd | Metodo y aparato para intra-prediccion. |
US11425374B2 (en) * | 2019-03-12 | 2022-08-23 | FG Innovation Company Limited | Device and method for coding video data |
MX2021011369A (es) * | 2019-03-21 | 2021-11-12 | Huawei Tech Co Ltd | Método y aparato para intrapredicción. |
WO2020197031A1 (ko) * | 2019-03-22 | 2020-10-01 | 엘지전자 주식회사 | 영상 코딩 시스템에서 다중 참조 라인 기반의 인트라 예측 방법 및 장치 |
US11134275B2 (en) | 2019-06-04 | 2021-09-28 | Tencent America LLC | Method and apparatus for performing primary transform based on filtering of blocks |
US11432018B2 (en) | 2020-05-11 | 2022-08-30 | Tencent America LLC | Semi-decoupled partitioning for video coding |
US11259055B2 (en) | 2020-07-10 | 2022-02-22 | Tencent America LLC | Extended maximum coding unit size |
US11206428B1 (en) | 2020-07-14 | 2021-12-21 | Tencent America LLC | Method and apparatus for frequency-dependent joint component secondary transform |
US11432006B2 (en) | 2020-08-14 | 2022-08-30 | Tencent America LLC | Chroma mode video coding |
CN113313511A (zh) * | 2021-04-30 | 2021-08-27 | 北京奇艺世纪科技有限公司 | 一种视频流量预测方法、装置、电子设备及介质 |
WO2023023197A1 (en) * | 2021-08-19 | 2023-02-23 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and devices for decoder-side intra mode derivation |
WO2023128704A1 (ko) * | 2021-12-30 | 2023-07-06 | 엘지전자 주식회사 | Cclm(cross-component linear model) 인트라 예측에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10425648B2 (en) * | 2015-09-29 | 2019-09-24 | Qualcomm Incorporated | Video intra-prediction using position-dependent prediction combination for video coding |
WO2017190288A1 (en) * | 2016-05-04 | 2017-11-09 | Microsoft Technology Licensing, Llc | Intra-picture prediction using non-adjacent reference lines of sample values |
MX2018014480A (es) * | 2016-05-25 | 2019-08-12 | Arris Entpr Llc | Codificacion de prediccion angular ponderada mejorada para intra codificacion. |
US10484712B2 (en) * | 2016-06-08 | 2019-11-19 | Qualcomm Incorporated | Implicit coding of reference line index used in intra prediction |
CN114363630B (zh) * | 2016-06-24 | 2024-06-14 | 株式会社Kt | 视频编码方法、视频解码方法以及装置 |
EP4407990A2 (en) * | 2016-08-03 | 2024-07-31 | KT Corporation | Video signal processing method and device |
CN117834859A (zh) | 2016-10-14 | 2024-04-05 | 世宗大学校产学协力团 | 影像编码/解码方法及比特流的传送方法 |
US10674165B2 (en) * | 2016-12-21 | 2020-06-02 | Arris Enterprises Llc | Constrained position dependent intra prediction combination (PDPC) |
US10542264B2 (en) * | 2017-04-04 | 2020-01-21 | Arris Enterprises Llc | Memory reduction implementation for weighted angular prediction |
US10742975B2 (en) * | 2017-05-09 | 2020-08-11 | Futurewei Technologies, Inc. | Intra-prediction with multiple reference lines |
US10805641B2 (en) * | 2017-06-15 | 2020-10-13 | Qualcomm Incorporated | Intra filtering applied together with transform processing in video coding |
CN110662065A (zh) | 2018-06-29 | 2020-01-07 | 财团法人工业技术研究院 | 图像数据解码方法及解码器、图像数据编码方法及编码器 |
US10491893B1 (en) * | 2018-08-29 | 2019-11-26 | Tencent America LLC | Method and apparatus for multi-line intra prediction |
-
2018
- 2018-11-26 US US16/199,891 patent/US10491893B1/en active Active
-
2019
- 2019-07-24 CN CN202310293889.6A patent/CN116320409A/zh active Pending
- 2019-07-24 KR KR1020227024880A patent/KR102653789B1/ko active IP Right Grant
- 2019-07-24 CN CN201980035894.9A patent/CN112997483B/zh active Active
- 2019-07-24 EP EP19853798.7A patent/EP3844956A4/en active Pending
- 2019-07-24 WO PCT/US2019/043141 patent/WO2020046496A1/en unknown
- 2019-07-24 JP JP2020560455A patent/JP7104178B2/ja active Active
- 2019-07-24 KR KR1020207030970A patent/KR102423691B1/ko active IP Right Grant
- 2019-10-24 US US16/662,958 patent/US10944964B2/en active Active
-
2021
- 2021-02-10 US US17/172,591 patent/US11418778B2/en active Active
-
2022
- 2022-06-10 US US17/837,805 patent/US11902514B2/en active Active
- 2022-07-07 JP JP2022109624A patent/JP2022133427A/ja active Pending
-
2024
- 2024-01-05 US US18/405,773 patent/US20240146911A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US10491893B1 (en) | 2019-11-26 |
KR102653789B1 (ko) | 2024-04-03 |
JP2022133427A (ja) | 2022-09-13 |
US11902514B2 (en) | 2024-02-13 |
US20220329790A1 (en) | 2022-10-13 |
US11418778B2 (en) | 2022-08-16 |
US10944964B2 (en) | 2021-03-09 |
US20240146911A1 (en) | 2024-05-02 |
KR20200132993A (ko) | 2020-11-25 |
WO2020046496A1 (en) | 2020-03-05 |
EP3844956A4 (en) | 2022-07-20 |
JP7104178B2 (ja) | 2022-07-20 |
EP3844956A1 (en) | 2021-07-07 |
KR102423691B1 (ko) | 2022-07-22 |
CN112997483A (zh) | 2021-06-18 |
KR20220104844A (ko) | 2022-07-26 |
JP2021521721A (ja) | 2021-08-26 |
CN112997483B (zh) | 2023-03-10 |
US20210168361A1 (en) | 2021-06-03 |
US20200092548A1 (en) | 2020-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112997483B (zh) | 用于多行帧内预测的方法和相关装置 | |
CN115623203B (zh) | 一种用于视频编码的方法和相关装置 | |
JP7164728B2 (ja) | 参照画像リサンプリングのためのシグナリング | |
CN113228659B (zh) | 帧内模式编解码的方法和装置 | |
CN116320408A (zh) | 用于视频解码、编码的方法、编码器、装置及可读介质 | |
CN112385216B (zh) | 用于多行帧内预测的帧内插值滤波器的方法、装置和介质 | |
CN113424546B (zh) | 视频解码或编码的方法和装置 | |
CN115499652A (zh) | 一种视频编解码方法和相关装置 | |
CN112005549B (zh) | 一种帧内-帧间预测控制方法、装置、设备及存储介质 | |
US20220201307A1 (en) | Method and apparatus for video coding | |
CN113574896A (zh) | 改进的最可能模式列表生成方案 | |
US20220345738A1 (en) | Method for wrap around motion compensation with reference picture resampling | |
CN113812158A (zh) | 可缩放视频流的输出层集的信令方法 | |
JP7326436B2 (ja) | イントラ予測におけるイントラモード選択 | |
CN113508582B (zh) | 视频编码、解码的方法、装置及可读介质 | |
CN114073084A (zh) | 在视频码流中有效发信号通知图片大小和分区信息的方法和装置 | |
WO2020112768A1 (en) | Reference sample filter selection in intra prediction | |
CN118369682A (zh) | 基于ctu行的几何变换 | |
CN118400526A (zh) | 视频解码、编码的方法、装置、电子设备及可读介质 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40086885 Country of ref document: HK |