CN118120234A - 用于视频处理的方法、装置和介质 - Google Patents

用于视频处理的方法、装置和介质 Download PDF

Info

Publication number
CN118120234A
CN118120234A CN202280054345.8A CN202280054345A CN118120234A CN 118120234 A CN118120234 A CN 118120234A CN 202280054345 A CN202280054345 A CN 202280054345A CN 118120234 A CN118120234 A CN 118120234A
Authority
CN
China
Prior art keywords
codec
prediction
time
video block
target video
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
Application number
CN202280054345.8A
Other languages
English (en)
Inventor
黄琰
许继征
张莉
宋利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
ByteDance Inc
Original Assignee
Douyin Vision Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Douyin Vision Co Ltd, ByteDance Inc filed Critical Douyin Vision Co Ltd
Publication of CN118120234A publication Critical patent/CN118120234A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开的实施例提供了一种用于视频处理的解决方案。提出了一种用于视频处理的方法。该方法包括:在视频的目标视频块与视频的码流之间的转换期间,确定针对目标视频块的编解码时间的预测,该编解码时间表示目标视频块的编解码过程被执行期间的持续时间;至少部分地基于编解码时间的预测,调整针对目标视频块的编解码过程;以及通过使用经调整的编解码过程,执行目标视频块与码流之间的转换。

Description

用于视频处理的方法、装置和介质
技术领域
本公开的实施例一般涉及视频编解码技术,更具体地,涉及编解码过程调整。
背景技术
如今,数字视频功能正被应用于人们生活的各个方面。多种类型的视频压缩技术已针对视频编码/解码被提出,如MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第十部分高级视频编解码(AVC)、ITU-TH.265高效视频编解码(HEVC)标准、通用视频编解码(VVC)标准。然而,传统视频编解码技术的编解码效率普遍很低,这是不可取的。
发明内容
本公开的实施例提供用于视频处理的解决方案。
在第一方面,提出了一种用于视频处理的方法。该方法包括:在视频的目标视频块与视频的码流之间的转换期间,确定针对目标视频块的编解码时间的预测,该编解码时间表示目标视频块的编解码过程被执行期间的持续时间;至少部分地基于编解码时间的预测,调整针对目标视频块的编解码过程;以及通过使用经调整的编解码过程,执行目标视频块与码流之间的转换。与传统解决方案相比,所提出的方法可以有利地提高编解码有效性和编解码效率。
在第二方面,提出了一种用于处理视频数据的装置。该用于处理视频数据的装置包括处理器和在其上具有指令的非暂态存储器,其中指令在由处理器执行时使处理器执行根据本公开的第一方面的方法。
在第三方面,提出了一种非暂态计算机可读存储介质。该非暂态计算机可读存储介质存储使处理器执行根据本公开第一方面的方法的指令。
在第四方面,提出了另一种非暂态计算机可读记录介质。该非暂态计算机可读记录介质存储视频的通过由视频处理装置执行的方法生成的码流,其中该方法包括:确定针对视频的目标视频块的编码时间的预测,该编码时间表示目标视频块的编码过程被执行期间的持续时间;至少部分地基于编码时间的预测,调整针对目标视频块的编码过程;以及通过使用经调整的编码过程生成码流。
在第五方面,提出了另一种用于视频处理的方法。该方法用于存储视频的码流,包括:确定针对视频的目标视频块的编码时间的预测,该编码时间表示目标视频块的编码过程被执行期间的持续时间;至少部分地基于编码时间的预测,调整针对目标视频块的编码过程;通过使用经调整的编码过程生成码流;以及将码流存储在非暂态计算机可读记录介质中。
提供本发明内容是为了以简化的形式介绍以下在详细描述中进一步描述的概念的选择。本发明内容不旨在识别所要求保护的主题的关键特征或基本特征,也不旨在用于限制所要求保护主题的范围。
附图说明
通过参考附图的以下详细描述,本公开的示例实施例的上述和其他目的、特征和优点将变得更加明显。在本公开的示例实施例中,相同的附图标记通常指代相同的组件。
图1示出了根据本公开的一些实施例的示例视频编解码系统的框图;
图2示出了根据本公开的一些实施例的示例视频编码器的框图;
图3示出了根据本公开的一些实施例的示例视频解码器的框图;
图4示出了根据本公开的一些实施例的基于哈达玛成本的CTU时间估计的示意图;
图5示出了根据本公开的一些实施例的基于平面成本的CTU时间估计的示意图;
图6示出了根据本公开的一些实施例的示例性可参考CTU;
图7示出了根据本公开的一些实施例的编解码时间估计的示例方法的组合的流程图;
图8示出了根据本公开的一些实施例的校正CTU的示例;
图9示出了根据本公开的一些实施例的CTU时间预测结果的示例图;
图10A-图10B示出了根据本公开的一些实施例的没有校正的CTU时间预测结果的示例图;
图11示出了根据本公开的一些实施例的具有校正的CTU时间预测结果的示例图;
图12示出了根据本公开的一些实施例的用于视频处理的方法的流程图;以及
图13示出了其中可以实现本公开的各种实施例的计算设备的框图。
在所有附图中,相同或相似的附图标记通常指代相同或相似的元素。
具体实施方式
现在将参考一些实施例来描述本公开的原理。应当理解的是,描述这些实施例仅出于说明并且帮助本领域技术人员理解和实施本公开的目的,而不暗示对本公开的范围的任何限制。除了下文所述的方式之外,本文所描述的公开内容还可以以各种方式实施。
在以下描述和权利要求中,除非另有定义,否则在本文中使用的所有科学术语和技术术语具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。
本公开中提及的“一个实施例”、“实施例”、“示例实施例”等指示所描述的实施例可以包括特定的特征、结构或特性,但是并非每个实施例都必须包括该特定的特征、结构或特性。此外,这些短语不一定指同一实施例。此外,当结合示例实施例描述特定的特征、结构或特性时,无论是否明确描述,认为影响与其他实施例相关的这种特征、结构或特性在本领域技术人员的知识范围内。
应当理解的是,尽管术语“第一”和“第二”等可以用于描述各种元素,但这些元素不应受限于这些术语。这些术语仅用于区分一个元素与另一个元素。例如,第一元素可以被称为第二元素,类似地,第二元素可以被称为第一元素,而不脱离示例实施例的范围。如本文中所使用的,术语“和/或”包括一个或多个所列术语的任何和所有组合。
本文中所使用的术语仅用于描述特定实施例的目的,并不旨在限制示例实施例。如本文中所用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另有明确指示。还应理解,术语“包括”、“包含”和/或“具有”在本文中使用时表示存在所述特征、元素和/或组件等,但不排除一个或多个其他特征、元素、组件和/或其组合的存在或添加。
示例环境
图1是图示可以利用本公开的技术的示例视频编解码系统100的框图。如所示出的,视频编解码系统100可以包括源设备110和目的设备120。源设备110也可以称为视频编码设备,并且目的设备120也可以称为视频解码设备。在操作中,源设备110可以被配置为生成经编码的视频数据,并且目的设备120可以被配置为对由源设备110生成的经编码的视频数据进行解码。源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备之类的源。视频捕获设备的示例包括但不限于从视频内容提供商接收视频数据的接口、用于生成视频数据的计算机图形系统和/或其组合。
视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成码流。码流可以包括形成视频数据的编码表示的位序列。码流可以包括编码图片和相关联的数据。编码图片是图片的编码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器和/或发送器。经编码的视频数据可以通过网络130A经由I/O接口116直接传输至目的设备120。经编码的视频数据也可以存储在存储介质/服务器130B上,以供目的设备120访问。
目的设备120可以包括I/O接口126、视频解码器124和显示设备122。I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130B获取经编码的视频数据。视频解码器124可以对经编码的视频数据进行解码。显示设备122可以向用户显示经解码的视频数据。显示设备122可以与目的设备120集成,或者可以在目的设备120的外部,该目的设备120被配置为与外部显示设备接口连接。
视频编码器114和视频解码器124可以根据视频压缩标准操作,诸如高效视频编解码(HEVC)标准、通用视频编解码(VVC)标准和其他现有和/或将来的标准。
图2是示出根据本公开的一些实施例的视频编码器200的示例的方框图,视频编码器200可以是图1所示的系统100中的视频编码器114的示例。
视频编码器200可以被配置为实现本公开的任何或所有技术。在图2的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在一些实施例中,视频编码器200可以包括划分单元201、预测单元202、残差生成单元207、变换单元208、量化单元209、反量化单元210、反变换单元211、重建单元212、缓冲213和熵编解码单元214,该预测单元202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206。
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括块内复制(IBC)单元。IBC单元可以在IBC模式中执行预测,其中至少一个参考图片是当前视频块所位于的图片。
此外,尽管一些组件(诸如运动估计单元204和运动补偿单元205)可以被集成,但是为了解释的目的,这些组件在图2的示例中被分离地示出。
划分单元201可以将图片划分成一个或多个视频块。视频编码器200和视频解码器300(其将在以下详细讨论)可以支持各种视频块大小。
模式选择单元203可以例如基于误差结果来选择多种编解码模式(帧内编码或帧间编码)中的一种编解码模式,并且将所产生的帧内编解码块或帧间编解码块提供给残差生成单元207以生成残差块数据,并且提供给重建单元212以重建编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择针对运动矢量的分辨率(例如,亚像素精度或整数像素精度)。
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲213的一个或多个参考帧与当前视频块进行比较来生成针对当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲213的除了与当前视频块相关联的图片之外的图片的经解码样本,来确定针对当前视频块的预测视频块。
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在I条带、P条带还是B条带中。如本文中使用的,“I条带”可以是指由宏块构成的图片的一部分,所有宏块均基于同一图片内的宏块。此外,如本文中使用的,在一些方面中,“P条带”和“B条带”可以是指由独立于同一图片中的宏块的宏块构成的图片的部分。
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以搜索列表0或列表1的参考图片,以寻找针对当前视频块的参考视频块。运动估计单元204然后可以生成参考索引和运动矢量,该参考索引指示列表0或列表1中的包含参考视频块的参考图片,并且该运动矢量指示当前视频块与参考视频块之间的空间位移。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。
备选地,在其他示例中,运动估计单元204可以对当前视频块执行双向预测。运动估计单元204可以搜索列表0中的参考图片以寻找针对当前视频块的参考视频块,并且还可以搜索列表1中的参考图片以寻找针对当前视频块的另一参考视频块。运动估计单元204然后可以生成多个参考索引和多个运动矢量,该多个参考索引指示列表0和列表1中的包含多个参考视频块的多个参考图片,并且该多个运动矢量指示在多个参考视频块与当前视频块之间的多个空间位移。运动估计单元204可以输出当前视频块的多个参考索引和多个运动矢量以作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的多个参考视频块来生成针对当前视频块的预测视频块。
在一些示例中,运动估计单元204可以输出完整的运动信息集,以用于解码器的解码处理。备选地,在一些实施例中,运动估计单元204可以参考另一视频块的运动信息来通过信号传输当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够相似。
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中向视频解码器300指示一值,该值指示当前视频块具有与另一视频块相同的运动信息。
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块和运动矢量差(MVD)。运动矢量差指示在当前视频块的运动矢量与所指示的视频块的运动矢量之间的差异。视频解码器300可以使用所指示的视频块的运动矢量以及运动矢量差来确定当前视频块的运动矢量。
如上所讨论的,视频编码器200可以以预测性的方式通过信号传输运动矢量。可以由视频编码器200实现的预测信令技术的两个示例包括高级运动矢量预测(AMVP)和合并模式信令。
帧内预测单元206可以对当前视频块执行帧内预测。当对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中其他视频块的经解码样本来生成针对当前视频块的预测数据。针对当前视频块的预测数据可以包括预测视频块和各个语法元素。
残差生成单元207可以通过从当前视频块中减去(例如,由减号指示)当前视频块的(多个)预测视频块来生成针对当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中样本的不同样本部分的残差视频块。
在其他示例中,例如在跳过模式中,针对当前视频块可以不存在针对当前视频块的残差数据,并且残差生成单元207可以不执行减去操作。
变换单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块,来生成针对当前视频块的一个或多个变换系数视频块。
在变换单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。
反量化单元210和反变换单元211可以分别对变换系数视频块应用反量化和反变换,以从变换系数视频块重建残差视频块。重建单元212可以将经重建的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样本,以产生与当前视频块相关联的重建视频块,以供存储在缓冲213中。
在重建单元212重建视频块之后,可以执行环路滤波操作以减少视频块中的视频块效应伪像。
熵编解码单元214可以从视频编码器200的其他功能组件接收数据。当数据被接收时,熵编解码单元214可以执行一个或多个熵编码操作,以生成熵编解码数据并且输出包括该熵编解码数据的码流。
图3是示出根据本公开的一些实施例的视频解码器300的示例的方框图,视频解码器300可以是图1所示的系统100中的视频解码器124的示例。
视频解码器300可以被配置为执行本公开的任何或所有技术。在图3的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在图3的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、反量化单元304、反变换单元305、以及重建单元306和缓冲307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200所描述的编码过程相对的解码过程。
熵解码单元301可以取回经编码的码流。经编码的码流可以包括经熵编码的视频数据(例如,经编码的视频数据块)。熵解码单元301可以对经熵编码的视频数据进行解码,并且运动补偿单元302可以从经熵解码的视频数据中确定运动信息,该运动信息包括运动矢量、运动矢量分辨率、参考图片列表索引和其他运动信息。运动补偿单元302可以例如通过执行AMVP和合并模式来确定该信息。AMVP被使用,包括基于邻近PB的数据和参考图片得出数个最可能的候选项。运动信息通常包括水平和竖直运动矢量位移值、一个或两个参考图片索引,并且在B条带中的预测区域的情况下,还包括哪个参考图片列表与每个索引相关联的标识。如本文所使用的,在一些方面中,“合并模式”可以是指从空间或时间上邻近的块中导出运动信息。
运动补偿单元302可以产生运动补偿块,可能地基于插值滤波器来执行内插。针对以亚像素精度被使用的插值滤波器的标识符可以被包括在语法元素中。
运动补偿单元302可以使用由视频编码器200在视频块的编码期间使用的插值滤波器来计算用于参考块的亚整数像素的内插值。运动补偿单元302可以根据接收到的语法信息来确定由视频编码器200使用的插值滤波器,并且运动补偿单元302可以使用插值滤波器来产生预测块。
运动补偿单元302可以使用至少部分语法信息来确定用于编码经编码视频序列的(多个)帧和/或(多个)条带的块的大小、描述经编码视频序列的图片的每个宏块如何被划分的划分信息、指示每个划分如何被编码的模式、针对每个帧间编解码块的一个或多个参考帧(和参考帧列表)、以及对经编码视频序列进行解码的其他信息。如本文中所使用的,在一些方面,“条带”可以是指在熵编码、信号预测和残差信号重建方面可以独立于同一图片的其他条带而被解码的数据结构。条带可以是整个图片,或者也可以是图片的区域。
帧内预测单元303可以使用例如在码流中接收的帧内预测模式,以从空间邻近块形成预测块。反量化单元304反量化(即,去量化)在码流中提供的、并且由熵解码单元301解码的量化视频块系数。反变换单元305应用反变换。
重建单元306可以例如通过将残差块与由运动补偿单元302或帧内预测单元303生成的相应预测块相加来获得经解码的块。如果需要的话,还可以应用去块效应滤波器以对经解码的块进行过滤,以便去除块效应伪像。经解码的视频块随后被存储在缓冲307中,缓冲307为后续运动补偿/帧内预测提供参考块,并且缓冲307还产生经解码的视频以供在显示设备上呈现。
下文将详细描述本公开的一些示例实施例。应当注意,在本文件中使用章节标题是为了便于理解,而不是将章节中公开的实施例仅限于该章节。此外,尽管参考通用视频编解码或其他特定视频编解码器描述了一些实施例,但是所公开的技术也适用于其他视频编解码技术。此外,尽管一些实施例详细描述了视频编码步骤,但是应当理解的是取消编码的相应解码步骤将由解码器实现。此外,术语视频处理包括视频编解码或压缩、视频解码或解压缩以及视频转码,在该视频转码中视频像素被从一种压缩格式表示为另一种压缩格式或以不同的压缩码率表示。
1.概述
本公开与视频编解码技术有关。具体而言,是关于在视频编解码中编码时间估计先于编码过程。该思想可以单独地或以各种组合被应用于支持全帧内(AI)设置的任何视频编解码标准或非标准视频编解码器,例如,最近完成的通用视频编解码(VVC)。
2.缩写
AI 全帧内
RA 随机接入
AVC 高级视频编解码
HEVC 高效视频编解码
VVC 通用视频编解码
VCEG 视频编解码专家组
MPEG 动态图像专家组
SIMD 单指令多数据
CTU 编解码树单元
VTM VVC试验模型
QP 量化参数
SAD 绝对差之和
SSE 平方误差之和
SVM 支持矢量机
SVR 支持矢量回归
RMD 粗糙模式决定
RDO 率失真优化
3.背景
通过著名的ITU-T视频编解码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)的发展,视频编解码标准不断演进和迭代。由MPEG和VCEG于1994年、2003年、2013年和2020年联合开发的H.262/MPEG-2、H.264/MPEG-4高级视频编解码(AVC)、H.265/高效视频编解码(HEVC)和H.266/通用视频编解码(VVC)汇集了时代最具代表性的技术。例如,H.262中的混合视频编解码结构,以及AVC、HEVC和VVC发展过程中不断更新的包括块划分、帧内预测、帧间预测、变换、熵编解码和环路滤波器在内的编解码工具。每隔十年,集成了当时最先进技术的新一代视频编解码标准带来约50%的比特率节省。然而,更复杂的算法设计,例如更复杂的编码树单元(CTU),也导致编码时间翻了几倍。HEVC的编码计算复杂度比AVC HighProfile高5倍。尽管单指令多数据(SIMD)在VVC集成和启用,但在随机接入(RA)设置下,VVC编码时间仍然平均比HEVC高10.2倍。至于全帧内(AI)设置,复杂性甚至增加了31倍。编码复杂性正逐渐成为视频编解码标准广泛部署和使用的更明显障碍,特别是AI设置。为了解决这个问题,降低复杂度是常用的方法。
通常,复杂度降低方法依赖于人工设计。不同的预计算值被用作中间特征来确定要跳过的模式。其中中间特征可以是像素级信息,例如梯度和方差,或者编码信息,例如比特和成本。然而,基于这些中间特征设计加速方法并不简单。如果没有预分析和估计方法,仅通过构建模式跳过规则,节省时间的性能就无法保证,因为加速策略可能被应用于某些编码时间有限的CTU。另一方面,对于某些场景,即复杂度控制场景,不仅要实现加速,还要实现特定的编码帧率。通过使用传统的复杂度降低方法,实际加速度只有在编码后才知道,更不用说控制编码速度到目标帧率了。因此,在编码之前估计编码时间的模型是非常需要的。为了解决这个问题,提出了一些HEVC的复杂度估计模型。通过统计的构建查找表可以获得不同CU大小的合并、帧间和帧内的相对编码时间。构建了一个模型,通过较低深度CU估计较高深度CU的编码时间。
4.问题
现有的编码复杂度/编码时间估计的设计存在以下问题:
1.目前的编码复杂度估计方法仅对相对复杂度建模,因此无法直接用于编码时间估计。较低深度的CU应该在CTU编码时间估计之前被编码。
2.目前的设计具有固定的参数,该参数与编码器高度相关,无法方便地扩展到另一种实现或标准的编码器。
3.编码端可以获取的信息,例如像素级信息和编码决策,没有很好地挖掘以实现精确的编码时间估计。
4.不同的编译或运行环境可能导致实际编码时间的估计困难,对于相同的编解码器可能会有所不同。
5.描述
为了解决上述问题和一些其他未提及的问题,公开了如下所述的方法。实施例应被视为解释一般概念的示例,不应以狭隘的方式解释。此外,这些实施例可以单独应用或以任何方式组合。
1)为了解决第一个问题,公开了以下一种或多种方法:
a.利用基于视频处理单元(例如CTU)的编码时间估计方案,可以精确预测每个视频处理单元的编码时间。
i.在一个示例中,视频处理单元不小于CTU/CTB,例如,CTU行/覆盖多于一个样本的一个图片内的子区域。
ii.在一个示例中,视频处理单元小于CTU/CTB,例如,CTU/CTB内的VPDU/子区域。
iii.替代地或附加地,可以利用视频处理单元的编码时间或累计的帧/条带/图块编码时间来指导复杂度降低算法的设计。
在以下描述中,以CTU为例的视频处理单元可以被使用。
2)为了解决第二个问题和第三个问题,公开了以下方法中的一个或多个:
a.在一个示例中,基于哈达玛(Hadamard)成本的CTU时间估计模型被构建,该方法对编码过程具有最小的依赖性。
i.替代地或附加地,CTU可以被分为多个子块,并且每个子块的哈达玛成本可以被独立地计算。
ii.替代地或附加地,一个CTU时间估计的模型可以取决于一个CTU内所有或部分子块的哈达玛成本,其被表示为CTU成本。
1.在一个示例中,所有子块的所有成本的总和可以在模型中被使用。
b.在一个示例中,设计了一种基于帧内预测模式成本的CTU时间估计模型。该方法对编码过程有中等依赖性。
i.在一个示例中,帧内预测粗糙模式决定(RMD)应包括平面模式。
1.替代地或附加地,从全率失真优化(RDO)过程获得的平面成本可以被利用来构建模型。
2.替代地或附加地,帧内过程的平面模式应该首先被执行,然后可以使用该模型估计CTU时间。
ii.在一个示例中,可以在模型中利用多于一个帧内预测模式。
c.在上述示例中,模型可以是指数函数的形式。
i.在一个示例中,模型可以被定义为α*CTUcostβ,其中α和β是两个参数。
ii.在一个示例中,模型可以被定义为α*CTUcostβ+γ,其中α,β,γ是三个参数。
iii.在一个示例中,上述参数中的至少一个可以是预定义的。
1.在一个示例中,参数可以依赖于经编解码的信息,例如条带/图片类型、QP等。
2.替代地,参数可以动态地被更新。
d.设计了一种基于可参考CTU的CTU时间估计方法。该方法对编码过程的依赖性最高。
i.替代地或附加地,与当前CTU相关的最相似的CTU的编码时间被利用以预测当前CTU的编码时间。
e.这些CTU时间估计方法的组合可以被使用。
i.在一个示例中,组合可以是人工设计的。
ii.替代地,组合可以通过机器学习方法被执行。
3)为了解决第四个问题,公开了以下一种或多种方法:
a.反映计算能力的因素被设计用于编码时间估计校正。
i.在一个示例中,适配过程可以在编码过程的开始被集中地执行。
ii.替代地,适配过程可以随着编解码过程而逐渐被执行。
6.实施例
1)实施例1:该实施例描述了基于哈达玛成本的CTU时间估计模型如何被构建的示例。
CTU的哈达玛成本被定义为(1),其中对大小为8x8的每个子块进行8x8的哈达玛变换。然后每个块的成本被累计。
然后通过指数函数(2)利用每个CTU的哈达玛成本估计CTU的编码时间
TimeCTU=α×Had costCTU β (2)
其中α和β是与内容和QP相关的参数。在一个示例中,这两个参数可以被离线拟合。或者,这两个参数可以通过在线过程被拟合。当前序列中的第一个或多个要被编解码的CTU可以被使用来拟合这些参数。或者,这两个参数的初始值可以被离线拟合,但它们随着编码过程以确定的间隔更新。
图4示出了根据本公开的一些实施例的基于哈达玛成本的CTU时间估计的示意图。整体的基于哈达玛成本的CTU时间估计过程400如图4所示。在每个8x8块进行哈达玛变换和成本计算。唯一需要的信息是用于计算哈达玛成本的每个8x8块的像素值。因此,该方法可以被应用于编码开始之前的整个序列。
2)实施例2:该实施例描述了基于平面成本的CTU时间估计模型如何被构建的示例。
平面成本被定义为在帧内搜索中经过粗糙模式决定过程后获取的平面模式的成本。这里平面成本是在可用的最低深度处获取的。例如,对于视频编解码标准AVC和HEVC,可以在深度0处进行帧内模式搜索。因此,在CTU级别(深度0)也获取了平面成本。但对于VVC,在默认配置下跳过了深度0的帧内模式搜索。在这种情况下,在64x64块进行帧内模式搜索后将获得平面成本。相应地,编码时间预测也将在64块级别进行。64块将提供更多的灵活性。通过简单地将四个64子块的编码时间预测相加,可以获得VVC的CTU时间。
图5展示了提出的基于平面成本的CTU时间估计方法的过程500,其中2N表示CTU宽度。对于VVC,将首先执行粗糙模式决定,然后可以获得每个64块的平面成本。对于以前的编解码标准,如AVC和HEVC,将获得CTU级别的平面成本。对于这两种情况,利用指数函数来估计具有平面成本的CTU编码时间作为输入。为了方便起见,在函数(3)中,CTU用于表示CTU和64块。输出,即AVC/HEVC的估计CTU时间,将直接用作CTU时间估计。相比之下,VVC的64块编码时间将被收集为64块时间估计。或者,它可以进一步用于估计CTU级编码时间。
TimeCTU=α×PlanarcostCTU β (3)
这里,α和β是与内容和QP相关的参数。在一个例子中,这两个参数可以被离线拟合。或者,这两个参数可以通过在线过程进行拟合。当前序列中第一个或多个要被编解码的CTU可以被使用来拟合这些参数。或者,这两个参数的初始值可以被离线拟合,但它们随着编码过程以确定的间隔更新。
对重构像素的依赖使得平面成本直到每个CTU的帧内搜索执行时才可用。尽管该依赖禁止在实际编码过程之前对整个序列的时间估计,但更好的预测精度使其适用于其他应用。例如,当编码过程正在进行时,更精确的CTU时间估计可以帮助对CTU级别的复杂度降低或复杂度控制进行在线指导。
3)实施例3:该实施例描述了基于可参考CTU的CTU时间估计方法如何被构建的示例。
图6示出了根据本公开的一些实施例的示例可参考CTU。可参考CTU的定义是当前CTU的左上角、顶部、右上角、左侧的CTU,以及前一帧中的同位CTU,如图6的图600所示。左上角、顶部、右上角、左侧CTU是空间上邻近的CTU,而同位CTU是时间上邻近的CTU。
帧中内容内的连续性和序列中帧中的连续性的存在产生了当前CTU和邻近CTU之间的相关性。相关性涉及视频内容和编码时间。因此,已经被编码的邻近CTU的编码时间被收集作为参考CTU时间列表。然后与当前CTU最相似的CTU如(4)被选择,其编码时间被用于如(5)估计当前CTU的编码时间。
这里,相似性被定义为绝对差之和(SAD)。或者,它也可以是其他度量,例如,平方误差之和(SSE)。
对先前经编解码的邻近CTU的依赖性使得该方法不适用于没有邻近CTU的CTU。另一方面,当邻近CTU和当前CTU之间的相关性较弱时,可能无法精确预测编码时间。尽管如此,对于大多数CTU,可以参考特定的编码时间而不是估计的时间。这将导致对当前CTU的CTU编码时间的更精确的预测。尽管依赖性和可能的误差禁止了整个序列的时间估计,但没有计算开销的大多数CTU的更好的预测精度使其适合使用。
4)实施例4:该实施例描述了所提出的CTU时间估计方法如何被组合的示例。
尽管可以通过独立采用实施例1、2和3中描述的方法来实现相对精确的编码时间估计,但这三种方法都有自己的范围。基于哈达玛成本的方法具有最少的依赖性,因此它可以在预分析期间进行。平面成本,如声明的那样,对先前搜索的帧内模式有依赖性。更多的信息提供更好的估计精度。基于可参考CTU的方法对先前经编解码的CTU有依赖性。它可以参考特定的编码时间,因此在大多数情况下可以获得最佳的时间估计。可参考CTU编码时间反映了邻近CTU的复杂性,而哈达玛成本和平面成本反映了CTU本身的复杂性特征。
然而,在某些情况下,可参考CTU与当前的CTU不够相似,这将导致实施例3的预测不准确。在这种情况下,实施例2可以被视为一种良好的退化方法。在某些情况下,对全序列进行预分析,其中平面成本无法提前获取。那么实施例1是一种退化方法。图7示出了根据本公开的一些实施例的编码时间估计的示例方法的组合的流程图。该实施例设计了一种方案来结合这些方法的优点,方案过程700如图7所示。
首先,应判断是否在分析期间进行时间估计。如果为真,则采用实施例1所述的方法。否则,判断是否存在可参考CTU。如果为假,则采用实施例2。如果存在可参考CTU,则设计阈值来判断minSAD,以确定最相似的邻近CTU是否足够相似以被视为参考。假设最相似的CTU具有小于阈值的SAD,则采用实施例3,其中参考CTU的编码时间用于估计当前CTU。如果最相似的可用CTU仍然具有大于阈值的SAD,则该方案将退化到实施例2。这里,阈值被定义为最大SAD的固定比率10%。
或者,基于机器学习的方案被设计为结合从这三个实施例中获得的特征。哈达玛成本,平面成本,minSAD值和相应的参考CTU编码时间将被绘制为支持矢量机(SVM)的输入特征。这里,哈达玛成本和平面成本始终可用,因此可以直接利用它们的值。对于参考CTU不存在的异常CTU,minSAD和参考CTU时间将被分配为-1。一个或多个特征可以被利用,这对应于不同的支持矢量回归(SVR)。StandardScaler被用于输入特征归一化。SVR使用默认的sklearn参数进行训练,C=20,epsilon=0.01,gamma=0.1。或者,可以使用其他SVR参数。
5)实施例5:该实施例描述了如何使估计的CTU时间适应不同的编译和运行环境的示例。
通过实施例1,2,3,4中描述的方法,将导出估计的CTU时间。编码时间是精确的,但是在运行在相同环境的前提下。为了使预测的时间广泛适用,校正因子被设计使用。在编码过程中拟合校正因子,其中实际编码时间和预测编码时间都被收集。然后利用这两个收集的时间导出校正因子如(6)。还设计了描述如(7)的平均时间误差来监控模型的精度状态。
用于校正过程的CTU应被保留为原始编码过程。但通常,CTU时间估计被用于为CTU设计一些加速策略。较少数目的校正CTU意味着更多的加速潜力,而较高密度的校正CTU意味着更精确的CTU编码时间估计。因此,有必要在加速和模型之间进行权衡。图8示出了校正CTU的示例。这里提供了一种方法,决定将校正CTU放置在哪里,如图8中的图800所示。
首先,未加速的CTU的预测时间和实际时间将会被自动收集,以对因子进行校正。同时,累计的预测误差将被用于评估模型的准确性。
为了应对未加速CTU的稀缺性,可以强制选择固定数量的CTU作为每个固定区间的校正CTU。这里,区间可以是多个CTU,也可以是一帧,也可以是多帧。例如,将每个片段的第一帧视为校正帧。这里片段可以是设定数量的帧。又例如,将帧中的前k个CTU视为校正CTU,其中k可以人为指定。又例如,针对每固定数量的CTU选择一个CTU作为校正CTU。
此外,当累计的预测时间和累计的实际时间之间的误差超过阈值时,可以插入固定数量的校正CTU。
以图8为例,假设图中包含4行8列的CTU。标有0的CTU是默认的未加速CTU,它们可以直接用于校正。然后额外的校正CTU每两行被人为地追加,这些CTU标有1。为了进一步抑制误差,标有2的CTU被用于校正。图8给出了一个例子,当误差没有被抑制到阈值以下时,这种情况下会强制添加另一个校正CTU。
6)实施例6:该实施例说明了一些CTU时间预测结果,以证明所提出的CTU时间估计方法的功效。
本实施例评估了所提出的CTU编码时间估计方法的功效。这些编码时间估计方法在VVC的参考软件VTM10.0中实现。四个QP值22、27、32、37被选择用于压缩来自C、D、E类的所有序列。每个64x64块的预测亮度压缩时间和实际亮度压缩时间被收集以进行比较。这里基于哈达玛成本的方法和基于平面成本的方法可以被视为基于成本的方法。针对比较具有更好性能的基于平面成本的方法可以被选择。另一方面,基于可参考CTU的方法是基于参考的方法。表1示出了不同方法的平均CTU时间预测误差。这里,“组合”方法表示根据SAD值的人工组合的方法,而“组合-SVM”方法表示基于SVM组合的方法,这两种方法都在实施例4中描述。根据表1,可以实现低至14ms的平均CTU时间预测误差,小于原始编码时间的10%。另一方面,可参考CTU方法比平面成本方法具有更好的预测精度。但由于依赖于CTU之间的相关性,有时这种方法会偶尔失效。这就是组合方法优于可参考CTU方法的原因。另一方面,组合-SVM方法不如手工制作的组合方法。然而,它直接以平面成本为输入,因此不必为每个序列拟合指数函数相关的参数。统一的SVM参数使其具有适当的广泛性,从而更广泛地应用于不同的序列。
表1所提出的方法的比较
图9示出了根据本公开的一些实施例的CTU时间预测结果的示例图。为了进一步证明所提出的方法的准确性,采用了具有最低精度的基于平面成本的方法。此外,在QP 37下Johnny第一帧中CTU的预测编码时间和实际编码时间显示在图9的图900中。根据图9,实际编码时间可以通过预测的时间很好地跟踪。如果采用具有更好预测精度的其他提出的方法,实际编码时间将更好地跟踪。
为了验证如实施例5所述的所提出的校正方法的功效。在一个运行环境(Release,十个并发进程,标记为A)中拟合的参数直接用于另一个运行环境(Debug,一个并发进程,标记为B),以查看预测是否仍然精确。再次,选择在QP37下Johnny的第一帧进行更好的比较。
图10A示出了根据本公开的一些实施例的无校正的从A到A的CTU时间预测结果的示例图1000。图10B示出了根据本公开的一些实施例的无校正的从A到B的CTU时间预测结果的示例图1050。图11示出了根据本公开的一些实施例的具有校正的CTU时间预测结果的示例图。根据图10A-图10B,如果直接利用参数,将出现显著的预测误差,并且通过所提出的校正方法,预测再次变得准确,如图11的图1100所示。这证明了所提出的校正方法的功效。
7.进一步实施例
本公开的实施例与编码时间估计和编码时间调整有关。如本文所用,术语“块”可以表示编解码块(CB)、编解码单元(CU)、预测单元(PU)、变换单元(TU)、预测块(PB)、变换块TB。
图12示出了根据本公开的一些实施例的用于视频处理的方法1200的流程图。该方法1200可以在视频的目标视频块和视频的码流之间的转换期间被实现。如图12所示,方法1200开始于1202,其中用于目标视频块的编解码时间的预测被确定。编解码时间表示目标视频块的编解码过程被执行期间的持续时间。如下所述,术语“目标视频块”也可以称为“视频处理单元”。
在一些实施例中,转换可以包括将目标视频块编码到码流中。在这种情况下,编解码时间可以包括编码时间,并且编解码过程可以包括编码过程。
替代地或附加地,转换可以包括从码流解码目标视频块。在这种情况下,编解码时间可以包括解码时间,并且编解码过程可以包括解码过程。
在块1204,至少部分地基于编解码时间的预测,调整针对目标视频块的编解码过程。如下所使用的,编解码过程的调整也可以被称为“复杂度降低过程”或“复杂度降低算法”。在块1206,执行目标视频块与码流之间的转换。例如,可以通过使用经调整的编解码过程来执行转换。
根据本公开的实施例,提出针对目标视频块的编解码时间可以被精确预测。例如,针对较低深度的CU的编解码时间可以被预测。这样,可以根据预测的编解码时间调整针对目标视频块的编解码过程。这样调整后的编解码过程可以用于提高预测的有效性,从而提高编解码功效。
在一些实施例中,目标视频块的大小等于编解码树单元(CTU)或编解码树块(CTB),或者目标视频块的大小大于CTU或CTB。换句话说,视频处理单元或目标视频块不小于CTU/CTB。例如,目标视频块可以包括CTU、CTU行或覆盖多于一个样本的视频的一个图片内的子区域。
替换地或附加地,在一些实施例中,目标视频块的大小小于编解码树单元(CTU)或编解码树块(CTB)。也就是说,视频处理单元小于CTU/CTB。例如,目标视频块可以包括虚拟流水线数据单元(VPDU)、CTU内的子区域或CTB内的子区域。
在一些实施例中,在块1204,可以基于视频的编解码时间的预测和历史编解码时间信息,调整编解码过程。例如,视频的历史编解码时间信息可以包括累计的帧编解码时间、累计的条带编解码时间或累计的图块编解码时间。换句话说,视频处理单元(目标视频块)的编解码时间和/或累计的帧/条带/图块编解码时间可以被利用来指导复杂度降低算法的设计。
在一些实施例中,在块1202,可以基于用于确定目标视频块的成本的模型,计算编解码时间的预测。例如,该模型可以包括基于哈达玛成本的模型或基于帧内预测模式成本的模型。或者,在一些实施例中,在块1202,可以基于参考视频块的另一编解码时间,确定编解码时间的预测。
在基于哈达玛成本的模型被用于计算编解码时间的预测的示例实施例中,该确定将对编解码过程具有最小的依赖性。例如,目标视频块可以被分割为多个子块。针对多个子块的相应成本可以根据基于哈达玛成本的模型被确定。针对目标视频块的编解码时间的预测可以基于多个子块的成本被确定。
在一些实施例中,编解码时间的预测可以基于目标视频块内的所有多个子块的成本或部分多个子块的成本。例如,编解码时间的预测可以基于多个子块的成本之和被确定。也就是说,所有子块的所有成本之和可以在基于哈达玛成本的模型中被利用。基于哈达玛成本的模型可以使用(1)和/或(2)中所示的计算或其他合适的计算。图4还示出了使用基于哈达玛成本的模型确定预测的过程。
在基于帧内预测模式成本的模型被用于确定编解码时间的预测的那些示例实施例中,该确定将对编解码过程具有中等的依赖性。例如,帧内预测模式可以包括帧内预测粗糙模式决定(RMD)。帧内预测RMD可以包括平面模式。例如,基于帧内预测模式成本的模型可以使用(3)中所示的计算或其他合适的计算。图5还示出了使用基于帧内预测模式成本的模型确定预测的过程。
在一些实施例中,编解码时间的预测可以基于从全率失真优化(RDO)过程获得的平面成本被确定。换句话说,从全RDO过程获得的平面成本可以被利用来构建模型。
替代地或附加地,在一些实施例中,编解码时间的预测可以通过在帧内过程的平面模式之后使用模型被计算。换句话说,帧内过程的平面模式可以首先被执行,并且他们CTU时间可以通过使用模型来估计。
在一些实施例中,编解码时间的预测可以通过使用多于一个帧内预测模式被确定。也就是说,多于一个帧内预测模式可以在模型中被使用。
在一些实施例中,模型是指数度量的形式。例如,指数度量包括多个参数。在一些实施例中,多个参数中的至少一个参数是预定义的。替代地或附加地,在一些实施例中,多个参数中的至少一个参数取决于经编解码的信息。例如,经编解码的信息可以包括:条带类型、图片类型或量化参数(QP)。
替代地或附加地,在一些情况下,在视频和码流之间的转换期间,多个参数中的至少一个参数被更新。也就是说,多个参数中的至少一个参数可以被即时地更新。
在一些实施例中,指数度量或指数函数可以是α*CTUcostβ,其中α表示加权参数,CTUcost表示目标视频块的成本,并且β表示指数参数。或者,在一些实施例中,指数度量可以是α*CTUcostβ+γ,其中α表示加权参数,CTUcost表示目标视频块的成本,β表示指数参数,并且γ表示偏移参数。
在一些实施例中,在块1202,编解码时间的预测可以基于参考视频块的另一编解码时间被确定。这种方法可以被称为基于可参考CTU的CTU时间估计方法,该方法对编解码过程具有最高的依赖性。图6示出了可参考CTU的示例。
在一些实施例中,参考视频块可以基于多个邻近视频块与目标视频块之间的相似性从多个邻近视频块被确定。编解码时间的预测可以基于参考视频块的另一编解码时间被确定。参考视频块与目标视频块之间的相似性可以高于阈值。换句话说,与目标视频块(例如当前CTU)相关的最相似的CTU的编解码时间可以被利用来预测目标视频块的编解码时间。
替代地或附加地,在一些实施例中,在块1202,编解码时间的预测可以通过以下的组合被确定:基于哈达玛成本的模型、基于帧内预测模式成本的模型以及参考视频块的另一编解码时间。例如,该组合可以是人工设计的。或者,该组合可以基于机器学习过程被确定。图7示出了根据本公开的几种编解码时间预测方法的示例组合。应当理解,图7所示的示例仅用于说明的目的,而不暗示任何限制。根据本公开提出的方法和任何其他合适的方法可以以任何合适的方式被组合。
通过确定针对目标视频块的编解码时间的预测,这种复杂度降低过程可以灵活地被进行。这种复杂度降低过程可以被方便地扩展到其他实现或标准的编码器。
在一些实施例中,编解码时间的预测可以被进一步调整。例如,调整因子可以基于计算能力被确定。编解码时间的预测可以基于调整因子被调整。换句话说,反映计算能力的因子被设计用于编解码时间估计校正。在一些实施例中,调整在视频的编解码过程的开始被执行。也就是说,适配过程可以在编解码过程的开始被集中地执行。或者,调整随着视频和码流之间的转换一起被预形成。换句话说,适配过程可以随着编解码过程而逐渐被执行。
通过基于计算能力调整编解码时间的预测,本编解码时间估计可以被应用于不同的编译或运行环境。
在一些实施例中,视频的码流可以被存储在非暂态计算机可读记录介质中。视频的码流可以通过由视频处理装置执行的方法被生成。根据该方法,针对目标视频块的编解码时间的预测被确定。c表示目标视频块的编码过程被执行期间的持续时间。针对目标视频块的编码过程至少部分地基于编码时间的预测被调整。目标视频块的码流可以通过使用经调整的编码过程被生成。
在一些实施例中,针对目标视频块的编码时间的预测可以被确定。编码时间表示目标视频块的编码过程被执行期间的持续时间。针对目标视频块的编码过程至少部分地基于编码时间的预测被调整。目标视频块的码流可以通过使用经调整的编码过程被生成。码流可以被存储在非暂态计算机可读记录介质中。
本公开的实现可以根据以下条款来描述,这些条款的特征可以以任何合理的方式组合。
条款1.一种用于视频处理的方法,包括:在视频的目标视频块与所述视频的码流之间的转换期间,确定针对所述目标视频块的编解码时间的预测,所述编解码时间表示所述目标视频块的编解码过程被执行期间的持续时间;至少部分地基于编解码时间的所述预测,调整针对所述目标视频块的所述编解码过程;以及通过使用经调整的所述编解码过程,执行所述目标视频块与所述码流之间的所述转换。
条款2.根据条款1所述的方法,其中所述目标视频块的大小等于编解码树单元(CTU)或编解码树块(CTB),或者所述目标视频块的所述大小大于CTU或CTB。
条款3.根据条款2所述的方法,其中所述目标视频块包括以下之一:CTU、CTU行或覆盖多于一个样本的所述视频的一个图片内的子区域。
条款4.根据条款1所述的方法,其中所述目标视频块的大小小于编解码树单元(CTU)或编解码树块(CTB)。
条款5.根据条款4所述的方法,其中所述目标视频块包括以下之一:虚拟流水线数据单元(VPDU)、CTU内的子区域或CTB内的子区域。
条款6.根据条款1-5中任一项所述的方法,其中调整所述编解码过程包括:基于所述视频的编解码时间的所述预测和历史编解码时间信息,调整所述编解码过程。
条款7.根据条款6所述的方法,其中所述视频的所述历史编解码时间信息包括以下之一:累计的帧编解码时间、累计的条带编解码时间或累计的图块编解码时间。
条款8.根据条款1-7中任一项所述的方法,其中确定编解码时间的所述预测包括以下至少一项:基于用于确定所述目标视频块的成本的模型,计算编解码时间的所述预测;或基于参考视频块的另一编解码时间,确定编解码时间的所述预测。
条款9.根据条款8所述的方法,其中所述模型包括基于哈达玛成本的模型。
条款10.根据条款9所述的方法,其中计算编解码时间的所述预测包括:将所述目标视频块分割为多个子块;基于所述模型计算针对所述多个子块中的每个子块的相应成本;以及基于所述多个子块的成本,确定编解码时间的所述预测。
条款11.根据条款10所述的方法,其中基于所述多个子块的成本确定编解码时间的所述预测包括:基于所述目标视频块内的所有所述多个子块的成本或部分的所述多个子块的成本,确定编解码时间的所述预测。
条款12.根据条款10或条款11所述的方法,其中基于所述多个子块的成本确定编解码时间的所述预测包括:基于所述多个子块的所述成本的总和,确定编解码时间的所述预测。
条款13.根据条款8所述的方法,其中所述模型包括基于帧内预测模式成本的模型。
条款14.根据条款13所述的方法,其中所述帧内预测模式包括帧内预测粗糙模式决定(RMD)。
条款15.根据条款14所述的方法,其中所述帧内预测RMD包括平面模式。
条款16.根据条款13-15中任一项所述的方法,其中基于所述模型计算编解码时间的所述预测包括:基于从全率失真优化(RDO)过程获得的平面成本,确定编解码时间的所述预测。
条款17.根据条款13-15中任一项所述的方法,其中计算编解码时间的所述预测包括:在帧内过程的平面模式后,通过使用所述模型,计算编解码时间的所述预测。
条款18.根据条款13-17中任一项所述的方法,其中基于所述模型计算编解码时间的所述预测包括:通过使用多于一个帧内预测模式,计算编解码时间的所述预测。
条款19.根据条款8-18中任一项所述的方法,其中所述模型是指数度量的形式。
条款20.根据条款19所述的方法,其中所述指数度量包括多个参数。
条款21.根据条款20所述的方法,其中所述多个参数中的至少一个参数是预定义的。
条款22.根据条款20所述的方法,其中所述多个参数中的至少一个参数取决于经编解码的信息。
条款23.根据条款22所述的方法,其中所述经编解码的信息包括以下至少一项:条带类型、图片类型或量化参数(QP)。
条款24.根据条款20所述的方法,其中在所述视频与所述码流之间的进一步转换期间所述多个参数中的至少一个参数被更新。
条款25.根据条款19-24中任一项所述的方法,其中所述指数度量包括以下之一:α*CTUcostβ,其中α表示加权参数,CTUcost表示所述目标视频块的成本,并且β表示指数参数,或α*CTUcostβ+γ,其中α表示加权参数,CTUcost表示所述目标视频块的成本,β表示指数参数,并且γ表示偏移参数。
条款26.根据条款8所述的方法,其中基于所述参考视频块的所述另一编解码时间确定编解码时间的所述预测包括:基于多个邻近视频块与所述目标视频块之间的相似性,从所述多个邻近视频块确定所述参考视频块;以及基于所述参考视频块的所述另一编解码时间,确定编解码时间的所述预测。
条款27.根据条款26所述的方法,其中所述参考视频块与所述目标视频块之间的相似性高于阈值。
条款28.根据条款1-8中任一项所述的方法,其中确定针对所述目标视频块的编解码时间的所述预测包括:通过使用以下组合来确定编解码时间的所述预测:基于哈达玛成本的模型,基于帧内预测模式成本的模型,以及参考视频块的另一编解码时间。
条款29.根据条款28所述的方法,其中与所述基于帧内预测模式成本的模型相比,所述基于哈达玛成本的模型对所述目标视频块的编解码过程具有更少的依赖性,并且其中与所述参考视频块的所述另一编解码时间相比,所述基于帧内预测模式成本的模型对所述编解码过程具有更少的依赖性。
条款30.根据条款28或条款29所述的方法,其中所述组合是人工设计的。
条款31.根据条款28-30中任一项所述的方法,其中所述组合基于机器学习过程被确定。
条款32.根据条款1-31中任一项所述的方法,其中确定编解码时间的所述预测包括:基于计算能力确定调整因子;以及基于所述调整因子调整针对所述目标视频块的编解码时间的所述预测。
条款33.根据条款32所述的方法,其中所述调整在针对所述视频的编解码过程的开始被执行。
条款34.根据条款32所述的方法,其中所述调整与所述视频与所述码流之间的进一步转换一起被预形成。
条款35.根据条款1-34中任一项所述的方法,其中所述转换包括将所述目标视频块编码到所述码流中。
条款36.根据条款35所述的方法,其中所述编解码时间包括编码时间,并且所述编解码过程包括编码过程。
条款37.根据条款1-34中任一项所述的方法,其中所述转换包括从所述码流解码所述目标视频块。
条款38.根据条款37所述的方法,其中所述编解码时间包括解码时间,并且所述编解码过程包括解码过程。
条款39.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据条款1-38中任一项所述的方法。
条款40.一种非暂态计算机可读存储介质,存储使处理器执行根据条款1-38中任一项所述的方法的指令。
条款41.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:确定针对所述视频的目标视频块的编码时间的预测,所述编码时间表示所述目标视频块的编码过程被执行期间的持续时间;至少部分地基于编码时间的所述预测,调整针对所述目标视频块的所述编码过程;以及通过使用经调整的所述编码过程生成所述码流。
条款42.一种存储视频的码流的方法,包括:确定针对所述视频的目标视频块的编码时间的预测,所述编码时间表示所述目标视频块的编码过程被执行期间的持续时间;至少部分地基于编码时间的所述预测,调整针对所述目标视频块的所述编码过程;通过使用经调整的所述编码过程生成所述码流;以及将所述码流存储在非暂态计算机可读记录介质中。
示例设备
图13示出了可以在其中实现本公开的各种实施例的计算设备1300的框图。计算设备1300可以被实现为源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300),或者可以被包括在源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300)中。
应当理解的是,图13中示出的计算设备1300仅为了说明的目的,而不是以任何方式暗示对本公开实施例的功能和范围的任何限制。
如图13所示,计算设备1300包括通用计算设备1300。计算设备1300可以至少包括一个或多个处理器或处理单元1310、存储器1320、存储单元1330、一个或多个通信单元1340、一个或多个输入设备1350以及一个或多个输出设备1360。
在一些实施例中,计算设备1300可以被实现为具有计算能力的任何用户终端或服务器终端。服务器终端可以是由服务提供商提供的服务器、大型计算设备等。用户终端例如可以是任何类型的移动终端、固定终端或便携式终端,包括移动电话、站、单元、设备、多媒体计算机、多媒体平板计算机、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或其任何组合,并且包括这些设备的附件和外围设备或其任何组合。可以设想的是,计算设备1300可以支持到用户的任何类型的接口(诸如“可穿戴”电路装置等)。
处理单元1310可以是物理处理器或虚拟处理器,并且可以基于存储在存储器1320中的程序实现各种处理。在多处理器系统中,多个处理单元并行地执行计算机可执行指令,以便改善计算设备1300的并行处理能力。处理单元1310也可以被称为中央处理单元(CPU)、微处理器、控制器或微控制器。
计算设备1300通常包括各种计算机存储介质。这样的介质可以是由计算设备1300可访问的任何介质,包括但不限于易失性介质和非易失性介质、或可拆卸介质和不可拆卸介质。存储器1320可以是易失性存储器(例如,寄存器、高速缓存、随机存取存储器(RAM))、非易失性存储器(诸如只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)或闪存)或其任何组合。存储单元1330可以是任何可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如存储器、闪存驱动器、磁盘或其他可以被用于存储信息和/或数据并且可以在计算设备1300中被访问的介质。
计算设备1300还可以包括附加的可拆卸/不可拆卸存储介质、易失性/非易失性存储介质。尽管在图13中未示出,但是可以提供用于从可拆卸的非易失性磁盘读取和/或写入可拆卸的非易失性磁盘的磁盘驱动器,以及用于从可拆卸的非易失性光盘读取和/或写入可拆卸的非易失性光盘的光盘驱动器。在这种情况下,每个驱动器可以经由一个或多个数据介质接口连接到总线(未示出)。
通信单元1340经由通信介质与另一计算设备通信。附加地,计算设备1300中的组件的功能可以由可以经由通信连接进行通信的单个计算集群或多个计算机器来实现。因此,计算设备1300可以使用与一个或多个其他服务器、联网个人计算机(PC)或其他通用网络节点的逻辑连接来在联网环境中运行。
输入设备1350可以是各种输入设备中的一种或多种输入设备,诸如鼠标、键盘、轨迹球、语音输入设备等。输出设备1360可以是各种输出设备中的一种或多种输出设备,诸如显示器、扬声器、打印机等。借助于通信单元1340,计算设备1300还可以与一个或多个外部设备(未示出)通信,外部设备诸如是存储设备和显示设备,计算设备1300还可以与一个或多个使用户能够与计算设备1300交互的设备通信,或任何使计算设备1300能够与一个或多个其他计算设备通信的设备(例如网卡、调制解调器等)通信,如果需要的话。这种通信可以经由输入/输出(I/O)接口(未示出)进行。
在一些实施例中,计算设备1300的一些或所有组件也可以被布置在云计算架构中,而不是被集成在单个设备中。在云计算架构中,组件可以被远程提供并且共同工作,以实现本公开中描述的功能。在一些实施例中,云计算提供计算、软件、数据访问和存储服务,这将不要求最终用户知晓提供这些服务的系统或硬件的物理位置或配置。在各种实施例中,云计算使用合适的协议经由广域网(例如互联网)提供服务。例如,云计算提供商通过广域网提供应用程序,可以通过网络浏览器或任何其他计算组件访问这些应用程序。云计算架构的软件或组件以及对应的数据可以存储在远程服务器上。云计算环境中的计算资源可以被合并或分布在远程数据中心的位置。云计算基础设施可以通过共享数据中心提供服务,尽管它们表现为作为用户的单一接入点。因此,云计算架构可与被用于从远程位置的服务提供商处提供本文所述的组件和功能。备选地,它们可以由常规服务器提供,或者直接或以其他方式安装在客户端设备上。
在本公开的实施例中,计算设备1300可以被用于实现视频编码/解码。存储器1320可以包括具有一个或多个程序指令的一个或多个视频编解码模块1325。这些模块能够由处理单元1310访问和执行,以执行本文描述的各种实施例的功能。
在执行视频编码的示例实施例中,输入设备1350可以接收视频数据作为待编码的输入1370。视频数据可以由例如视频编解码模块1325处理,以生成经编码的码流。经编码的码流可以经由输出设备1360作为输出1380被提供。
在执行视频解码的示例实施例中,输入设备1350可以接收经编码的码流作为输入1370。经编码的码流可以由例如视频编解码模块1325处理,以生成经解码的视频数据。经解码的视频数据可以经由输出设备1360作为输出1380被提供。
虽然已经参考本公开的优选实施例具体示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求限定的本申请的精神和范围的情况下,可以在形式和细节上进行各种改变。这些变化旨在由本申请的范围所涵盖。因此,本申请的实施例的前述描述不旨在是限制性的。

Claims (42)

1.一种用于视频处理的方法,包括:
在视频的目标视频块与所述视频的码流之间的转换期间,确定针对所述目标视频块的编解码时间的预测,所述编解码时间表示所述目标视频块的编解码过程被执行期间的持续时间;
至少部分地基于编解码时间的所述预测,调整针对所述目标视频块的所述编解码过程;以及
通过使用经调整的所述编解码过程,执行所述目标视频块与所述码流之间的所述转换。
2.根据权利要求1所述的方法,其中所述目标视频块的大小等于编解码树单元(CTU)或编解码树块(CTB),或者所述目标视频块的所述大小大于CTU或CTB。
3.根据权利要求2所述的方法,其中所述目标视频块包括以下之一:CTU、CTU行或覆盖多于一个样本的所述视频的一个图片内的子区域。
4.根据权利要求1所述的方法,其中所述目标视频块的大小小于编解码树单元(CTU)或编解码树块(CTB)。
5.根据权利要求4所述的方法,其中所述目标视频块包括以下之一:虚拟流水线数据单元(VPDU)、CTU内的子区域或CTB内的子区域。
6.根据权利要求1-5中任一项所述的方法,其中调整所述编解码过程包括:
基于所述视频的编解码时间的所述预测和历史编解码时间信息,调整所述编解码过程。
7.根据权利要求6所述的方法,其中所述视频的所述历史编解码时间信息包括以下之一:
累计的帧编解码时间、累计的条带编解码时间或累计的图块编解码时间。
8.根据权利要求1-7中任一项所述的方法,其中确定编解码时间的所述预测包括以下至少一项:
基于用于确定所述目标视频块的成本的模型,计算编解码时间的所述预测;或
基于参考视频块的另一编解码时间,确定编解码时间的所述预测。
9.根据权利要求8所述的方法,其中所述模型包括基于哈达玛成本的模型。
10.根据权利要求9所述的方法,其中计算编解码时间的所述预测包括:
将所述目标视频块分割为多个子块;
基于所述模型计算针对所述多个子块中的每个子块的相应成本;以及
基于所述多个子块的成本,确定编解码时间的所述预测。
11.根据权利要求10所述的方法,其中基于所述多个子块的成本确定编解码时间的所述预测包括:
基于所述目标视频块内的所有所述多个子块的成本或部分的所述多个子块的成本,确定编解码时间的所述预测。
12.根据权利要求10或权利要求11所述的方法,其中基于所述多个子块的成本确定编解码时间的所述预测包括:
基于所述多个子块的所述成本的总和,确定编解码时间的所述预测。
13.根据权利要求8所述的方法,其中所述模型包括基于帧内预测模式成本的模型。
14.根据权利要求13所述的方法,其中所述帧内预测模式包括帧内预测粗糙模式决定(RMD)。
15.根据权利要求14所述的方法,其中所述帧内预测RMD包括平面模式。
16.根据权利要求13-15中任一项所述的方法,其中基于所述模型计算编解码时间的所述预测包括:
基于从全率失真优化(RDO)过程获得的平面成本,确定编解码时间的所述预测。
17.根据权利要求13-15中任一项所述的方法,其中计算编解码时间的所述预测包括:
在帧内过程的平面模式后,通过使用所述模型,计算编解码时间的所述预测。
18.根据权利要求13-17中任一项所述的方法,其中基于所述模型计算编解码时间的所述预测包括:
通过使用多于一个帧内预测模式,计算编解码时间的所述预测。
19.根据权利要求8-18中任一项所述的方法,其中所述模型是指数度量的形式。
20.根据权利要求19所述的方法,其中所述指数度量包括多个参数。
21.根据权利要求20所述的方法,其中所述多个参数中的至少一个参数是预定义的。
22.根据权利要求20所述的方法,其中所述多个参数中的至少一个参数取决于经编解码的信息。
23.根据权利要求22所述的方法,其中所述经编解码的信息包括以下至少一项:条带类型、图片类型或量化参数(QP)。
24.根据权利要求20所述的方法,其中在所述视频与所述码流之间的进一步转换期间所述多个参数中的至少一个参数被更新。
25.根据权利要求19-24中任一项所述的方法,其中所述指数度量包括以下之一:
α*CTUcostβ,其中α表示加权参数,CTUcost表示所述目标视频块的成本,并且β表示指数参数,或
α*CTUcostβ+γ,其中α表示加权参数,CTUcost表示所述目标视频块的成本,β表示指数参数,并且γ表示偏移参数。
26.根据权利要求8所述的方法,其中基于所述参考视频块的所述另一编解码时间确定编解码时间的所述预测包括:
基于多个邻近视频块与所述目标视频块之间的相似性,从所述多个邻近视频块确定所述参考视频块;以及
基于所述参考视频块的所述另一编解码时间,确定编解码时间的所述预测。
27.根据权利要求26所述的方法,其中所述参考视频块与所述目标视频块之间的相似性高于阈值。
28.根据权利要求1-8中任一项所述的方法,其中确定针对所述目标视频块的编解码时间的所述预测包括:
通过使用以下组合来确定编解码时间的所述预测:
基于哈达玛成本的模型,
基于帧内预测模式成本的模型,以及
参考视频块的另一编解码时间。
29.根据权利要求28所述的方法,其中与所述基于帧内预测模式成本的模型相比,所述基于哈达玛成本的模型对所述目标视频块的编解码过程具有更少的依赖性,并且
其中与所述参考视频块的所述另一编解码时间相比,所述基于帧内预测模式成本的模型对所述编解码过程具有更少的依赖性。
30.根据权利要求28或权利要求29所述的方法,其中所述组合是人工设计的。
31.根据权利要求28-30中任一项所述的方法,其中所述组合基于机器学习过程被确定。
32.根据权利要求1-31中任一项所述的方法,其中确定编解码时间的所述预测包括:
基于计算能力确定调整因子;以及
基于所述调整因子调整针对所述目标视频块的编解码时间的所述预测。
33.根据权利要求32所述的方法,其中所述调整在针对所述视频的编解码过程的开始被执行。
34.根据权利要求32所述的方法,其中所述调整与所述视频与所述码流之间的进一步转换一起被预形成。
35.根据权利要求1-34中任一项所述的方法,其中所述转换包括将所述目标视频块编码到所述码流中。
36.根据权利要求35所述的方法,其中所述编解码时间包括编码时间,并且所述编解码过程包括编码过程。
37.根据权利要求1-34中任一项所述的方法,其中所述转换包括从所述码流解码所述目标视频块。
38.根据权利要求37所述的方法,其中所述编解码时间包括解码时间,并且所述编解码过程包括解码过程。
39.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-38中任一项所述的方法。
40.一种非暂态计算机可读存储介质,存储使处理器执行根据权利要求1-38中任一项所述的方法的指令。
41.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:
确定针对所述视频的目标视频块的编码时间的预测,所述编码时间表示所述目标视频块的编码过程被执行期间的持续时间;
至少部分地基于编码时间的所述预测,调整针对所述目标视频块的所述编码过程;以及
通过使用经调整的所述编码过程生成所述码流。
42.一种存储视频的码流的方法,包括:
确定针对所述视频的目标视频块的编码时间的预测,所述编码时间表示所述目标视频块的编码过程被执行期间的持续时间;
至少部分地基于编码时间的所述预测,调整针对所述目标视频块的所述编码过程;
通过使用经调整的所述编码过程生成所述码流;以及
将所述码流存储在非暂态计算机可读记录介质中。
CN202280054345.8A 2021-08-05 2022-08-04 用于视频处理的方法、装置和介质 Pending CN118120234A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2021/110699 2021-08-05
CN2021110699 2021-08-05
PCT/CN2022/110363 WO2023011604A1 (en) 2021-08-05 2022-08-04 Method, apparatus, and medium for video processing

