CN110352598B - 对视频数据进行解码的方法、装置和设备,以及媒体 - Google Patents
对视频数据进行解码的方法、装置和设备,以及媒体 Download PDFInfo
- Publication number
- CN110352598B CN110352598B CN201880015198.7A CN201880015198A CN110352598B CN 110352598 B CN110352598 B CN 110352598B CN 201880015198 A CN201880015198 A CN 201880015198A CN 110352598 B CN110352598 B CN 110352598B
- Authority
- CN
- China
- Prior art keywords
- block
- pixels
- group
- bio
- video data
- 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 178
- 230000033001 locomotion Effects 0.000 claims abstract description 266
- 239000013598 vector Substances 0.000 claims abstract description 150
- 230000008569 process Effects 0.000 claims abstract description 84
- 230000003287 optical effect Effects 0.000 claims abstract description 35
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 7
- 238000003860 storage Methods 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 20
- 238000007670 refining Methods 0.000 claims description 6
- 241000023320 Luma <angiosperm> Species 0.000 description 27
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 27
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 18
- 238000013139 quantization Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 230000002123 temporal effect Effects 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 13
- 238000013461 design Methods 0.000 description 13
- 238000005192 partition Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 101100537098 Mus musculus Alyref gene Proteins 0.000 description 9
- 101150095908 apex1 gene Proteins 0.000 description 9
- 238000006073 displacement reaction Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000012935 Averaging Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 238000009795 derivation Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 239000004381 Choline salt Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 238000005056 compaction Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- VBRBNWWNRIMAII-WYMLVPIESA-N 3-[(e)-5-(4-ethylphenoxy)-3-methylpent-3-enyl]-2,2-dimethyloxirane Chemical compound C1=CC(CC)=CC=C1OC\C=C(/C)CCC1C(C)(C)O1 VBRBNWWNRIMAII-WYMLVPIESA-N 0.000 description 1
- 101000633607 Bos taurus Thrombospondin-2 Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000008685 targeting Effects 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/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
- H04N19/51—Motion estimation or motion compensation
- H04N19/537—Motion estimation other than block-based
- H04N19/543—Motion estimation other than block-based using regions
-
- 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
-
- 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/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- 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/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
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by 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/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
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种视频解码器可经配置以确定使用双向帧间预测模式对视频数据块进行编码;确定使用双向光流BIO过程对所述视频数据块进行编码;根据所述双向帧间预测模式对所述视频数据块进行帧间预测;对所述块执行所述BIO过程,其中对所述块执行所述BIO过程包括确定所述块中的像素群组的单个运动向量细化,其中所述像素群组包括至少两个像素;基于所述单个运动向量细化对所述像素群组进行细化;以及输出包括所述经细化像素群组的BIO细化视频数据预测性块。
Description
本申请要求2017年3月13日提交的第62/470,809号美国临时专利申请的权益,所述美国临时专利申请以全文引用的方式并入本文中。
技术领域
本发明涉及视频编码和解码。
背景技术
数字视频能力可并入到各种装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、笔记本电脑或台式计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式传输装置等等。数字视频装置实施视频译码技术,例如描述于由以下定义的标准中的那些技术:MPEG-2、MPEG-4、ITU-TH.263、ITU-T H.264/MPEG-4第10部分、高级视频译码(AVC)、ITU-T H.265/高效视频译码(HEVC)以及这类标准的扩展。视频装置可通过实施这些视频译码技术而更有效率地发射、接收、编码、解码和/或存储数字视频信息。
视频译码技术包含空间(图片内)预测和/或时间(图片间)预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,视频切片(例如,视频帧或视频帧的一部分)可分割成视频块,视频块还可被称作树块、译码单元(CU)和/或译码节点。可使用相对于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的视频块进行编码。图片的经帧间译码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称为帧,且参考图片可被称为参考帧。
空间或时间预测产生待译码块的预测性块。残差数据表示待译码原始块与预测性块之间的像素差。经帧间译码块根据指向形成预测性块的参考样本块的运动向量和指示经译码块与预测性块之间的差的残差数据来编码。经帧内译码块是根据帧内译码模式和残差数据来编码。为了进一步压缩,可将残差数据从像素域变换到变换域,从而产生残差变换系数,可接着量化所述残差变换系数。可扫描最初布置成二维阵列的经量化变换系数,以便产生变换系数的一维向量,且可应用熵译码以实现甚至更多压缩。
发明内容
一般来说,本公开的技术涉及结合双向帧间预测使用的双向光流(BIO)视频译码技术的改进。
根据一个实例,对视频数据进行解码的方法包含确定使用双向帧间预测模式对视频数据块进行编码;确定使用双向光流(BIO)过程对所述视频数据块进行编码;根据所述双向帧间预测模式对所述视频数据块进行帧间预测;对所述块执行所述BIO过程,其中对所述块执行所述BIO过程包括确定所述块中的像素群组的单个运动向量细化并且基于所述单个运动向量细化对所述像素群组进行细化,其中所述像素群组包括至少两个像素;以及输出包括所述经细化像素群组的BIO细化视频数据预测性块。
在另一实例中,一种用于对视频数据进行解码的装置包含:存储器,其经配置以存储所述视频数据;以及一或多个处理器,其经配置以确定使用双向帧间预测模式对视频数据块进行编码;确定使用双向光流(BIO)过程对所述视频数据块进行编码;根据所述双向帧间预测模式对所述视频数据块进行帧间预测;对所述块执行所述BIO过程,其中为了对所述块执行所述BIO过程,所述一或多个处理器经配置以确定所述块中的像素群组的单个运动向量细化,其中所述像素群组包括至少两个像素,并且基于所述单个运动向量细化对所述像素群组进行细化;以及输出包括所述经细化像素群组的BIO细化视频数据预测性块。
在另一实例中,一种用于对视频数据进行解码的设备包含用于确定使用双向帧间预测模式对视频数据块进行编码的装置;用于使用双向光流(BIO)过程对所述视频数据块进行编码的装置;用于根据所述双向帧间预测模式对所述视频数据块进行帧间预测的装置;用于对所述块执行所述BIO过程的装置,其中所述用于对所述块执行所述BIO过程的装置包括用于确定所述块中的像素群组的单个运动向量细化的装置和用于基于所述单个运动向量细化对所述像素群组进行细化的装置,其中所述像素群组包括至少两个像素;以及用于输出包括所述经细化像素群组的BIO细化视频数据预测性块的装置。
在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时使所述一或多个处理器:确定使用双向帧间预测模式对视频数据块进行编码;确定使用双向光流(BIO)过程对所述视频数据块进行编码;根据所述双向帧间预测模式对所述视频数据块进行帧间预测;对所述块执行所述BIO过程,其中为了对所述块执行所述BIO过程,所述指令使所述一或多个处理器确定所述块中的像素群组的单个运动向量细化并且基于所述单个运动向量细化对所述像素群组进行细化,其中所述像素群组包括至少两个像素;并且输出包括所述经细化像素群组的BIO细化视频数据预测性块。
在附图和下文描述中阐述本公开的一或多个实例的细节。其它特征、目标和优点将从所述描述、图式和权利要求书中显而易见。
附图说明
图1是说明可利用用于双向光流的技术的实例视频编码和解码系统的框图。
图2是说明作为针对运动补偿帧速率上转换(MC-FRUC)执行的块匹配算法(BMA)的单侧运动估计(ME)的实例的概念图。
图3是说明作为针对MC-FRUC执行的BMA的双侧ME的实例的概念图。
图4A展示用于合并模式的空间相邻MV候选项。
图4B展示用于AMVP模式的空间相邻MV候选项。
图5A展示TMVP候选项的实例。
图5B展示MV按比例缩放的实例。
图6展示光流轨迹的实例。
图7展示针对8x4块的BIO的实例。
图8展示针对8x4块的经修改的BIO的实例。
图9A和9B展示OBMC应用的子块的实例。
图10A到10D展示OBMC权重的实例。
图11展示JEM 5中的整个MC过程的实例。
图12A到12D展示加权函数的实例。
图13展示根据本公开的技术导出的BIO的实例。
图14展示根据本公开的技术导出的BIO的实例。
图15展示根据本公开的技术导出的BIO的实例。
图16展示根据本公开的技术导出的BIO的实例。
图17展示根据本公开的技术导出的BIO的实例。
图18展示根据本公开的技术导出的BIO的实例。
图19是说明视频编码器的实例的框图。
图20是说明可实施用于双向光流的技术的视频解码器的实例的框图。
图21是说明根据本公开中所描述的技术对视频数据进行解码的实例方法的流程图。
具体实施方式
一般来说,本公开的技术涉及对双向光流(BIO)视频译码技术的改进。更具体地说,本公开的技术涉及对用于视频译码的BIO的帧间预测和运动向量重构且涉及基于所述BIO的帧间预测细化。可在运动补偿期间应用BIO。一般来说,BIO用以基于每像素(例如,每样本)修改当前块的运动向量,使得使用应用于预测性块的对应偏移值来预测当前块的像素。BIO具有创建新运动向量的效果,但在BIO的实际实施中,通过添加偏移来修改预测性块,而运动向量自身实际上未经修改。
本公开的技术可应用于任何现有视频编解码器,例如符合ITU-T H.264/AVC(高级视频译码)或也被称作ITU-T H.265的高效视频译码(HEVC)的那些视频编解码器。H.264描述于国际电信联盟“用于通用视听服务的高级视频译码(Advanced video coding forgeneric audiovisual services)”系列H:视听和多媒体系统,视听服务的基础设施-移动视频译码,H.264,2011年6月,且H.265描述于国际电信联盟“高效视频译码(Highefficiency video coding)”系列H:视听和多媒体系统,视听服务的基础设施-移动视频译码,2015年4月。本公开的技术也可作为高效译码工具应用于任何其它先前或未来视频译码标准。
HEVC的概述描述于G.J.Sullivan、J.-R.Ohm、W.-J.Han、T.Wiegand的“高效视频译码(HEVC)标准的概述(Overview of the High Efficiency Video Coding(HEVC)Standard)”,IEEE视频技术电路和系统交易,第22卷,第12页,1649-1668,2012年12月。最新HEVC规范草案从以下网址获得:http://phenix.int-evry.fr/jct/doc_end_user/documents/14Vienna/wg11/JCTVC-N1003-v1.zip。JCTVC-L1003_v34中描述HEVC的国际标准的最终草案(FDIS)的最新版本,其可从以下网址获得:http://phenix.it-sudparis.eu/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip。
其它视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual和H.264的可缩放视频译码(SVC)和多视点视频译码(MVC)扩展,以及HEVC的扩展,例如范围扩展、多视点扩展(MV-HEVC)和可分级扩展(SHVC)。在2015年4月,视频译码专家组(VCEG)启动了以下一代视频译码标准为目标的新研究项目。参考软件被称作HM-KTA。
ITU-T VCEG(Q6/16)和ISO/IEC MPEG(JTC 1/SC 29/WG 11)现在正在研究对具有显著超出当前HEVC标准(包含其用于屏幕内容译码和高动态范围译码的当前扩展和近期扩展)的压缩能力的压缩能力的未来视频译码技术的标准化的潜在需要。团体在已知为联合视频探索小组(JVET)的联合协作努力中一起从事此探索活动以评估由其在此领域的专家提出的压缩技术设计。JVET在2015年10月19日到21日期间首次会面。在JVET-E1001中描述联合探索测试模型(JEM)的算法描述。可从网址https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/tags/HM-16.6-JEM-5.0.1/下载参考软件的版本,即联合探索模型5(JEM 5),J.Chen、E.Alshina、G.J.Sullivan、J.-R.Ohm、J.Boyce,“联合探索测试模型5的算法描述(Algorithm Description of Joint Exploration Test Model 5)”,JVET-E1001,2017年1月。
在JVET-E1001中描述JEM的另一算法描述。可从网址https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/tags/HM-16.6-JEM-7.0/下载参考软件的最新版本,即联合探索模型7(JEM 7),J.Chen、E.Alshina、G.J.Sullivan、J.-R.Ohm、J.Boyce,“联合探索测试模型5的算法描述(Algorithm Description of JointExploration Test Model 5)”,JVET-G1001,2017年1月。
下文描述某些视频译码技术,例如涉及本公开的技术的H.264和HEVC的那些技术。可参看H.264和/或HEVC描述本公开的某些技术,以辅助理解,但技术描述未必限于H.264或HEVC且可与其它译码标准和其它译码工具结合使用。
以下论述涉及运动信息。一般来说,将图片分成块,可对其中的每一个进行预测性译码。通常可使用帧内预测技术(使用来自包含当前块的图片的数据)或帧间预测技术(相对于包含当前块的图片使用来自经先前译码图片的数据)执行对当前块的预测。帧间预测包含单向预测和双向预测两者。
对于每一经帧间预测块,运动信息集合可以是可用的。运动信息集合可含有用于前向和后向预测方向的运动信息。此处,前向和后向预测方向是双向预测模式的两个预测方向,并且术语“前向”和“后向”不一定具有几何含义。代替地,术语“前向”和“后向”大体上对应于参考图片将在在当前图片之前(“后向”)显示还是将在当前图片之后(“前向”)显示。在一些实例中,“前向”和“后向”预测方向可对应于当前图片的参考图片列表0(RefPicList0)和参考图片列表1(RefPicList1)。当仅一个参考图片列表可供用于图片或切片时,仅RefPicList0是可用的且切片的每一块的运动信息始终是指RefPicList0的图片(例如,是前向的)。
对于每一预测方向,运动信息含有参考索引和运动向量。在一些状况下,为简单起见,可以假定运动向量具有相关联参考索引的方式来提及运动向量本身。参考索引可用于识别当前参考图片列表(RefPicList0或RefPicList1)中的参考图片。运动向量具有水平(x)和竖直(y)分量。一般来说,水平分量指示定位参考块的x坐标所需的相对于当前图片中的当前块的位置的参考图片内的水平位移,而竖直分量指示定位参考块的y坐标所需的相对于当前块的位置的参考图片内的竖直位移。
图片次序计数(POC)值广泛用于视频译码标准以识别图片的显示次序。尽管存在一个经译码视频序列内的两个图片可具有相同POC值的情况,但是其通常不在经译码视频序列内发生。因此,图片的POC值通常是唯一的,且因此可唯一地识别对应图片。当位流中存在多个经译码视频序列时,具有相同POC值的图片可能在解码次序方面彼此更接近。图片的POC值通常用于参考图片列表建构、参考图片集的导出,就像HEVC和运动向量按比例缩放中一样。
E.Alshina、A.Alshin、J.-H.Min、K.Choi、A.Saxena、M.Budagavi的“下一代视频译码的已知工具性能调查(Known tools performance investigation for nextgeneration video coding)”ITU-通讯标准化部门,研究组16,问题6,视频译码专家组(VCEG),VCEG-AZ05,2015年6月,波兰华沙(下文为“Alshina 1”),和A.Alshina、E.Alshina、T.Lee“用于改善运动补偿的双向光流(Bi-directional optical flow for improvingmotion compensation)”,图片译码研讨会(PCS),日本名古屋,2010年(下文为“Alshina2”)描述了被称作双向光流(BIO)的方法。BIO是基于像素级光流。根据Alshina 1和Alshina2,BIO仅应用于具有前向和后向预测两者的块。如Alshina 1和Alshina 2中所描述的BIO概述如下:
假设时间t处的像素(例如,亮度样本或色度样本)值It,其一阶泰勒展式为
It0在It的运动轨迹上。也就是说,在公式中考虑从It0到It的运动。
在光流的假设下:
因此,等式(B)变为
It=It0-Gx0·Vx0·(t-t0)-Gy0·Vy0·(t-t0) (C)
举例来说,假设t0处的前向参考和t1处的后向参考,且
t0-t=t-t1=Δt=1
这产生:
It=It0-Gx0·Vx0·(t-t0)-Gy0·Vy0·(t-t0)=It0+Gx0·Vx0+Gy0·Vy0
It=It1-Gx1·Vx1·(t-t1)-Gy1·Vy1·(t-t1)=It1-Gx1·Vx1-Gy1·Vy1
进一步假设Vx0=Vx1=Vx且Vy0=Vy1=Vy,这是因为移动沿着轨迹。因此,等式(D)变为
通过最小化以下失真来在编码器和解码器处导出Vx和Vy:
在导出的Vx和Vy的情况下,用(E)计算对块的最终预测。为了方便起见,Vx和Vy被称为“BIO运动”。
一般来说,视频译码器在运动补偿期间执行BIO。也就是说,在视频译码器确定当前块的运动向量之后,视频译码器使用相对于运动向量的运动补偿来产生当前块的预测块。一般来说,运动向量识别参考块相对于参考图片中当前块的位置。当执行BIO时,视频译码器基于每像素修改当前块的运动向量。也就是说,根据BIO,并非作为块单元检索参考块的每一像素,视频译码器确定对当前块的运动向量的每像素修改且建构参考块,使得参考块包含由运动向量识别的参考像素,和当前块的对应像素的每像素修改。因此,BIO可用于产生当前块的更精确参考块。
图1是说明可利用用于双向光流的技术的实例视频编码和解码系统10的框图。如图1中所展示,系统10包含源装置12,所述源装置提供在稍后时间由目的地装置14解码的经编码视频数据。确切地说,源装置12经由计算机可读媒体16将视频数据提供到目的地装置14。源装置12和目的地装置14可以是各种装置中的任一者,包含台式计算机、笔记本计算机(即,笔记本电脑)、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板电脑、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置等。在一些情况下,可装备源装置12和目的地装置14以用于无线通信。
目的地装置14可经由计算机可读媒体16接收待解码的经编码的视频数据。计算机可读媒体16可以是能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,计算机可读媒体16可以是使得源装置12能够实时将经编码视频数据直接发射到目的地装置14的通信媒体。可根据例如无线通信协议等通信标准来调制经编码视频数据,且将其发射到目的地装置14。通信媒体可以是任何无线或有线通信媒体(或其组合),例如射频(RF)频谱或一或多个物理发射线。通信媒体可形成基于包的网络的部分,所述基于包的网络例如局域网、广域网或全球网络,例如因特网。通信媒体可包含路由器、交换机、基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
在一些实例中,经编码数据可以从输出接口22输出到存储装置。类似地,可以通过输入接口从存储装置存取经编码数据。存储装置可包含多种分布式或本地存取式数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置可对应于文件服务器或可存储源装置12生成的经编码视频的另一中间存储装置。目的地装置14可经由流式传输或下载从存储装置中存取所存储的视频数据。文件服务器可以是能够存储经编码视频数据并将经编码视频数据发射到目的地装置14的任何类型服务器。实例文件服务器包含网页服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置或本地磁盘驱动器。目的地装置14可通过包含因特网连接的任何标准数据连接来存取经编码的视频数据。此可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。经编码视频数据从存储装置的发射可为流式传输发射、下载发射或其组合。
本公开的技术不必限于无线应用或设置。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,所述多媒体应用例如空中电视广播、有线电视发射、卫星电视发射、因特网流式传输视频发射(例如,HTTP动态自适应流式传输(DASH))、被编码到数据存储媒体上的数字视频、存储在数据存储媒体上的数字视频的解码,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频发射,从而支持例如视频流式传输、视频回放、视频广播和/或视频电话等应用。
在图1的实例中,源装置12包含视频源18、视频编码器20和输出接口22。目的地装置14包含输入接口28、视频解码器30和显示装置32。根据本公开,源装置12的视频编码器20可经配置以应用双向光流技术。在其它实例中,源装置和目的地装置可包含其它组件或布置。举例来说,源装置12可从例如外部相机的外部视频源18接收视频数据。同样地,目的地装置14可以与外部显示装置介接,并不包含集成显示装置。
图1的所说明的系统10仅是一个实例。可由任何数字视频编码和/或解码装置执行双向光流的技术。虽然本公开的技术通常由视频编码装置执行,但是所述技术也可由通常被称作“编解码器”的视频编码器/解码器执行。此外,本发明的技术还可通过视频预处理器执行。源装置12和目的地装置14仅为此类译码装置的实例,其中源装置12生成用于发射到目的地装置14的经译码视频数据。在一些实例中,装置12、14可以大体上对称的方式操作,使得装置12、14中的每一者包含视频编码和解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频发射,例如,用于视频流式传输、视频回放、视频广播或视频电话。
源装置12的视频源18可包含视频捕获装置,例如摄像机、含有先前所捕获视频的视频存档和/或用于从视频内容提供者接收视频的视频馈入接口。作为另一替代方案,视频源18可以生成基于计算机图形的数据作为源视频,或实况视频、存档视频与计算机产生的视频的组合。在一些情况下,如果视频源18为摄像机,那么源装置12和目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术一般可适用于视频译码,且可应用于无线和/或有线应用。在每一情况下,可由视频编码器20编码所捕获、预捕获或计算机生成的视频。经编码视频信息可接着通过输出接口22输出到计算机可读媒体16上。
计算机可读媒体16可包含暂时性媒体,例如无线广播或有线网络发射,或存储媒体(也就是说,非暂时存储媒体),例如硬盘、快闪驱动器、压缩光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未展示)可从源装置12接收经编码视频数据,并且例如经由网络发射将经编码视频数据提供到目的地装置14。类似地,媒体生产设施(例如,光盘冲压设施)的计算装置可从源装置12接收经编码的视频数据且生产含有经编码的视频数据的光盘。因此,在各种实例中,计算机可读媒体16可以理解为各种形式的一或多个计算机可读媒体。
目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包含由视频编码器20定义的语法信息,其还供视频解码器30使用,包含描述特性和/或视频数据的处理的语法元素。显示装置32将经解码视频数据显示给用户,且可以是多种显示装置中的任一个,所述显示装置例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20和视频解码器30可以根据一种视频译码标准操作,所述视频译码标准例如是也被称作ITU-T H.265的高效率视频译码(HEVC)标准。在一些实例中,视频编码器20和视频解码器30可以根据其它专有或业界标准来操作,所述标准例如替代地被称作MPEG-4的ITU-T H.264标准,第10部分,高级视频译码(AVC),或此类标准的扩展。然而,本公开的技术不限于任何特定译码标准。视频编码标准的其它实例包含MPEG-2和ITU-TH.263。尽管图1中未展示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当MUX-DEMUX单元或其它硬件和软件,以处置对共同数据流或单独数据流中的音频和视频两者的编码。如果适用的话,MUX-DEMUX单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)的其它协议。
在HEVC和其它视频译码规范中,视频序列通常包含一系列图片。图片也可以称为“帧”。图片可包含三个样本阵列,表示为SL、SCb和SCr。SL是亮度样本的二维阵列(即,块)。SCb为Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。色度样本在本文中还可称为“色度(chroma)”样本。在其它情况下,图片可为单色的且可仅包含亮度样本阵列。
为了生成图片的经编码的表示,视频编码器20可生成译码树单元(CTU)集合。CTU中的每一者可包含亮度样本的译码树块、色度样本的两个对应译码树块和用于对译码树块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CTU可包含单个译码树块和用以对译树码块的样本进行译码的语法结构。译码树块可以是NxN块的样本。CTU也可以称为“树块”或“最大译码单元(LCU)”。HEVC的CTU可广泛类似于例如H.264/AVC等其它标准的宏块。然而,CTU不必限于特定大小,且可包含一或多个译码单元(CU)。切片可包含按光栅扫描次序连续排序的整数数目的CTU。
CTB含有其节点为译码单元的四叉树。CTB的大小可介于HEVC主规范中的16x16到64x64的范围内(尽管技术上可支持8x8 CTB大小)。尽管编码单元(CU)可与CTB大小相同,但其可如8x8一样小。每一译码单元用一种模式译码。当CU经帧间译码时,CU可进一步分割成2个或4个预测单元(PU),或当进一步分割不适用时变为仅一个PU。当两个PU存在于一个CU中时,所述两个PU可为CU的大小的二分之一大小矩形或者1/4或3/4大小的两个矩形。
为了生成经译码CTU,视频编码器20可在CTU的译码树块上以递归方式执行四叉树分割,以将译码树块划分为译码块,因此命名为“译码树单元”。译码块可以是NxN块的样本。CU可包含具有亮度样本阵列、Cb样本阵列和Cr样本阵列的图片的亮度样本的译码块和色度样本的两个对应译码块,以及用于对译码块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CU可包含单个译码块和用以对译码块的样本进行译码的语法结构。
视频编码器20可以将CU的译码块分割成一或多个预测块。预测块是对其应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的P预测单元(PU)可包含亮度样本的预测块、色度样本的两个对应预测块以及用以预测预测块的语法结构。在单色图片或具有三个单独颜色平面的图片中,PU可包含单个预测块和用以对预测块进行预测的语法结构。视频编码器20可生成用于CU的每一PU的亮度预测块、Cb预测块和Cr预测块的预测性亮度块、Cb块和Cr块。
视频编码器20可以使用帧内预测或帧间预测以生成用于PU的预测性块。如果视频编码器20使用帧内预测生成PU的预测性块,那么视频编码器20可基于与PU相关联的图片的经解码样本来生成PU的预测性块。如果视频编码器20使用帧间预测生成PU的预测性块,那么视频编码器20可基于除与PU相关联的图片以外的一或多个图片的经解码样本来生成PU的预测性块。当CU经帧间译码时,针对每一PU可存在一个运动信息集合。此外,每一PU可以用独特的帧间预测模式译码,以导出所述运动信息集合。
在视频编码器20生成CU的一或多个PU的预测性亮度块、Cb块和Cr块之后,视频编码器20可生成CU的亮度残差块。CU的亮度残差块中的每一样本指示CU的预测性亮度块中的一者中的亮度样本与CU的原始亮度译码块中对应的样本之间的差。另外,视频编码器20可以生成CU的Cb残差块。CU的Cb残差块中的每一样本可指示CU的预测性Cb块中的一个中的Cb样本与CU的原始Cb译码块中的对应样本之间的差。视频编码器20还可生成CU的Cr残差块。CU的Cr残差块中的每一样本可指示CU的预测性Cr块中的一个中的Cr样本与CU的原始Cr译码块中的对应样本之间的差。
此外,视频编码器20可使用四叉树分割将CU的亮度残差块、Cb残差块的Cr残差块分解成一或多个亮度变换块、Cb变换块和Cr变换块。变换块是对其应用相同变换的样本的矩形(例如,正方形或非正方形)块。CU的变换单元(TU)可包含亮度样本的变换块、色度样本的两个对应的变换块,以及用以对变换块样本进行变换的语法结构。因此,CU的每一TU可与亮度变换块、Cb变换块和Cr变换块相关联。与TU相关联的亮度变换块可以是CU的亮度残差块的子块。Cb变换块可以是CU的Cb残差块的子块。Cr变换块可以是CU的Cr残差块的子块。在单色图片或具有三个单独颜色平面的图片中,TU可包含单个变换块和用以对变换块的样本进行变换的语法结构。
视频编码器20可将一或多个变换应用于TU的亮度变换块,以生成TU的亮度系数块。系数块可以是变换系数的二维阵列。变换系数可以是标量。视频编码器20可以将一或多个变换应用于TU的Cb变换块,以生成TU的Cb系数块。视频编码器20可将一或多个变换应用于TU的Cr变换块,以生成用于TU的Cr系数块。
在生成系数块(例如,亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可以量化系数块。量化总体上是指对变换系数进行量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。在视频编码器20量化系数块之后,视频编码器20可以对指示经量化变换系数的语法元素进行熵编码。举例来说,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应二进制算术译码(CABAC)。
视频编码器20可输出包含形成经译码图片和相关联数据的表示的位序列的位流。所述位流可包含NAL单元的序列。NAL单元为含有NAL单元中数据类型的指示和含有所述数据的字节的语法结构,所述字节呈RBSP形式且视需要与仿真防止位穿插。NAL单元中的每一个包含NAL单元标头,且囊封RBSP。NAL单元标头可包含指示NAL单元类型码的语法元素。由NAL单元的NAL单元标头指定的NAL单元类型码指示NAL单元的类型。RBSP可为含有囊封在NAL单元内的整数数目个字节的语法结构。在一些情况下,RBSP包含零个位。
不同类型的NAL单元可囊封不同类型的RBSP。举例来说,第一类型的NAL单元可囊封PPS的RBSP,第二类型的NAL单元可囊封经译码切片的RBSP,第三类型的NAL单元可囊封SEI消息的RBSP等等。囊封视频译码数据的RBSP(与参数集和SEI消息的RBSP相反)的NAL单元可称作VCLNAL单元。
视频解码器30可接收由视频编码器20生成的位流。另外,视频解码器30可剖析位流以从位流获得语法元素。视频解码器30可至少部分地基于从位流获得的语法元素来重构视频数据的图片。重构视频数据的过程通常可与由视频编码器20执行的过程互逆。另外,视频解码器30可逆量化与当前CU的TU相关联的系数块。视频解码器30可以对系数块执行逆变换以重构与当前CU的TU相关联的变换块。通过将当前CU的PU的预测性块的样本添加到当前CU的TU的变换块的对应样本,视频解码器30可重构当前CU的译码块。通过重构图片的每一CU的译码块,视频解码器30可重构所述图片。
根据本公开的技术,视频编码器20和/或视频解码器30可在运动补偿期间进一步执行双向光流(BIO)技术,如下文更详细地论述。
视频编码器20和视频解码器30各自可实施为可适用的多种合适的编码器或解码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为组合式视频编码器/解码器(CODEC)的部分。包含视频编码器20和/或视频解码器30的装置可包含集成电路、微处理器和/或无线通信装置,例如蜂窝式电话。
图2是说明作为针对运动补偿帧速率上转换(MC-FRUC)执行的块匹配算法(BMA)的单侧运动估计(ME)的实例的概念图。一般来说,视频译码器(例如视频编码器20或视频解码器30)执行单侧ME以通过从当前帧100的当前块106的参考帧102搜索最佳匹配块(例如,参考块108)来获得运动向量(MV),例如MV 112。接着,视频译码器沿着运动向量112的运动轨迹在内插帧104中内插内插块110。也就是说,在图2的实例中,运动向量112穿过当前块106、参考块108和内插块110的中点。
如图2中所展示,三个帧中的三个块涉及遵循运动轨迹。尽管当前帧100中的当前块106属于经译码块,但参考帧102中的最佳匹配块(也就是说,参考块108)无需完全属于经译码块(也就是说,最佳匹配块可不落在经译码块边界上,但代替地可重叠此边界)。同样地,内插帧104中的内插块110无需完全属于经译码块。因此,块的重叠区和非填充(孔)区可能出现在内插帧104中。
为了处理重叠,简单的FRUC算法仅涉及平均和覆写重叠像素。此外,孔可由来自参考帧或当前帧的像素值覆盖。然而,这些算法可引起成块假影和模糊。因此,运动字段分段、使用离散哈脱莱变换的连续外插和图像修复可用于处理孔和重叠而不增大成块假影和模糊。
图3是说明作为针对MC-FRUC执行的BMA的双侧ME的实例的概念图。双侧ME是可用于避免由重叠和孔所引起的问题的另一解决方案(在MC-FRUC中)。执行双侧ME的视频译码器(例如视频编码器20和/或视频解码器30)使用当前帧120的当前块126与参考帧122的参考块128之间的时间对称性获得穿过内插帧124(其在当前帧120和参考帧122中间)的内插块130的MV 132、134。因此,视频译码器不在内插帧124中生成重叠和孔。由于假设当前块126是视频译码器以某一次序处理的块,例如如在视频译码的情况下,此类块的序列将覆盖整个中间图片,而无重叠。举例来说,在视频译码的情况下,块可以按解码次序处理。因此,如果可以在视频译码架构中考虑FRUC构想,那么此方法可以是更合适的。
S.-F.Tu、O.C.Au、Y.Wu、E.Luo和C.-H.Yeun的“通过预测性可变块大小运动估计光流进行帧速率上转换的新构架(A Novel Framework for Frame Rate Up Conversion byPredictive Variable Block-Size Motion Estimated Optical Flow)”,国际图像信号处理大会(CISP),2009,描述了用于帧速率上转换的混合块级运动估计和像素级光流方法。Tu陈述混合场景比任一个别方法更好。
在HEVC标准中,存在两个分别用于PU的帧间预测模式,即合并模式(跳过被视为合并的特定情况)和高级运动向量预测(AMVP)模式。在AMVP或合并模式中,针对多个运动向量预测符维持运动向量(MV)候选项列表。当前PU的运动向量以及合并模式中的参考索引是通过从MV候选项列表中获取一个候选项而生成的。
MV候选项列表含有用于合并模式的多达5个候选项和用于AMVP模式的仅两个候选项。合并候选项可含有运动信息集合,例如对应于两个参考图片列表(列表0和列表1)的运动向量和参考索引。如果通过合并索引来识别合并候选项,那么参考图片用于当前块的预测,并且相关联的运动向量得到确定。然而,在用于来自列表0或列表1的每一潜在的预测方向的AMVP模式下,需要将参考索引与MV预测符(MVP)索引一起显式地用信号发送到MV候选项列表,这是由于AMVP候选项仅含有运动向量。在AMVP模式中,可进一步优化经预测运动向量。
合并候选项对应于整个运动信息集合,而AMVP候选项仅含有用于特定预测方向/参考列表和参考索引的一个运动向量。以类似方式从相同空间和时间相邻块导出用于两个模式的候选项。
图4A展示用于合并模式的空间相邻MV候选项,且图4B展示用于AMVP模式的空间相邻MV候选项。对于特定PU(PU0),从在图4A和4B中所展示的相邻块导出空间MV候选项,但是从块生成候选项的方法对于合并模式和AMVP模式不同。
在合并模式中,可以带有数字的图4A上所展示的次序来导出多达四个空间MV候选项,且次序如下:左(0,A1)、上(1,B1)、右上(2,B0)、左下(3,A0)和左上(4,B2),如图4A中所展示。
在AMVP模式中,将相邻块划分成两个群组:由块0和1组成的左群组,以及由块2、3和4组成的上群组,如图4B上所展示。对于每一群组,如发信号通知的参考索引所指示的参考同一参考图片的相邻块中的潜在候选项具有最高待选优先级,以形成所述群组的最终候选项。有可能所有相邻块均不含指向同一参考图片的运动向量。因此,如果无法找到此类候选项,那么将按比例缩放第一可用候选项以形成最终候选项,因此可补偿时间距离差异。
图5A展示TMVP候选项的实例,且图5B展示MV按比例缩放的实例。如果经启用并且是可供使用的,那么时间运动向量预测符(TMVP)候选项被添加到MV候选项列表中位于空间运动向量候选项之后。对于合并模式和AMVP模式两者来说,TMVP候选项的运动向量导出的过程是相同的,然而在合并模式中用于TMVP候选项的目标参考索引总是被设置成0。
用于TMVP候选项导出的主块位置是并置PU外部的右下块,如图5A中展示为块“T”,以补偿对用于生成空间相邻候选项的左上块的偏置。然而,如果所述块位于当前CTB行的外部或运动信息不可供使用,那么所述块被PU的中心块取代。
TMVP候选项的运动向量可从并置图片的并置PU导出,在切片级中指示。并置PU的运动向量称为并置MV。类似于AVC中的时间直接模式,为导出TMVP候选项运动向量,并置MV需要按比例缩放以补偿时间距离差异,如图5B中所展示。
HEVC还利用运动向量按比例缩放。假设运动向量的值与按呈现时间的图片的距离成比例。运动向量将两个图片,即参考图片和含有运动向量的图片(即含有图片)相关联。当运动向量被用来预测另一运动向量时,基于图片次序计数(POC)值来计算含有图片和参考图片的距离。
对于待预测的运动向量,其相关联的含有图片和参考图片都可以是不同的。因此,计算出新距离(基于POC)并且运动向量是基于这两个POC距离按比例缩放的。对于空间相邻候选项,两个运动向量的含有图片相同,而参考图片不同。在HEVC中,运动向量按比例缩放适用于空间和时间相邻候选项的TMVP和AMVP两者。
HEVC还利用人工运动向量候选项生成。如果运动向量候选项列表并不完整,那么人工运动向量候选项生成并且插入在列表的末端直至获得整个候选项集合。在合并模式中,存在两种类型的人工MV候选项:仅针对B切片导出的组合式候选项,以及在第一类型并不提供足够的人工候选项的情况下仅用于AMVP的零候选项。对于已经在候选项列表中且具有必要的运动信息的每对候选项,双向组合的运动向量候选项可通过参考列表0中的图片的第一候选项的运动向量与参考列表1中的图片的第二候选项的运动向量的组合导出。
HEVC还利用用于候选项插入的精简过程。来自不同块的候选项可碰巧是相同的,这降低了合并/AMVP候选项列表的效果。精简过程可适用于解决这个问题。其将一个候选项与当前候选列表中的其它候选项进行比较,以在一定程度上避免插入相同候选项。为了降低复杂度,仅应用有限数量的精简过程,而不是将每一潜在精简过程与所有其它现有精简过程进行比较。
现将描述JEM中的双向光流的方面。图6展示光流轨迹的实例。BIO利用在双向预测的情况下在逐块运动补偿的基础上执行逐像素运动细化。由于其补偿了块内的精细运动,因此BIO可以扩大块大小以进行运动补偿。样本级运动细化不需要穷尽性的搜索或用信号发送,因为存在为每一样本提供精细运动向量的显式等式。
此处τ0和τ1标示如在图6上所展示的到参考帧的距离。基于Ref0和Ref1的POC计算距离τ0和τ1:τ0=POC(电流)-POC(Ref0),τ1=POC(Ref1)-POC(电流)。如果两个预测来自同一时间方向(两者来自过去或两者来自未来),那么符号τ0·τ1<0不同。在这种情况下,仅当预测不是来自同一时刻(τ0≠τ1)时才应用BIO,两个参考区都具有非零运动(MVx0,MVy0,MVx1,MVy1≠0),并且块运动向量与时间距离(MVx0/MVx1=MVy0/MVy1=-τ0/τ1)成比例。
通过最小化点A与B(图6上的运动轨迹与参考帧平面的交点)中的值之间的差异Δ来确定运动向量场(vx,vy)。模型仅使用局部泰勒展式的第一个线性项Δ:
(1)中的所有值取决于样本位置(i′,j′),其到目前为止被省略。假设运动在局部周围是一致的,可最小化以当前预测点(i,j)为中心的(2M+1)×(2M+1)方窗口Ω内的Δ:
对于此优化问题,可使用在竖直方向上接着在水平方向上进行第一次最小化的简化解法,这得到:
其中,
为了避免被零或极小值除,在等式(2)、(3)中引入正则化参数r和m。
r=500·4d-8 (8)
m=700·4d-8 (9)
此处d是输入视频的内部位深度。
在一些情况下,BIO的MV方案可能由于噪声或不规则运动而不可靠。因此,在BIO中,MV方案的量值被削减成某一阈值(thBIO)。基于当前图片的所有参考图片是否均来自一个方向来确定阈值。如果当前图片的当前图片的所有参考图片来自一个方向,那么阈值的值被设置成12×214-d,否则其被设置成12×213-d。
使用与HEVC运动补偿过程(2D可分离FIR)一致的操作利用运动补偿内插同时计算BIO的梯度。根据块运动向量的分数部分,此2D可分离FIR的输入是与运动补偿过程和分数位置(fracX,fracY)相同的参考帧样本。在水平梯度的情况下,首先使用对应于具有消除缩放位移d-8的分数位置fracY的BIOfilterS竖直地内插信号,然后在与具有消除缩放位移18-d的分数位置fracX相对应的水平方向上应用梯度滤波器BIOfilterG。在竖直梯度的情况下,首先使用对应于具有消除缩放位移d-8的分数位置fracY的BIOfilterG竖直应用梯度滤波器,然后在水平方向上使用对应于具有消除缩放位移18-d的分数位置fracX的BIOfilterS执行信号位移。用于梯度计算BIOfilterG和信号位移BIOfilterF的内插滤波器的长度较短(6抽头),以便维持合理的复杂度。表1展示用于BIO中的块运动向量的不同部分位置的梯度计算的滤波器。表2展示用于BIO中预测信号生成的内插滤波器。
图7展示8x4块的梯度计算的实例。对于8x4块,需要提取运动补偿预测符(也被称作MC预测符)并计算当前块内所有像素的HOR/VER梯度以及外部两行像素,因为求解每一像素的vx和vy需要HOR/VER梯度值和以每一像素为中心的窗口Ω内的像素的运动补偿预测符,如等式(4)中所展示。在JEM中,此窗口的大小将设置成5x5,意指视频译码器因此需要提取运动补偿预测符并计算外部两行像素的梯度。
表1:用于BIO中梯度计算的滤波器
表2:用于BIO中预测信号生成的内插滤波器
分数像素位置 | 用于预测信号的内插滤波器(BIOfilterS) |
0 | {0,0,64,0,0,0} |
1/16 | {1,-3,64,4,-2,0} |
1/8 | {1,-6,62,9,-3,1} |
3/16 | {2,-8,60,14,-5,1} |
1/4 | {2,-9,57,19,-7,2} |
5/16 | {3,-10,53,24,-8,2} |
3/8 | {3,-11,50,29,-9,2} |
7/16 | {3,-11,44,35,-10,3} |
1/2 | {1,-7,38,38,-7,1} |
在JEM中,当两个预测来自不同参考图片时,BIO被应用于所有双向预测块。当针对CU启用LIC时,禁用BIO。
在第5次JVET会议上,提交了提议JVET-E0028,A.Alshin、E.Alshina“EE3:具有/不具有块扩展的双向光流(EE3:bi-directional optical flow w/o block extension)”,JVET-E0028,2017年1月,以修改BIO操作并减少存储器存取带宽。在此提议中,当前块之外的像素不需要MC预测符和梯度值。此外,将每一像素的vx和vy的求解修改为使用MC预测符和当前块内所有像素的梯度值,如图7中所展示。换言之,等式(4)中的方窗口Ω经修改为等于当前CU的窗口。此外,考虑加权因数w(i′,j′)来导出vx和vy。w(i′,j′)是窗口内中心像素(i,j)的位置和像素(i′,j′)的位置的函数。
图8展示JVET-E0028中所提议的8x4块的经修改的BIO的实例。已提议JVET-E0028的简化版本来解决块层级与子块层级BIO过程之间结果的错配问题。代替与CU中的所有像素一起使用邻域Ω,所提议的方法修改邻域Ω来仅包含以当前像素为中心的5x5像素,而无当前CU外的像素位置的内插或梯度计算。
现将描述JEM中的重叠块运动补偿(OBMC)的方面。OBMC已用于早期生成的视频标准,例如如在H.263中。在JEM中,针对除了CU的右下方边界之外的全部运动补偿(MC)块边界执行OBMC。此外,OBMC被应用于亮度和色度分量两者。在JEM中,MC块对应于译码块。当CU以子CU模式(包含子CU合并、仿射和FRUC模式)译码时,CU的每一子块是MC块。为了以统一方式处理CU边界,针对全部MC块边界在子块级下执行OBMC,其中子块大小设置成等于4x4,如图9中所说明。
当OBMC应用于当前子块时,除了当前运动向量之外,如果四个连接的相邻子块的运动向量可用并与当前运动向量不相同,还使用这四个连接的相邻子块的运动向量来导出当前子块的预测块。组合基于多个运动向量的这些多个预测块以生成当前子块的最终预测信号。
如图10中所展示,基于相邻子块的运动向量的预测块标示为PN,其中N指示用于相邻的上、下、左和右子块的索引,并且基于当前子块的运动向量的预测块标示为PC。当PN是基于含有与当前子块相同的运动信息的相邻子块的运动信息时,不从PN执行OBMC。否则,PN的每一像素添加到PC中的相同像素,即PN的四个行/列添加到PC。加权因数{1/4,1/8,1/16,1/32}用于PN,且加权因数{3/4,7/8,15/16,31/32}用于PC。例外为小MC块,(即,当译码块的高度或宽度等于4或CU以子CU模式译码时),对此仅将PN的两个行/列添加到PC。在这种情况下,加权因数{1/4,1/8}用于PN,且加权因数{3/4,7/8}用于PC。对于基于竖直(水平)相邻子块的运动向量生成的PN,利用相同加权因数将PN的相同行(列)中的像素添加到PC。应注意,BIO还应用于预测块Pn的导出。
在JEM中,对于大小小于或等于256个亮度样本的CU,用信号发送CU级标记以指示OBMC应用于当前CU还是不应用。对于大小大于256个亮度样本或不以AMVP模式译码的CU,默认地应用OBMC。在视频编码器20处,当OBMC应用于CU时,考虑其在运动估计阶段期间的影响。通过使用顶相邻块和左相邻块的运动信息得到的预测信号用以补偿当前CU的原始信号的顶边界和左边界,且接着应用正常运动估计过程。
BIO可被视为常规CU级或子块级MC的后处理。虽然现有BIO实施方案提供一些译码性能改进,但现有实施方案还呈现软件和硬件设计的复杂度问题。
图11展示JEM5中现有BIO设计的框图。在图11中,MC 202使用两个运动向量(MV0和MV1)以及两个参考图片(Ref0和Ref1)执行块的双向预测运动补偿。MC 202将两个预测性块(预测符P0和P1)输出到BIO 204,其上两个预测符上执行BIO过程,以生成输出P,这对应于P0/P1的双平均,其中在每像素的基础上添加BIO偏移。OBMC 206在P上执行OBMC,以产生两个经更新的预测性块(P0′和P1′)。BIO 208接着在两个经更新的预测符上执行BIO过程,以产生输出P″,其是最终预测符。
在图11的实例中,双向预测运动补偿之后对常规MC和OBMC进行BIO滤波,其因此对相同子块多次调用BIO过程。这延长了整个运动补偿过程且需要在OBMC的顶部上由BIO引入的额外带宽。现有BIO实施方案利用除法运算来计算经细化运动向量,且基于每像素的除法运算在硬件设计中较昂贵,因为通常需要多个除数副本来实现足够的吞吐量,从而导致对硅面积的高需求。相对于运动估计,BIO是在小范围运动搜索内进行MV细化的过程。现有BIO实施方案更新MC预测符作为结果。然而,在细化之后并不相应地更新存储在MV缓冲器中的运动向量,从而造成MC预测符与相关联的运动向量之间的异步设计。运动向量细化的计算当前采用6抽头内插滤波器和梯度滤波器,这导致增大的复杂度。
本公开描述可解决上文关于BIO的已知实施方案所描述的问题的技术。以下技术可单独地或替代地以任何组合形式应用。
根据本公开的一个技术,视频编码器20和视频解码器30可实施基于块的BIO方案,其经设计以使得像素群组用以生成群组中的所有像素的单个运动向量细化。块大小可以是预定义大小,包含但不限于2x2和4x4。
视频编码器20和视频解码器30可适应性地选择块大小。举例来说,视频编码器20和视频解码器30可基于被译码的帧的分辨率、整个CU的大小、当前图片的时间层、用于译码当前图片的QP和/或当前CU的译码模式来选择块大小。
视频编码器20和视频解码器30可解出等式4的方窗口Ω,其包含块自身和所考虑的块的邻域。在一个实例中,Ω的大小是8x8,其中中心4x4区含有用于计算BIO偏移的考虑中的像素群组且周围2像素区是块的邻域。
视频编码器20和视频解码器30可使用可呈包含但不限于等式10的形式的加权函数来向窗口内的不同位置的像素提供不同权重。在一个实例中,对位于Ω的中心部分中的像素赋予比位于Ω的边界周围的像素更高的权重。可使用加权平均值来计算等式(7)中的相的平均值,以便求解整个块的vx和vy。在一些实例中,可应用中值滤波器以在计算加权平均值之前排除块中的异常值,以获得等式4的更稳定的解。作为一个实例,当在所应用的加权函数中使用5x5窗口如图7中那样遍历像素时,可以假设所有样本位置对窗口的中心样本贡献1。可以应用中值,使得其值是远离当前5x5样本的中值的标准偏差数(例如,3)的样本被赋予权重值0。
图12A到12D展示具有1或2像素扩展的4x4/2x2块的实例。在一个实例中,可如下使用运行窗口生成加权函数:
其中Ω(x,y)是像素位置(x,y)的邻域(其共享块的相同扩展大小),B是将计算梯度值(例如,4x4/2x2块)的像素集合,且k是常量(通过SPS/PPS/切片标头预定义或用信号发送)。
图12A到12D展示加权函数的实例。图12A展示具有2像素扩展的4x4块的加权函数的实例。图12B展示具有1像素扩展的4x4块的加权函数的实例。图12C展示具有2像素扩展的2x2块的加权函数的实例。图12D展示具有1像素扩展的2x2块的加权函数的实例。
另外,如果关于像素是否属于Ref0与Ref1之间的遮挡对象的信息是可用的,那么属于遮挡对象的相邻像素可被赋予较轻权重。在一个实例中,属于遮挡对象的像素的权重被赋予0,且对于其它像素,权重保持不变。这允许对特定像素位置是否涉及BIO导出进行像素级控制。作为如何确定是否遮挡像素的一个实例,相应地,当前样本与来自L0和L1预测的平均样本之间的差值可以标示为Db;当前样本与来自L0的并置样本之间的差值标示为D0;以及当前样本与来自L1的并置样本之间的差值标示为D1。如果Db/D0>>1或Db/D1>>1,那么像素可识别为遮挡。
可预定义BIO的邻域的范围。在一些实例中,可经由SPS、PPS和切片标头用信号发送范围。在一些实例中,可基于译码信息使范围自适应,所述译码信息包含但不限于BIO块大小、CU大小或帧的分辨率。
根据本公开的另一技术,视频编码器20和视频解码器30可在BIO的运动细化之后更新块的运动向量。在此过程中,视频编码器20和视频解码器30可通过添加在BIO中导出的运动信息偏移来细化块的运动向量(或运动场)。更新可发生在当前块的常规MC过程之后,且更新可在对后续CU/块进行OBMC之前细化当前CU/块的MV,使得更新后的MV涉及后续CU/块的OBMC操作。在一些实例中,更新可发生在后续CU用于OBMC之后,使得经更新的运动向量仅用于预测运动向量。
视频编码器20和视频解码器30可应用AMVP模式、合并模式、FRUC模式或其它帧间预测模式中的任一个中的MV更新。在一个实例中,运动向量细化的更新仅发生于FRUC模式。在一个实例中,运动向量细化的更新仅发生于合并模式。在一个实例中,运动向量细化的更新仅发生于AMVP模式。在一个实例中,可使用以上项中的两个或所有的任何组合。
在BIO的现有实施方案中,分数样本位置的梯度是基于参考图片的整数样本和在水平和/或竖直方向上的额外内插过程。为简化梯度计算的过程,可基于已基于当前块/CU的现有MV内插的预测样本来计算梯度。可在预测样本的生成期间的不同阶段处对预测样本应用梯度计算。举例来说,为生成双向预测块的预测样本,将首先生成L0预测样本和L1预测样本且接着对L0和L1预测样本进行加权平均以生成双向预测样本。当启用OBMC时,利用使用相邻MV的预测样本对生成的双向预测样本进行进一步加权平均,以生成最终预测样本。在此实例中,可独立地对L0预测样本、L1预测样本应用梯度计算;或可仅对双向预测样本和最终预测样本应用梯度计算,假设L0和L1预测符共享相同梯度值。也就是说,代替分别地使用Ref0/Ref1计算梯度值和在导出BIO运动向量/偏移期间进行求和,对双向预测样本的梯度计算可在单个步骤中获得求和梯度值。
在一个实施方案中,视频编码器20和视频解码器30可将2抽头梯度滤波器应用于预测样本以计算梯度。设块中的当前像素的位置是(x,y)且在此位置处的MC预测符通过P(x,y)标示。梯度值可通过以下等式来计算:
Gx(x,y)=((P(min(x+1,W-1),y)-P(max(x-1,0),y))*K)>>S其中x∈[0,W-1]
Gy(x,y)=((P(x,min(H-1,y+1))-P(x,max(0,y-1)))*K)>>S y∈[0,H-1]
(12)
其中K和S是可以是预定义值的比例因数,W标示块宽度,且H标示块高度。应注意,在内插之后,位置(x,y)可在任何分数像素位置处。在一个实例中,值可以是(24,12,8)或(26,13,8)。这些值可通过SPS、PPS或切片标头用信号发送。
在一个实例中,视频编码器20和视频解码器30可将较长抽头梯度滤波器应用于预测样本以计算梯度。举例来说,可应用系数为{8,-39,-3,46,-17,5}的滤波器。在一些实例中,使用具有滤波器系数{1,-5,0,5,-1}的滤波器或其它对称滤波器。在一些实例中,使用具有系数{10,-44,0,44,-10,0}的滤波器。
根据本公开的另一技术,视频编码器20和视频解码器30可能不对OBMC实施BIO过程或仅有条件地对OBMC实施BIO过程。BIO可利用参考样本,以生成偏移,或其可利用MC/OBMC预测符来生成偏移。生成的BIO偏移被添加到MC预测符或OBMC预测符作为运动向量细化。
图13到18展示根据本公开的技术的简化BIO设计的实例。图13到18的技术可以与图11中所展示的设计结合使用或替代其使用。在图13到18的实例中,标记为MC、BIO和OBMC的框大体上执行与上文所描述的MC 202、BIO 204、OBMC 206和BIO 208相同的功能。
图13展示根据本公开的技术的简化BIO设计的实例。图13展示从Ref0/Ref1导出且应用于MC预测符P0/P1的BIO的实例。移除对OBMC的BIO过程。从MV0/MV1、Ref0/Ref1和MC预测符P0/P1导出BIO偏移,且在双平均期间将偏移添加到P0/P1。预测符P′是整个MC过程的最终预测符。虚线指示图中的运动向量信息,且实线指示预测或参考样本的实际像素数据。在图13中,MC之后的BIO操作利用MC预测符P0/P1以及使用运动向量MV0/MV1从Ref0/Ref1导出的梯度值来计算运动向量细化和偏移。通过对基于每像素添加BIO偏移的P0/P1进行双平均来生成BIO P的输出(即使对于块层级BIO,其中运动向量细化在块内保持相同,BIO偏移可仍基于每像素,因为每一像素的梯度值可以是不同的)。
图14展示根据本公开的技术的简化BIO设计的实例。图14展示从Ref0/Ref1导出且应用于OBMC预测符P0′/P1′的BIO的实例。从MV0/MV1、Ref0/Ref1和OBMC预测符P0′/P1′导出BIO偏移,且在双平均期间将偏移添加到P0′/P1′。预测符P″是整个MC过程的最终预测符。
图15展示根据本公开的技术的简化BIO设计的实例。图15展示从MC预测符P0/P1导出且应用于MC预测符P0/P1的BIO的实例。使用MV0/MV1和Ref0/Ref1计算梯度值,且接着连同MC预测符P0/P1一起生成BIO偏移。将偏移添加到OBMC预测符P′以生成整个MC过程的最终预测符P″。
图16展示根据本公开的技术的简化BIO设计的实例。图16展示从MC预测符P0/P1导出/应用于MC预测符P0/P1的BIO的实例。使用MC预测符P0/P1计算BIO偏移,且在双平均期间将偏移添加到P0/P1,接着通过OBMC过程来生成整个MC过程的最终预测符P″。
图17展示根据本公开的技术的简化BIO设计的实例。图17展示仅使用OBMC预测符的简化BIO的实例。使用OBMC预测符P0′/P1′和运动向量MV0/MV1导出梯度值,且使用OBMC预测符P0′/P1′计算BIO偏移。在双平均期间将偏移添加到P0′/P1′以生成整个MC过程的最终预测符P″。
在一个实例中,视频编码器20和视频解码器30可有条件地停用OBMC中的BIO。设MVCURx和MVNBRx是OBMC过程期间列表x(其中x是0或1)的当前块和相邻块的运动向量。在一个实例中,如果MVCUR0与MVNBR0之间的运动向量差的绝对值和MVCUR1与MVNBR1之间的运动向量差的绝对值小于阈值,那么可停用OBMC中的BIO。可经由SPS/PPS/切片标头用信号发送阈值,或可使用预定义值(例如,半像素、一个像素,或等于BIO运动向量细化的搜索范围的任何值)。在另一实例中,如果MVNBR0与MVNBR1之间的运动向量差的绝对值小于阈值,那么可停用OBMC中的BIO。
在一个实例中,视频编码器20和视频解码器30可利用预定值限制整个MC过程中的BIO操作的数目。举例来说,对于每一块(块可以是CTU、CU、PU或MxN块)BIO过程至多执行N次(例如,N可以是1或任何正整数)。在一个实例中,仅允许对每一块执行一次BIO。当使用应用BIO的当前运动信息生成预测样本时,不允许进一步BIO来生成当前块的其它预测样本,例如OBMC或用以细化预测样本的任何其它方法。然而,当使用未应用BIO的当前运动信息生成预测样本时,允许至多一个BIO来生成当前块的其它预测样本,例如OBMC或用以细化预测样本的任何其它方法。
根据本公开的技术,视频编码器20和视频解码器30可对BIO实施基于块的设计。代替JEM5中的像素级运动细化,基于4x4块进行运动细化。在基于块的BIO中,4x4块中的样本的梯度的加权和用以导出块的运动向量偏移。
计算例如梯度、BIO运动向量和偏移等其它过程可例如遵循与当前JEM中相同程序。在利用基于块的BIO获得每一MV的4x4 MV之后,更新MV缓冲器且将其用于后续CU译码。在图18中展示整个框图,其中在无BIO操作的情况下应用OMBC。
在下表中展示对RA和LDB的模拟结果。
图19是说明可实施用于双向光流的技术的视频编码器20的实例的框图。视频编码器20可执行视频切片内的视频块的帧内和帧间译码。帧内译码依赖于空间预测来减小或移除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测来减少或移除视频序列的邻近帧或图片内的视频中的时间冗余。帧内模式(I模式)可指代若干基于空间的译码模式中的任一个。例如单向预测(P模式)或双向预测(B模式)等帧间模式可指若干基于时间的译码模式中的任一个。
如图19中所展示,视频编码器20接收待编码视频帧内的当前视频块。在图19的实例中,视频编码器20包含模式选择单元40、参考图片存储器64(也可被称作经解码图片缓冲器(DPB))、求和器50、变换处理单元52、量化单元54和熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测单元46和分割单元48。为了视频块重构,视频编码器20还包含逆量化单元58、逆变换单元60,和求和器62。还可包含解块滤波器(图19中未展示)来对块边界进行滤波,以从经重构视频移除成块效应假象。必要时,解块滤波器通常将对求和器62的输出进行滤波。除了解块滤波器之外,还可使用额外滤波器(环路内或环路后)。为简洁起见,未展示这些滤波器,但是必要时,这些滤波器可对求和器62的输出进行滤波(作为环路内滤波器)。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。所述帧或切片可以划分成多个视频块。运动估计单元42和运动补偿单元44执行所接收视频块相对于一或多个参考帧中的一或多个块的帧间预测性编码以提供时间预测。帧内预测单元46可替代地使用与待译码的块相同的帧或切片中的一或多个相邻块的像素来对接收到的视频块进行帧内预测,以提供空间预测。视频编码器20可执行多个译码遍次,例如以针对每一视频数据块选择适当的译码模式。
此外,分割单元48可基于前述译码遍次中的先前分割方案的评估将视频数据块分割成子块。举例来说,分割单元48可起初将帧或切片分割成LCU,并且基于速率失真分析(例如,速率失真优化)将LCU中的每一者分割成子CU。模式选择单元40可进一步产生指示将LCU分割成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU和一或多个TU。
模式选择单元40可例如基于错误结果选择预测模式、帧内或帧间中的一者,且将所得预测块提供到求和器50以生成残差数据且提供到求和器62以重构经编码块以用作参考帧。模式选择单元40还向熵编码单元56提供语法元素,例如,运动向量、帧内模式指示符、分割信息和其它此类语法信息。
运动估计单元42与运动补偿单元44可高度集成,但出于概念目的而分别加以说明。运动估计单元42执行的运动估计是生成运动向量的过程,所述过程估计视频块的运动。举例来说,运动向量可以指示当前视频帧或图片内的视频块的PU相对于参考帧(或其它经译码单元)内的预测性块相对于当前帧(或其它经译码单元)内正被译码的当前块的位移。预测性块是被发现就像素差而言与待编码的块紧密匹配的块,其可通过绝对差总和(SAD)、平方差总和(SSD)或其它差度量来确定。在一些实例中,视频编码器20可以计算存储在参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可以内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精度的运动向量。
运动估计单元42通过比较经帧间译码切片中的视频块的PU的位置与参考图片的预测性块的位置来计算PU的运动向量。参考图片可以选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述参考图片列表中的每一者识别存储在参考图片存储器64中的一或多个参考图片。运动估计单元42将计算出的运动向量发送到熵编码单元56和运动补偿单元44。
运动补偿单元44执行的运动补偿可以涉及基于运动估计单元42确定的运动向量来提取或生成预测性块。同样,在一些实例中,运动估计单元42与运动补偿单元44可以在功能上集成。在接收到当前视频块的PU的运动向量后,运动补偿单元44可在参考图片列表中的一者中定位所述运动向量指向的预测性块。求和器50通过从正被译码的当前视频块的像素值减去预测性块的像素值从而形成像素差值来形成残差视频块,如下文所论述。一般来说,运动估计单元42相对于亮度分量执行运动估计,且运动补偿单元44将基于亮度分量计算出的运动向量用于色度分量和亮度分量两者。模式选择单元40还可生成与视频块和视频切片相关联的语法元素以供视频解码器30在对视频切片的视频块进行解码时使用。
此外,运动补偿单元44可经配置以执行本公开的技术中的任一个或全部(单独或以任何组合)。尽管关于运动补偿单元44进行论述,但应理解,模式选择单元40、运动估计单元42、分割单元48和/或熵编码单元56还可经配置以单独或与运动补偿单元44组合执行本公开的某些技术。在一个实例中,运动补偿单元44可经配置以执行本文中所论述的BIO技术。
作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可对当前块进行帧内预测。明确地说,帧内预测单元46可以确定用来对当前块进行编码的帧内预测模式。在一些实例中,帧内预测单元46可以例如在单独编码编次期间使用各种帧内预测模式对当前块进行编码,并且帧内预测单元46(或在一些实例中为模式选择单元40)可以从所述测试模式中选择适当帧内预测模式来使用。
举例来说,帧内预测单元46可使用速率失真分析计算各种经测试帧内预测模式的速率失真值,并在所述测试的模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析大体上确定经编码块与经编码以产生所述经编码块的原始的未经编码块之间的失真(或误差)的量,以及用于产生经编码块的位率(也就是说,位数)。帧内预测单元46可根据用于各种经编码块的失真和速率计算比率,以确定哪种帧内预测模式对于所述块呈现最佳速率失真值。
在选择用于块的帧内预测模式之后,帧内预测单元46可将指示用于所述块的选定帧内预测模式的信息提供到熵编码单元56。熵编码单元56可对指示选定帧内预测模式的信息进行编码。视频编码器20可在所发射的位流中包含配置数据,所述配置数据可包含多个帧内预测模式索引表和多个经修改的帧内预测模式索引表(还被称作码字映射表)、编码各种块的上下文的定义,以及用于所述上下文中的每一个的最可能帧内预测模式、帧内预测模式索引表和经修改帧内预测模式索引表的指示。
视频编码器20通过从经译码的原始视频块减去来自模式选择单元40的预测数据而形成残差视频块。求和器50表示执行此减法运算的一或多个组件。变换处理单元52将例如离散余弦变换(DCT)或概念上类似的变换等变换应用于残差块,从而产生包含变换系数值的视频块。可使用小波变换、整数变换、子带变换、离散正弦变换(DST)或其它类型的变换来替代DCT。在任何情况下,变换处理单元52将变换应用到残差块,从而产生变换系数块。所述变换可将残差信息从像素域转换到变换域,例如频域。变换处理单元52可将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步降低位率。量化过程可减少与系数中的一些或全部相关联的位深度。可通过调整量化参数来修改量化程度。
在量化之后,熵编码单元56对经量化变换系数进行熵译码。举例来说,熵编码单元56可以执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵译码技术。在基于上下文的熵译码的状况下,上下文可基于相邻块。在熵编码单元56的熵译码之后,可将经编码位流发射到另一装置(例如,视频解码器30)或存档以用于稍后发射或检索。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换以重构像素域中的残差块。确切地说,求和器62将经重构残差块添加到先前由运动补偿单元44或帧内预测单元46产生的运动补偿预测块以产生经重构视频块,以供存储在参考图片存储器64中。经重构视频块可由运动估计单元42和运动补偿单元44使用作为参考块以对后续视频帧中的块进行帧间译码。
图20是说明可实施用于双向光流的技术的视频解码器30的实例的框图。在图20的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考图片存储器82和求和器80。在一些实例中,视频解码器30可执行与关于视频编码器20(图19)描述的编码遍次大体互逆的解码遍次。运动补偿单元72可基于从熵解码单元70接收的运动向量生成预测数据,而帧内预测单元74可基于从熵解码单元70接收的帧内预测模式指示符生成预测数据。
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块的经编码视频位流和相关联的语法元素。视频解码器30的熵解码单元70对位流进行熵解码以生成经量化系数、运动向量或帧内预测模式指示符和其它语法元素。熵解码单元70将运动向量和其它语法元素转发到运动补偿单元72。视频解码器30可接收视频切片级和/或视频块级处的语法元素。
当视频切片经译码为经帧内译码(I)切片时,帧内预测单元74可以基于用信号表示的帧内预测模式和来自当前帧或图片的先前经解码块的数据生成用于当前视频切片的视频块的预测数据。当将视频帧译码为经帧间译码(例如,B、P或GPB)切片时,运动补偿单元72基于从熵解码单元70接收的运动向量和其它语法元素产生用于当前视频切片的视频块的预测性块。可从参考图片列表中的一个内的参考图片中的一个产生预测性块。视频解码器30可基于存储在参考图片存储器82中的参考图片使用默认建构技术建构参考帧列表,即列表0和列表1。
运动补偿单元72通过剖析运动向量和其它语法元素确定用于当前视频切片的视频块的预测信息,并且使用所述预测信息产生用于经解码当前视频块的预测性块。举例来说,运动补偿单元72使用一些接收到的语法元素确定用于对视频切片的视频块进行译码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、切片的参考图片列表中的一或多者的建构信息、切片的每一经帧间编码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态和用以对当前视频切片中的视频块进行解码的其它信息。
运动补偿单元72也可基于内插滤波器执行内插,以获得子像素精度。运动补偿单元72可使用由视频编码器20在编码视频块期间使用的内插滤波器来计算参考块的子整数像素的内插值。在此情况下,运动补偿单元72可根据接收的语法元素而确定由视频编码器20使用的内插滤波器并使用所述内插滤波器来产生预测性块。
此外,运动补偿单元72可经配置以执行本公开的技术中的任一个或全部(单独或以任何组合)。举例来说,运动补偿单元72可经配置以执行本文中所论述的BIO技术。
逆量化单元76将在位流中提供且由熵解码单元70解码的经量化变换系数逆量化,即去量化。逆量化过程可包含使用由视频解码器30针对视频切片中的每一视频块计算,以确定应所述应用的量化程度和同样的逆量化程度的量化参数QPY。
逆变换单元78对变换系数应用逆变换,例如逆DCT、逆整数变换,或概念上类似的逆变换过程,以便产生像素域中的残差块。
在运动补偿单元72基于运动向量和其它语法元素生成当前视频块的预测性块之后,视频解码器30通过对来自逆变换单元78的残差块与由运动补偿单元72生成的对应的预测性块求和而形成经解码视频块。求和器80表示执行这种求和运算的一或多个组件。必要时,解块滤波器还可应用于对经解码块进行滤波以便移除成块效应假象。还可使用其它环路滤波器(在译码环路中或在译码环路之后)以使像素转变平滑或者以其它方式改善视频质量。接着将给定帧或图片中的经解码视频块存储在参考图片存储器82中,所述参考图片存储器存储用于后续运动补偿的参考图片。参考图片存储器82还存储经解码视频以用于稍后呈现在显示装置(例如,图1的显示装置32)上。举例来说,参考图片存储器82可存储经解码图片。
图21是说明本公开中所描述的实例视频解码技术的流程图。将参看通用视频解码器,例如但不限于视频解码器30描述图21的技术。在一些情况下,图21的技术可由例如视频编码器20的视频编码器执行,在此状况下,通用视频解码器对应于视频编码器的解码回路。
在图21的实例中,视频解码器确定使用双向帧间预测模式对视频数据块进行编码(220)。视频解码器确定使用BIO过程对视频数据块进行编码(222)。视频解码器根据双向帧间预测模式对视频数据块进行帧间预测(224)。为了对视频数据块进行帧间预测,视频解码器可在第一图片中定位第一参考块,在第二参考图片中定位第二参考块,并基于第一参考块和第二参考块生成第一预测性块。像素群组属于第一预测性块。
视频解码器通过确定块中的像素群组的单个运动向量细化来对块执行BIO过程并基于单个运动向量细化对像素群组进行细化(226)。像素群组包含至少两个像素。为了对块执行BIO过程,视频解码器可将BIO过程应用于第一预测性块的像素群组,以生成BIO细化预测性块。像素群组可以例如是4x4块。
为了基于单个运动向量细化对像素群组进行细化,视频解码器可例如将相同细化应用于群组中的所有像素。为了确定像素群组的单个运动向量细化,视频解码器可确定像素窗口的运动向量场,其中所述像素窗口包含所述像素群组和围绕所述像素群组的区中的像素。窗口可以例如是8x8像素块、6x6像素块或某一其它大小窗口。为了确定像素窗口的运动向量场,视频解码器可例如将第一权重应用到邻近于窗口的边界的像素,且将第二权重应用到不邻近于窗口的任何边界的像素,其中第二权重大于第一权重。为了确定像素窗口的运动向量场,视频解码器可将中值滤波器应用于像素窗口。
视频解码器输出包含经细化像素群组的BIO细化视频数据预测性块(228)。BIO细化预测性块在被输出之前可经历额外处理,例如OBMC过程和/或一或多个环路滤波器。在视频解码器是视频编码器的部分的情况中,接着视频解码器可通过将包含BIO细化视频数据预测性块的经解码图片存储在经解码图片缓冲器中以用作对视频数据的后续图片进行编码的参考图片来输出BIO细化视频数据预测性块。在视频解码器对视频数据进行解码以供显示的情况中,接着视频解码器可通过将包含BIO细化视频数据预测性块的经解码图片存储在经解码的图片缓冲器中以用作对视频数据的后续图片进行解码的参考图片并且通过可能在进一步处理对一或多个环路滤波器的此类应用之后向显示装置输出包含BIO细化视频数据预测性块的经解码图片来输出BIO细化视频数据预测性块。
应认识到,取决于实例,本文中所描述的技术中的任一种的某些动作或事件可用不同顺序来执行,可添加、合并或全部省略所述动作或事件(例如,实践所述技术未必需要所有所描述动作或事件)。此外,在某些实例中,可例如通过多线程处理、中断处理或多个处理器同时而非依序地执行动作或事件。
在一或多个实例中,所描述功能可用硬件、软件、固件或其任何组合来实施。如果用软件实施,那么所述功能可作为一或多个指令或代码在计算机可读媒体上存储或发射,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体的有形媒体或通信媒体,所述通信媒体包含有助于例如根据通信协议将计算机程序从一处传送到另一处的任何媒体。以此方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可以是可由一或多个计算机或者一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器,或可用于以指令或数据结构的形式存储所要的程序代码且可由计算机存取的任何其它媒体。此外,适当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源发射指令,那么同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。然而,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时性媒体,而是实际上针对非暂时性的有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
指令可由一或多个处理器执行,例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。此外,在一些方面中,本文中所描述的功能性可在经配置以用于编码和解码或并入在组合编解码器中的专用硬件和/或软件模块内提供。此外,所述技术可完全实施于一或多个电路或逻辑元件中。
本公开的技术可实施于多种多样的装置或设备中,包含无线手持机、集成电路(IC)或IC集合(例如,芯片组)。本公开中描述各种组件、模块或单元以强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件和/或固件组合在编解码器硬件单元中,或由互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
已描述了各种实例。这些和其它实例在随附权利要求书的范围内。
Claims (29)
1.一种对视频数据进行解码的方法,所述方法包括:
确定使用双向帧间预测模式对视频数据块进行编码;
确定使用双向光流BIO过程对所述视频数据块进行编码;
根据所述双向帧间预测模式对所述视频数据块进行帧间预测;
对所述块执行所述BIO过程,其中对所述块执行所述BIO过程包括确定所述块中的像素群组的单个运动向量细化,并且基于所述单个运动向量细化对所述像素群组进行细化,其中所述像素群组包括至少两个像素;以及
输出包括所述经细化像素群组的BIO细化视频数据预测性块,
其中,确定所述像素群组的所述单个运动向量细化包括确定像素窗口的运动向量场,其中所述像素窗口包括所述像素群组和围绕所述像素群组的区中的像素。
2.根据权利要求1所述的方法,其中所述像素群组包括4x4块。
3.根据权利要求1所述的方法,其中基于所述单个运动向量细化对所述像素群组进行细化包括将相同细化应用于所述群组中的所有像素。
4.根据权利要求1所述的方法,其中:
对所述视频数据块进行帧间预测包括在第一图片中定位第一参考块,在第二参考图片中定位第二参考块,并且基于所述第一参考块和所述第二参考块生成第一预测性块,其中所述像素群组属于所述第一预测性块;且
对所述块执行所述BIO过程包括将所述BIO过程应用于所述第一预测性块的所述像素群组,以生成所述BIO细化预测性块。
5.根据权利要求1所述的方法,其中所述窗口包括8x8像素块。
6.根据权利要求1所述的方法,其中所述窗口包括6x6像素块。
7.根据权利要求1所述的方法,其中确定所述像素窗口的所述运动向量场包括:
将第一权重应用于邻近于所述窗口的边界的像素;以及
将第二权重应用于不邻近于所述窗口的任何边界的像素,其中所述第二权重大于所述第一权重。
8.根据权利要求1所述的方法,其中确定所述像素窗口的所述运动向量场包括:将中值滤波器应用于所述像素窗口。
9.根据权利要求1所述的方法,其进一步包括:
将重叠块运动补偿OBMC过程应用于所述BIO细化预测性块。
10.根据权利要求1所述的方法,其中用于对所述视频数据进行解码的所述方法执行为视频编码过程的重构环路的部分。
11.一种用于对视频数据进行解码的装置,所述装置包括:
存储器,其经配置以存储所述视频数据;以及
一或多个处理器,其经配置以:
确定使用双向帧间预测模式对视频数据块进行编码;
确定使用双向光流BIO过程对所述视频数据块进行编码;
根据所述双向帧间预测模式对所述视频数据块进行帧间预测;
对所述块执行所述BIO过程,其中为了对所述块执行所述BIO过程,所述一或多个处理器经配置以确定所述块中的像素群组的单个运动向量细化,其中所述像素群组包括至少两个像素,并且基于所述单个运动向量细化对所述像素群组进行细化;以及
输出包括所述经细化像素群组的BIO细化视频数据预测性块,
其中为了确定所述像素群组的所述单个运动向量细化,所述一或多个处理器经配置以确定像素窗口的运动向量场,其中所述像素窗口包括所述像素群组和围绕所述像素群组的区中的像素。
12.根据权利要求11所述的装置,其中所述像素群组包括4x4块。
13.根据权利要求11所述的装置,其中为基于所述单个运动向量细化对所述像素群组进行细化,所述一或多个处理器经配置以将相同细化应用于所述群组中的所有像素。
14.根据权利要求11所述的装置,其中:
为了对所述视频数据块进行帧间预测,所述一或多个处理器经配置以在第一图片中定位第一参考块,在第二参考图片中定位第二参考块,并且基于所述第一参考块和所述第二参考块生成第一预测性块,其中所述像素群组属于所述第一预测性块;以及
为了对所述块执行所述BIO过程,所述一或多个处理器经配置以将所述BIO过程应用于所述第一预测性块的所述像素群组,以生成所述BIO细化预测性块。
15.根据权利要求11所述的装置,其中所述窗口包括8x8像素块。
16.根据权利要求11所述的装置,其中所述窗口包括6x6像素块。
17.根据权利要求11所述的装置,其中为了确定所述像素窗口的所述运动向量场,所述一或多个处理器经配置以:
对邻近于所述窗口的边界的像素应用第一权重;以及
对不邻近于所述窗口的任何边界的像素应用第二权重,其中所述第二权重大于所述第一权重。
18.根据权利要求11所述的装置,其中为了确定所述像素窗口的所述运动向量场,所述一或多个处理器经配置以:
将中值滤波器应用于所述像素窗口。
19.根据权利要求11所述的装置,其中所述一或多个处理器经配置以:
将重叠块运动补偿OBMC过程应用于所述BIO细化预测性块。
20.根据权利要求11所述的装置,其中所述装置包括无线通信装置,其进一步包括经配置以接收经编码视频数据的接收器。
21.根据权利要求20所述的装置,其中所述无线通信装置包括电话手持机,且其中所述接收器经配置以根据无线通信标准来解调包括所述经编码视频数据的信号。
22.根据权利要求11所述的装置,其中所述装置包括无线通信装置,其进一步包括经配置以发射经编码视频数据的发射器。
23.根据权利要求22所述的装置,其中所述无线通信装置包括电话手持机,且其中所述发射器经配置以根据无线通信标准调制包括所述经编码视频数据的信号。
24.一种用于对视频数据进行解码的设备,所述设备包括:
用于确定使用双向帧间预测模式对视频数据块进行编码的装置;
用于确定使用双向光流BIO过程对所述视频数据块进行编码的装置;
用于根据所述双向帧间预测模式对所述视频数据块进行帧间预测的装置;
用于对所述块执行所述BIO过程的装置,其中所述用于对所述块执行所述BIO过程的装置包括用于确定所述块中的像素群组的单个运动向量细化的装置和用于基于所述单个运动向量细化对所述像素群组进行细化的装置,其中所述像素群组包括至少两个像素;以及
用于输出包括所述经细化像素群组的BIO细化视频数据预测性块的装置,
其中所述用于确定所述像素群组的所述单个运动向量细化的装置包括用于确定像素窗口的运动向量场的装置,其中所述像素窗口包括所述像素群组和围绕所述像素群组的区中的像素。
25.根据权利要求24所述的设备,其中所述用于基于所述单个运动向量细化对所述像素群组进行细化的装置包括用于将相同细化应用于所述群组中的所有像素的装置。
26.根据权利要求24所述的设备,其中:
所述用于对所述视频数据块进行帧间预测的装置包括用于在第一图片中定位第一参考块的装置、用于在第二参考图片中定位第二参考块的装置,和用于基于所述第一参考块和所述第二参考块生成第一预测性块的装置,其中所述像素群组属于所述第一预测性块;以及
所述用于对所述块执行所述BIO过程的装置包括用于将所述BIO过程应用于所述第一预测性块的所述像素群组以生成所述BIO细化预测性块的装置。
27.一种存储指令的计算机可读存储媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器进行以下操作:
确定使用双向帧间预测模式对视频数据块进行编码;
确定使用双向光流BIO过程对所述视频数据块进行编码;
根据所述双向帧间预测模式对所述视频数据块进行帧间预测;
对所述块执行所述BIO过程,其中为了对所述块执行所述BIO过程,所述指令使所述一或多个处理器确定所述块中的像素群组的单个运动向量细化,并且基于所述单个运动向量细化对所述像素群组进行细化,其中所述像素群组包括至少两个像素;以及
输出包括所述经细化像素群组的BIO细化视频数据预测性块,
其中为了确定所述像素群组的所述单个运动向量细化,所述指令使所述一或多个处理器确定像素窗口的运动向量场,其中所述像素窗口包括所述像素群组和围绕所述像素群组的区中的像素。
28.根据权利要求27所述的计算机可读存储媒体,其中为了基于所述单个运动向量细化对所述像素群组进行细化,所述指令使所述一或多个处理器将相同细化应用于所述群组中的所有像素。
29.根据权利要求27所述的计算机可读存储媒体,其中:
为了对所述视频数据块进行帧间预测,所述指令使所述一或多个处理器在第一图片中定位第一参考块,在第二参考图片中定位第二参考块,并且基于所述第一参考块和所述第二参考块生成第一预测性块,其中所述像素群组属于所述第一预测性块;且
为了对所述块执行所述BIO过程,所述指令使所述一或多个处理器将所述BIO过程应用于所述第一预测性块的所述像素群组以生成所述BIO细化预测性块。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762470809P | 2017-03-13 | 2017-03-13 | |
US62/470,809 | 2017-03-13 | ||
US15/919,060 | 2018-03-12 | ||
US15/919,060 US10523964B2 (en) | 2017-03-13 | 2018-03-12 | Inter prediction refinement based on bi-directional optical flow (BIO) |
PCT/US2018/022226 WO2018169989A1 (en) | 2017-03-13 | 2018-03-13 | Inter prediction refinement based on bi-directional optical flow (bio) |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110352598A CN110352598A (zh) | 2019-10-18 |
CN110352598B true CN110352598B (zh) | 2021-10-26 |
Family
ID=63445677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880015198.7A Active CN110352598B (zh) | 2017-03-13 | 2018-03-13 | 对视频数据进行解码的方法、装置和设备,以及媒体 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10523964B2 (zh) |
EP (1) | EP3596921A1 (zh) |
KR (1) | KR102576307B1 (zh) |
CN (1) | CN110352598B (zh) |
AU (1) | AU2018236214B2 (zh) |
BR (1) | BR112019018689A2 (zh) |
SG (1) | SG11201907089UA (zh) |
WO (1) | WO2018169989A1 (zh) |
Families Citing this family (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10750203B2 (en) | 2016-12-22 | 2020-08-18 | Mediatek Inc. | Method and apparatus of adaptive bi-prediction for video coding |
EP4258657A1 (en) | 2017-01-04 | 2023-10-11 | Samsung Electronics Co., Ltd. | Video decoding method and apparatus and video encoding method and apparatus |
WO2018199468A1 (ko) | 2017-04-24 | 2018-11-01 | 에스케이텔레콤 주식회사 | 움직임 보상을 위한 옵티컬 플로우 추정 방법 및 장치 |
JP2018191136A (ja) * | 2017-05-02 | 2018-11-29 | キヤノン株式会社 | 符号化装置、符号化方法およびプログラム |
KR20240095362A (ko) * | 2017-06-26 | 2024-06-25 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법 |
CN117478884A (zh) * | 2017-07-03 | 2024-01-30 | Vid拓展公司 | 用于视频编解码的设备、方法 |
CN115118994B (zh) * | 2017-08-22 | 2024-02-06 | 松下电器(美国)知识产权公司 | 图像编码器、图像解码器、和比特流生成设备 |
US10841610B2 (en) * | 2017-10-23 | 2020-11-17 | Avago Technologies International Sales Pte. Limited | Block size dependent interpolation filter selection and mapping |
RU2020135518A (ru) | 2018-04-06 | 2022-04-29 | Вид Скейл, Инк. | Метод двунаправленного оптического потока с упрощенным выведением градиента |
WO2019201203A1 (en) * | 2018-04-16 | 2019-10-24 | Mediatek Inc. | Methods and apparatuses of video processing with overlapped block motion compensation in video coding systems |
WO2019210829A1 (en) * | 2018-04-30 | 2019-11-07 | Mediatek Inc. | Signaling for illumination compensation |
GB2588004B (en) | 2018-06-05 | 2023-03-01 | Beijing Bytedance Network Tech Co Ltd | Interaction between IBC and affine |
WO2019234674A1 (en) * | 2018-06-07 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Integer motion compensation |
KR102596104B1 (ko) | 2018-06-11 | 2023-10-30 | 에이치에프아이 이노베이션 인크. | 비디오 코딩을 위한 양방향 광학 흐름의 방법 및 장치 |
TWI746994B (zh) | 2018-06-19 | 2021-11-21 | 大陸商北京字節跳動網絡技術有限公司 | 用於不同參考列表的不同精確度 |
CN113115046A (zh) | 2018-06-21 | 2021-07-13 | 北京字节跳动网络技术有限公司 | 分量相关的子块分割 |
WO2019244117A1 (en) | 2018-06-21 | 2019-12-26 | Beijing Bytedance Network Technology Co., Ltd. | Unified constrains for the merge affine mode and the non-merge affine mode |
TWI719519B (zh) | 2018-07-02 | 2021-02-21 | 大陸商北京字節跳動網絡技術有限公司 | 對於dmvr的塊尺寸限制 |
US10904555B2 (en) * | 2018-07-11 | 2021-01-26 | Tencent America LLC | Method and apparatus for video coding |
CN110809165B (zh) | 2018-08-04 | 2022-07-26 | 北京字节跳动网络技术有限公司 | 仿射的运动矢量差精度 |
CN112930684B (zh) * | 2018-08-17 | 2023-10-13 | 寰发股份有限公司 | 在视频编解码系统中利用双向预测处理视频的方法、设备 |
BR112021001890A2 (pt) * | 2018-09-14 | 2021-04-27 | Panasonic Intellectual Property Corporation Of America | codificador, decodificador, método de codificação e método de decodificação |
EP4325859A3 (en) | 2018-09-19 | 2024-05-15 | Beijing Bytedance Network Technology Co., Ltd. | Syntax reuse for affine mode with adaptive motion vector resolution |
CN118055249A (zh) | 2018-09-22 | 2024-05-17 | Lg 电子株式会社 | 使用间预测处理视频信号的方法和装置 |
CN110944196B (zh) | 2018-09-24 | 2023-05-30 | 北京字节跳动网络技术有限公司 | 简化的基于历史的运动矢量预测 |
CN111010569B (zh) | 2018-10-06 | 2023-02-28 | 北京字节跳动网络技术有限公司 | Bio中的时间梯度计算的改善 |
CN111083491B (zh) | 2018-10-22 | 2024-09-20 | 北京字节跳动网络技术有限公司 | 细化运动矢量的利用 |
WO2020084476A1 (en) | 2018-10-22 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Sub-block based prediction |
US20220038681A1 (en) * | 2018-11-05 | 2022-02-03 | Interdigital Vc Holdings, Inc. | Video encoding or decoding using block extension for overlapped block motion compensation |
WO2020093999A1 (en) | 2018-11-05 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Inter prediction with refinement in video processing |
CN113056917B (zh) | 2018-11-06 | 2024-02-06 | 北京字节跳动网络技术有限公司 | 为视频处理使用具有几何分割的帧间预测 |
WO2020094150A1 (en) | 2018-11-10 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Rounding in current picture referencing |
WO2020098644A1 (en) | 2018-11-12 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Bandwidth control methods for inter prediction |
CN117319644A (zh) | 2018-11-20 | 2023-12-29 | 北京字节跳动网络技术有限公司 | 基于部分位置的差计算 |
CN113170171B (zh) * | 2018-11-20 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 组合帧间帧内预测模式的预测细化 |
KR20210093918A (ko) * | 2018-11-30 | 2021-07-28 | 인터디지털 브이씨 홀딩스 인코포레이티드 | 비디오 코딩 및 디코딩을 위한 삼각형 및 다중-가설 조합 |
US11838540B2 (en) * | 2018-12-21 | 2023-12-05 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and device, and recording medium in which bitstream is stored |
CN113170166B (zh) | 2018-12-30 | 2023-06-09 | 北京字节跳动网络技术有限公司 | 具有几何分割的帧间预测在视频处理中有条件的应用 |
US11457238B2 (en) | 2018-12-31 | 2022-09-27 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and device, and recording medium in which bitstream is stored |
JP7257524B2 (ja) * | 2019-01-02 | 2023-04-13 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | ビデオエンコーディング/デコーディングシステムにおけるサイド動き精細化 |
KR20210121021A (ko) | 2019-01-31 | 2021-10-07 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 어파인 모드 적응적 움직임 벡터 해상도 코딩 문맥 |
WO2020156517A1 (en) | 2019-01-31 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Fast algorithms for symmetric motion vector difference coding mode |
WO2020156538A1 (en) | 2019-02-03 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between mv precisions and mv difference coding |
MX2021009529A (es) * | 2019-02-08 | 2021-09-23 | Beijing Dajia Internet Information Tech Co Ltd | Metodos y dispositivos para aplicar de forma selectiva el flujo optico bidireccional y el refinamiento del vector de movimiento en el decodificador para la codificacion de video. |
WO2020166556A1 (en) * | 2019-02-12 | 2020-08-20 | Sharp Kabushiki Kaisha | Systems and methods for performing inter prediction in video coding |
WO2020164580A1 (en) * | 2019-02-14 | 2020-08-20 | Beijing Bytedance Network Technology Co., Ltd. | Size selective application of decoder side refining tools |
WO2020177682A1 (en) | 2019-03-03 | 2020-09-10 | Beijing Bytedance Network Technology Co., Ltd. | Motion vector management for decoder side motion vector refinement |
WO2020177755A1 (en) | 2019-03-06 | 2020-09-10 | Beijing Bytedance Network Technology Co., Ltd. | Usage of converted uni-prediction candidate |
JP7261896B2 (ja) * | 2019-03-11 | 2023-04-20 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | 動き改良および重み付け予測 |
TWI738248B (zh) | 2019-03-14 | 2021-09-01 | 聯發科技股份有限公司 | 運動細化以及子分區基礎填充的視訊處理的方法以及裝置 |
CN113632484A (zh) * | 2019-03-15 | 2021-11-09 | 北京达佳互联信息技术有限公司 | 用于双向光流的比特宽度控制的方法和设备 |
KR102659481B1 (ko) * | 2019-03-17 | 2024-04-23 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 광학 흐름에 기초한 예측 정제의 계산 |
WO2020191034A1 (en) | 2019-03-18 | 2020-09-24 | Tencent America LLC | Method and apparatus for video coding |
CN113615197B (zh) * | 2019-03-26 | 2023-03-07 | 北京达佳互联信息技术有限公司 | 用于双向光流的比特深度控制的方法和设备 |
KR102609947B1 (ko) * | 2019-04-02 | 2023-12-04 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 양방향 광학 흐름 기반 비디오 코딩 및 디코딩 |
KR102610709B1 (ko) | 2019-04-02 | 2023-12-05 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 디코더 측 움직임 벡터 유도 |
WO2020207475A1 (en) * | 2019-04-12 | 2020-10-15 | Mediatek Inc. | Method and apparatus of simplified affine subblock process for video coding system |
EP3957073A1 (en) * | 2019-04-18 | 2022-02-23 | InterDigital VC Holdings, Inc. | Method and apparatus for video encoding and decoding with optical flow based on boundary smoothed motion compensation |
WO2020211864A1 (en) * | 2019-04-19 | 2020-10-22 | Beijing Bytedance Network Technology Co., Ltd. | Region based gradient calculation in different motion vector refinements |
CN113711608B (zh) | 2019-04-19 | 2023-09-01 | 北京字节跳动网络技术有限公司 | 利用光流的预测细化过程的适用性 |
CN113711609B (zh) * | 2019-04-19 | 2023-12-01 | 北京字节跳动网络技术有限公司 | 利用光流的预测细化过程中的增量运动矢量 |
CN116389765B (zh) * | 2019-04-25 | 2024-01-30 | 北京达佳互联信息技术有限公司 | 对视频数据编码的利用光流的预测细化方法、设备和介质 |
WO2020223552A1 (en) * | 2019-04-30 | 2020-11-05 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and apparatus of prediction refinement with optical flow |
KR20200127909A (ko) * | 2019-05-02 | 2020-11-11 | 주식회사 엑스리스 | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 |
WO2020228836A1 (en) | 2019-05-16 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Sub-region based determination of motion information refinement |
JP7323641B2 (ja) | 2019-05-21 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | アフィンモードのための適応動きベクトル差分分解 |
PT3973699T (pt) * | 2019-06-04 | 2024-01-18 | Huawei Tech Co Ltd | Codificador, descodificador e métodos correspondentes |
CN113411605B (zh) * | 2019-06-21 | 2022-05-31 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
WO2020253853A1 (en) * | 2019-06-21 | 2020-12-24 | Huawei Technologies Co., Ltd. | Early termination for optical flow refinment |
WO2020259507A1 (en) * | 2019-06-24 | 2020-12-30 | Huawei Technologies Co., Ltd. | Method for computing position of integer grid reference sample for block level boundary sample gradient computation in bi-predictive optical flow computation and bi-predictive correction |
CN112135141A (zh) * | 2019-06-24 | 2020-12-25 | 华为技术有限公司 | 视频编码器、视频解码器及相应方法 |
US11272203B2 (en) * | 2019-07-23 | 2022-03-08 | Tencent America LLC | Method and apparatus for video coding |
KR20220042125A (ko) | 2019-08-10 | 2022-04-04 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 서브픽처 디코딩에서의 버퍼 관리 |
KR20220036978A (ko) | 2019-08-31 | 2022-03-23 | 엘지전자 주식회사 | Prof를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
KR20220066045A (ko) | 2019-09-19 | 2022-05-23 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩의 스케일링 윈도우 |
KR20220061240A (ko) * | 2019-09-20 | 2022-05-12 | 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) | 시프트 동작들에 대한 양방향 광학 흐름 단순화를 이용한 비디오 인코딩 및/또는 디코딩 방법들 및 관련 장치 |
CN113596460A (zh) * | 2019-09-23 | 2021-11-02 | 杭州海康威视数字技术股份有限公司 | 编解码方法方法、装置及设备 |
WO2021060834A1 (ko) * | 2019-09-24 | 2021-04-01 | 엘지전자 주식회사 | 서브픽처 기반 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
WO2020256601A2 (en) * | 2019-10-03 | 2020-12-24 | Huawei Technologies Co., Ltd. | Method and apparatus of picture-level signaling for bidirectional optical flow and decoder side motion vector refinement |
EP4026336A4 (en) | 2019-10-05 | 2022-12-07 | Beijing Bytedance Network Technology Co., Ltd. | LEVEL-BASED SIGNALING OF VIDEO CODING TOOLS |
KR20230070535A (ko) | 2019-10-09 | 2023-05-23 | 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 | 광 흐름에 의한 예측 개선, 양방향 광 흐름 및 디코더 측 움직임 벡터 개선을 위한 방법들 및 장치들 |
WO2021068956A1 (en) | 2019-10-12 | 2021-04-15 | Beijing Bytedance Network Technology Co., Ltd. | Prediction type signaling in video coding |
JP7414980B2 (ja) | 2019-10-13 | 2024-01-16 | 北京字節跳動網絡技術有限公司 | 参照ピクチャリサンプリングと映像コーディングツールとの間の相互作用 |
JP7482220B2 (ja) | 2019-10-18 | 2024-05-13 | 北京字節跳動網絡技術有限公司 | サブピクチャのパラメータセットシグナリングにおける構文制約 |
CN111131837B (zh) * | 2019-12-30 | 2022-10-04 | 浙江大华技术股份有限公司 | 运动补偿修正方法、编码方法、编码器及存储介质 |
BR112022012807A2 (pt) | 2019-12-27 | 2022-09-27 | Beijing Bytedance Network Tech Co Ltd | Método de processamento de vídeo, aparelho para processar dados de vídeo e meios não transitórios legíveis por computador |
US11638025B2 (en) * | 2021-03-19 | 2023-04-25 | Qualcomm Incorporated | Multi-scale optical flow for learned video compression |
US12034967B2 (en) | 2021-04-05 | 2024-07-09 | Nvidia Corporation | Superpixel generation and use |
US20230090025A1 (en) * | 2021-09-22 | 2023-03-23 | Alibaba Singapore Holding Private Limited | Methods and systems for performing combined inter and intra prediction |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105393536A (zh) * | 2013-06-21 | 2016-03-09 | 高通股份有限公司 | 使用位移向量从预测性块的帧内预测 |
WO2017036399A1 (en) * | 2015-09-02 | 2017-03-09 | Mediatek Inc. | Method and apparatus of motion compensation for video coding based on bi prediction optical flow techniques |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US363399A (en) * | 1887-05-24 | andeal kilmeb | ||
US10250904B2 (en) * | 2015-05-05 | 2019-04-02 | Avago Technologies International Sales Pte. Limited | Apparatus and method for overlapped motion compensation for video coding |
US12063387B2 (en) * | 2017-01-05 | 2024-08-13 | Hfi Innovation Inc. | Decoder-side motion vector restoration for video coding |
-
2018
- 2018-03-12 US US15/919,060 patent/US10523964B2/en active Active
- 2018-03-13 EP EP18715348.1A patent/EP3596921A1/en active Pending
- 2018-03-13 SG SG11201907089UA patent/SG11201907089UA/en unknown
- 2018-03-13 WO PCT/US2018/022226 patent/WO2018169989A1/en unknown
- 2018-03-13 BR BR112019018689A patent/BR112019018689A2/pt unknown
- 2018-03-13 AU AU2018236214A patent/AU2018236214B2/en active Active
- 2018-03-13 CN CN201880015198.7A patent/CN110352598B/zh active Active
- 2018-03-13 KR KR1020197029985A patent/KR102576307B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105393536A (zh) * | 2013-06-21 | 2016-03-09 | 高通股份有限公司 | 使用位移向量从预测性块的帧内预测 |
WO2017036399A1 (en) * | 2015-09-02 | 2017-03-09 | Mediatek Inc. | Method and apparatus of motion compensation for video coding based on bi prediction optical flow techniques |
Non-Patent Citations (1)
Title |
---|
Bi-directional optical flow for improving motion compensation;A. Alshin et al;《2010 Picture coding symposium》;20101201;全文 * |
Also Published As
Publication number | Publication date |
---|---|
KR102576307B1 (ko) | 2023-09-07 |
WO2018169989A1 (en) | 2018-09-20 |
BR112019018689A2 (pt) | 2020-04-07 |
AU2018236214A1 (en) | 2019-08-22 |
AU2018236214B2 (en) | 2022-09-15 |
US10523964B2 (en) | 2019-12-31 |
EP3596921A1 (en) | 2020-01-22 |
CN110352598A (zh) | 2019-10-18 |
US20180262773A1 (en) | 2018-09-13 |
SG11201907089UA (en) | 2019-09-27 |
KR20190126133A (ko) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110352598B (zh) | 对视频数据进行解码的方法、装置和设备,以及媒体 | |
CN110754087B (zh) | 用于双向光学流(bio)的高效存储器带宽设计 | |
CN111989922B (zh) | 用于对视频数据进行解码的方法、设备和装置 | |
CN110036638B (zh) | 解码视频数据的方法、装置、设备及存储媒体 | |
CN111602399B (zh) | 改进的解码器侧运动矢量推导 | |
CN110431842B (zh) | 解码器侧运动向量导出 | |
CN110431845B (zh) | 约束通过解码器侧运动向量推导导出的运动向量信息 | |
CN110915214B (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: 40009763 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |