CN102067603B - 在多个失真约束下的视频压缩 - Google Patents
在多个失真约束下的视频压缩 Download PDFInfo
- Publication number
- CN102067603B CN102067603B CN2009801228934A CN200980122893A CN102067603B CN 102067603 B CN102067603 B CN 102067603B CN 2009801228934 A CN2009801228934 A CN 2009801228934A CN 200980122893 A CN200980122893 A CN 200980122893A CN 102067603 B CN102067603 B CN 102067603B
- Authority
- CN
- China
- Prior art keywords
- distortion metrics
- video
- distortion
- cost function
- pattern
- 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.)
- Expired - Fee Related
Links
- 230000006835 compression Effects 0.000 title claims abstract description 27
- 238000007906 compression Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims description 122
- 230000013011 mating Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 61
- 238000005516 engineering process Methods 0.000 abstract description 51
- 238000013461 design Methods 0.000 abstract description 25
- 230000002123 temporal effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 204
- 238000005457 optimization Methods 0.000 description 107
- 230000000875 corresponding effect Effects 0.000 description 76
- 238000004590 computer program Methods 0.000 description 42
- 238000005259 measurement Methods 0.000 description 31
- 230000004044 response Effects 0.000 description 24
- 230000033001 locomotion Effects 0.000 description 17
- 230000000712 assembly Effects 0.000 description 15
- 238000000429 assembly Methods 0.000 description 15
- 238000003860 storage Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 7
- 231100000647 material safety data sheet Toxicity 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000002028 premature Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/19—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
-
- 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
-
- 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/124—Quantisation
-
- 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/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/134—Methods 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/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
视频压缩得以在多个失真约束下执行。视频编码包括:使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合,使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合,以及基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择编码模式中的一个,以使用所选编码模式对像素块进行编码。所述失真度量可以包括与视频显示器特性关联的信息,例如屏幕显示器大小、视频处理性能、失真特性、时间特性、或空间特性。所述失真度量也可以包括多个视频显示器的特性,例如用于用法、重要性、设计、以及视频显示器的技术类型的参数。
Description
相关申请的交叉引用
该申请要求Zhen Li和Alexandros Tourapis于2008年6月20日提交的题为Video Compression under Multiple DistortionConstraints的有关共同未决美国临时专利申请No.61/074,439的权益,包括优先权,其被转让给本申请的受让人(Dolby实验室编号为D07014 US01)。
技术领域
本发明总体涉及视频技术。更具体地说,本发明的实施例涉及在多个失真约束下的视频压缩。
背景技术
在此所使用的术语“图像特征”可以指代场(field)内的一个或多个图片元素(例如一个或多个像素)。在此所使用的术语“源场”可以指代可以据此确定或者推导与图像特征有关的信息的场。在此所使用的术语“中间场”可以指代这样的场:其可以临时跟随(follow)或者超前(lead)于视频序列中的源场,其中,可以参照源场来描述与图像特征有关的信息。在此所使用的术语“视差(disparity)估计”可以指代用于计算运动矢量或其它参数值的各技术,通过所述技术可以高效地对例如视频序列中的两个或更多个场之间的运动进行预测、建模或者描述。视差估计的示例可以是运动估计。在此所使用的术语“视差估计”可以指代运动矢量或与另一估计出的参数运动(parametric motion)有关的值。在此所使用的术语“视差补偿”可以指代这样的技术:通过该技术,运动估计或另一参数可以用于计算源场中图像特征的位置的空间变化,以描述视频序列的一个或多个中间场中的图像特征的运动或某参数。视差补偿的示例可以是运动补偿。上述术语也可以结合其它视频编码概念(例如帧间预测和亮度补偿)而使用。
附图说明
图1描述视频编码器的示例的示图。
图2描述视频解码器的示例的示图。
图3是拉格朗日优化函数的示例的示图。
图4是沿着块边界的示例斜率均方差(MSDS)度量的说明。
图5描述在多个速率约束下的视频压缩方案的示例的示图。
图6描述在多个失真约束下的视频压缩方案的示例的示图。
图7A描述用于并行优化的示例的示图。
图7B描述用于示出用于实现并行优化的示例处理的流程图。
图8描述用于示出串行优化的示例的示图。
图9描述用于示出在串行优化下的阈值决定的示例的示图。
图10A描述在多个失真约束下使用混合优化的视频编码优化方案的示例的示图。
图10B描述示出混合优化技术的示例的流程图。
图11A描述在多个失真约束下使用级联优化的视频编码方案的示例的示图。
图11B描述用于实现级联优化的示例处理的流程图。
图12描述用于在多个失真约束下的视频压缩的公开技术的系统示图。
各个附图中的相同的标号和标记可以指示相同的元件。
具体实施方式
在此描述与在多个失真约束下的视频压缩有关的示例实施例。在以下描述中,为了解释的目的,阐述大量具体细节,以提供本发明的透彻理解。然而,应理解,可以在没有这些具体细节的情况下实践本发明。在其它情况下,公知结构和设备以框图形式而示出,目的是避免不必要地模糊本发明。
概述
公开的技术的各方面涉及在多个失真约束下的视频编码优化。其中,本公开中提出的优化方法可以用于优化视频压缩系统中的各种模式决定,例如选择量子化参数、运动矢量、内预测模式、编码块(例如宏块)大小、变换、熵编码,等等。这些和其它实施例可以包括以下特征中的一个或多个。
在某些方面,某些实施例特征在于一种用于视频编码的方法,包括:使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合,以及使用第二失真度量确定多个编码模式的拉格朗日代价值的第二集合。所述方法包括:基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择编码模式中的一个,以及使用所选编码模式对像素块进行编码。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述第一拉格朗日代价值和第二拉格朗日代价值可以包括不同的比特目标速率。所述失真度量可以包括与视频显示器的特性关联的信息,其中,所述视频显示器的特性可以包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。所述失真度量也可以具有与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括对于视频显示器的用法的参数、用于指示所述视频显示器的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合将视频显示器分等级的参数。模式的选择可以包括:基于将用于视频显示器的特性的失真度量的信息关联于视频显示器的相似特性而选择失真度量的第一子集。模式的选择可以包括:将所述多个编码模式分等级。所述方法也可以包括:使用第三失真度量确定编码模式的拉格朗日代价值的第三集合,以及使用第四失真度量确定编码模式的拉格朗日代价值的第四集合。所述方法也可以包括:基于所述拉格朗日代价值的集合选择编码模式中的一个,以及使用所选编码模式对第二像素块进行编码。
在某些方面,某些实施例特征是一种用于视频编码的方法,所述方法包括:将压缩后的比特流从视频编码器发送到多个通道,其中,所述通道包括目标比特率和多个失真度量。所述方法包括:将来自所述通道之一的所述失真度量之一匹配于第一视频显示器的特性,以及将视频数据发送到带有匹配所述第一视频显示器的特性的失真度量的第一视频显示器。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述失真度量可以包括与视频显示器的特性关联的信息,其中,所述特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。所述失真度量也可以包括与多个视频显示器的特性关联的信息,所述视频显示器的特性可以包括对于视频显示器的用法的参数、用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合将视频显示器分等级的参数。
所述方法也可以包括:在发送压缩后的比特流之前,使用拉格朗日代价函数对像素块进行编码,其中,所述拉格朗日代价函数可以包括来自编码的失真信息,所述编码包括带有失真度量的多个模式,所述编码具有对应的比特目标速率。所述方法可以包括:基于将用于所述视频显示器的特性的所述失真度量的信息关联于第一视频显示器的相似特性而将每一通道中的失真度量分等级,其中,匹配来自一个通道的一个失真度量包括:选择最高等级的失真度量。所述方法也可以包括:消除不匹配的失真度量。
在其它方面,某些实施例特征是一种在多个失真约束下的视频编码的方法,其中,所述方法包括:将失真度量关联于多个候选模式。所述失真度量中的每一个关联于一组候选模式。所述方法包括:以相应的拉格朗日代价函数同时处理各候选模式,以及对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级。所述方法包括:将每一候选模式组当中的各候选模式分等级,选择带有最高等级的候选模式组,以及基于在所选候选模式组内选择最高等级的候选模式而选择视频显示器的目标模式。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述分等级可以基于将视频显示器的特性关联于失真度量特性。所述失真度量可以包括与视频显示器特性关联的信息,其中,所述视频显示器特性可以包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。所述失真度量也可以包括与多个视频显示器的特性关联的信息,其中,所述多个视频显示器的特性可以包括用于所述多个视频显示器的用法的参数、用于指示视频显示器的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数,以及用于使用所述特性的任何组合将视频显示器分等级的参数。
在其它方面,某些实施例包括用于在多个失真约束下的视频编码的方法的特征,其中,所述方法包括:处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数。所述方法包括:将所述第一拉格朗日代价函数与阈值进行比较,以及如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式。如果所述第一拉格朗日代价函数小于所述阈值,则所述方法包括:确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述方法可以包括:对所述第二拉格朗日代价函数与所述阈值进行比较。如果所述第二拉格朗日代价函数大于所述阈值,则所述方法可以包括:消除带有所述第二失真度量的模式。如果所述第二拉格朗日代价函数小于所述阈值,则所述方法可以包括:通过处理所述视频信息来确定带有第三失真度量的第一模式的第三拉格朗日代价函数。
在其它方面,某些实施例包括一种用于在多个失真约束下的视频编码的方法,其中,所述方法包括:对于带有每一模式的多个失真度量的多个模式,处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数。所述方法包括:将每一拉格朗日代价函数与阈值进行比较,以及如果相应的拉格朗日代价函数大于所述阈值,则所述方法包括:消除带有相应的失真度量的相应模式。如果相应的拉格朗日代价函数小于所述阈值,则所述方法包括:确定带有后续失真度量的相应模式的后续拉格朗日代价函数。相应的拉格朗日代价函数得以依次确定,并且与所述阈值进行比较,直到已经比较并且/或者消除了所有模式的所有失真度量。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述失真度量可以包括与视频显示器特性关联的信息,其中,所述视频显示器特性可以包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、和/或空间特性。所述失真度量也可以包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述视频显示器的用法的参数、用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对多个视频显示器分等级的参数。对于所保存的带有失真度量的各模式,所述方法可以包括:选择所保存的带有所述失真度量的模式的子集,以输出到与将视频信息呈现于视频显示器上关联的组件。所述方法可以包括:调整用于一个或多个模式或一个或多个失真度量的阈值的值。所述阈值可以是与宏块关联的失真的函数,其中,所述阈值函数可以包括作为所述宏块的邻块的各宏块的失真的相关性的测量。
在某些方面,某些实施例可以特征是一种视频编码方法,所述视频编码方法包括:使用统计量来标识在统计上不可能被选择用于并行优化编码的一个或多个编码模式。对于在统计上可能被选择的一个或多个编码模式,所述方法包括:根据并行优化编码来处理一个或多个编码模式。对于在统计上不可能选择的一个或多个模式,所述方法包括:采用串行优化编码,以及使用性能准则来从并行优化编码和串行优化编码选择模式的子集。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述串行优化编码可以包括:对于一个或多个编码模式的多个失真度量,处理视频信息,以对于编码模式中的每一个确定带有失真度量的拉格朗日代价函数。所述方法包括:将每一相应的拉格朗日代价函数与阈值进行比较,以及如果相应的拉格朗日代价函数大于所述阈值,则所述方法包括:消除带有相应的失真度量的相应的编码模式。如果相应的拉格朗日代价函数小于所述阈值,则所述方法包括:确定带有后续失真度量的相应的编码模式的后续拉格朗日代价函数。相应的拉格朗日代价函数得以依次确定,并且与所述阈值进行比较,直到已经比较或者消除了用于所有编码模式的所有失真度量。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述并行优化编码可以包括:同时存取带有多个失真度量的一个或多个模式,并且将所述多个失真度量关联到多个候选模式。所述多个失真度量中的每一个可以关联于一组候选模式。所述方法可以包括:同时处理具有相应的拉格朗日代价函数的候选模式。对于每一失真度量,所述方法可以包括:根据拉格朗日代价函数将每一组内的候选模式分等级,对每一候选模式组当中的各候选模式进行比较和分等级,选择带有最高等级的候选模式组;以及基于选择所选候选模式组内的最高等级的候选模式来选择视频显示器的目标模式。所述失真度量可以包括与视频显示器特性关联的信息,其中,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。所述失真度量可以包括与多个视频显示器的特性关联的信息,其中,所述多个视频显示器的特性包括对于视频显示器的用法的参数、用于指示任何视频显示器的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合将视频显示器分等级的参数。
在某些方面,某些实施例包括用于视频编码方法的特征,其包括:存取比特流,包括第一失真度量,同时处理用于与第一失真度量关联的第一模式集合的拉格朗日代价函数,对第一模式集合的各拉格朗日代价函数进行比较,其中,所述比较包括:对第一模式集合的各拉格朗日代价函数分等级。所述方法包括:基于所述比较从第一集合模式选择第一模式子集,并且基于来自先前模式分等级的数据安排第一子集的顺序。所述方法还包括:使用第二失真度量同时处理第一模式子集的拉格朗日代价函数,以及比较第一模式子集的各拉格朗日代价函数。所述比较包括:将第一模式子集的各拉格朗日代价函数分等级。所述方法包括:基于将第一模式子集的各拉格朗日代价函数分等级而从第一集合模式选择第二模式子集,并且基于来自先前模式分等级的数据安排第二模式子集的顺序。
这些和其它实施例可以备选地包括以下特征中的一个或多个。所述失真度量可以包括与视频显示器特性关联的信息,其中,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、和/或空间特性。所述失真度量也可以包括与多个视频显示器的特性关联的信息,其中,所述多个视频显示器的特性包括对于视频显示器的用法的参数、用于指示任何视频显示器的重要性的参数、用于视频显示器的设计类型的参数、用于视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合将视频显示器分等级的参数。
在某些实施例中,所公开的技术可以优化比特流,以用于不同比特率预算和均带有其自身显示特性的不同端显示器,因此可以提供良好的视觉质量。在以下所描述的某些实施例中,每一通道可以具有失真度量,其适于失真需求、处理特征、屏幕大小、以及特定端显示器的显示特性。例如,用于第一通道的失真度量可以具有适于特定中等大小的显示监视器的特性的第一失真度量、适于手持设备的显示器的特性的第二失真度量、以及适于大型平板电视的特性的第三失真度量。
在此描述的任何方法和技术也可以通过系统、装置或设备、机器、计算机程序产品、软件、硬件、或其任何组合而得以实现。例如,计算机程序产品可以在计算机可读介质上可触知地被编码,并且可以包括用于使得数据处理装置(例如数据处理器)执行在此描述的任何方法的一个或多个操作的指令。
为了示出可以如何实现这些所公开的技术,叙述并且描述若干示例实施例。例如,在此叙述和描述的某些示例视频编码优化技术可以包括并行优化技术、串行优化技术、混合优化技术、以及级联优化技术。
优化系统和技术
包括可缩放(例如SVC)和多视图编码系统(例如MVC)的视频压缩系统和标准(例如ISO MPEG-1、MPEG-2、MPEG-4、MPEG-4、AVC/ITU-T、H.264、H.261、H.263、以及VC-1)可以提供用于以合理成本存储和递送视频内容的方案。视频编码优化可以是视频压缩系统的组件。视频编码优化可以为高编码效率提供品质视觉体验。
图1描述视频编码器100的示例的示图。例如,编码器100可以是用于先进视频编码标准(AVC)(另外指代为MPEG-4 AVC或ITU-TH.264)的编码器。在图1中,输入视频102被发送到加法器116,加法器116对输入视频帧102与视差补偿(例如运动/亮度改变补偿和/或内预测)组件160的输出求和。来自加法器116的输出耦合到变换组件104,变换组件104后跟着量子化组件106。量子化组件106的输出耦合到可变长度编码(VLC)组件108和逆量子化组件110。从VLC组件108得到比特流120。关于编码处理的信息(例如对块、区域、或图像进行编码所需的比特数量、以及通过这种决定引入的失真)被发送到环路滤波器166和其它组件。
视差补偿组件160可以据来自视差估计组件162的给定信息/决定生成预测信号。视差估计组件162可以执行各任务,其中,所述任务可以包括:(a)确定适当的预测参数,例如运动矢量、亮度改变参数、和/或内预测模式,(b)有选择地启用以及禁用运动补偿块大小;(c)使用某些图片作为运动补偿基准;(d)调整运动估计搜索范围、细化模式、和/或运动估计迭代的数量;以及(e)给定某些预先定义的条件或关于图像的信息,限制待测试的编码模式的数量;等等。环路滤波器组件166可以执行各任务,所述任务可以包括:(a)调节环内解块滤波器的参数;(b)关闭解块滤波器;等等。
速率失真优化组件180接收输入视频102和来自视差补偿组件160的输出,以将速率失真优化信息发送到视差估计组件162。视差估计可以由使得运动补偿(或预测)误差最小化、同时使得运动场的一致性最大化之间的平衡来表征。可以按运动场的平滑性表示运动场的一致性。预期一致对象的运动对于每一对象是平滑的,从而运动场仅在对象边界处不连续。这些对象边界可以指代为轮廓边缘或廓影(silhouette)边缘。
逆变换组件112从逆量子化组件110接收输入,并且将输出发送到加法器126。加法器126从逆变换组件112和视差补偿组件160接收信号,并且将求和后的信号发送到环路滤波器166。图片基准仓库164从环路滤波器166接收输入,并且将输出发送到视差补偿组件160和视差估计组件162。视差估计组件162还从速率控制组件(未示出)接收输入。环路滤波器166还从速率控制组件接收输入。输入视频102也被发送到视差补偿组件160和视差估计组件262的输入。
图2描述视频解码器200的示例的示图。在某些实施例中,解码器200可以基本符合H.264/AVC标准地工作。解码器200接收比特流120,并且使用熵(可变长度)解码器205、一个或多个逆量子化器230、一个或多个逆变换组件235、以及视差补偿组件210来对比特流进行解码。熵解码器205可以提取两种头信息,其中包括视差信息(例如模式、运动矢量、亮度改变参数、内预测模式、等等)、以及量子化和变换剩余的数据。视差补偿(更具体地说,信号的预测)是使用头信息而在视差补偿组件210中执行的,而剩余的数据首先使用逆量子化器230被解量子化,然后使用逆变换组件235被逆变换。加法器255将逆变换235与视差补偿器210的输出相加,并且将求和的结果发送到环路滤波器225。环路滤波器225的输出耦合到基准图片缓冲器220,基准图片缓冲器220可以用于将图片存储作为基准以及递送输出250。
拉格朗日优化可以用作视频编码优化技术。拉格朗日优化将视频编码优化问题用公式表达为拉格朗日代价函数的最小化。
图3是描述拉格朗日优化函数的示例的示图300。具体地说,拉格朗日代价函数可以表示为:
从而:
服从速率目标
指数i是待优化的N个块或成组块中的一个,是不同编码模式,例如不同量子化器或预测模式,是以模式对块进行编码的失真,其中,作为对应速率,以及λ被称为拉格朗日乘数,其为非负实数,∏*表示优化模式,其中,全部拉格朗日代价函数得以最小化。
示图300描述失真D 315对速率R 320的图线,其中,以表示拉格朗日乘数330的斜率(slope)的平面波来描述拉格朗日代价函数325的最小化。具体地说,图3可以指示当给定某拉格朗日乘数λ而使得拉格朗日代价函数最小化时的最优解。在该示例中,对于通过模式对块进行编码的失真,拉格朗日代价函数325的最小点在340处,其中,345作为对应速率,其中,335是平面波中的一个的上失真范围。以λ=0来使得拉格朗日代价函数最小化等同于在没有对速率的任何考虑的情况下使得失真最小化。反之,以λ任意大来使得拉格朗日代价函数最小化等同于在没有考虑失真的情况下使得速率最小化。通过选择其间的λ值,可以实现具体的优化折衷,其可以平衡速率与失真要求。在视频压缩系统中,运动矢量和编码模式皆可以通过拉格朗日优化而得以决定。
当在视频编码器中执行拉格朗日优化时,速率通常以比特计数。然而,有很多方法来计算失真。
例如,如下计算一种广泛使用的度量(用于M×N块的绝对差之和(SAD)):
可以存在可以测量拉格朗日优化中的主观视觉质量的其它度量。这些度量的一个示例包括恰可注意到的差异(Just NoticeableDifference,JND),其基于内容来测量伪迹的可见性(visibility)。另一示例是斜率的均方差(MSDS),其可以用于测量可能在景象中出现的成块伪迹的严重性。
图4是描述沿着块边界的示例斜率均方差(MSDS)度量400的示图400。MSDS是穿过两个邻近块的各斜率之间的差的平方,并且这两个块中的每一个的斜率之间的平均值靠近它们的边界。示图400描述用于垂直位置410对于水平位置430的块边界415,其中,块边界415将上块(例如块0、1、2、3等)与下块(例如N-1、N-2、N-3、N-4等)分离。更具体地说,沿着第(i,j)块425和第(i,j-1)块420的垂直块边界415的MSDS可以表示为:
额外度量(例如,比如显示器和/或失真度量)可以例如通过将拉格朗日代价表示如下而在拉格朗日代价函数中被考虑:
该函数可被最小化,μk是用于失真度量Dk的权重。方程7可以表示带有k+1个自由度的拉格朗日函数,其中,μk可以是对应拉格朗日乘数λk的倒数。
当组合的失真度量在拉格朗日代价函数中被考虑时,可以有对于拉格朗日乘数的调谐需求(例如对于复杂处理和计算的需求),因为不同的失真度量可能未在公共单元中呈现失真的大小。公共单元对不同度量进行相关或归一化,从而不同的度量可以按相似的等级或方式彼此有关。
本公开的各方面提出一种优化方法,其考虑具有多个拉格朗日代价函数的不同失真约束。例如,两种类型的拉格朗日代价函数表示在方程8和方程9中。
更具体地说,第一类型的拉格朗日代价函数,
Jk(λk)=Dk(Rk)+λk·Rk,k=1,2,...,K (8)
得以最小化,其中,Rk是与失真度量Dk对应的目标速率。
某些其它类型的拉格朗日代价函数可以用于关于不同数量目标而优化相同的失真度量。这些类型的拉格朗日代价函数可以表示为以下方程9。具体地说,可以存在第二类型的拉格朗日代价函数的最小化。
Jk(λk)=D(Rk)+λk·Rk,k=1,2,...,L (9)
图5描述使用单失真约束使用多个速率约束的视频压缩方案500的示例的示图。在某些实施例中,速率失真优化组件510将信息发送到视频编码器505,视频编码器505将压缩后的比特流515发送到多个通道520-530。每一通道520、525、530分别具有一个失真度量535、540、545。与方程9相似,失真可以是通过相同失真度量D(R)而测量的,失真值的差可以是由不同目标速率R1、R2、......、RL引起的。方程9中的不同数量可以共享相同的公共测量单元。
图6描述对于给定速率约束的使用多个失真约束的视频压缩方案600的示例的示图。具体地说,在方案600中,不仅对于不同的比特率预算、而且对于不同的目标设备(例如,不同大小、分辨率、或显示类型,包括LED、等离子体、OLED、和/或DLP显示器,每一个均具有其自身的显示特性,并且因此具有其自身失真度量),优化比特流。来自速率失真优化组件510的信息被发送到视频编码器505,视频编码器505将压缩后的比特流515发送到多个通道620-630,每一通道具有其自身速率约束以及各种端显示失真度量635-670。在所描述的实施例中,每一通道可以具有适于特定端显示器的失真需求、处理特征、显示屏幕大小、以及显示特性的失真度量。例如,用于具有目标比特率R2的通道635的失真度量可以具有适于特定中等大小的显示监视器的特性的第一失真度量D2(R2)645、适于手持设备的显示器的特性的第二失真度量Dm(R2)650、以及适于大型平板电视的特性的第三失真度量Dn(R1)655。
在其它实施例中,可以在各种应用情形中采用对于给定速率约束的多个失真度量。一种这样的应用可以是视频编码器,其联合优化比特流,这些比特流随后流送到具有小型显示屏幕的移动设备以及可以具有大得多的显示屏幕的家庭娱乐设备。显示屏幕大小方面的这种巨大差异以及亮度和显示技术等可以导致非常不同的视觉评估准则。例如,有可能的是,已编码图像内的特定编码伪迹可能是没法注意的,或者在小型显示屏幕(例如移动电话屏幕或手持设备显示屏幕)上显现为微小物,但当相同的内容显示在较大显示屏幕(例如大型LCD监视器、等离子体、或DLP显示器)上时可能是可注意到的。此外,显示屏幕的不同特性以及在浏览之前对图像执行的数字信号处理(DSP)也可以影响视觉质量。可以通过对于不同失真度量和/或不同显示器以及处理特性同时优化比特流而应对显示屏幕大小、显示屏幕的特性、以及DSP的差异。
本公开的一些方面提出一种类型的拉格朗日代价公式,其可以是可扩展和延伸的(方程8),至少因为这种类型的公式(方程8)可以将各种失真度量Dk纳入考量。此公式(方程8)可以对应于图6所示的示例,并且可以将显示特性(例如显示屏幕大小、分辨率)、处理特性(例如DSP)、以及失真特性(例如来自处理宏块或其它特征的失真)纳入考量。方程8中的不同失真值可能由不同目标速率和/或不同失真度量引起的。方程8中的不同失真可以通过不同失真度量而得以测量,并且不一定必须共享公共测量单元。
在某些实施例中,所选失真度量可以适于各种端显示器的特定失真属性。例如,一个失真度量可以改进第一类型显示器的时间质量,第二失真度量可以对应于第二类型显示器的空间质量,或者第三失真度量可以针对第三类型显示器的色彩质量或锐度的类型。失真度量也可以适于多个比特率目标,并且可以将各种类型的显示特性和失真需求纳入考量。
使用多个失真约束的视频编码优化可以通过多种方式而得以实现。为了说明,以下叙述并且描述至少四个示例。视频编码优化示例包括并行优化技术、串行优化技术、混合优化技术、以及级联优化技术。这些方法中的每一种可以通过多个优化级别的配置和组合而得以表征,允许不同的性能和复杂性折衷。虽然这四个示例可以主要包括方程8的拉格朗日代价函数的类型,但它们也可以包括方程8和方程9中表示的拉格朗日代价函数的两种类型的组合。也就是说,在任何优化步骤,可以考虑多个失真代价,而不是仅单独一个。在其它实施例中,也可以考虑相同代价但不同失真度量组合(例如用于级别一的D1和D2以及用于级别二的D1和D3)。使用方程8的某些实施例可以能够对每一失真度量的决定与其对应拉格朗日代价函数进行解耦合。
在多个失真约束下的并行优化
图7A描述在多个失真约束下采用并行优化的视频编码优化方案700的示例的示图。在方案700中,优化模式选自M个候选模式,并且存在K个不同的失真度量。方案700可以同时对每一失真度量执行拉格朗日优化。
对于失真度量D1 710,例如,拉格朗日代价函数725、730、735分别被处理用于模式1、2、M。一旦对于给定失真度量中的每一模式计算拉格朗日代价函数,就对得到的拉格朗日代价函数进行比较和分等级。拉格朗日代价函数分等级模块770、775、780分别操作用于每一给定失真度量710、715、720。这种模式分等级的示例可以包括:基于失真度量的拉格朗日代价函数对给定失真度量的每一模式进行评分。具有最小拉格朗日代价函数的模式可以具有得分1,具有次小拉格朗日代价函数的模式可以具有得分2,依此类推。
在用于每一模式和每一失真度量的拉格朗日代价被处理和分等级之后,最终模式选择模块785选取具有最佳性能的模式。在操作中,模型选择模块785可以计算对于每一模式的整体得分,并且选取具有最低得分的模块,或者其可以使用更复杂的加权系统来决定最佳模式。
图7B描述示出用于实现并行优化的示例处理714的流程图。图7B中的技术包括:从输入块(702)接收或者存取一个或多个失真度量,将一个或多个失真度量关联或者发送到相应的候选模式(1,2,......M)(704),以及确定用于相应的候选模式的拉格朗日代价函数(706)。于在给定失真度量中对于每一模式确定拉格朗日代价函数之后,处理700包括:在给定失真度量中对得到的拉格朗日代价函数进行比较和分等级(708)。在用于每一模式和每一失真度量的拉格朗日代价被处理和分等级之后,各技术包括:选择具有最佳性能的模式(712)。在某些情况下,给定优化处理的特定约束,最佳性能可以指代整体最佳排序。例如,模式选择785可以取得排序后的模式770、775、780的输出,对此,在某些实施例中,可以通常是分等级后的结果(或“得分”)而非拉格朗日代价。在这些情况中的某些情况下,拉格朗日代价可以关于不同失真度量是不可相加的,并且分等级的结果可以提供另一方式来比较整体性能。备选地所选模式可以被分等级,或者根据某其他的参数或分等级方案而进一步被分等级。
在多个失真约束下的串行优化
图8描述采用在多个失真约束下的串行优化的示例优化处理800的示图。在视频编码处理800中,输入块805将失真度量发送到候选模式的串行(例如每次一个候选模式)循环中(810),其中,存在M个模式,Mode(j),j=1...M。失真度量也对于k=1...K而串行循环(815)。对于M个候选模式中的每一个,拉格朗日代价函数得以串行地如下确定(820)以用于每一失真度量:
在确定各个拉格朗日代价之后(820),将其与对应阈值Tk进行比较(825)。如果拉格朗日代价函数大于或等于阈值(825),则该模式被丢弃,并且不再被看作候选模式(830)。所丢弃的候选模式可以被称为受到“早期终止”的候选模式。如果拉格朗日代价函数小于阈值(825),则可以确定与下一失真度量对应的拉格朗日代价函数(835)。该过程持续直到该模式早期终止(830),或者已经计算用于所有失真度量的拉格朗日代价函数。
如果已经确定用于所有失真度量的拉格朗日代价(835),则保持模式(j),k循环对于失真度量而结束(845),并且j循环对于模式而结束(850)。如果剩下的模式的数量不大于零,则备份模式决定(860)。如果剩下的模式的数量大于零,则执行模式选择(865),并且可以使得所选模式可用(870),以输出到另一系统组件。
阈值Ti可以由用户预先定义,或者其可以在编码期间被自适应地估计并且/或者调整。阈值通常可以如下推导为全局或局部特性的函数:
Ti(m,n)=f(Iglobal,Ilocal),(12)
其中,Iglobal表示全局特性(例如帧速率、运动强度、和/或其它元数据信息),Ilocal表示局部特性(例如方差、亮度分量的均值、色度分量、纹理信息和/或边缘信息)。
对于通过所有这些阈值测试的剩下的模式,最终模式决定模块用于选择用于该块的一个模式或一组模式(865,870)。这种最终模式决定模块的一个示例可以是关于已经在先前步骤中计算的一个或多个失真度量将剩下的模式分等级。
如果没有模式通过所有阈值测试,则使用备份模式决定模块(860)。这种备份模式决定模块的一个示例包括:简单选择预先设定的默认模式。备份模式决定模块的另一示例包括:减少阈值,并且将拉格朗日代价函数再次与新阈值进行比较,直到存在通过所有阈值测试的至少一个模式。在备份模式决定模块的另一示例中,该模块可以选取使得拉格朗日代价函数关于仅一个预先设定的失真度量最小化的一个优化模式。
在某些实施例中,阈值可以用于消除特定模式和/或失真度量,并且可以用于找寻优化模式和/或失真度量。在某些实施例中,第一阈值可以与第一失真测量进行比较,如果所得失真大于预先确定的可接受范围(假设最小化公式)或者小于预先确定的可接受范围(假设最大化公式),则失真度量可以被看作局外物(outlier),并且可以被消除。然后,第二失真度量可以与阈值进行比较。如果第二失真度量不大于预先确定的可接受范围(假设最小化公式)或者小于预先确定的可接受范围(假设最大化公式),则其可以被保存并且处理以进一步确定其是否应在后续选择中使用。在其它实施例中,一组多个失真度量同时与阈值进行比较,并且可以丢弃远离阈值的失真度量。通过减少非优化失真度量的量,可以改进系统处理,以具有更快的性能。
图9描述用于示出在串行优化下的阈值决定的示例的示图900。在该示例中,可以使用先前编码的邻近块的知识来确定阈值Ti。在每一块(k,l)被编码之后,可以关于失真度量Di计算块的真实失真Di(k,l)。然后,假设没有边界约束,则可以将用于块(m,n)950的阈值Ti决定为:Ti(m,n)=a×max(Di(m-1,n-1),Di(m,n-1),Di(m+1,n-1),Di(m-1,n))+b (13)其中,a和b是权重,其可以是固定变量,或者可以取决于块的特性。邻近块是Di(m-1,n-1)910,Di(m,n-1)920,Di(m+1,n-1)930和Di(m-1,n)940,其中,邻近块的失真可以具有相关信息,其可以用于找寻用于当前块(m,n)950的失真相关性。
在其它实施例中,阈值可以指定失真计算是否应立即终止,或者可以指定应该考虑多少附加失真度量以及考虑哪些附加失真度量。例如,如果当前块(m,n)950的失真极大地不同于邻近块的失真,则当前块(m,n)950的失真可以被看作局外物,并且可以从优化方法消除,以节省处理资源,并且加速系统计算。
在某些实施例中,多个阈值可以用于每一失真度量,其中,对应拉格朗日代价函数可以通过多级方式与每一阈值进行比较。在其它实施例中,可以测试失真度量的序列,其中,可以使用取决于来自其它先前测试的阈值的值的阈值。
在某些实施例中,阈值可以基于局部和/或全局特性,或者阈值可以在优化处理期间被自适应地调整为新阈值。例如,如果使用多个阈值,则可以在处理期间调整或者重新排序各个阈值,以帮助消除在优化处理中不太可能被选择的失真度量。选择的似然性可以基于在选择处理之前得到的统计量。该实施例也可以节省处理资源。在某些实施例中,可以基于显示器的刷新率、在处理和优化算法期间应使用的周期的数量调整权重a和b。
可以基于失真度量的重要性来选择某些失真度量。例如,如果第一失真度量适于大屏幕TV显示器,并且第二失真度量适于手持设备的显示器,则若使用度量的特定百分比(例如大于50%)将可能在手持设备的显示器上,那么第二失真度量可以被选择作为更重要的失真度量。结果,优化将基于用于手持设备的显示器的第二失真度量。
在多个失真约束下的混合优化
并行方案和串行方案可以组合为“混合优化”方案。
图10A描述在多个失真约束下使用混合优化的视频编码优化方案1000的示例的示图。在方案1000中,串行优化模式子集1065具有较不可能被选择并且用于串行优化1070的模式。来自输入块1001的失真度量D1 1003、D2 1006、Dk 1009用在各种模式1...M、拉格朗日代价函数1005-1060以及模式分等级1075中,如以上图7A-图7B所描述的那样。可以对于所选模式1095在模式选择1090期间考虑来自模式分等级1075-1085的模式以及串行优化。
在某些实施例中,模式选择1090可以首先考虑来自并行优化的模式,然后,其次考虑来自串行优化的模式(若存在)。在其它实施例中,来自并行优化的模式将总是被分等级和选择得高于来自串行优化的模式。
图10B描述示出混合优化技术的示例的流程图。在并行优化系统中,例如,标识通常较不可能被选择的一个或多个模式(1002)。与较高似然模式相比,可以将这些模式分配在分离的串行优化模式中。对于较不可能选择的模式,可以将用于每一失真度量的拉格朗日代价函数与预先设定的阈值进行比较(1007)。如果代价大于对应阈值,则该模式被丢弃,并且不再被考虑用于该块的优化(1008)。可以使用图7A-图7B中以上描述的并行优化系统来检查所有其它模式(1012)。然后,选择来自并行和串行优化的最佳模式(1014)。
在多个失真约束下的级联优化
图11A描述在多个失真约束下使用级联优化的视频编码方案1100的示例的示图。具体地说,方案1100以级联方式来组合并行优化和串行优化。例如,对于待优化的块,用于来自输入块1105的所有M1个模式的拉格朗日代价函数1110-1120关于失真度量D1而被计算并且比较。关于D1具有最低拉格朗日代价的M2个模式被保存,其中,M2≥1。这M2个模式可以被分等级并且/或者消除1145,然后基于先前轮次(若存在)的结果而被重新排序1160。
这M2个模式于是传递给失真度量D2,其中,对于该度量对子集1125执行相似过程。在用于失真度量D2的子集1125中,执行并行优化1130,其中用于所有模式的拉格朗日代价函数被计算并且比较。关于失真度量具有最低拉格朗日代价的模式被保存(例如关于D2具有最低拉格朗日代价的M3模式被保存),然后被分等级并且/或者消除1150,然后基于任何先前轮次(例如具有失真度量D1的在前轮次)而重新排序。
该处理可以继续,直到已经测试了所有K个失真度量,其中,Mk≥1,k=1,2,...,K。当优化用于失真度量Dk的子集1135时,该优化可以通过混合优化而进行1140。作为备选的方案,该优化可以是另一并行或串行类型的优化。在执行优化1140之后,关于失真度量具有最低拉格朗日代价的模式被保存和选择1155,并且使得所选模式1170可用。在某些实施例中,代替使得处理连续直到已经测试所有K个失真度量,处理可早期终止(其中,每一步骤消除特定数量的模式,直到仅留下一个模式)。本发明中提出的优化方法中的某些可以用于优化视频压缩系统中的各种模式决定,例如选择量子化参数、运动矢量、内预测模式、编码块大小、变换、熵编码、色彩空间、等等。
图11B描述用于实现级联优化的示例处理1112的流程图。处理1112包括:从输入块接收或者存取失真度量(1102),并且基于失真度量执行并行(或混合)优化(1103)。关于失真度量具有最低拉格朗日代价的各模式得以保存(1104)。然后基于来自先前轮次的结果将各模式分等级(1106)并且重新排序(若存在)(1107)。如果存在任何更多失真度量要处理(1108),则对这些其它失真度量执行并行(混合)优化。如果不存在任何更多失真度量要处理(1108),则保存并且选择关于失真度量具有最低拉格朗日代价的模式(1109)。作为备选的方案,可以将该步骤1109描述为选择具有最佳性能的模式。可以基于剩下的失真度量的模式的性能来选择模式。
示例系统
图12描述可以采用任何所公开的技术(以及所公开的技术的任何组合)以用于在多个失真约束下的视频压缩的系统示图。所公开的技术可以用在一台或多台计算机1205A、1205B上。在此的一种或多种方法和/或算法和/或处理可以通过计算机和/或视频显示器1220、传输、处理、以及回放系统而实现,或者在其中采用。在此描述的计算机可以是任何种类的计算机,通用计算机或某些专用计算机(例如工作站)。计算机1205B可以是例如基于Intel或AMD的计算机,运行Windows XP、Vista或Linux,或者可以是Macintosh计算机。在某些实施例中,计算机也例如可以是诸如PDA 1215的手持计算机、蜂窝电话1215、或膝上计算机1205A。计算机也可以指代机器或机器的一部分,用于在特定视频数据中的图像记录或接收1225、1230、1235、处理、存储1240、以及数据的发布。
计算机和/或图形程序可以通过C或Python或Java、Brew或任何其它编程语言写成。程序可以驻留于存储介质(例如磁介质或光介质,例如计算机硬盘、可移动盘、或诸如存储棒或SD介质的介质、基于有线或无线网络或基于蓝牙的网络附连存储(NAS)、或其它可移动介质上。程序也可以运行于网络1250上,例如,其中,服务器或其它机器将通信发送到本地机器,这使得本地机器能够执行在此所描述的操作。
虽然以上仅详细公开了一些实施例,但其它实施例是可能的,并且发明人意图将它们包括在本说明书内。说明书描述了用于完成可以通过另一方式完成的更普通的目标的特定示例。本公开意欲是示例性的,并且权利要求意图覆盖任何修改或替换。
可以通过包括此说明书中所公开的结构及其结构等同物的数字电子电路、或计算机软件、固件、或硬件、或它们中的一个或多个的组合实现此说明书中描述的主题内容和功能操作的实施例。此说明书中所描述的主题内容的实施例可被实现为一个或多个计算机程序产品、例如在计算机可读介质上编码的计算机程序指令的一个或多个模块,以用于由数据处理装置执行或者控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备1240,机器可读存储基片,存储器设备,作用于机器可读传输的、处理的通信的物质的合成,或它们中的一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备以及机器,通过示例的方式包括可编程处理器、计算机、或多个处理器或计算机。除了硬件之外,装置还可以包括创建用于所讨论的计算程序的执行环境的代码,例如构成处理器固件、协议栈、图形系统、数据库管理系统、操作系统、或它们中的一个或多个的组合的代码。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以通过任意形式的编程语言(包括编译语言或解释语言)而写成,并且可以通过任意形式(包括作为单机程序或作为模块、组件、子程序或适于在计算环境中使用的其它单元)而被部署。计算机程序不一定对应于文件系统中的文件。程序可以存储于保存其他程序或数据的文件的一部分(例如标记语言文档中存储的一个或多个脚本)中、专用于所讨论的程序的单个文件中、或多个协作的文件(例如存储一个或多个模块、子程序、或一部分代码的文件)中。计算机程序可以被部署为在一台计算机或多台计算机上被执行,所述多台计算机位于一个站点处、或者跨多个站点分布并且通过通信网络互相连接。
说明书中描述和叙述的处理和逻辑流以及附图可以通过执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过在对输入数据进行操作并且生成输出来执行功能。所述处理和逻辑流也可以通过专用逻辑电路(例如FPGA(现场可编程门阵列))或其它可编程逻辑器件(PLD)(例如微控制器)或ASIC(专用集成电路)来执行,并且装置也可以实现为这些电路或器件。
适合于执行计算机程序的处理器通过示例的方式包括通用微处理器和专用微处理器、以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器可以从只读存储器或随机存取存储器或二者接收指令和数据。计算机的必要元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器。通常,计算机也可以包括用于存储数据的一个或多个大规模存储设备(例如磁盘、磁光盘、或光盘),或者可操作地耦合为从所述大规模存储设备接收数据或者将数据发送至所述大规模存储设备,或兼而有之。然而,计算机无需一定具有这些设备。此外,计算机可被嵌入另一设备(例如移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收机),这仅列出少量几个。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,通过示例的方式包括半导体存储器设备(例如EPROM、EEPROM、闪速存储器设备);磁盘(例如内部硬盘或可移动盘);磁光盘;以及CD ROM盘和DVD-ROM盘。处理器和存储器可以增添有专用逻辑电路,或者被合并到专用逻辑电路。
为了提供与用户的交互,可以在具有用于将信息显示给用户的显示设备(例如CRT(阴极射线管)、LCD(液晶显示器)、或等离子体显示监视器1220)以及用户可以用于将输入提供给计算机的键盘和选择器(例如指点设备、鼠标或轨迹球)的计算机中实现本说明书中所描述的主题内容的某些实施例。其它种类的设备同样可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且来自用户的输入可以通过任何形式(包括声学、话语、或触觉输入)而接收。
可以在计算系统中实现本说明书中所描述的主题内容的某些实施例,所述计算系统包括后端组件(例如数据服务器),或者包括中间件组件(例如应用服务器),或者包括前端组件(例如具有图形用户接口或Web浏览器的客户机计算机,用户可以通过所述图形用户接口或Web浏览器与该说明书中所描述的主题内容的实施例交互),或者一个或多个这样的后端组件、中间件组件或前端组件的任何组合。系统的各组件可以通过数字数据通信的形式或介质(例如通信网络)而互相连接。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”,例如因特网)。
计算系统可以包括客户机和服务器。客户机和服务器通常彼此远离,并且典型地通过通信网络而交互。客户机与服务器的关系依靠运行于相应的计算机上并且彼此具有客户机-服务器关系的计算机程序而发生。
虽然本公开包含很多细节,但这些细节不应被理解为限制所要求保护的范围或者被理解为是所要求保护的范围,这些细节应该被理解为对于本发明特定实施例的具体特征的描述。在该说明书中在分开的实施例的上下文中描述的特定的各特征也可以在单个实施例中被组合实现。反之,在单个实施例的上下文中描述的各个特征也可以分离地在多个实施例中实现或者在任何合适的子组合中实现。此外,虽然各特征可以如上描述为作用于特定实施例中并且甚至最初请求如此保护,但是来自所要求保护的组合的一个或多个特征可以在某些情况下脱离该组合,并且所要求保护的组合可以称为子组合或子组合的变形。
相似地,虽然以特定顺序在附图中描述了各操作,但不应理解为要求这些操作以所示的特定顺序或以相继顺序执行,或者执行所有示出的操作,以实现期望的结果。在特定情况下,多任务和并行处理可以是有利的。此外,上述实施例中的各个系统组件的分离不应理解为要求在所有实施例中的这种分离,而应理解为所描述的程序组件和系统一般可以一起集成在单个软件或硬件产品中,或者封装到多个软件或硬件产品中。
术语“算法”可以指代步骤、方法、处理、方案、过程、操作、程序、方针、技术、序列、和/或一组规则或指令,用于实现在此描述的结果。例如,算法可以是一组视频处理指令,用于硬件和/或软件视频处理器。所公开的算法可以和视频有关,并且可以在与视频有关的系统和/或制造的任何设备、机器、硬件和/或物体中被生成、实现、关联和/或采用,以用于对于视频数据的处理、压缩、存储、发送、接收、测试、校准、显示和/或任何改进中的任何组合。
在此描述的技术和系统可以进一步延伸到其它多媒体应用(例如音频压缩和处理)中的优化。本公开中提出的各种类型的拉格朗日代价公式的一个或多个实施例可以考虑各种显示、处理和/或失真特性。
本发明实施例可以与以下所列举的示例实施例中的一个或多个有关。
1.一种用于视频编码的方法,包括:
使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合;
使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合;
基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择所述多个编码模式之一;以及
使用所选编码模式对像素块进行编码。
2.所列举的示例实施例的方法,其中,所述第一拉格朗日代价值和第二拉格朗日代价值包括不同的比特目标速率。
3.所列举的示例实施例的方法,其中,所述失真度量包括与视频显示器的特性关联的信息,所述视频显示器的特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
4.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
5.所列举的示例实施例的方法,其中,模式的选择包括:基于将用于视频显示器的特性的失真度量的信息关联于视频显示器的相似特性而选择失真度量的第一子集。
6.所列举的示例实施例的方法,其中,模式的选择包括:将所述多个编码模式分等级。
7.所列举的示例实施例的方法,还包括:
使用第三失真度量确定所述多个编码模式的拉格朗日代价值的第三集合;
使用第四失真度量确定所述多个编码模式的拉格朗日代价值的第四集合;
基于所述拉格朗日代价值的集合选择所述多个编码模式之一;以及
使用所选编码模式对第二像素块进行编码。
8.一种用于视频编码的方法,包括:
将压缩后的比特流从视频编码器发送到多个通道,其中,所述通道包括目标比特率和多个失真度量;
将来自所述通道之一的失真度量之一匹配于第一视频显示器的特性;以及
将视频数据发送到第一视频显示器,所述第一视频显示器带有匹配所述第一视频显示器的特性的失真度量。
9.所列举的示例实施例0的方法,其中,所述多个失真度量包括与视频显示器的特性关联的信息,所述特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
10.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
11.所列举的示例实施例的方法,还包括:
在发送所述压缩后的比特流之前,使用拉格朗日代价函数对像素块进行编码,其中,所述拉格朗日代价函数包括来自编码的失真信息,所述编码包含带有多个失真度量的多个模式,所述编码具有对应的比特目标速率。
12.所列举的示例实施例的方法,还包括:基于将所述视频显示器的特性的失真度量的信息关联于第一视频显示器的相似特性而对每一通道中的多个失真度量分等级,其中,来自一个通道的一个失真度量的匹配包括:选择最高等级的失真度量。
13.所列举的示例实施例的方法,还包括:消除不匹配的失真度量。
14.一种在多个失真约束下的视频编码的方法,所述方法包括:
将失真度量关联于多个候选模式,其中,各失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
15.所列举的示例实施例0的方法,其中,所述排序基于将视频显示器的特性关联于失真度量特性。
16.所列举的示例实施例0的方法,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
17.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
18.一种在多个失真约束下的视频编码的方法,所述方法包括:
处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数;
将所述第一拉格朗日代价函数与阈值进行比较;
如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式;以及
如果所述第一拉格朗日代价函数小于所述阈值,则确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
19.所列举的示例实施例的方法,还包括:
将所述第二拉格朗日代价函数与阈值进行比较;
如果所述第二拉格朗日代价函数大于所述阈值,则消除带有所述第二失真度量的模式;以及
如果所述第二拉格朗日代价函数小于所述阈值,则通过处理所述视频信息来确定带有第三失真度量的第一模式的第三拉格朗日代价函数。
20.一种在多个失真约束下的视频编码的方法,所述方法包括:
对于带有多个失真度量的多个模式,对于所述多个模式中的每一个,
处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数;
将每一拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有模式的所有失真度量。
21.所列举的示例实施例的方法,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
22.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
23.所列举的示例实施例的方法,其中,对于所保存的带有失真度量的各模式,所述方法还包括:选择所保存的带有所述失真度量的模式的子集,以输出到与将视频信息呈现于视频显示器上关联的组件。
24.所列举的示例实施例的方法,还包括:对于一个或多个模式或者对于一个或多个失真度量调整阈值之值。
25.所列举的示例实施例的方法,其中,所述阈值是与宏块关联的失真的函数,其中,所述阈值函数包括作为所述宏块的邻块的各宏块的失真的相关性的测量。
26.一种视频编码方法,包括:
使用统计量来标识对于并行优化编码在统计上不太可能被选择的一个或多个编码模式;
对于在统计上可能被选择的一个或多个编码模式,根据并行优化编码来处理一个或多个编码模式;
对于统计上不太可能被选择的一个或多个模式,采用串行优化编码;以及
使用性能准则来从所述并行优化编码与所述串行优化编码选择模式的子集。
27.所列举的示例实施例的方法,其中,所述串行优化编码包括:
对于用于一个或多个编码模式的多个失真度量,
处理视频信息,以确定带有每一编码模式的失真度量的拉格朗日代价函数;
将每一相应的拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应的编码模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应的编码模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有编码模式的所有失真度量。
28.所列举的示例实施例的方法,其中,所述并行优化编码包括:
同时存取带有多个失真度量的一个或多个模式;
将多个失真度量关联于多个候选模式,其中,所述多个失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的多个候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
29.所列举的示例实施例的方法,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
30.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
31.一种视频编码方法,包括:
存取包括第一失真度量的比特流;
同时处理与所述第一失真度量关联的第一多个模式的拉格朗日代价函数;
比较所述第一多个模式的各拉格朗日代价函数,其中,所述比较包括:对第一多个模式的拉格朗日代价函数分等级;
基于所述比较从所述第一多个模式选择第一模式子集;
基于来自先前模式分等级的数据安排第一模式子集的顺序;
使用第二失真度量同时处理第一模式子集的拉格朗日代价函数;
比较第一模式子集的各拉格朗日代价函数,其中,所述比较包括:将第一模式子集的拉格朗日代价函数分等级;
基于将第一模式子集的拉格朗日代价函数分等级从所述第一多个模式选择第二模式子集;以及
基于来自先前模式分等级的数据安排第二模式子集的顺序。
32.所列举的示例实施例的方法,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
33.所列举的示例实施例的方法,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
34.一种计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置执行用于视频编码的操作的指令,所述操作包括:
使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合;
使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合;
基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择所述多个编码模式之一;以及
使用所选编码模式对像素块进行编码。
35.所列举的示例实施例的计算机程序产品,其中,所述第一拉格朗日代价值和第二拉格朗日代价值包括不同的比特目标速率。
36.所列举的示例实施例的计算机程序产品,其中,所述失真度量包括与视频显示器的特性关联的信息,所述视频显示器的特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
37.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
38.所列举的示例实施例的计算机程序产品,其中,模式的选择包括操作:基于将视频显示器的特性的失真度量的信息关联于视频显示器的相似特性而选择失真度量的第一子集。
39.所列举的示例实施例的计算机程序产品,其中,模式的选择包括操作:将所述多个编码模式分等级。
40.所列举的示例实施例的计算机程序产品,所述操作还包括:
使用第三失真度量确定所述多个编码模式的拉格朗日代价值的第三集合;
使用第四失真度量确定所述多个编码模式的拉格朗日代价值的第四集合;
基于拉格朗日代价值的这些集合选择所述多个编码模式之一;以及
使用所选编码模式对第二像素块进行编码。
41.一种计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置执行用于视频编码的操作的指令,所述操作包括:
将压缩后的比特流从视频编码器发送到多个通道,其中,所述通道包括目标比特率和多个失真度量;
将来自所述通道之一的所述失真度量之一匹配于第一视频显示器的特性;以及
将视频数据发送到第一视频显示器,所述第一视频显示器带有匹配所述第一视频显示器的特性的失真度量。
42.所列举的示例实施例的计算机程序产品,所述多个失真度量包括与视频显示器的特性关联的信息,所述特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
43.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
44.所列举的示例实施例的计算机程序产品,所述操作还包括:
在发送所述压缩后的比特流之前,使用拉格朗日代价函数对像素块进行编码,其中,所述拉格朗日代价函数包括来自编码的失真信息,所述编码包含带有多个失真度量的多个模式,所述编码具有对应的比特目标速率。
45.所列举的示例实施例的计算机程序产品,所述操作还包括:基于将所述视频显示器的特性的失真度量的信息关联于第一视频显示器的相似特性而对每一通道中的多个失真度量分等级,其中,匹配来自一个通道的一个失真度量包括:选择最高等级的失真度量。
46.所列举的示例实施例的计算机程序产品,所述操作还包括:消除不匹配的失真度量。
47.一种计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置在多个失真约束下执行用于视频编码的操作的指令,所述操作包括:
将失真度量关联于多个候选模式,其中,各失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
48.所列举的示例实施例的计算机程序产品,其中,所述分等级基于将视频显示器的特性关联于失真度量特性。
49.所列举的示例实施例的计算机程序产品,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
50.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
51.一种计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置在多个失真约束下执行用于视频编码的操作的指令,所述操作包括:
处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数;
将所述第一拉格朗日代价函数与阈值进行比较;
如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式;以及
如果所述第一拉格朗日代价函数小于所述阈值,则确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
52.所列举的示例实施例的计算机程序产品,所述操作还包括:
将所述第二拉格朗日代价函数与阈值进行比较;
如果所述第二拉格朗日代价函数大于所述阈值,则消除带有所述第二失真度量的模式;以及
如果所述第二拉格朗日代价函数小于所述阈值,则通过处理所述视频信息来确定带有第三失真度量的第一模式的第三拉格朗日代价函数。
53.一种计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置在多个失真约束下执行用于视频编码的操作的指令,所述操作包括:
对于带有多个失真度量的多个模式,对于所述多个模式中的每一个,
处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数;
将每一拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有模式的所有失真度量。
54.所列举的示例实施例的计算机程序产品,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
55.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
56.所列举的示例实施例的计算机程序产品,其中,对于所保存的带有失真度量的各模式,所述操作还包括:选择所保存的带有失真度量的模式的子集,以输出到与将视频信息呈现于视频显示器上关联的组件。
57.所列举的示例实施例的计算机程序产品,所述操作还包括:对于一个或多个模式或者一个或多个失真度量调整阈值之值。
58.所列举的示例实施例的计算机程序产品,其中,所述阈值是与宏块关联的失真的函数,其中,所述阈值函数包括用于作为所述宏块的邻块的各宏块的失真的相关性的测量。
59.一种视频编码计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置执行用于视频编码的操作的指令,所述操作包括:
使用统计量来标识对于并行优化编码在统计上不太可能被选择的一个或多个编码模式;
对于在统计上可能被选择的一个或多个编码模式,根据并行优化编码来处理一个或多个编码模式;
对于统计上不太可能被选择的一个或多个模式,采用串行优化编码;以及
使用性能准则来从所述并行优化编码与所述串行优化编码选择模式的子集。
60.所列举的示例实施例的计算机程序产品,其中,所述串行优化编码的操作包括:
对于用于一个或多个编码模式的多个失真度量,
处理视频信息,以确定带有每一编码模式的失真度量的拉格朗日代价函数;
将每一相应的拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应的编码模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应的编码模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有编码模式的所有失真度量。
61.所列举的示例实施例的计算机程序产品,其中,所述并行优化编码的操作包括:
同时存取带有多个失真度量的一个或多个模式;
将多个失真度量关联于多个候选模式,其中,所述多个失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的多个候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
62.所列举的示例实施例的计算机程序产品,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
63.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
64.一种视频编码计算机程序产品,可触知地编码在计算机可读介质中,包括用于使得数据处理装置执行用于视频编码的操作的指令,所述操作包括:
存取包括第一失真度量的比特流;
同时处理与所述第一失真度量关联的第一多个模式的拉格朗日代价函数;
比较所述第一多个模式的各拉格朗日代价函数,其中,所述比较包括:将第一多个模式的各拉格朗日代价函数分等级;
基于所述比较从所述第一多个模式选择第一模式子集;
基于来自先前模式分等级的数据安排第一模式子集的顺序;
使用第二失真度量同时处理第一模式子集的拉格朗日代价函数;
比较第一模式子集的各拉格朗日代价函数,其中,所述比较包括:将第一模式子集的拉格朗日代价函数分等级;
基于将第一模式子集的拉格朗日代价函数分等级从所述第一多个模式选择第二模式子集;以及
基于来自先前模式分等级的数据安排第二模式子集的顺序。
65.所列举的示例实施例的计算机程序产品,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
66.所列举的示例实施例的计算机程序产品,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
67.一种用于视频编码的系统,包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合;
使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合;
基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择所述多个编码模式之一;以及
使用所选编码模式对像素块进行编码。
68.所列举的示例实施例的系统,其中,所述第一拉格朗日代价值和第二拉格朗日代价值包括不同的比特目标速率。
69.所列举的示例实施例的系统,其中,所述失真度量包括与视频显示器的特性关联的信息,所述视频显示器的特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
70.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
71.所列举的示例实施例的系统,其中,用于模式的选择的指令包括用于基于将视频显示器的特性的失真度量的信息关联于视频显示器的相似特性而选择失真度量的第一子集的指令。
72.所列举的示例实施例的系统,其中,模式的选择包括用于将所述多个编码模式分等级的指令。
73.所列举的示例实施例的系统,所述指令还包括:
使用第三失真度量确定所述多个编码模式的拉格朗日代价值的第三集合;
使用第四失真度量确定所述多个编码模式的拉格朗日代价值的第四集合;
基于拉格朗日代价值的这些集合选择所述多个编码模式之一;以及
使用所选编码模式对第二像素块进行编码。
74.一种用于视频编码的系统,包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
将压缩后的比特流从视频编码器发送到多个通道,其中,所述通道包括目标比特率和多个失真度量;
将来自所述通道之一的所述失真度量之一匹配于第一视频显示器的特性;以及
将视频数据发送到第一视频显示器,所述第一视频显示器带有匹配所述第一视频显示器的特性的失真度量。
75.所列举的示例实施例的系统,所述多个失真度量包括与视频显示器的特性关联的信息,所述特性包括屏幕显示器大小、视频显示器的视频处理性能的测量、显示器的失真特性、视频显示器的时间特性、或视频显示器的空间特性。
76.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
77.所列举的示例实施例的系统,所述指令还包括:
在发送所述压缩后的比特流之前,使用拉格朗日代价函数对像素块进行编码,其中,所述拉格朗日代价函数包括来自编码的失真信息,所述编码包含带有多个失真度量的多个模式,所述编码具有对应的比特目标速率。
78.所列举的示例实施例的系统,所述指令还包括:基于将所述视频显示器的特性的失真度量的信息关联于第一视频显示器的相似特性而对每一通道中的多个失真度量分等级,其中,匹配来自一个通道的一个失真度量包括用于选择最高等级的失真度量的指令。
79.所列举的示例实施例的系统,所述指令还包括:消除不匹配的失真度量。
80.一种用于在多个失真约束下的视频编码的系统,所述系统包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
将失真度量关联于多个候选模式,其中,各失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
81.所列举的示例实施例的系统,其中,所述排序基于将视频显示器的特性关联于失真度量特性。
82.所列举的示例实施例的系统,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
83.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
84.一种在多个失真约束下的视频编码的系统,所述系统包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数;
将所述第一拉格朗日代价函数与阈值进行比较;
如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式;以及
如果所述第一拉格朗日代价函数小于所述阈值,则确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
85.所列举的示例实施例的系统,所述指令还包括:
将所述第二拉格朗日代价函数与阈值进行比较;
如果所述第二拉格朗日代价函数大于所述阈值,则消除带有所述第二失真度量的模式;以及
如果所述第二拉格朗日代价函数小于所述阈值,则通过处理所述视频信息来确定带有第三失真度量的第一模式的第三拉格朗日代价函数。
86.一种在多个失真约束下的视频编码的系统,所述系统包括用于处理指令的一个或多个组件,所述指令包括:
对于带有多个失真度量的多个模式,对于所述多个模式中的每一个,
处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数;
将每一拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有模式的所有失真度量。
87.所列举的示例实施例的系统,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
88.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
89.所列举的示例实施例的系统,其中,对于所保存的带有失真度量的各模式,所述系统还包括:选择所保存的带有失真度量的模式的子集,以输出到与将视频信息呈现于视频显示器上关联的组件。
90.所列举的示例实施例的系统,所述指令还包括:对于一个或多个模式或者对于一个或多个失真度量调整阈值之值。
91.所列举的示例实施例的系统,其中,所述阈值是与宏块关联的失真的函数,其中,所述阈值函数包括作为所述宏块的邻块的各宏块的失真的相关性的测量。
92.一种用于在多个失真约束下的视频编码的视频编码系统,所述系统包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
使用统计量来标识对于并行优化编码在统计上不太可能被选择的一个或多个编码模式;
对于在统计上可能被选择的一个或多个编码模式,根据并行优化编码来处理一个或多个编码模式;
对于统计上不太可能被选择的一个或多个模式,采用串行优化编码;以及
使用性能准则来从所述并行优化编码与所述串行优化编码选择模式的子集。
93.所列举的示例实施例的系统,其中,用于所述串行优化编码的指令包括:
对于用于一个或多个编码模式的多个失真度量,
处理视频信息,以确定带有每一编码模式的失真度量的拉格朗日代价函数;
将每一相应的拉格朗日代价函数与阈值进行比较;
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应的编码模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应的编码模式的后续拉格朗日代价函数,
其中,相应的各拉格朗日代价函数得以串行确定,并且与所述阈值进行比较,直到已经比较或者消除了所有编码模式的所有失真度量。
94.所列举的示例实施例的系统,其中,用于并行优化编码的指令包括:
同时存取带有多个失真度量的一个或多个模式;
将多个失真度量关联于多个候选模式,其中,所述多个失真度量中的每一个关联于一组候选模式;
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;
对于每一失真度量,根据拉格朗日代价函数将每一组内的多个候选模式分等级;
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
95.所列举的示例实施例的系统,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
96.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
97.一种视频编码系统,所述系统包括用于处理用于视频编码的指令的一个或多个组件,所述用于处理指令的一个或多个组件用于:
存取包括第一失真度量的比特流;
同时处理与所述第一失真度量关联的第一多个模式的拉格朗日代价函数;
比较所述第一多个模式的各拉格朗日代价函数,其中,所述比较包括:将第一多个模式的各拉格朗日代价函数分等级;
基于所述比较从所述第一多个模式选择第一模式子集;
基于来自先前模式分等级的数据安排第一模式子集的顺序;
使用第二失真度量同时处理第一模式子集的拉格朗日代价函数;
比较第一模式子集的各拉格朗日代价函数,其中,所述比较包括:将第一模式子集的拉格朗日代价函数分等级;
基于将第一模式子集的拉格朗日代价函数分等级从所述第一多个模式选择第二模式子集;以及
基于来自先前模式分等级的数据安排第二模式子集的顺序。
98.所列举的示例实施例的系统,其中,所述失真度量包括与视频显示器特性关联的信息,所述视频显示器特性包括屏幕显示器大小、视频处理性能的测量、失真特性、时间特性、或空间特性。
99.所列举的示例实施例的系统,其中,所述失真度量还包括与多个视频显示器的特性关联的信息,所述多个视频显示器的特性包括用于所述多个视频显示器的用法的参数,用于指示视频显示器中的一个或多个的重要性的参数、用于视频显示器的设计类型的参数、用于多个视频显示器的显示技术类型的参数、以及用于使用所述特性的任何组合对所述多个视频显示器分等级的参数。
100.一种方法,包括以下步骤:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述通道接收视频比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码。
101.如所列举的示例实施例100中所述的方法,其中,确定集合的步骤包括以下步骤:
使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合;以及
使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合;
其中,选择失真度量步骤包括:基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择所述多个编码模式之一;以及
其中,编码步骤包括:使用所选编码模式对像素块进行编码。
102.如所列举的示例实施例100中所述的方法,还包括以下步骤:
将压缩后的比特流从视频编码器发送到多个通道,其中,所述通道包括目标比特率和多个失真度量;
将来自所述通道之一的所述失真度量之一匹配于第一视频显示器的特性;以及
将视频数据发送到第一视频显示器,所述第一视频显示器带有匹配所述第一视频显示器的特性的失真度量。
103.如所列举的示例实施例100中所述的方法,其中,视频编码在多个失真约束下得以执行,其中,确定集合包括以下步骤:
将失真度量关联于多个候选模式,其中,所述失真度量中的每一个关联于一组候选模式;以及
其中,所述方法还包括以下步骤:
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;以及
对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级;
其中,选择失真度量的步骤包括以下步骤:
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
104.如所列举的示例实施例100中所述的方法,其中,确定集合的步骤包括以下步骤:
处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数;以及
其中,选择失真度量的步骤包括以下步骤:
将所述第一拉格朗日代价函数与阈值进行比较;以及
如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式;以及
如果所述第一拉格朗日代价函数小于所述阈值,则确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
105.如所列举的示例实施例100中所述的方法,其中,确定集合的步骤包括步骤:
对于多个模式,处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数,其中,每一节点具有多个失真度量;
其中,选择失真度量的步骤包括以下步骤:
将每一拉格朗日代价函数与阈值进行比较;以及
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应模式的后续拉格朗日代价函数,以及
其中,相应的各拉格朗日代价函数被串行地确定,并且被与所述阈值进行比较,直到已经比较或者消除了所有模式的所有失真度量。
106.一种系统,包括:
用于确定用于以下项中的至少一项的与图像有关的失真度量的集合的装置:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
用于基于以下项中的一项或多项从所述失真度量集合当中选择失真度量的装置:
与所述视频编码模式关联的代价估计;或
与所述通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述通道接收所述视频比特流;以及
用于基于所选失真度量对像素块或者并非基于块的图像部分进行编码的装置;或
用于执行如所列举的示例实施例100-105中的一项或多项所述的步骤中的一个或多个的装置。
107.一种视频编码器,包括:
至少一个处理器;以及
计算机可读存储介质,所述计算机可读存储介质包括已编码指令,所述已编码指令当以所述至少一个处理器执行时,使得所述视频编码器执行包括以下步骤的处理:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述通道接收所述视频比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码;或
如所列举的示例实施例100-105中的一项或多项中所述的一个或多个步骤。
108.一种计算机可读存储介质产品,所述计算机可读存储介质产品包括指令,所述指令当以至少一个处理器执行时,使得所述视频编码器执行包括以下步骤的处理:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述通道接收所述视频比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码;或
执行如所列举的示例实施例100-105中的一项或多项中所述步骤中的一个或多个。
109.一种视频编码或计算装置,包括:
处理组件;
以及,组件可读存储介质,所述组件可读存储介质包括已编码指令,所述已编码指令当以所述处理组件执行时,使得所述装置执行包括以下操作的步骤:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述通道接收所述视频比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码;或
如所列举的示例实施例100-105中的一项或多项中所述的一个或多个步骤。
扩展、改动和杂项
因此而描述了与在多个失真约束下的视频压缩有关的示例实施例。在前面说明书中,已经参照大量可以在各实现方式之间变化的具体细节描述了本发明的示例实施例。因此,什么是本发明以及本申请人意图本发明是什么的唯一的且排他的指示为本申请所发布的特定形式的权利要求集,在所述特定形式的权利要求集中,这样的权利要求发布,包括任何后续的修正。这里对这样的权利要求中所包含的术语明确阐述的任何定义应该决定权利要求中所使用的这样的术语的意义。因此,没有在权利要求中明确陈述的限制、元件、属性、特征、优点或性质不应该以任何方式限制这样的权利要求的范围。因此,应该以说明性而不是限制性意义来看待说明书和附图。
Claims (10)
1.一种用于视频编码的方法,包括以下步骤:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量的集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述多个通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述多个通道之一接收比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码。
2.如权利要求1中所述的方法,其中,确定集合的步骤包括以下步骤:
使用第一失真度量确定多个编码模式的拉格朗日代价值的第一集合;以及
使用第二失真度量确定所述多个编码模式的拉格朗日代价值的第二集合;
其中,选择失真度量的步骤包括:基于拉格朗日代价值的所述第一集合以及拉格朗日代价值的所述第二集合选择所述多个编码模式之一;以及
其中,编码步骤包括:使用所选编码模式对像素块进行编码。
3.如权利要求1中所述的方法,还包括以下步骤:
将压缩后的比特流从视频编码器发送到所述多个通道,其中,所述多个通道包括目标比特率和多个失真度量;
将来自所述多个通道之一的所述失真度量之一匹配于第一视频显示器的特性;以及
将视频数据发送到第一视频显示器,所述第一视频显示器带有匹配所述第一视频显示器的特性的失真度量。
4.如权利要求1中所述的方法,其中,视频编码在多个失真约束下得以执行,其中,确定集合包括以下步骤:
将失真度量关联于多个候选模式,其中,所述失真度量中的每一个关联于一组候选模式;以及
其中,所述方法还包括以下步骤:
同时处理具有相应的拉格朗日代价函数的所述多个候选模式;以及
对于每一失真度量,根据拉格朗日代价函数将每一组内的候选模式分等级;
其中,选择失真度量的步骤包括以下步骤:
对每一候选模式组当中的各候选模式的等级进行比较;
选择带有最高等级的候选模式组;以及
基于选择所选候选模式组内的最高等级的候选模式而选择视频显示器的目标模式。
5.如权利要求1中所述的方法,其中,确定集合的步骤包括以下步骤:
处理视频信息的比特流,以确定带有第一失真度量的第一模式的第一拉格朗日代价函数;以及
其中,选择失真度量的步骤包括以下步骤:
将所述第一拉格朗日代价函数与阈值进行比较;以及
如果所述第一拉格朗日代价函数大于所述阈值,则消除带有所述第一失真度量的模式;以及
如果所述第一拉格朗日代价函数小于所述阈值,则确定带有第二失真度量的第一模式的第二拉格朗日代价函数。
6.如权利要求1中所述的方法,其中,确定集合的步骤包括以下步骤:
对于多个模式,处理视频信息的比特流,以确定带有每一模式的失真度量的拉格朗日代价函数,其中,每一模式具有多个失真度量;
其中,选择失真度量的步骤包括以下步骤:
将每一拉格朗日代价函数与阈值进行比较;以及
如果相应的拉格朗日代价函数大于所述阈值,则消除带有相应的失真度量的相应模式;以及
如果相应的拉格朗日代价函数小于所述阈值,则确定带有后续失真度量的相应模式的后续拉格朗日代价函数,以及
其中,相应的各拉格朗日代价函数被串行地确定,并且被与所述阈值进行比较,直到已经比较或者消除了所有模式的所有失真度量。
7.一种用于视频编码的系统,包括:
用于确定用于以下项中的至少一项的与图像有关的失真度量的集合的装置:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
用于基于以下项中的一项或多项从所述失真度量的集合当中选择失真度量的装置:
与所述视频编码模式关联的代价估计;或
与所述多个通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述多个通道之一接收所述比特流;以及
用于基于所选失真度量对像素块或者并非基于块的图像部分进行编码的装置。
8.一种视频编码器,包括:
用于确定用于以下项中的至少一项的与图像有关的失真度量的集合的至少一个部件:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
用于基于以下项中的一项或多项从所述失真度量集合当中选择失真度量的至少一个部件:
与所述视频编码模式关联的代价估计;或
与所述多个通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述多个通道之一接收所述比特流;以及
用于基于所选失真度量对像素块或者并非基于块的图像部分进行编码的至少一个部件。
9.一种计算机或视频编码器的用途,包括:
确定用于以下项中的至少一项的与图像有关的失真度量的集合:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
基于以下项中的一项或多项从所述失真度量集合当中选择失真度量:
与所述视频编码模式关联的代价估计;或
与所述多个通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述多个通道之一接收所述比特流;以及
基于所选失真度量对像素块或者并非基于块的图像部分进行编码。
10.一种计算装置,包括:
用于确定用于以下项中的至少一项的与图像有关的失真度量的集合的至少一个部件:
多个视频编码模式中的每一个;或
被配置为从视频编码器接收编码后的比特流的多个通道中的每一个;
用于基于以下项中的一项或多项从所述失真度量的集合当中选择失真度量的至少一个部件:
与所述视频编码模式关联的代价估计;或
与所述多个通道之一关联的目标比特率,所述目标比特率对应于视频显示器的一个或多个特性,所述视频显示器从所述多个通道之一接收所述比特流;以及
用于基于所选失真度量对像素块或者并非基于块的图像部分进行编码的至少一个部件。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7443008P | 2008-06-20 | 2008-06-20 | |
US61/074,430 | 2008-06-20 | ||
PCT/US2009/047755 WO2009155398A1 (en) | 2008-06-20 | 2009-06-18 | Video compression under multiple distortion constraints |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012103796644A Division CN102905131A (zh) | 2008-06-20 | 2009-06-18 | 在多个失真约束下的视频压缩 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102067603A CN102067603A (zh) | 2011-05-18 |
CN102067603B true CN102067603B (zh) | 2012-11-14 |
Family
ID=41011911
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012103796644A Pending CN102905131A (zh) | 2008-06-20 | 2009-06-18 | 在多个失真约束下的视频压缩 |
CN2009801228934A Expired - Fee Related CN102067603B (zh) | 2008-06-20 | 2009-06-18 | 在多个失真约束下的视频压缩 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012103796644A Pending CN102905131A (zh) | 2008-06-20 | 2009-06-18 | 在多个失真约束下的视频压缩 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8594178B2 (zh) |
EP (3) | EP2439952A3 (zh) |
JP (1) | JP5253571B2 (zh) |
CN (2) | CN102905131A (zh) |
AT (1) | ATE536048T1 (zh) |
WO (1) | WO2009155398A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2229786B1 (en) * | 2008-01-18 | 2012-07-25 | Thomson Licensing | Method for assessing perceptual quality |
WO2012122423A1 (en) | 2011-03-10 | 2012-09-13 | Dolby Laboratories Licensing Corporation | Pre-processing for bitdepth and color format scalable video coding |
US20100149301A1 (en) * | 2008-12-15 | 2010-06-17 | Microsoft Corporation | Video Conferencing Subscription Using Multiple Bit Rate Streams |
CN101778275B (zh) * | 2009-01-09 | 2012-05-02 | 深圳市融创天下科技股份有限公司 | 一种自适应时间域和空间域分辨率框架的图像处理方法 |
KR101418104B1 (ko) * | 2010-03-08 | 2014-07-16 | 에스케이 텔레콤주식회사 | 움직임 벡터 해상도 조합을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
US8947492B2 (en) * | 2010-06-18 | 2015-02-03 | Microsoft Corporation | Combining multiple bit rate and scalable video coding |
KR101531240B1 (ko) * | 2010-07-27 | 2015-06-25 | 한국전자통신연구원 | 디지털 방송 시스템에서 다시점 프로그램을 송수신하는 방법 및 장치 |
US20130194386A1 (en) * | 2010-10-12 | 2013-08-01 | Dolby Laboratories Licensing Corporation | Joint Layer Optimization for a Frame-Compatible Video Delivery |
WO2012122421A1 (en) * | 2011-03-10 | 2012-09-13 | Dolby Laboratories Licensing Corporation | Joint rate distortion optimization for bitdepth color format scalable video coding |
US9781449B2 (en) * | 2011-10-06 | 2017-10-03 | Synopsys, Inc. | Rate distortion optimization in image and video encoding |
US9338463B2 (en) | 2011-10-06 | 2016-05-10 | Synopsys, Inc. | Visual quality measure for real-time video processing |
US8923388B2 (en) * | 2011-11-21 | 2014-12-30 | Texas Instruments Incorporated | Early stage slice cap decision in video coding |
EP2803190B1 (en) | 2012-01-09 | 2017-10-25 | Dolby Laboratories Licensing Corporation | Hybrid reference picture reconstruction method for multiple layered video coding systems |
EP2828822B1 (en) | 2012-03-21 | 2018-07-11 | Dolby Laboratories Licensing Corporation | Systems and methods for power reduction for displays |
US9491475B2 (en) * | 2012-03-29 | 2016-11-08 | Magnum Semiconductor, Inc. | Apparatuses and methods for providing quantized coefficients for video encoding |
US9392286B2 (en) | 2013-03-15 | 2016-07-12 | Magnum Semiconductor, Inc. | Apparatuses and methods for providing quantized coefficients for video encoding |
WO2015079395A2 (en) * | 2013-11-26 | 2015-06-04 | Telefonaktiebolaget L M Ericsson (Publ) | Distributed routing in wireless networks |
US9794575B2 (en) | 2013-12-18 | 2017-10-17 | Magnum Semiconductor, Inc. | Apparatuses and methods for optimizing rate-distortion costs in video encoding |
US9866853B2 (en) * | 2014-04-15 | 2018-01-09 | Qualcomm Incorporated | System and method for lagrangian parameter calculation for display stream compression (DSC) |
US9924175B2 (en) | 2014-06-11 | 2018-03-20 | Qualcomm Incorporated | Determining application of deblocking filtering to palette coded blocks in video coding |
US10136141B2 (en) | 2014-06-11 | 2018-11-20 | Qualcomm Incorporated | Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding |
US10264269B2 (en) | 2014-10-13 | 2019-04-16 | Apple Inc. | Metadata hints to support best effort decoding for green MPEG applications |
FR3029055B1 (fr) * | 2014-11-24 | 2017-01-13 | Ateme | Procede d'encodage d'image et equipement pour la mise en oeuvre du procede |
WO2020171046A1 (en) * | 2019-02-20 | 2020-08-27 | Panasonic Intellectual Property Corporation Of America | Image encoder and image decoder |
US11272192B2 (en) * | 2019-03-04 | 2022-03-08 | Comcast Cable Communications, Llc | Scene classification and learning for video compression |
US11363306B2 (en) * | 2019-04-05 | 2022-06-14 | Comcast Cable Communications, Llc | Methods, systems, and apparatuses for processing video by adaptive rate distortion optimization |
US11856205B2 (en) * | 2019-11-22 | 2023-12-26 | Intel Corporation | Subjective visual quality enhancement for high spatial and temporal complexity video encode |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5550590A (en) * | 1994-03-04 | 1996-08-27 | Kokusai Denshin Denwa Kabushiki Kaisha | Bit rate controller for multiplexer of encoded video |
CN1212564A (zh) * | 1997-06-13 | 1999-03-31 | 松下电器产业株式会社 | 消除等离子显示屏移动象素失真的方法及装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5506686A (en) * | 1994-11-23 | 1996-04-09 | Motorola, Inc. | Method and device for determining bit allocation in a video compression system |
US6614845B1 (en) * | 1996-12-24 | 2003-09-02 | Verizon Laboratories Inc. | Method and apparatus for differential macroblock coding for intra-frame data in video conferencing systems |
US6754241B1 (en) * | 1999-01-06 | 2004-06-22 | Sarnoff Corporation | Computer system for statistical multiplexing of bitstreams |
US6925120B2 (en) * | 2001-09-24 | 2005-08-02 | Mitsubishi Electric Research Labs, Inc. | Transcoder for scalable multi-layer constant quality video bitstreams |
US6973128B2 (en) * | 2003-02-21 | 2005-12-06 | Mitsubishi Electric Research Labs, Inc. | Multi-path transmission of fine-granular scalability video streams |
US20040258147A1 (en) * | 2003-06-23 | 2004-12-23 | Tsu-Chang Lee | Memory and array processor structure for multiple-dimensional signal processing |
KR100556340B1 (ko) * | 2004-01-13 | 2006-03-03 | (주)씨앤에스 테크놀로지 | 영상 부호화 장치 |
EP1578131A1 (en) * | 2004-03-18 | 2005-09-21 | STMicroelectronics S.r.l. | Encoding/decoding methods and systems, computer program products therefor |
WO2005099276A2 (en) * | 2004-04-02 | 2005-10-20 | Thomson Licensing | Complexity scalable video encoding |
KR100586882B1 (ko) * | 2004-04-13 | 2006-06-08 | 삼성전자주식회사 | 모션 스케일러빌리티를 지원하는 코딩 방법 및 장치 |
US7643553B2 (en) | 2004-10-27 | 2010-01-05 | Arris Group, Inc. | Optimal rate allocation for a group of channels |
US8300693B2 (en) * | 2005-01-18 | 2012-10-30 | Ecole Polytechnique Federale De Lausanne | Image transform for video coding |
US7751478B2 (en) * | 2005-01-21 | 2010-07-06 | Seiko Epson Corporation | Prediction intra-mode selection in an encoder |
JP2007081474A (ja) * | 2005-09-09 | 2007-03-29 | Toshiba Corp | 画像符号化装置及び方法 |
US8155195B2 (en) * | 2006-04-07 | 2012-04-10 | Microsoft Corporation | Switching distortion metrics during motion estimation |
US8861597B2 (en) * | 2006-09-18 | 2014-10-14 | Sharp Laboratories Of America, Inc. | Distributed channel time allocation for video streaming over wireless networks |
US8467448B2 (en) * | 2006-11-15 | 2013-06-18 | Motorola Mobility Llc | Apparatus and method for fast intra/inter macro-block mode decision for video encoding |
US7813564B2 (en) * | 2007-03-30 | 2010-10-12 | Eastman Kodak Company | Method for controlling the amount of compressed data |
US8160150B2 (en) * | 2007-04-10 | 2012-04-17 | Texas Instruments Incorporated | Method and system for rate distortion optimization |
KR101394151B1 (ko) * | 2007-10-04 | 2014-05-14 | 삼성전자주식회사 | 시감 특성을 이용한 영상 부호화 장치 및 방법 |
-
2009
- 2009-06-18 EP EP11182314.2A patent/EP2439952A3/en not_active Withdrawn
- 2009-06-18 CN CN2012103796644A patent/CN102905131A/zh active Pending
- 2009-06-18 EP EP11182309.2A patent/EP2439951A3/en not_active Withdrawn
- 2009-06-18 US US12/999,419 patent/US8594178B2/en active Active
- 2009-06-18 JP JP2011514800A patent/JP5253571B2/ja not_active Expired - Fee Related
- 2009-06-18 CN CN2009801228934A patent/CN102067603B/zh not_active Expired - Fee Related
- 2009-06-18 AT AT09767707T patent/ATE536048T1/de active
- 2009-06-18 EP EP09767707A patent/EP2297963B1/en not_active Not-in-force
- 2009-06-18 WO PCT/US2009/047755 patent/WO2009155398A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5550590A (en) * | 1994-03-04 | 1996-08-27 | Kokusai Denshin Denwa Kabushiki Kaisha | Bit rate controller for multiplexer of encoded video |
CN1212564A (zh) * | 1997-06-13 | 1999-03-31 | 松下电器产业株式会社 | 消除等离子显示屏移动象素失真的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2439952A2 (en) | 2012-04-11 |
EP2439951A2 (en) | 2012-04-11 |
JP2011525332A (ja) | 2011-09-15 |
CN102905131A (zh) | 2013-01-30 |
EP2439952A3 (en) | 2013-11-27 |
ATE536048T1 (de) | 2011-12-15 |
EP2297963B1 (en) | 2011-11-30 |
US20110103473A1 (en) | 2011-05-05 |
CN102067603A (zh) | 2011-05-18 |
JP5253571B2 (ja) | 2013-07-31 |
EP2439951A3 (en) | 2013-11-27 |
WO2009155398A1 (en) | 2009-12-23 |
EP2297963A1 (en) | 2011-03-23 |
US8594178B2 (en) | 2013-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102067603B (zh) | 在多个失真约束下的视频压缩 | |
CN102165772B (zh) | 自适应视频编码器控制 | |
US11475539B2 (en) | Electronic apparatus, system and controlling method thereof | |
US8165204B2 (en) | Resource allocation for frame-based controller | |
CN110741640B (zh) | 用于视频代码化中的运动补偿预测的光流估计 | |
US8787454B1 (en) | Method and apparatus for data compression using content-based features | |
CN103609115B (zh) | 具有基于知觉的帧内切换的模式决策的编码方法及装置 | |
CN108780499A (zh) | 基于量化参数的视频处理的系统和方法 | |
CN102742267B (zh) | 自适应运动估计 | |
KR102059066B1 (ko) | 모션 벡터 필드 코딩 방법 및 디코딩 방법, 및 코딩 및 디코딩 장치들 | |
CN104539948B (zh) | 视频处理系统和视频处理方法 | |
CN108353177A (zh) | 在显示流压缩dsc中用于降低切片边界视觉假象的系统及方法 | |
WO2020043279A1 (en) | Video fidelity measure | |
CN103596004A (zh) | Hevc中基于数学统计和分类训练的帧内预测方法及装置 | |
US11445205B2 (en) | Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium | |
CN110169059A (zh) | 视频代码化的复合预测 | |
CN104243992A (zh) | 图像处理装置及图像处理方法 | |
CN107820084A (zh) | 一种视频感知编码方法及装置 | |
Lin et al. | NR-Bitstream video quality metrics for SSIM using encoding decisions in AVC and HEVC coded videos | |
CN102413334B (zh) | 一种应用于h.264编码的亮度4×4块帧内预测模式快速选择方法 | |
US20240187640A1 (en) | Temporal structure-based conditional convolutional neural networks for video compression | |
WO2006084419A1 (en) | Method for reducing bit rate requirements for encoding multimedia data | |
Nicolas et al. | Preserving color fidelity in real-time color image compression using a ranking naturalness criterion | |
CN116962694A (zh) | 视频编码方法、装置、电子设备和存储介质 | |
EP4241451A1 (en) | Learned video compression and connectors for multiple machine tasks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180629 Address after: No. 18, Wu Sha seashore road, Changan Town, Dongguan, Guangdong Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. Address before: American California Patentee before: DOLBY LABORATORIES LICENSING Corp. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121114 |