Publications (1)

Publication Number Publication Date
CN118120234A true CN118120234A (zh) 2024-05-31

Family

ID=85155312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280054345.8A Pending CN118120234A (zh) 2021-08-05 2022-08-04 用于视频处理的方法、装置和介质

Country Status (3)

Country Link
US (1) US20240195986A1 (zh)
CN (1) CN118120234A (zh)
WO (1) WO2023011604A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100952340B1 (ko) * 2008-01-24 2010-04-09 에스케이 텔레콤주식회사 시공간적 복잡도를 이용한 부호화 모드 결정 방법 및 장치
CN105898371A (zh) * 2015-12-07 2016-08-24 乐视云计算有限公司 实时转码的实时控制方法及装置
CN107071424B (zh) * 2017-03-17 2018-09-25 山东科技大学 一种基于编码时间预测模型的负载均衡方法
CN110166771B (zh) * 2018-08-01 2022-09-23 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机设备和存储介质
CN111107344A (zh) * 2018-10-26 2020-05-05 西安科锐盛创新科技有限公司 视频图像的编码方法及装置
CN113132728B (zh) * 2019-12-31 2023-06-27 上海海思技术有限公司 编码方法及编码器

Also Published As

Publication number Publication date
WO2023011604A1 (en) 2023-02-09
US20240195986A1 (en) 2024-06-13

Similar Documents

Publication Publication Date Title
US11057546B2 (en) Video encoding and decoding
CN111373749B (zh) 视频编码和解码中的低复杂度双向帧内预测的方法和装置
EP2699001B1 (en) A method and a system for video signal encoding and decoding with motion estimation
CN110870316B (zh) 视频编码和解码中低复杂度双向帧内预测的方法和装置
EP4037320A1 (en) Boundary extension for video coding
US20200351494A1 (en) Restricted overlapped block motion compensation
KR100928325B1 (ko) 영상의 부호화, 복호화 방법 및 장치
CN117223289A (zh) 仿射运动的双边匹配
CN117296324A (zh) 视频处理的方法、设备和介质
CN118120234A (zh) 用于视频处理的方法、装置和介质
US20240205417A1 (en) Method, apparatus, and medium for video processing
WO2024027802A1 (en) Method, apparatus, and medium for video processing
WO2024131979A1 (en) Method, apparatus, and medium for video processing
US20240214565A1 (en) Method, device, and medium for video processing
WO2023061305A1 (en) Method, apparatus, and medium for video processing
WO2023131211A1 (en) Method, apparatus, and medium for video processing
US20240073438A1 (en) Motion vector coding simplifications
WO2023198120A1 (en) Method, apparatus, and medium for video processing
US20240171754A1 (en) Method, device, and medium for video processing
WO2022184110A1 (zh) 用于图像编码的方法、电子设备、存储介质和记录介质
US20230291908A1 (en) Affine estimation in pre-analysis of encoder
WO2023056895A1 (en) Method, apparatus, and medium for video processing
US20230300341A1 (en) Predictive video coding employing virtual reference frames generated by direct mv projection (dmvp)
CN118285094A (zh) 用于视频处理的方法、装置和介质
KR20160067580A (ko) 영상 데이터의 인코딩 방법, 상기 방법을 이용한 인코더, 및 상기 인코더를 포함하는 애플리케이션 프로세서

Legal Events

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