CN105264888A - 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 - Google Patents
用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 Download PDFInfo
- Publication number
- CN105264888A CN105264888A CN201480031771.5A CN201480031771A CN105264888A CN 105264888 A CN105264888 A CN 105264888A CN 201480031771 A CN201480031771 A CN 201480031771A CN 105264888 A CN105264888 A CN 105264888A
- Authority
- CN
- China
- Prior art keywords
- color
- bit
- color space
- video
- unit
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/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/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/182—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 a pixel
-
- 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/186—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 a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
对视频序列的单元进行自适应编码的创新可改善编码效率。例如,这些创新中的一些涉及包括色彩空间在视频序列的各单元之间的自适应切换的编码。其他创新涉及包括色彩采样率在视频序列内的各单元之间的自适应切换的编码。又一些创新涉及包括比特深度在视频序列内的各单元之间的自适应切换的编码。
Description
背景
工程师使用压缩(也叫做源编码(sourcecoding或sourceencoding))来降低数字视频的比特率。压缩通过将视频信息转换成较低比特率的形式来降低存储和传送该信息的成本。解压(也被称为解码)从压缩的形式中重构一种版本的原始信息。“编解码器”是编码器/解码器***。
在过去的二十年中,已采用了各种视频编解码器标准,包括ITU-TH.261、H.262(MPEG-2或ISO/IEC13818-2)、H.263和H.264(MPEG-4AVC或ISO/IEC14496-10)标准、MPEG-1(ISO/IEC111721172-2)和MPEG-4可视(ISO/IEC14496-2)标准以及SMPTE421M(VC-1)标准。最近,H.265/HEVC标准(ITU-TH.265或ISO/IEC23008-2)已被批准。目前,(例如,用于可缩放视频编码/解码、用于在样本比特深度或色度采样率方面具有较高保真度的视频的编码/解码、用于屏幕捕捉内容、或用于多视图编码/解码的)H.265/HEVC标准的扩展处于开发中。视频编解码器标准通常定义针对经编码的视频比特流的句法的选项,从而详述当在编码和解码时使用特定特征时该比特流中的参数。在许多情况下,视频编解码器标准还提供关于解码器应当执行以在解码时取得一致的结果的解码操作的细节。除了编解码器标准外,各种专用编解码器格式定义针对经编码的视频比特流的句法的其他选项以及相应的解码操作。
视频源(诸如相机、动画输出、屏幕捕捉模块等)通常在特定色彩空间中提供视频,其中该视频的色彩分量是根据特定色彩采样率来子采样的,并且样本值具有特定比特深度。一般而言,色彩空间(有时称为色彩模型)是用于将色彩表示为每物理位置n个值的模型,其中n≥1,其中每个n值提供该位置的色彩分量值。例如,在YUV色彩空间中,亮度(或Y)分量值表示某位置处的近似亮度,且多个色度(或U和V)分量值表示该位置处的色差。或者,在RGB色彩空间中,红色(R)分量值表示某位置处的红色强度,绿色(G)分量值表示该位置处的绿色强度,并且蓝色(B)分量值表示该位置处的蓝色强度。在历史上,不同的色彩空间具有用于不同应用(诸如,显示、打印、广播和编码/解码)的优点。各样本值可使用色彩空间变换操作在各色彩空间之间转换。
色彩采样率(有时被称为色度采样率)指代各色彩分量之间的相对空间分辨率。例如,对于为4:4:4的色彩采样率,针对次要分量(例如,YUV的U和V分量)的信息与针对主要分量(例如,YUV的Y分量)的信息具有相同的空间分辨率。对于为4:2:2或4:2:0的色彩采样率,针对次要分量的信息相对于针对主要分量的信息被下采样。YUV4:2:0格式通常用于编码/解码。作为设计原理,将YUV4:2:0格式用于编码/解码的判定以下面的理解为前提:即对于大多数使用情况,查看者不会注意到用YUV4:2:0格式编码/解码的视频和用YUV4:4:4格式编码/解码的视频之间的许多视觉差异。因此,YUV4:2:0格式(其每帧具有更少的样本)的压缩优点是引人注意的。
比特深度指代每样本值比特数。常用的比特深度为每样本8比特、每样本10比特和每样本12比特。一般来说,每样本具有更多的比特允许视频的更精确的色彩粒度,但将更多的存储用于该视频。每样本具有更少的比特通常以降低的质量为代价降低比特率。
许多商业上可用的视频编码器和解码器仅支持YUV4:2:0格式。其他商业上可用的编码器和解码器(例如,针对H.264/AVC标准或H.265/HEVC标准的编码器和解码器)允许编码器为给定序列指定色彩空间、色彩采样率和比特深度。指定的色彩空间、色彩采样率和比特深度被用于整个视频序列。这些方法没有为可能在单个视频序列内处理非常不同种类的视频内容的通用编解码器***提供足够的灵活性。
概述
概要来说,该详细描述呈现了在自适应编码的领域中的创新。例如,创新中的一些涉及用于在编码期间在视频序列内的各单元之间切换色彩空间的编码器的编码器侧决策。其他创新涉及用于在编码期间在视频序列内的各单元之间切换色彩采样率的编码器的编码器侧决策。又一些创新涉及用于在编码期间在视频序列内的各单元之间切换比特深度的编码器的编码器侧决策。这些创新在许多场景下都可改善编码效率。
根据本文中描述的创新的第一方面,图像或视频编码器编码序列中的视频。在编码期间,色彩空间、色彩采样率和/或比特深度在序列内空间地和/或时间地切换。作为编码的一部分,对于序列内的视频的多个单元中的每一个,编码器执行速率-失真分析来评估单元的多个选项。多个选项可以是色彩空间、色彩采样率或比特深度、或以上的组合。对于该单元,基于所述速率-失真分析来选择所述多个选项中的一个。编码器在比特流中输出经编码的数据。视频的多个单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或视频序列的某些其他部分。
作为速率-失真分析的一部分,编码器可在评估色彩空间时执行色彩空间变换操作,在这种情况下,色彩空间可包括至少一个YUV型色彩空间和至少一个RGB型色彩空间。或者,作为速率-失真分析的一部分,编码器可在评估所述色彩空间时执行色彩平面重新排序操作,在这种情况下,色彩空间可包括多个RGB型色彩空间。或者,作为速率-失真分析的一部分,编码器评估色彩采样率,色彩采样率可包括4:4:4、4:2:2、4:2:0和4:0:0中的两个或更多个。或者,作为速率-失真分析的一部分,编码器评估比特深度,比特深度可包括每样本12比特、每样本10比特和每样本8比特中的两个或更多个。
根据本文中描述的创新的第二方面,图像或视频编码器编码序列中的视频。在编码期间,色彩空间、色彩采样率和/或比特深度在序列内空间地和/或时间地切换。作为编码的一部分,对于序列内的视频的多个单元中的每一个,编码器评估一个或多个准则来在所述单元的多个选项之间选择。多个选项可以是色彩空间、色彩采样率或比特深度、或以上的组合。对于该单元,基于评估的结果来选择所述多个选项中的一个。编码器在比特流中输出经编码的数据。视频的多个单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或视频序列的某些其他部分。
例如,作为对单元的准则进行评估的一部分,编码器确定单元的多个色彩分量中的哪一个是支配的(例如,具有最高能量、其值中具有最高方差、具有最多不同值、具有高于阈值量的不同值计数)。编码器随后挑选色彩空间中主色彩分量是单元的支配色彩分量的那个色彩空间(例如,多个RGB型色彩空间中的一个)。
或者,作为另一示例,作为对单元的准则进行评估的一部分,编码器确定单元的视频内容的类型。如果单元的视频内容的类型是低比特率自然视频,则编码器为该单元选择YUV型色彩空间。另一方面,如果单元的视频内容的类型是人工创建的视频,则编码器为该单元选择RGB型色彩空间。
或者,作为另一示例,作为对单元的准则进行评估的一部分,编码器将所述单元的一个或多个色彩分量从第一色彩采样率(例如4:4:4)下采样至第二色彩采样率(例如4:2:2或4:2:0)、将所述单元的一个或多个色彩分量从第二色彩采样率上采样至第一色彩采样率并且测量因为所述下采样导致的信息丢失。编码器至少部分基于所测得的信息丢失来挑选各色彩采样率中的一个。
或者,作为另一示例,作为对单元的准则进行评估的一部分,编码器确定单元的视频内容的类型。如果单元的视频内容的类型是自然视频,则编码器为该单元选择第一比特深度。另一方面,如果单元的视频内容的类型是人工创建的视频,则编码器为该单元选择第二比特深度,其中第二比特深度低于第一比特深度。
对色彩空间、色彩采样率和/或比特深度进行自适应切换的创新可被实现为方法的一部分、适于执行该方法的计算设备的一部分、或存储使得计算设备执行该方法的计算机可执行指令的有形计算机可读介质的一部分。各创新可以结合地或分开地使用。具体地,视频编码器和解码器可(以固定的色彩采样率和固定的比特深度)仅自适应地切换视频序列内的色彩空间。或者,视频编码器可(以固定的色彩空间和固定的比特深度)仅自适应地切换视频序列内的色彩采样率。或者,视频编码器器可(以固定的色彩空间和固定的色彩采样率)仅自适应地切换视频序列内的比特深度。或者,视频编码器可自适应地(1)切换视频序列内的色彩空间和色彩采样率,但不切换比特深度,(2)切换视频序列内的色彩空间和比特深度,但不切换色彩采样率,或(2)切换视频序列内的色彩采样率和比特深度,但不切换色彩空间。或者,视频编码器可自适应地切换视频序列内的色彩空间、色彩采样率和比特深度。
参考附图阅读以下详细描述,将更清楚本发明的前述和其他目标、特征和优点。
附图简述
图1是其中可实现所描述的一些实施例的示例计算***的示图。
图2a和2b是其中可实现所描述的一些实施例的示例网络环境的示图。
图3是结合其可实现所描述的一些实施例的示例编码器***的示图。
图4是示例解码器***的示图。
图5a和5b是示出结合其可实现所描述的一些实施例的示例视频编码器的示图。
图6是示出了示例视频解码器的框图。
图7是示出具有可为屏幕捕捉提供输入的内容的计算机桌面环境的示图。
图8是示出具有自然视频内容和人工视频内容的复合视频的示图。
图9是示出针对序列中的图片的图片自适应色彩空间、色彩采样率和/或比特深度的示图。
图10是示出针对序列中的图片的片的片自适应色彩空间、色彩采样率和/或比特深度的示图。
图11是示出针对序列中的图片的片的块的块自适应色彩空间、色彩采样率和/或比特深度的示图。
图12是示出用于在编码期间自适应地切换色彩空间、色彩采样率和/或比特深度的通用技术的流程图,且图13是示出用于在编码期间在逐单元的基础上进行自适应切换的更详细的示例技术的流程图。
图14是示出用于在解码期间自适应地切换色彩空间、色彩采样率和/或比特深度的通用技术的流程图,且图15是示出用于在解码期间在逐单元的基础上进行自适应切换的更详细的示例技术的流程图。
图16是用于从处于一种格式的先前重构的内容的样本值集合中预测用不同格式编码的块的样本值的技术的流程图。
图17示出用于在编码期间使用速率-失真分析来自适应地选择色彩空间、色彩采样率和/或比特深度的通用技术的流程图。
图18示出用于在编码期间基于一个或多个准则来自适应地选择色彩空间、色彩采样率和/或比特深度的通用技术的流程图。
详细描述
本详细描述呈现了在自适应编码的领域中的创新。例如,这些创新中的一些涉及在编码期间在视频序列内的各单元之间切换色彩空间的编码器。其他创新涉及在编码期间在视频序列内的各单元之间切换色彩采样率的编码器。又一些创新涉及在编码期间在视频序列内的各单元之间切换比特深度的编码器。这些创新在许多场景下都可改善编码效率。
一般而言,色彩空间(有时称为色彩模型)是用于将色彩表示为每物理位置n个值的模型,其中n≥1,其中每个n值提供该位置的色彩分量值。
例如,在YUV色彩空间中,亮度(或Y)分量值表示某位置处的近似亮度,且多个色度(或U和V)分量值表示该位置处的色差。色差值(以及从YUV色彩空间到诸如RGB的另一色彩空间和/或从该另一色彩空间到YUV色彩空间的转换操作)的精确定义取决于实现。通常,出于编码和解码的目的,Y分量是主要分量,且U和V分量是次要分量。一般来说,如本文中所使用的,术语YUV型色彩空间指示具有亮度(或辉度)分量和一个或多个色度(或色差)分量的任意色彩空间,包括Y’UV、YIQ、Y’IQ和YDbDr以及诸如YCbCr和YCoCg之类的变型。
所使用的分量信号测量可通过应用非线性传递特征函数(一般被称为“伽玛预补偿”来调整并且通常通过使用基本象征符来表示,但是为了便于印刷通常会省略该基本象征符)。或者,这些分量信号测量可在与光振幅具有线性关系的域中。亮度和色度分量信号可与人类视觉***对明亮度和色彩的感知对准,或者亮度和色度分量信号可在某种程度上偏离这样的测量(例如,如在YCoCg变型中,其中应用了简化对色彩分量值的计算的公式)。
作为另一示例,在RGB色彩空间中,红色(R)分量值表示某位置处的红色强度,绿色(G)分量值表示该位置处的绿色强度,并且蓝色(B)分量值表示该位置处的蓝色强度。如本文中所使用的,术语RGB型色彩空间指示具有处于任何次序的R、G和B色彩分量的色彩空间。示例包括RGB、BGR和GBR色彩空间,出于编码和解码的目的其在主要分量方面不同。主要分量是用色彩空间的首字母来指示的(例如,RGB的R)。
色彩采样率(有时被称为色度采样率)指代各色彩分量之间的相对空间分辨率。例如,对于为4:4:4的色彩采样率,针对次要分量(例如,YUV的U和V分量)的信息与针对主要分量(例如,YUV的Y分量)的信息具有相同的空间分辨率。对于为4:2:2或4:2:0的色彩采样率,针对次要分量的信息相对于针对主要分量的信息被下采样。与YUV4:4:4格式相比,YUV4:2:0格式是对色度信息进行子采样的格式,使得色度分辨率在水平和垂直两者上都是亮度分辨率的一半。与YUV4:4:4格式相比,YUV4:2:2格式是水平地对色度信息进行子采样的格式,使得色度分辨率在水平上是亮度分辨率的一半。色彩采样率的其他示例为4:1:1(次要分量在水平上具有四分之一的分辨率)和4:0:0(次要分量被丢弃)。色彩子采样通常被应用于YUV型色彩空间。RGB型色彩空间通常具有为4:4:4的色彩采样率,但可根据哪些次要色彩分量被子采样而具有不同的色彩采样率。
虽然YUV4:2:0格式被方便地用于进行视频编码和解码,但存在视频具有更丰富的色彩信息并且更高的色彩保真度可被调整的一些使用情况。在这样的使用情况下,YUV4:4:4和YUV4:2:0色度采样格式之间的差异被查看者更容易地感知到。例如,为了对计算机屏幕文本内容、具有人工硬边线化边界的动画化的视频内容、或更通常地视频内容的某些特征(诸如,滚动标题和硬边线化图形、或者信息集中在色度通道中的视频)进行编码/解码,4:4:4格式可优于4:2:0格式。
比特深度指代每样本值比特数。常用的比特深度为每样本8比特、每样本10比特和每样本12比特。其他可能的比特深度包括每样本4比特和每样本16比特。
虽然本文中描述的操作是被适当描述为由视频编码器来执行,但在许多情况中,这些操作可由另一类型的媒体处理工具(例如图像编码器)来执行。例如,可针对诸如静止图像编码、医疗扫描内容编码、多谱图像内容编码等之类的应用执行这些操作。
本文中描述的一些创新是参考专用于H.265/HEVC标准的句法元素和操作来示出的。例如,对H.265/HEVC标志的草稿版本JCTVC-P1005—即2014年2月的“高效视频编码(HEVC)范围扩展文本规范:第6稿”JCTVC-P1005_vl作出参考。本文中描述的各创新还可以被实现为针对其它标准或格式。
更一般地,本文中描述的各示例的各种替代是可能的。例如,本文中描述的一些方法可以通过改变描述的方法动作的顺序、通过拆分、重复或忽略某些方法动作等来更改。所公开的技术的各方面能够被组合地或分开地使用。不同的实施例使用所描述的创新中的一个或多个。本文中描述的一些创新解决了背景中指出的一个或多个问题。通常,所给出的技术/工具并不解决所有这些问题。
I.示例计算***
图1示出了其中可实现几个所描述的创新的合适计算***(100)的概括示例。计算***(100)并不旨对使用范围或功能提出任何限制,因为这些创新可以在不同的通用或专用计算***中实现。
参考图1,计算环境(100)包括一个或多个处理单元(110、115)和存储器(120、125)。处理单元(110、115)执行计算机可执行指令。处理单元可以是通用中央处理单元(“CPU”)、专用集成电路(“ASIC”)中的处理器或任意其它类型的处理器。在多处理***中,多个处理单元执行计算机可执行指令以提高处理能力。例如,图1示出中央处理单元(110)以及图形处理单元或协处理单元(115)。有形存储器(120、125)可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存等)或两者的某种组合,可由处理单元存取。存储器(120,125)存储实现针对编码器侧对于色彩空间、色彩采样率和/或比特深度的自适应切换的决策的一个或多个创新的软件(180),该软件处于适用于由(诸)处理单元执行的计算机可执行指令的形式。
计算***可具有附加的特征。例如,计算***(100)包括存储(140)、一个或多个输入设备(150)、一个或多个输出设备(160)以及一个或多个通信连接(170)。诸如总线、控制器或网络之类的互连机制(未示出)将计算***(100)的各组件互连。通常,操作***软件(未示出)为在计算***(100)中执行的其它软件提供操作环境,并协调计算***(100)的各组件的活动。
有形存储(140)可以是可移动或不可移动的,并包括磁盘、磁带或磁带盒、CD-ROM、DVD或可用于储存信息并可在计算***(100)内访问的任何其他介质。存储器(140)存储实现针对编码器侧对于色彩空间、色彩采样率和/或比特深度的自适应切换的决策的一个或多个创新的软件(180)的指令。
(诸)输入设备(150)可以是触摸输入设备(诸如键盘、鼠标、笔或跟踪球)、语音输入设备、扫描设备或向计算***(100)提供输入的另一设备。对于视频,(诸)输入设备(150)可以是相机、视频卡、TV调谐卡、屏幕捕捉模块或接受模拟或数字形式的视频输入的类似设备、或将视频输入读到计算***(100)中的CD-ROM或CD-RW。(诸)输出设备(160)可以是显示器、打印机、扬声器、CD刻录机或提供来自计算***(100)的输出的另一设备。
(诸)通信连接(170)允许通过通信介质与另一计算实体通信。通信介质传达诸如计算机可执行指令、音频或视频输入或输出、或已调制数据信号中的其他数据之类的信息。已调制数据信号是使其一个或多个特征以在信号中编码信息的方式设置或改变的信号。作为示例而非限制,通信介质可以使用电的、光学的、RF或其它载体。
各创新可以在计算机可读介质的一般上下文中描述。计算机可读介质是可在计算环境内访问的任何可用有形介质。作为示例而非局限,对于计算***(100),计算机可读介质包括存储器(120、125)、存储(140)、和以上任意的组合。
各创新可在计算机可执行指令(诸如包括在程序模块中的在目标现实或虚拟处理器上在计算***中执行的那些计算机可执行指令)的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。如各实施例中所描述的,这些程序模块的功能可以被组合,或者在这些程序模块之间拆分。针对各程序模块的计算机可执行指令可以在本地或分布式计算***中执行。
术语“***”和“设备”在此被互换地使用。除非上下文明确指示,否则,术语并不暗示对计算***或计算设备的类型的任何限制。一般来说,计算***或计算设备可以是本地的或分布式的,并且可以包括具有实现本文中描述的功能的软件的专用硬件和/或通用硬件的任意组合。
所公开的方法还可使用被配置成执行所公开的方法中的任一者的专用计算硬件来实现。例如,所公开的方法可以由被专门设计或配置成实现所公开的方法中的任一者的集成电路(例如,诸如ASIC数字信号处理器(揇SP)之类的擜SIC、图像处理单元(“GPU”)、或诸如场可编程门阵列(“FPGA”)之类的可编程逻辑器件(“PLD”))来实现。
为了呈现起见,本详细描述使用了如“确定”和“使用”等术语来描述计算***中的计算机操作。这些术语是对由计算机执行的操作的高级抽象,且不应与人类所执行的动作混淆。对应于这些术语的实际的计算机操作取决于实现而不同。
II.示例网络环境
图2a和2b示出了包括视频编码器(220)和视频解码器(270)的示例网络环境(201,202)。编码器(220)和解码器(270)使用合适的通信协议通过网络(250)连接。网络(250)可包括因特网或另一计算机网络。
在图2a所示的网络环境(201)中,每个实时通信(“RTC”)工具(210)都包括用于双向通信的编码器(220)和解码器(270)两者。给定的编码器(220)可以产生符合H.265/HEVC标准、SMPTE421M标准、ISO/IEC14496-10标准(也称为H.264或AVC)、另一标准、或专用格式的变型或扩展的输出,使得相应的解码器(270)接受来自编码器(220)的经编码的数据。双向通信可以是视频会议、视频电话呼叫或其它双方或多方通信场景的部分。虽然,图2a中的网络环境(201)包括两个实时通信工具(210),但网络环境(201)可改为包括参与多方通信的三个或更多个实时通信工具(210)。
实时通信工具(210)管理编码器(220)做出的编码。图3示出可以被包括在实时通信工具(210)中的示例编码器***(300)。替换地,实时通信工具(210)使用另一编码器***。实时通信工具(210)还管理解码器(270)做出的解码。图4示出可以被包括在实时通信工具(210)中的示例解码器***(400)。替换地,实时通信工具(210)使用另一解码器***。
在图2b中示出的网络环境(202)中,编码工具(212)包括编码供递送给多个回放工具(214)的视频的编码器(220),此多个回放工具(214)包括解码器(270)。单向通信可被提供用于视频监视***、web相机监视***、屏幕捕捉模块、远程桌面会议演示或在其中编码视频并将其从一个位置发送到一个或多个其它位置的其它场景。虽然在图2b中的网络环境(202)包括两个回放工具(214),但该网络环境(202)可以包括更多或更少的回放工具(214)。一般来说,回放工具(214)与编码工具(212)通信以确定回放工具(214)要接收的视频流。回放工具(214)接收该流、缓冲所接收的经编码的数据达合适的时间段并开始解码和回放。
图3示出可以被包括在编码工具(212)中的示例编码器***(300)。替换地,编码工具(212)使用另一编码器***。编码工具(212)还可以包括用于管理与一个或多个回放工具(214)的连接的服务器侧控制器逻辑。图4示出可以被包括在回放工具(214)中的示例解码器***(400)。替换地,回放工具(214)使用另一解码器***。回放工具(214)还可以包括用于管理与一个或多个编码工具(212)的连接的客户机侧控制器逻辑。
III.示例编码器***
图3是结合其可实现所描述的一些实施例的示例编码器***(300)的框图。编码器***(300)可以是能够用多种编码模式中的任一者(诸如用于实时通信的低等待时间编码模式、转码模式和用于从文件或流中产生供回放的媒体的较高等待时间编码模式)操作的通用编码工具,或它可以是适用于一种这样的编码模式的专用编码工具。编码器***(300)可适用于编码特定类型的内容(例如,屏幕捕捉内容),或者它可适用于编码若干不同类型的内容(例如,屏幕捕捉内容和自然视频)中的任一者。编码器***(300)可以被实现为操作***模块、应用库的部分、独立的应用。总体上,编码器***(300)从视频源(310)接收源视频帧序列(311)并产生经编码的数据作为到信道(390)的输出。输出到信道的经编码的数据可包括通过色彩空间、色彩采样率和/或比特深度的自适应切换来编码的内容。
视频源(310)可以是相机、调谐卡、存储介质、屏幕捕捉模块或其它数字视频源。视频源(310)以例如每秒30帧的帧速率产生视频帧序列。如本文中所使用的,术语“帧”一般指代源、经编码的或经重构的图像数据。对于逐行扫描视频,帧是逐行扫描视频帧。对于隔行视频,在各示例实施例中,隔行视频帧可以在编码之前被去隔行。替换地,两个互补的隔行视频场可以被编码在一起作为单个视频帧或者被编码成两个经分开编码的场。除了指示逐行扫描视频帧或隔行扫描视频帧之外,术语“帧”或“图片”可以指示单个非成对的视频场、互补的成对视频场、表示在给定时间的视频对象的视频对象平面、或较大图像中的感兴趣区域。视频对象平面或区域可以是包括场景的多个对象或区域的较大图像的一部分。
抵达的源帧(311)被存储在包括多个帧缓冲器存储区域(321、322、…、32n)的源帧临时存储器存储区域(320)中。帧缓冲器(321、322等)在源帧存储区域(320)中保持一个源帧。在一个或多个源帧(311)已被存储在帧缓冲器(321,322等)中后,帧选择器(330)从源帧存储区域(320)中选择一个体源帧。帧选择器(330)选择帧以供输入到编码器(340)的次序可不同于视频源(310)产生这些帧的次序,例如某些帧的编码可以被按序延迟,从而允许一些更后面的帧被先编码并由此促成时间上向后的预测。在编码器(340)之前,编码器***(300)可包括预处理器(未示出),该预处理器在编码之前执行对选中的帧(331)的预处理(例如滤波)。
编码器(340)编码选中的帧(331)以产生经编码的帧(341)并且还产生存储器管理控制操作(“MMCO”)信号(342)或参考图片集(“RPS”)信息。RPS是在针对当前帧或任意后续帧的运动补偿中可用于供参考的帧集。如果当前帧不是已被编码的第一帧,则在执行其编码处理时,编码器(340)可以使用已经被存储在经解码帧的临时存储器存储区域(360)中的一个或多个先前被编码/解码的帧(369)。这样的存储的经解码帧(369)被用作用于当前源帧(331)的内容的帧间预测的参考帧。MMCO/RPS信息(342)向解码器指示哪些经重构的帧可被用作参考帧,并且因此应该被存储在帧存储区域中。
编码器(340)接受处于特定色彩空间(例如,YUV型色彩空间、RGB型色彩空间)中的、具有特定色彩采样率(例如,4:4:4)和每样本特定比特数(例如,每样本12比特)的视频。在编码期间,对于不同的图片、片、块或视频的其他单元,编码器(340)可执行色彩空间转换以在YUV型色彩空间和RGB型色彩空间之间变换或从某一其他色彩空间变换/变换到某一其他色彩空间。编码器(340)还可执行色彩空间转换以对色彩分量进行重排序,从而改变哪个色彩分量作为主要分量(例如,在RGB、BGR和GBR格式之间转换)。在典型的实现中,与次要分量相比,编码器(340)适于在各方面都更仔细地编码主要分量(例如,针对编码模式的更多选项,可能更少的量化步骤大小)。通过使得具有最多的信息内容或能量的色彩分量变成主要色彩分量,编码器可改进整体的编码效率。在编码期间,编码器(340)还可执行重采样处理以针对不同图片、片、块或视频的其他单元改变色彩采样率(例如,在4:4:4、4:2:2和4:2:0格式之间进行改变)。编码器(340)还可在编码期间针对不同的图片、片、块或视频的其他单元改变比特深度(例如,在每样本12比特、每样本10比特和每样本8比特之间进行改变)。在一些示例实现中,编码器(340)可在编码期间在逐图片的基础上切换色彩空间、色彩采样率和/或比特深度。
一般来说,编码器(340)包括执行编码任务的多个编码模块,编码任务为诸如分割成小块,色彩空间、色彩采样率和/或比特深度的自适应,帧内预测估计和预测,运动估计和补偿,频率变换,量化和熵编码。由编码器(340)执行的确切操作可以取决于压缩格式而变化。输出的经编码数据的格式可以是H.265/HEVC格式、Windows媒体视频格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、H.26x格式(例如,H.261、H.262、H.263或H.264)或其它格式的变型或扩展。
编码器(340)可以将帧分割成相同尺寸或不同尺寸的多个小块。例如,编码器(340)沿小块行和小块列来拆分帧,这些小块行和小块列利用帧边界定义在该帧内的小块的水平和垂直边界,其中每个小块是矩形区域。小块通常被用于提供并行处理的选项。帧还可以被组织成一个或多个片,其中一个片可以是整个帧或该帧的区域。片可以独立于帧中的其它片编码,这改善了错误复原性。出于编码和解码的目的,片或小块的内容被进一步分割成块或其它样本值集。在一些示例实现中,编码器(340)可在编码期间在逐片的基础上切换色彩空间、色彩采样率和/或比特深度。
对于根据H.265/HEVC标准的句法来说,编码器将帧(或片或小块)的内容拆分成编码树单元。编码树单元(“CTU”)包括被组织为亮度编码树块(“CTB”)的亮度采样值,并且对应的色度采样值被组织为两个色度CTB。CTU(及其CTB)的尺寸由编码器来选择,并且可例如为64x64、32x32或16x16个样本值。CTU包括一个或多个编码单元。编码单元(“CU”)具有亮度编码块(“CB”)和两个对应的色度CB。例如,具有64x64亮度CTB和两个64x64色度CTB(YUV4:4:4格式)的CTU可以被拆分成4个CU,其中每个CU包括一32x32亮度CB和两个32x32色度CB,并且每个CU可能被进一步拆分成更小的CU。或者,作为另一示例,具有64x64亮度CTB和两个32x32色度CTB(YUV4:2:0格式)的CTU可以被拆分成4个CU,其中每个CU包括一32x32亮度CB和两个16x16色度CB,并且每个CU可能被进一步拆分成更小的CU。CU最小的可允许的大小(例如8x8、16x16)可以在比特流中用信号通知。
通常,CU具有诸如帧间或帧内之类的预测模式。出于信号化预测信息(例如预测模式细节、移位值等)和/或预测处理的目的,CU包括一个或多个预测单元。预测单元(“PU”)具有亮度预测块(“PB”)和两个对应的色度PB。对于帧内预测的CU,PU与CU具有相同的尺寸,除非CU具有最小尺寸(例如8x8)。在那个情况下,CU可被拆分成四个较小的PU(例如,如果最小CU尺寸为8x8,则每个PU为4x4),或者PU可具有最小CU尺寸,如CU的句法元素所指示的。在帧内预测的CU中的PU可以包含单个TU(尺寸与PU相同)或多个TU。编码器决定如何将视频分割成CTU、CU、PU、TU等。
在H.265/HEVC实现中,片可以包括单个片段(独立的片段)或被划分成多个片段(独立的片段和一个或多个从属的片段)。片段是在小块扫描中包含在单个网络抽象层(“NAL”)单元中的连续排序的整数个CTU。对于独立的片段,片段头部包括适用于该独立的片段的句法元素的值。对于从属片段,截断的片段头部包括适用于该从属片段的句法元素的几个值,并且从属片段的其它句法元素的值是以解码次序从在前的独立的片段的值中推导出来的。
如本文中所使用的,术语“块”可以指示宏块、预测单元、残留数据单元、或者CB、PB或TB,或者某些其它样本值集,这取决于上下文。在一些示例实现中,编码器(340)可在编码期间在逐块的基础上切换色彩空间、色彩采样率和/或比特深度。
回到图3,编码器根据来自源帧(331)中的其它、先前重构的样本值的预测来表示该帧(331)的帧内编码的块。对于帧内块复制(“BC”)预测,图片内估计器估计块相对于其它、先前重构的样本值的位移。帧内预测参考区域是帧中用于生成块的BC预测值的样本值的区域。帧内预测区域可以用(在BV估计中确定的)块矢量(“BV”)值来指示。对于块的帧内空间预测,图片内估计器估计相邻的重构的样本值到该块的外插。图片内估计器可以输出经熵编码的预测信息(例如帧内BC预测的BV值或帧内空间预测的预测模式(方向))。帧内预测预测器应用预测信息来确定帧内预测值。
编码器(340)依据来自参考帧的预测来表示源帧(331)的帧间编码的预测的块。运动估计器估计块相对于一个或多个参考帧(369)的运动。当使用多个参考帧时,这多个参考帧可来自不同的时间方向或相同的时间方向。经运动补偿的预测参考区域是(诸)参考帧中用于生成当前帧的样本块的经运动补偿的预测值的样本区域。运动估计器输出经熵编码的诸如运动矢量(“MV”)信息之类的运动信息。运动补偿器将MV应用于参考帧(369)以确定用于帧间预测的经运动补偿的预测值。
编码器可以确定在块预测值(内部或之间)和对应的原始值之间的差值(如果有的话)。这些预测残留值将进一步使用频率变换、量化和熵编码来编码。例如,编码器(340)为图片、小块、片和/或视频的其它部分设置量化参数(“QP”)的值,并相应地量化变换系数。编码器(340)的熵编码器压缩经量化的变换系数值以及某些辅助信息(例如MV信息、BV预测值的索引值、BV差、QP值、模式决策、参数选择)。典型的熵编码技术包括指数-Golomb编码、Golomb-Rice编码、算术编码、差分编码、Huffman编码、行程长度编码、可变长度对可变长度(“V2V”)编码、可变长度对固定长度(“V2F”)编码、Lempel-Ziv(“LZ”)编码、字典编码、概率区间划分熵编码(“PIPE”)和上述编码的组合。熵编码器可对不同种类的信息使用不同的编码技术,并可组合地应用多个技术(例如,通过应用Golomb-Rice编码,随后应用算术编码),并可从特定编码技术内的多个码表中进行选择。
自适应去块滤波器可以被包括在编码器(340)中的运动补偿循环内以平滑经解码的帧中的块边界行和/或列上的间断。可替换地或另外地应用其它滤波(诸如去振铃滤波、自适应环路滤波(“ALF”)或样本自适应偏移(“SAO”)滤波,未示出)作为内环路滤波操作。
由编码器(340)产生的经编码的数据包括针对各层比特流句法的句法元素。对于根据H.265/HEVC的标准的句法,例如,图片参数集(“PPS”)是包含了与图片相关联的句法元素的句法结构。在一些示例实现中,PPS可包括指示适用于图片(或使用PPS的多个图片)的色彩空间、色彩采样率和/或比特深度的一个或多个信号以及标识或定义可用色彩空间、可用色彩采样率和/或可用比特深度的其他信息。PPS可被用于单个图片,或者PPS可被重用于序列中的多个图片。PPS典型地与图片的经编码的数据分开地发送信号(例如PPS的一个NAL单元和用于图片的经编码的数据的一个或多个其它NAL单元)。在图片的经编码数据内,句法元素指示要为该图片使用哪个PPS。类似地,对于根据H.265/HEVC的标准的句法,序列参数集(“SPS”)是包含了与图片的序列相关联的句法元素的句法结构。比特流可包括单个SPS或多个SPS。SPS通常被信号化成与序列的其它数据分开,并且其它数据中的句法元素指示要使用哪个SPS。在一些示例实现中,序列的SPS可包括标识或定义可用色彩空间、可用色彩采样率和/或可用比特深度的信息,当在序列内切换色彩空间、色彩采样率和/或比特深度时参考该信息。
对于片级,片头部(例如,片段头部)包括适用于片(例如,独立的片段和后面的任何从属片段)的句法元素的值。在一些示例实现中,片头部可包括指示适用于片的色彩空间、色彩采样率和/或比特深度的一个或多个信号。在一些示例实现中,片头部还可包括标识或定义可用色彩空间、可用色彩采样率和/或可用比特深度的信息,当在片内切换色彩空间、色彩采样率和/或比特深度时参考该信息。对于块级(例如,对于CTU),句法结构包括适用于块的句法元素的值。在一些示例实现中,针对块的句法元素可包括指示适用于块的色彩空间、色彩采样率和/或比特深度的一个或多个信号。
经编码的帧(341)和MMCO/RPS信息(342)(或与MMCO/RPS信息(342)等价的信息,因为在编码器(340)处已经知道各帧的依赖关系和排序结构)由解码处理仿真器(350)处理。解码处理仿真器(350)实现了解码器的一些功能,例如对任务进行解码以重构参考帧。以与MMCO/RPS信息(342)相一致的方式,解码处理仿真器(350)确定给定的经编码帧(341)是否需要被重构并被存储以供在对要编码的后续帧的帧间预测中用作参考帧。如果经编码的帧(341)需要被存储,则解码处理仿真器(350)对将由解码器进行的解码处理建模,该解码器接收经编码的帧(341)并产生相应的经解码的帧(351)。通过这么做,当编码器(340)已经使用已被存储在经解码帧存储区域(360)中的经解码的帧(369)时,解码处理仿真器(350)还使用来自存储区域(360)的经解码的帧(369)作为解码处理的一部分。
经解码帧临时存储器存储区域(360)包括多个帧缓冲存储区域(361,362,…,36n)。以与MMCO/RPS信息(342)相一致的方式,解码处理仿真器(350)管理存储区域(360)中的内容,以便标识出具有编码器(340)不再需要将其用作参考帧的帧的任何帧缓冲器(361、362等)。在对解码处理进行建模之后,解码处理仿真器(350)在帧缓冲(361,362等)中存储已经以此方式标识出的新解码的帧(351)。
经编码的帧(341)和MMCO/RPS信息(342)被缓冲在临时的经编码数据区域(370)中。被聚集在经编码数据区域(370)中的经编码数据将一个或多个图片的经编码数据作为基本经编码视频比特流的句法的一部分来包含。在经编码数据区域(370)中被聚集的经编码数据还可包括与经编码的视频数据相关的媒体元数据(例如作为一个或多个补充增强信息(“SEI”)消息或视频可用性信息(“VUI”)消息中的一个或多个参数)。
来自临时经编码数据区域(370)的经聚集的数据(371)由信道编码器(380)处理。信道编码器(380)可以分组化和/或复用经聚集的数据以供作为媒体流传输或存储(例如根据媒体程序流或传输流格式,例如ITU-TH.222.0|ISO/IEC13818-1或因特网实时传输协议格式(例如IETFRFC3550)),在这种情况中,信道编码器(380)可以将句法元素作为媒体传输流的句法的部分加入。或者,信道编码器(380)可以将经聚集的数据组织作为文件存储(例如根据媒体容器格式,诸如ISO/IEC14496-12),在这种情况中信道编码器(380)可以将句法元素作为媒体存储文件的句法的部分加入。或者,更一般地,信道编码器(380)可以实现一个或多个媒体***复用协议或传输协议,在这种情况中,信道编码器(380)可以添加句法元素作为(诸)协议的句法的一部分。信道编码器(380)将输出提供给信道(390),该信道(390)表示存储、通信连接或该输出的另一信道。信道编码器(380)或信道(390)还可以包括例如用于前向纠错(“FEC”)编码和模拟信号调制的其它元素(未示出)。
IV.示例解码器***
图4是示例解码器***(400)的框图。解码器***(400)可以是能够在多种解码模式(例如针对实时通信的低等待时间解码模式以及针对来自文件或流中的媒体回放的较高等待时间解码模式)中的任一者操作的通用解码工具,或它可以是适用于一种这样的解码模式的专用解码工具。解码器***(400)可适用于解码特定类型的内容(例如,屏幕捕捉内容),或者它可适用于解码若干不同类型的内容中的任一者(例如,屏幕捕捉内容和自然视频)。解码器***(400)可以被实现为操作***模块、应用库的一部分或独立的应用。总体上,解码器***(400)从信道(410)接收经编码的数据并产生经重构的帧作为针对输出目的地(490)的输出。经编码的数据可包括通过对色彩空间、色彩采样率和/或比特深度的自适应切换来编码的内容。
解码器***(400)包括信道(410),该信道(410)可以表示存储、通信连接或针对作为输入的经编码数据的另一信道。信道(410)产生已经被信道编码的经编码数据。信道解码器(420)可以处理经编码的数据。例如,信道解码器(420)可以去分组化和/或去复用用于作为媒体流传输或存储(例如根据媒体程序流或传输流格式,例如ITU-TH.222.0|ISO/IEC13818-1或因特网实时传输协议格式(例如IETFRFC3550))而被聚集的数据,在这种情况中,信道解码器(420)可以解析被作为媒体传输流的句法的部分而加入的句法元素。或者,信道解码器(420)可以将用于作为文件来存储(例如根据媒体容器格式,诸如ISO/IEC14496-12)而被聚集的经编码的视频数据分开,在这种情况中信道解码器(420)可以解析作为媒体存储文件的语法的部分而加入的语法元素。或者,更一般地,信道解码器(420)可以实现一个或多个媒体***去复用协议或传输协议,在这种情况中,信道解码器(420)可以解析所添加的作为(诸)协议的句法的一部分的句法元素。信道(410)或信道解码器(420)还可以包括例如用于FEC解码和模拟信号解调的其它元素(未示出)。
从信道解码器(420)输出的经编码的数据(421)被存储在临时的经编码数据区域(430)中,直到已经接收到足够数量的这样的数据。经编码的数据(421)包括经编码的帧(431)和MMCO/RPS信息(432)。在经编码数据区域(430)中的经编码数据(421)包含一个或多个图片的经编码数据作为基本编码的视频比特流的句法的一部分。在经编码数据区域(430)中的经编码数据(421)还可包括与经编码的视频数据相关的媒体元数据(例如作为一个或多个SEI消息或VUI消息中的一个或多个参数)。
一般来说,经编码数据区域(430)临时存储经编码数据(421),直到这样的经编码数据(421)被解码器(450)使用。此时,经编码帧(431)和MMCO/RPS信息(432)的经编码数据被从经编码数据区域(430)传输到解码器(450)。当解码继续时,新的经编码数据被添加到经编码数据区域(430)并且保留在经编码数据区域(430)中的最旧的经编码数据被传输到解码器(450)。
解码器(450)解码经编码帧(431)以产生相应的经解码帧(451)。在适当时,当执行其解码处理时,解码器(450)可以将一个或多个先前解码的帧(469)用作帧间预测的参考帧。解码器(450)从经解码帧临时存储器存储区域(460)中读取这样的先前解码的帧(469)。
在解码期间,对于不同的图片、片、块或视频的其他单元,解码器(450)可执行色彩空间转换以在YUV型色彩空间和RGB型色彩空间之间变换或从某一其他色彩空间变换/变换到某一其他色彩空间。解码器(450)还可针对不同的图片、片、块或视频的其他单元执行色彩空间转换以对各色彩分量进行重排序,从而改变哪个色彩分量作为主要分量(例如,在RGB、BGR和GBR格式之间转换)。在解码期间,解码器(450)还可执行重采样处理以针对不同的图片、片、块或视频的其他单元改变色彩采样率和/或改变比特深度。在一些示例实现中,解码器(450)可在解码期间在逐图片的基础上切换色彩空间、色彩采样率和/或比特深度。替换地,解码器(450)可在解码期间在逐片的基础上或逐块的基础上切换色彩空间、色彩采样率和/或比特深度。
通常,解码器(450)包括执行解码任务的多个解码模块,解码任务为诸如熵解码,对色彩空间、色彩采样率和/或比特深度的自适应,帧内预测、运动补偿的帧间预测、逆量化、逆频率变换和小块合并。由解码器(450)执行的确切操作可以取决于压缩格式而变化。
例如,解码器(450)接收经压缩的帧或帧序列的经编码数据,并产生包括经解码的帧(451)的输出。在解码器(450)中,缓冲器接收针对经压缩的帧的经编码数据,并在适当时,使得接收到的经编码数据对熵解码器可用。熵解码器对经熵编码的量化数据以及经熵编码的辅助信息进行熵解码,通常应用编码器中执行的熵编码的逆来进行熵解码。运动补偿器将运动信息应用于一个或多个参考帧以形成针对正被重构的帧的任何帧间编码块的经运动补偿的预测值。帧内预测模块可从相邻的、先前重构的样本值中空间地预测当前块的样本值,或者对于帧内BC预测,使用帧中的帧内预测参考区域的先前重构的样本值来预测当前块的样本值。参考区域可用BV值来指示。解码器(450)还重构预测残留值。逆量化器对经熵解码的数据进行逆量化。例如,解码器(450)基于比特流中的句法元素为图片、小块、片和/或视频的其它部分设置QP值,并相应地对变换系数进行逆量化。逆频率变换器将量化的频域数据转换成空间域数据。对于帧间预测的块,解码器(450)将重构的预测残留值与经运动补偿的预测值组合。解码器(450)可以类似地将预测残留值与来自帧内预测的预测值组合。自适应去块滤波器被包括在视频解码器(450)中的运动补偿环路内以平滑经解码的帧(451)中的块边界行和/或列上的间断。可替换地或另外地应用其它滤波(例如去振铃滤波、ALF或SAO滤波;未示出)作为内环路滤波操作。
经解码帧临时存储器存储区域(460)包括多个帧缓冲器存储区域(461、462、…、46n)。经解码帧存储区域(460)是经解码图片缓冲器的一个示例。解码器(450)使用MMCO/PS信息(432)来标识该解码器可将经解码帧(451)存储在其中的帧缓冲器(461、462等)。解码器(450)将经解码的帧(451)存储在那个帧缓冲器中。
输出序列发生器(480)标识按输出次序将产生的下一帧何时可在经编码帧存储区域(460)中获得。当按输出次序将产生的下一帧(481)可在经解码帧存储区域(460)中获得时,输出序列发生器(480)读取该下一帧并将其输出到输出目的地(490)(例如显示器)。一般来说,输出序列发生器(480)将帧从经解码帧存储区域(460)中输出的次序可以与解码器(450)解码这些帧的次序不同。
V.示例视频编码器
图5a和5b是可结合其实现所描述的一些实施例的通用视频编码器(500)的框图。编码器(500)接收包括当前图片的视频图片序列作为输入视频信号(505)并在经编码视频流(595)中产生经编码的数据作为输出。
编码器(500)是基于块的并使用取决于实现的块格式。块还可在不同的阶段上被进一步细分,例如在预测、频率变换和/或熵编码阶段。例如,图片可以被划分成64x64块、32x32块或16x16块,这些块随后可以被划分成更小的样本值块以用于编码和解码。在针对H.265/HEVC标准的编码的实现中,编码器将图片分割成CTU(CTB)、CU(CB)、PU(PB)和TU(TB)。
编码器(500)使用图片内编码和/或图片间编码来压缩图片。编码器(500)的许多组件被用于图片内编码和图片间编码两者。由这些组件执行的确切操作可取决于所压缩的信息的类型而变化。
小块化模块(510)可选地将图片分割成相同尺寸或不同尺寸的多个小块。例如,小块化模块(510)沿小块行和小块列来拆分图片,所述小块行和小块列利用图片边界定义在图片内的小块的水平和垂直边界,其中每个小块是矩形区域。在H.265/HEVC实现中,编码器(500)将图片分割成一个或多个片,其中每个片包括一个或多个片段。
通用编码控件(520)接收输入视频信号(505)的图片以及来自编码器(500)的各个模块的反馈(未示出)。整体上,通用编码控件(520)将控制信号(未示出)提供给其它模块(例如小块化模块(510)、变换器/缩放器/量化器(530)、缩放器/逆变换器(535)、图片内估计器(540)、运动估计器(550)以及帧内/帧间切换)以设置和改变编码期间的编码参数。具体地,通用编码控件(520)可判定如何在编码期间在逐图片的基础上、逐片的基础上、逐块的基础上或在某一其他基础上自适应地切换色彩空间、色彩采样率和/或比特深度。章节VII.G描述了用于编码器(500)来决定如何在编码期间自适应地切换色彩空间、色彩采样率和/或比特深度的示例策略。通用编码控件(520)还可在编码期间评估中间结果。通用编码控件(520)产生指示在编码期间所做出的判定的通用控制数据(522),使得对应的解码器可以作出一致的判定。通用控制数据(522)被提供给头部格式化器/熵编码器(590)。
如果使用图片间预测来预测当前的图片,运动估计器(550)相对于一个或多个参考图片估计输入视频信号(505)的当前图片的采样值的块的运动。经解码图片缓冲器(570)缓冲一个或多个重构的先前编码的图片以供用作参考图片。当使用多个参考图片时,这多个参考图片可以来自不同的时间方向或相同的时间方向。运动估计器(550)产生诸如MV数据、合并模式索引值、和参考图片选择数据之类的辅助信息运动数据(552)。运动数据(552)被提供给头部格式化器/熵编码器(590)以及运动补偿器(555)。
运动补偿器(555)将MV应用于来自经解码图片缓冲器(570)的(诸)经重构的参考图片。运动补偿器(555)产生针对当前图片的经运动补偿的预测。当图片的次要分量具有与主要分量相同的分辨率时(例如,当格式为YUV4:4:4格式或RGB4:4:4格式时),对次要分量块应用的MV值可与对相应的主要分量块应用的MV值相同。在另一方面,当图片的次要分量相对于主要分量具有降低的分辨率时(例如,当格式为YUV4:2:0格式时),对次要分量块应用的MV值可被缩小并可能被舍入以对分辨率方面的差异进行调整(例如,通过将MV值的垂直和水平分量除以2并且将其截短或舍入成整数值来调整)。
在编码器(500)内的分开的路径中,图片内估计器(540)确定如何执行对输入视频信号(505)的当前图片的样本值块的图片内预测。当前图片可全部或部分使用图片内编码来编码。对于帧内空间预测,使用当前图片的重构(538)的值,图片内估计器(540)确定如何从当前图片的邻近的、先前重构的样本值中空间地预测当前图片中的当前块的样本值。或者,对于使用BV值的帧内BC预测,图片内估计器(540)估计当前块的样本值到当前图片内的不同候选参考区域的位移。在图5b中,候选参照区域包括重构的样本值。替换地,出于BV估计的目的,候选参考区域可包括输入样本值。
图片内估计器(540)产生辅助信息帧内预测数据(542),诸如指示帧内预测使用空间预测还是帧内BC预测的信息(例如,每帧内块的标志值)、(针对帧内空间预测的)预测模式方向、以及(针对帧内BC预测的)BV值。帧内预测数据(542)被提供给头部格式化器/熵编码器(590)以及图片内预测器(545)。
根据帧内预测数据(542),图片内预测器(545)从当前图片的相邻的、先前重构的样本值中空间地预测当前图片中的当前块的样本值。或者,对于帧内BC预测,图片内预测器(545)使用图片内预测参考区域的先前重构的样本值来预测当前块的样本值,图片内预测参考区域由针对当前块的BV值来指示。在一些情况中,BV值可以是BV预测值(预测的BV值)。在其它情况中,BV值可以不同于其被预测的BV值,在该情况中BV差异指示了在被预测的BV值和BV值之间的差值。当图片的次要分量具有与主要分量相同的分辨率时(例如,当格式为YUV4:4:4格式或RGB4:4:4格式时),对次要分量块应用的BV值可与对相应的主要分量块应用的BV值相同。另一方面,当图片的次要分量相对于主要分量具有降低的分辨率时(例如,当格式为YUV4:2:0格式时),对次要分量块应用的BV值可被缩小并可能被舍入以对分辨率方面的差异进行调整(例如,通过将BV值的垂直和水平分量除以2并且将其截短或舍入成整数值来调整)。
帧内/帧间切换选择对给定块的预测(558)将是经运动补偿的预测还是图片内预测。对于非跳跃模式块,预测(558)的块和输入视频信号(505)的原始当前图片的对应部分之间的差异(如果有的话)提供残留部分的值(518)。在当前图片的重构期间,对于非跳跃模式块,经重构的残留值与预测(558)组合来从视频信号(505)中产生对原始内容的近似或精确的重构(538)。(在有损压缩中,一些信息从视频信号(505)中丢失。)
在变换器/缩放器/量化器(530)中,频率变换器将空间域视频信息转换为频域(即频谱、变换)数据。对于基于块的视频编码,频率变换器将离散余弦变换(“DCT”)、其整数近似、或其它类型的前向块变换(例如离散正弦变换或其整数近似)应用于预测残留数据的块(如果预测(558)为空则应用于采样值数据),产生频率变换系数的块。编码器(500)可能还能够指示这样的变换步骤被省略了。缩放器/量化器对变换系数进行缩放和量化。例如,量化器用量化步骤尺寸将死区标量量化应用于的频域数据,该量化步骤尺寸在逐图片的基础上、逐小块的基础上、逐片的基础上、逐块的基础上、因频率而异的基础上或在其他基础上变化。经量化的变换系数数据(532)被提供给头部格式化器/熵编码器(590)。
在缩放器/逆变换器(535)中,缩放器/逆量化器对经量化的变换系数执行逆缩放和逆量化。逆频率变换器执行逆频率变换,从而产生经重构的预测残留值或样本值的块。对于非跳跃模式块,编码器(500)将经重构的残留值与预测(558)的值(例如,经运动补偿的预测值、图片内预测值)组合以形成重构(538)。对于跳跃模式块,编码器(500)使用预测(558)的值作为重构(538)。
对于图片内预测,重构(538)的值可以被馈送回图片内估计器(540)和图片内预测器(545)。同样,重构(538)的值可以被用于后续图片的运动补偿的预测。重构(538)的值可以被进一步滤波。对于视频信号(505)的给定图片,滤波控件(560)确定如何对重构(538)的值执行去块滤波和SAO滤波。滤波控件(560)生成滤波控制数据(562),它被提供给头部格式化器/熵编码器(590)和合并器/(诸)滤波器(565)。
在合并器/(诸)滤波器(565)中,编码器(500)将来自不同小块的内容合并到图片的经重构版本中。编码器(500)根据滤波器控制数据(562)选择性地执行去块滤波和SAO滤波,以便自适应地平滑各图片中的各边界上的间断。可替换地或另外地应用其它滤波(例如去振铃滤波或ALF;未示出)。取决于编码器(500)的设置,小块边界可以被选择性地滤波或根本不被滤波,并且编码器(500)可以在经编码的比特流内提供指示这样的滤波是否被应用的句法。经解码图片缓冲器(570)缓冲经重构的当前图片以供在后续的运动补偿的预测中使用。
头部格式化器/熵编码器(590)格式化和/或熵编码通用控制数据(522)、量化的变换系数数据(532)、帧内预测数据(542)、运动数据(552)以及滤波器控制数据(562)。通用控制数据(522)包括为各图片、片、块或视频的其他单元指示色彩空间、色彩采样率和/或比特深度的信号。这样的信号可例如被包括在PPS、片头部、块句法结构或其他句法结构中,并且可被熵编码或信号化成固定长度值。头部格式化器/熵编码器(590)还可对以下信息进行格式化和/或熵编码:标识或定义可用色彩空间的信息(例如,预定义色彩空间、针对色彩空间变换操作的自定义度量的列表)、标识或定义可用色彩采样率的信息(例如,预定义色彩采样率、其他色彩采样率或用于下采样和上采样的操作的标识的列表)、和/或标识或定义可用比特深度的信息(例如,预定义比特深度、其他比特深度或用于比特深度转换的操作的标识的列表),这些信息可被解码器在自适应切换期间使用。
头部格式化器/熵编码器(590)在经编码视频比特流(595)中提供经编码的数据。经编码的视频比特流的格式(595)可以是H.265/HEVC格式、Windows媒体视频格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、H.26x格式(例如,H.261、H.262、H.263或H.264)或其它格式的变体或扩展。
取决于期望的实现和压缩类型,编码器(500)的模块可被添加、省略、分成多个模块、与其它模块组合、和/或用相似的模块来替代。在替换实施例中,具有不同模块和/或其它配置的模块的编码器执行一个或多个所描述的技术。编码器的具体实施例通常使用编码器(500)的变型或补充版本。所示的编码器(500)内的各模块之间的关系指示了信息在编码器中的一般流动;为简明起见,未示出其它关系。
VI.示例视频解码器
图6是通用解码器的框图。解码器(600)接收经编码的视频比特流(605)中的经编码的数据并产生包括经重构视频(695)的图片的输出。经编码的视频比特流的格式(605)可以是H.265/HEVC格式、Windows媒体视频格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、H.26x格式(例如,H.261、H.262、H.263或H.264)或其它格式的变体或扩展。
解码器(600)是基于块的并使用取决于实现的块格式。块可以在不同的阶段被进一步细分。例如,图片可以被划分成64x64块、32x32块或16x16块,这些块随后可以被划分成更小的样本值块。在针对H.265/HEVC标准的解码实现中,将图片分割成CTU(CTB)、CU(CB)、PU(PB)和TU(TB)。
解码器(600)使用图片内解码和/或图片间解码来对图片进行解压缩。解码器(600)的许多组件被用于图片内解码和图片间解码这两者。由这些组件执行的确切操作可以取决于正被解压缩的信息的类型而变化。
缓冲器在经编码的视频比特流(605)中接收经编码数据,并使得接收到的经编码数据可用于解析器/熵解码器(610)。解析器/熵解码器(610)熵解码经熵编码的数据,通常应用在编码器(500)中执行的熵编码的逆(例如上下文自适应二进制算术解码)。作为解析和熵解码的结果,解析器/熵解码器(610)产生通用控制数据(622)、经量化的变换系数数据(632)、帧内预测数据(642)、运动数据(652)以及滤波器控制数据(662)。通用控制数据(622)包括为各图片、片、块或视频的其他单元指示色彩空间、色彩采样率和/或比特深度的信号。这样的信号可例如被包括在PPS、片头部、块句法结构或其他句法结构中,并且可被熵编码或信号化成固定长度值。解析器/熵解码器(610)还可对以下信息进行解析和/或熵解码:标识或定义可用色彩空间的信息(例如,预定义色彩空间、针对色彩空间变换操作的自定义度量的列表)、标识或定义可用色彩采样率的信息(例如,预定义色彩采样率、其他色彩采样率或用于下采样和上采样的操作的标识的列表)、和/或标识或定义可用比特深度的信息(例如,预定义比特深度、其他比特深度或用于比特深度转换的操作的标识的列表),这些信息可被解码器(600)在自适应切换期间使用。
通用解码控件(620)接收通用控制数据(622)并将控制信号(未示出)提供给其它模块(例如缩放器/逆变换器(635)、图片内预测器(645)、运动补偿器(655)以及帧内/帧间切换)以设置和改变解码期间的解码参数。具体地,通用解码控件(620)可使得解码器(600)在解码期间在逐图片的基础上、逐片的基础上、逐块的基础上或在某一其他基础上切换色彩空间、色彩采样率和/或比特深度。
如果使用图片间预测来预测当前图片,运动补偿器(655)接收运动数据(652),例如MV数据、参考图片选择数据以及合并模式索引值。运动补偿器(655)将MV应用于来自经解码图片缓冲器(670)的(诸)经重构的参考图片。运动补偿器(655)产生针对当前图片中的帧间编码块的运动补偿的预测。经解码图片缓冲器(670)存储一个或多个先前重构的图片以供用作参考图片。
在解码器(600)内的分开路径中,图片内预测预测器(645)接收帧内预测数据(642),诸如指示帧内预测是否使用空间预测或帧内BC预测(例如,每个帧内块的标记值)、预测模式方向(对于帧内空间预测)、和BV值(对于帧内BC预测)的信息。对于帧内空间内预测,根据预测模式数据使用当前图片的重构(638)的值,图片内预测器(645)从当前图片的相邻的、先前重构的样本值中空间地预测当前图片的当前块的样本值。或者,对于使用BV值的帧内BC预测,图片内预测器(645)使用图片内预测参考区域的先前重构的样本值来预测当前块的样本值,图片内预测参考区域由针对当前块的BV值来指示。
帧内/帧间切换选择对于给定块的预测(658)是经运动补偿的预测还是图片内预测。例如,当遵循H.265/HEVC句法时,可以基于为图片中的CU编码的句法元素来控制帧内/帧间切换,该CU可以包括帧内预测的CU和帧间预测的CU。对于非跳跃模式块,解码器(600)将预测(658)与重构的残留值组合以产生来自视频信号的内容的重构(638)。对于跳跃模式块,解码器(600)使用预测(658)的值作为重构(638)。
为了重构非跳跃模式块的残留值,缩放器/逆变换器(635)接收并处理经量化的变换系数数据(632)。在缩放器/逆变换器(635)中,缩放器/逆量化器对经量化的变换系数执行逆缩放和逆量化。逆频率变换器执行逆频率变换,从而产生经重构的预测残留值或样本值的块。例如,逆频率变换器将逆块变换应用到频率变换系数,从而产生样本值数据或预测残留数据。逆频率变换可以是逆DCT、其整数近似、或另一种类型的逆频率变换(例如逆离散正弦变换或其整数近似)。
对于图片内预测,重构(638)的值可以被馈送回图片内预测器(645)。对于图片间预测,重构(638)的值可以被进一步滤波。在合并器/(诸)滤波器(665)中,解码器(600)将来自不同小块的内容合并到图片的经重构版本中。解码器(600)根据滤波器控制数据(662)和滤波自适应规则来执行去块滤波和SAO滤波,以便自适应地平滑各图片中的各边界上的间断。可替换地或另外地应用其它滤波(例如去振铃滤波或ALF;未示出)。小块边界可以被选择性地滤波或根本不滤波,这取决于解码器(600)的设置或经编码的比特流数据内的句法指示。经解码图片缓冲器(670)缓冲经重构的当前图片以供在后续的运动补偿的预测中使用。
解码器(600)还可包括后处理滤波器。后处理滤波器(608)可以包括去振铃滤波、自适应维纳滤波、膜颗粒再现滤波、SAO滤波或另一种类型的滤波。
取决于实现和所希望的解压缩的类型,可以添加、省略解码器(600)的模块,拆分成多个模块,与其他模块相结合,和/或替换为类似的模块。在替换实施例中,具有不同模块和/或其它配置的模块的解码器执行一个或多个所描述的技术。解码器的具体实施例通常使用解码器(600)的变型或补充版本。所示的解码器(600)内的模块之间的关系指示信息在解码器中的一般流动;为简明起见,未示出其它关系。
VII.自适应切换色彩空间、色彩采样率和/或比特深度
在编码期间,编码器可在各方面都比次要色彩分量更仔细地对待主要色彩分量(例如,针对编码模式的更多选项,可能更少的量化步骤尺寸)。同样,通过对次要色彩分量进行子采样,编码器可向主要色彩分量分派相对更多的比特(并因此分派更多的质量)。
视频序列的不同图片、片或块的样本值可具有不同的统计特性。这些不同的统计特性可影响编码效率,可在速率-失真性能(给定比特率的较低或较高质量;或给定质量的较低或较高比特率)方面对该编码效率进行测量。
例如,对于YUV型色彩空间,Y分量是主要分量。对于YUV型色彩空间中的图片,片或块,如果信息内容或能量的相当大的量是在Y分量中,并且U和V分量是很少量的,编码器可以通过在YUV型色彩空间中编码,可能对U和V分量进行下采样来实现良好的编码效率。另一方面,如果Y、U和V分量中没有分量对图片、片或块有支配地位,在YUV型色彩空间中编码可能无法实现良好的编码效率。在这种情况中,下采样U和V分量或与与Y分量相比更少关注度地对U和V分量进行编码可能在重构图片、片或块时产生明显的失真。然而,如果在RGB型色彩空间中编码了相同的图片、片或块,色彩分量(R、G或B)之一可能是支配的,并且将支配分量作为主要分量编码可以改善编码效率。或者,使用4:4:4作为色彩采样格式可以改善编码效率。类似地,取决于内容,改变采样值的比特深度可能在编码效率方面被证明是正确或不正确的(由于比特率中的改变,质量方面的变化)。
该章节呈现对视频序列的各单元的自适应编码和解码的各种特征。单元可以是图片、片、块或视频序列的其他部分。例如,这些特征中的一些涉及包括色彩空间在视频序列的各单元之间的自适应切换的编码/解码。其他特征涉及包括色彩采样率在视频序列内的各单元之间的自适应切换的编码/解码。又一些特征涉及包括比特深度在视频序列内的各单元之间的自适应切换的编码/解码。这些特征可在许多场景下改善编码效率,并可被组合地或分开地使用。
在对某个“人工”创建的视频内容(诸如屏幕捕捉内容)进行编码或者在对自然视频和人工创建的视频内容的混合进行编码时,对色彩空间、色彩采样率和/或比特深度的自适应切换可改善速率-失真性能,编码/解码屏幕捕捉内容的常见场景包括远程桌面会议和对自然视频或其它“经混合的内容”视频的图形覆盖的编码/解码。
A.视频的类型
一般来说,屏幕捕捉视频表示计算机屏幕或其他显示的输出。图7示出具有可为屏幕捕捉提供输入的内容的计算机桌面环境(710)。例如,屏幕捕捉视频可表示整个计算机桌面(711)的一系列图像。或者,屏幕捕捉视频可表示针对计算机桌面环境的窗口之一的一系列图像,窗口为诸如包括游戏内容的应用窗口(713)、具有网页内容的浏览器窗口(712)或具有文字处理器内容的窗口(714)。
作为计算机生成的、人工创建的视频内容,屏幕捕捉内容往往具有与使用摄像机捕捉的自然视频内容相比相对较少的离散样本值。例如,屏幕捕捉内容的区域通常包括单个统一色彩,而自然视频内容中的区域更可能包括逐渐变化的色彩。同样,屏幕捕捉内容通常包括不同的结构(例如,图形、文本字符),这些不同的结构精确地逐帧重复,即使该内容可能在空间上被移位(例如,由于滚动)。屏幕捕捉内容通常是用具有高色度采样分辨率的格式(例如YUV4:4:4或RGB4:4:4)来编码的,但是它也可以用具有较低色度采样分辨率的格式(例如YUV4:2:0、YUV4:2:2)来编码。
图8示出包括自然视频(821)和人工创建的视频内容的复合视频(820)。人工创建的视频内容包括自然视频(821)旁边的图形(822)以及在自然视频(821)下面运行的贴标(823)。与图7中示出的屏幕捕捉内容类似,图8中示出的人工创建的视频内容往往具有相对较少的离散样本值。它还往往具有精确地逐帧重复(例如,由于滚动)的不同的结构(例如,图形、文本字符)。
B.自适应切换的示例
对于色彩空间的自适应切换,序列中的视频的不同单元在不同的色彩空间中编码。例如,一些单元在YUV型色彩空间(例如YCbCr、YCoCg)中编码,而其他单元在RGB型色彩空间(例如,RGB、BGR、GBR)中编码。在这种情况下,编码器或解码器在适当时对样本值执行色彩空间变换操作以在YUV型色彩空间和RGB型色彩空间之间切换。通常,色彩空间变换操作可被表示为在逐位置的基础上执行的矩阵乘法操作,其中某位置在第一色彩空间中的n个样本值被乘以nxn矩阵以产生该位置在第二色彩空间中的n个样本值。在实践中,色彩空间变换操作可使用其他算法来实现。
作为对色彩空间的自适应切换的另一示例,不同的单元可在不同的RGB型色彩空间中编码,这些不同的RGB型色彩空间在其主要分量和各分量(例如,对于残留数据)被信号化的次序方面不同在这种情况下,编码器或解码器在恰当时对样本值的块或平面执行色彩空间重排序操作以改变哪个色彩分量是主要色彩分量。
在一些示例实现中,对于有损编码,编码器可在不同色彩空间中的任何色彩空间之间切换。然而,对于无损编码,编码器仅执行可逆色彩空间转换(例如,在RGB、BGR和GBR色彩空间之间对色彩分量进行重排序,或者在一些实现中,使用增加的中间比特深度来转换到YCoCg/或从YCoCg转换)。
对于色彩采样率的自适应切换,序列中的视频的不同单元是用不同的色彩采样率来编码的。例如,一些单元是用4:2:2或4:2:0格式(诸如YUV4:2:2或YUV4:2:0)来编码的,而其他单元是用4:4:4格式(诸如YUV4:4:4)来编码的。RGB型色彩空间通常具有为4:4:4的色彩采样率,但其色彩分量可改为是根据为4:2:2或4:2:0的色彩采样率来子采样的,例如,在主要色彩分量比次要色彩分量占优势的多的情况下。
在对次要分量的样本值进行水平地或垂直地下采样时,编码器或解码器可执行单纯的子采样、低通滤波加子采样、或其他滤波加子采样。对于对次要分量的样本值的相应上采样,编码器或解码器使用例如样本值重复和/或滤波来反转该子采样。
对于比特深度的自适应切换,序列中的视频的不同单元是用不同的比特深度来编码的。例如,一些单元被编码成具有12比特样本值,而其他单元被编码成具有10比特样本值或8比特样本值。当在各比特深度之间转换时,编码器或解码器可(利用或不利用舍入因子的添加)截断较高比特深度的样本值以产生较低比特深度的样本值,或缩放较低比特深度的样本值以产生较高比特深度的样本值。
编码器通常以具有12比特样本值的给定格式(诸如RGB4:4:4)来接收输入视频。编码器可针对视频的给定单元在输入格式和另一格式(具有不同的色彩空间、不同的色彩采样率和/或不同的比特深度)之间转换。色彩空间自适应可单独地或与色彩采样率自适应和/或比特深度自适应组合地在图片级、片级、块级或某一其他级处执行。类似地,色彩采样率自适应可单独地或与色彩空间自适应和/或比特深度自适应组合地在图片级、片级、块级或某一其他级处执行。比特深度自适应可单独地或与色彩空间自适应和/或比特采样率自适应组合在图片级、片级、块级或某一其他级处执行。
图9示出针对序列(900)中的图片的图片自适应色彩空间、色彩采样率和/或比特深度。序列(900)包括一系列图片。编码器按需将输入视频从输入视频格式转换成为给定图片选择的格式。图片1的格式为具有8比特样本值的YCbCr4:2:0,并且图2的格式为具有8比特样本值的RGB4:4:4。图片3和4是RGB4:4:4视频,但其样本值具有不同的比特深度。
图10示出针对序列中的图片(1000)的片的片自适应色彩空间、色彩采样率和/或比特深度。图片(1000)包括五个片,这些片的边界以虚线示出。例如,片0、1、3和4可与屏幕捕捉内容或其他人工创建的视频内容相关联,而片2与自然视频内容相关联。片0和3的格式为具有10比特样本值的BGR4:4:4。片1包括GBR4:4:4视频的12比特样本值。片2的格式为具有8比特样本值的YCbCr4:2:0,并且片4的格式为具有8比特样本值的RGB4:4:4。
图11示出针对序列中的图片的片(1100)的块的块自适应色彩空间、色彩采样率和/或比特深度。片(1100)包括具有三种不同块尺寸的16个块。前两个块的格式为具有8比特样本值的YCbCr4:2:0,并且最后一个块的格式为具有10比特样本值的YCbCr4:2:0。块2-15包括RGB型色彩空间中具有为4:4:4的采样率的12比特样本值。块2-15的色彩空间在RGB、BGR和GBR之间进行改变。
C.编码期间的自适应切换的示例
图12示出用于在编码期间自适应地切换色彩空间、色彩采样率和/或比特深度的通用技术(1200)。图像编码器或视频编码器(诸如参考图3或图5a-5b描述的编码器)可执行技术(1200)。
编码器对序列中的视频进行编码(1210)。作为编码的一部分,编码器在编码期间在序列内的视频的至少一些单元之间切换色彩空间、色彩采样率和/或比特深度。编码器可在图片内空间地切换色彩空间、色彩采样率和/或比特深度。编码器还可逐图片地在时间上切换色彩空间、色彩采样率和/或比特深度。出于自适应切换的目的,视频的单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或视频序列的其他部分。
例如,该切换可包括使用空间变换操作在两个色彩空间之间进行改变。对于色彩空间变换操作,色彩空间可包括至少一个YUV型色彩空间和至少一个RGB型色彩空间。或者,作为另一示例,该切换可包括使用空间重排序操作在两个色彩空间之间进行改变。对于色彩空间重排序操作,色彩空间可包括多个RGB型色彩空间。替换地,色彩空间包括其他和/或附加的色彩空间。
或者,作为另一示例,该切换可包括在两个色彩采样率之间进行改变。色彩采样率可包括4:4:4、4:2:2、4:2:0和4:0:0中的两个或更多个。替换地,色彩采样率包括其他和/或附加的色彩采样率。
或者,作为另一示例,该切换可包括在两个比特深度之间进行改变。比特深度可包括每样本12比特、每样本10比特和每样本8比特中的两个或更多个。视频的给定单元的不同色彩分量可具有相同的比特深度或不同的比特深度。替换地,比特深度包括其他和/或附加的比特深度。
在编码期间,编码器可至少部分地基于先前重构的内容的样本值集合来预测当前图片中的当前块的样本值。对于图片内预测,该样本值集合是当前图片的一部分。对于图片间预测,该样本值集合是参考图片的一部分。在当前块的样本值和先前重构的内容的样本值集合处于不同的格式时,编码器可执行转换操作以促成该预测。在章节VII.E中描述了这样的转换操作的示例。
在编码期间,编码器还可根据一个或多个规则对先前重构的内容执行自适应内环路去块。(诸)规则可考虑先前重构的内容内的两个毗邻块的不同色彩空间。在章节VII.F中描述了用于自适应去块的规则的示例。
编码器在比特流中输出(1220)经编码的数据。经编码的数据包括指示如何在序列内的视频的至少一些单元之间切换色彩空间、色彩采样率和/或比特深度的一个或多个信号。在章节VII.D中描述了针对该一个或多个信号的句法元素的示例。
图13示出用于在编码期间自适应地切换色彩空间、色彩采样率和/或比特深度的更详细的技术(1300)。图像编码器或视频编码器(诸如参考图3或图5a-5b描述的编码器)可执行技术(1300)。具体地,图13示出了由编码器作出的逐单元判定,但如参考图12描述了用于编码的其他选项。
编码器得到(1310)下一单元(例如,图片、片、块)并为该单元设置(1320)色彩空间、色彩采样率和/或比特深度。编码器按需将样本值转换到为该单元设置的另一色彩空间、色彩采样率和/或比特深度,随后对该单元进行编码(1330)。编码器输出(1340)该单元的经编码数据,该经编码数据包括指示该单元的色彩空间、色彩采样率和/或比特深度的一个或多个信号。编码器检查(1350)是否继续下一单元,并且如果如此,则得到(1310)下一单元。
C.解码期间的自适应切换的示例
图14示出用于在解码期间自适应地切换色彩空间、色彩采样率和/或比特深度的通用技术(1400)。图像解码器或视频解码器(诸如参考图4或图6描述的解码器)可执行技术(1400)。
解码器接收(1410)比特流中的经编码数据。经编码的数据包括指示如何在序列内的视频的至少一些单元之间切换色彩空间、色彩采样率和/或比特深度的一个或多个信号。在章节VII.D中描述了针对该一个或多个信号的句法元素的示例。
解码器对序列中的视频进行解码(1420)。作为解码的一部分,解码器在解码期间在序列内的视频的至少一些单元之间切换色彩空间、色彩采样率和/或比特深度。解码器可在图片内空间地切换色彩空间、色彩采样率和/或比特深度。解码器还可逐图片地在时间上切换色彩空间、色彩采样率和/或比特深度。出于自适应切换的目的,视频的单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或视频序列的其他部分。
例如,该切换可包括使用空间变换操作在两个色彩空间之间进行改变。对于色彩空间变换操作,色彩空间可包括至少一个YUV型色彩空间和至少一个RGB型色彩空间。或者,作为另一示例,该切换可包括使用空间重排序操作在两个色彩空间之间进行改变。对于色彩空间重排序操作,色彩空间可包括多个RGB型色彩空间。替换地,色彩空间包括其他和/或附加的色彩空间。
或者,作为另一示例,该切换可包括在两个色彩采样率之间进行改变。色彩采样率可包括4:4:4、4:2:2、4:2:0和4:0:0中的两个或更多个。替换地,色彩采样率包括其他和/或附加的色彩采样率。
或者,作为另一示例,该切换可包括在两个比特深度之间进行改变。比特深度可包括每样本12比特、每样本10比特和每样本8比特中的两个或更多个。视频的给定单元的不同色彩分量可具有相同的比特深度或不同的比特深度。替换地,比特深度包括其他和/或附加的比特深度。
在解码期间,解码器可至少部分地基于先前重构的内容的样本值集合来预测当前图片中的当前块的样本值。对于图片内预测,该样本值集合是当前图片的一部分。对于图片间预测,该样本值集合是参考图片的一部分。在当前块的样本值和先前重构的内容的样本值集合处于不同的格式时,解码器可执行转换操作以促进该预测。在章节VII.E中描述了这样的转换操作的示例。
在解码期间,解码器还可根据一个或多个规则对先前重构的内容执行自适应内环路去块。(诸)规则可考虑先前重构的内容内的两个毗邻块的不同色彩空间。在章节VII.F中描述了用于自适应去块的规则的示例。
图15示出用于在解码期间自适应地切换色彩空间、色彩采样率和/或比特深度的更详细的技术(1500)。图像解码器或视频解码器(诸如参考图4或图6描述的解码器)可执行技术(1500)。具体地,图15示出了由解码器作出的逐单元判定,但如参考图14描述了用于解码的其他选项。
解码器得到(1510)针对下一单元(例如,图片、片、块)的经编码的数据。经编码的数据包括指示该单元的色彩空间、色彩采样率和/或比特深度的一个或多个信号。解码器确定(1520)该单元的色彩空间、色彩采样率和/或比特深度。解码器对该单元进行解码(1530),从而按需将样本值从为该单元设置的色彩空间、色彩采样率和/或比特深度中转换走。解码器检查(1540)是否继续下一单元,并且如果如此,则得到(1510)针对下一单元的经编码数据。
D.对自适应切换信息进行信号化的示例
该章节描述了指示如何在序列内的视频的至少一些单元之间切换色彩空间、色彩采样率和/或比特深度的信号的示例。一般来说,比特流中的信号指示在用于编码/解码单元的两个或更多个选项之间的选择。对于色彩空间自适应,该信号指示在编码/解码单元时使用的两个或更多个色彩空间之间的选择。对于色彩采样率自适应,该信号指示在编码/解码单元时使用的两个或更多个色彩采样率之间的选择。对于比特深度自适应,该信号指示在编码/解码单元时使用的两个或更多个比特深度之间的选择。可为单元的不同色彩分量信号化不同的比特深度。
该信号可以是针对给定单元的指示在用于编码/解码给定单元的针对色彩空间(或色彩采样率或比特深度)的两个选项之间的选择的标志值。或者,该信号可以是针对给定单元(或给定单元的多个标志)的指示在用于编码/解码给定单元的针对色彩空间(或色彩采样率或比特深度)的三个或更多个选项之间的选择的某个其他句法元素。
针对给定单元的信号可被呈现在比特流句法的各个级别中的任一者处。对于逐图片的自适应,例如,指示对色彩空间(或色彩采样率或比特深度)的选择的句法元素可以是PPS的一部分。或者,对于逐片的自适应,指示对色彩空间(或色彩采样率或比特深度)的选择的句法元素可以是片头部的一部分。或者,对于逐块的自适应,指示对色彩空间(或色彩采样率或比特深度)的选择的句法元素可以是针对块的句法结构(例如,CU句法结构)的一部分。一般来说,与逐片的自适应或逐块的自适应相比,逐图片的自适应更不灵活,但使用更少的信号化比特。与逐片的自适应相比,逐块的自适应使用更多个信号化比特,但更灵活。
针对给定单元的信号可例如使用CABAC来被熵编码,或者被格式化成固定长度值。给定单元的信号可被预测地编码。在该情况下,某参数针对给定单元的增量值表示该参数的实际值和其预测值之间的差。预测值可以是参数以较高句法级别来信号化的值(例如,作为SPS的一部分或作为另一序列层参数的一部分)。例如,当前块或片的比特深度值可被信号化成相对于SPS专用比特深度的增量值。或者,预测值可基于参数针对视频的一个或多个先前单元的一个或多个实际值(例如,参数针对最后一个经编码单元的实际值、或参数在给定单元周围附近的各实际值的中值)。例如,当前块的比特深度可被信号化成相对于先前编码的块的比特深度的增量值。
经编码的数据还可包括标识或定义可用色彩空间的信息、标识或定义可用色彩采样率的信息、和/或标识或定义可用比特深度的信息。这样的信息可被信号化成SPS、PPS、片头部或比特流句法的其他结构的一部分。可从编码器和解码器已知的预定义选项之中选择可用色彩空间、色彩采样率或比特深度。或者,编码器可在经编码数据中指定自定义色彩空间(或色彩采样率或比特深度)以供编码器和解码器使用。例如,该信息可包括对两个色彩空间之间的色彩空间变换操作有用的值矩阵。与标识预定义选项的集合相比,指定自定义选项使用更多的比特,但更灵活。另一种可能性是使用编码器和解码器已知的预定义选项,而无需任何被信号化成SPS、PPS、片头部等的一部分的标识信息。这不使用用于额外信息的比特,但在这些选项中的许多选项在针对序列的编码期间根本没有被使用时,可导致对信号的较低效的编码。
标识或定义可用色彩空间(或色彩采样率或比特深度)的信息结合指示对针对视频的单元的选项的选择的信号一起使用。例如,SPS可包括标识可用色彩空间以及对序列准许哪些色彩空间转换的信息,并且每PPS(或片头部、或块句法结构)的句法元素指示在可用色彩空间的指定名册中的选择。或者,片头部可包括标识可用色彩采样率的信息,并且每块句法结构的句法元素指示从可用色彩采样率的指定名册中的选择。或者,可使用先前变型的某一组合。例如,SPS可指示预定义色彩空间的名册,其中PPS或片头部包括对预定义的色彩空间之一的选择或包括针对自定义色彩空间的信息。
在一些示例实现中,附加规则适用于对色彩空间指示符的CU级信号化。如果当前CU是用帧内空间预测的CU,则色彩空间指示符可被信号化成CU句法结构的一部分。如果当前CU是用帧内BC预测的CU或用图片间预测的CU,则色彩空间指示符在存在残留值时可被信号化成CU句法结构的一部分,但仅涉及重排序的色彩空间转换(例如,在RGB、BGR和GBR之间的色彩空间转换)不被允许。在该上下文中,这样的色彩空间转换不改善性能,并且对如何重排序色彩分量进行信号化所花费的比特将被浪费。
E.用于预测的转换操作的示例
在编码或解码期间,编码器或解码器可至少部分地基于先前重构的内容的样本值集合来预测当前图片中的当前块的样本值。对于图片内预测,该样本值集合是当前图片的一部分(例如,用于帧内空间预测的空间上毗邻的各位置处的样本值、或用于帧内BC预测的先前块的经重构样本值)。对于图片间预测,该样本值集合是参考图片的一部分。如果当前块的样本值和先前重构的内容的样本值集合处于不同的格式,则编码器或解码器执行转换操作以促进对当前块的样本值的预测。
例如,如果先前重构的内容的样本值集合在GBR色彩空间中,并且当前块是在YCbCr色彩空间中编码的,则编码器或解码器可在使用经转换的样本值集合的图片内预测或图片间预测之前将先前重构的内容的样本值集合转换到YCbCr色彩空间。
为了简化实现,编码器和解码器可用“主”格式来存储先前重构的内容的样本值。主格式提供针对处于特定色彩空间、具有特定色彩采样率和有特定比特深度的样本值的经重构内容的常见表示。取决于实现,主格式可以是具有12比特样本值的GBR4:4:4、具有12比特样本值的YUV4:4:4、或色彩空间、色彩采样率和比特深度的某一其他组合。主格式是为编码器和解码器预定义的。替换地,主格式可由比特流中指示用于经重构内容的存储的色彩空间、色彩采样率和/或比特深度的信号来指定。主格式可被选择成例如针对视频序列的各单元的最常见编码格式,以使得在许多情况下都避免转换操作。当色彩空间切换普遍,但色彩采样率切换很少时,将具有12比特样本值的GBR4:4:4用作主格式对于屏幕捕捉内容而言可能是高效的。当色彩空间切换和色彩采样率切换两者都常见时,将具有12比特样本值的YUV4:4:4用作主格式可能是高效的。
图16示出用于从处于不同格式的先前重构的内容的样本值集合预测用一种格式编码的块的样本值的技术(1600)。编码器或解码器在编码或解码期间可执行技术(1600)。
开始,编码器或解码器得到(1610)将被用于预测当前图片的当前块的样本值的先前重构的内容的样本值集合。取决于预测的类型,该样本值集合可以是当前图片或参考图片的一部分。
先前重构的内容的样本值可用第一格式(例如,主格式)来存储。编码器或解码器检查(1620)当前块是否是用第一格式编码的。更一般地,编码器或解码器评估先前重构的内容的样本值集合和当前块的样本值是否处于不同的格式。
如果当前块是用第一格式(例如,主格式)编码的,则编码器或解码器在预测之前不需要执行转换操作。编码器或解码器使用先前重构的内容的样本值集合来预测(1640)当前块的样本值。在编码期间,编码器可随后生成、编码和重构(1650)残留值。在解码期间,解码器可重构(1650)残留值。编码器或解码器随后至少部分地基于预测的样本值来重构(1660)当前块的样本值。对于非跳跃的块,编码器或解码器可将预测的样本值与经重构的残留值组合以产生经重构的样本值。编码器或解码器随后存储(1670)当前块的经重构的样本值作为先前重构的内容的一部分。由于当前块是用第一格式(例如,主格式)来编码的,因此编码器或解码器在预测后不需要执行转换操作。
另一方面,如果当前块不是用第一格式来编码的,则编码器或解码器将先前重构的内容的样本值集合从第一格式转换(1632)成用于编码当前块的第二格式。例如,如果第一格式和第二格式具有不同的色彩空间,则编码器或解码器执行色彩空间变换操作和/或色彩空间重排序操作以将先前重构的内容的样本值集合的色彩空间改变到第二格式。例如,编码器或解码器可如下将先前重构的内容的样本值集合P从RGB色彩空间转换到YCoCg色彩空间。
例如,假设某位置在RGB色彩空间中的样本值分别为PsR,PsG和PsB并且当前比特深度为比特_深度当前(bit_depthcurrent)。最小样本值为0,并且最大样本值为(1<<bit_depthcurrent)(例如,对于8比特样本值为255)。为了调整Co和Cg的动态范围,术语增加_值(add_value)被定义成1<<(bit_depthcurrent-1)(例如,对于8比特样本值为128)。该位置在YCoCg色彩空间中的样本值PsY、PsCo和PsCg可通过以下来计算:
PsY=(PsR+(2*PsG)+PsB)>>2
PsCo=((PsR-PsB)>>1)+add_value
PsCg=(((2*PsG)-PsR-PsB)>>2)+add_value
样本值PsY、PsCo和PsCg被夹在最小样本值和最大样本值所限定的范围中。
更一般地,供从第一色彩空间变换到第二色彩空间的色彩转换矩阵CC_matrix1_to_2可被定义成:
[c00,c01,c02
c10,c11,c12
c20,c21,c22
为了调整输出的动态范围,可使用偏移矩阵CC_offsets1_to_2。偏移CC_offsets1_to_2可被定义为:
[o0,
o1,
o2]
假设某位置在第一色彩空间中的样本值为PsCC1=[Ps00,Ps01,Ps02]T。该位置在第二色彩空间中的样本值PsCC2可被计算成:
PsCC2=CC_matrix1_to_2*PsCC1+CC_offsets1_to_2
样本值PsCC2被夹在适当的范围内。
针对先前重构的内容的样本值集合P的色彩空间重排序操作可通过对这样的样本值的块或平面的色彩分量进行重排序以便改变主要色彩分量和次要色彩分量的次序来实现。
如果第一和第二格式具有不同的色彩采样率,则编码器或解码器(利用或不利用滤波)执行下采样或上采样,以将先前重构的内容的样本值集合的色彩采样率改变到第二格式。例如,编码器或解码器可如下将先前重构的内容的样本值集合P从4:4:4色彩采样率转换到4:2:0色彩采样率。
假设先前重构的内容的样本值为YUV4:4:4样本值。YUV4:4:4视频的空间分辨率针对所有色彩分量都为宽度×高度。在色彩采样率转换后,YUV4:2:0视频的空间分辨率针对Y分量为宽度x高度并且针对U和V分量为(宽度/2)x(高度/2)。对于每一位置(i,j),当0≤i<宽度并且0≤j<高度时,编码器或解码器可将YUV4:2:0视频的样本值计算成:
Y420[i][j]=Y444[i][j]
U420[i][j]=(U444[2*i][2*j]+U444[2*i+1[2*j]+U444[2*i][2*j+1]+
U444[2*i+1][2*j+1])>>2
V420[i][j]=(V444[2*i][2*j]+V444[2*i+1[2*j]+V444[2*i][2*j+1]+
V444[2*i+1][2*j+1])>>2
通过这种方法,U和V分量的样本值被确定,而无需滤波。替换地,编码器或解码器在获得经下采样的U和V分量时可使用滤波。
如果第一和第二格式具有不同的比特深度,则编码器或解码器如下将先前重构的内容的样本值集合P从比特深度比特_深度参考(bit_depthref)改变到当前块的样本值的比特深度比特_深度当前(bit_depthcurrent)。
ifbit_depthref>bit_depthcurrent
shift=bit_depthref-bit_depthcurrent
add=1<<(shift-1)
P=(P+add)>>shift
elseifbit_depthref<bit_depthcurrent
shift=bit_depthcurrent-bit_depthref
P<<shift
例如,假设第一格式的比特深度为每样本10比特,第二格式的比特深度为每样本8比特,并且当前块使用帧内空间预测。编码器或解码器获得帧内空间预测中使用的各邻近位置的10比特样本值。该10比特样本值被转换成8比特样本值,该8比特样本值随后被用于生成当前块的8比特预测的样本值。
在转换(1632)后,编码器或解码器使用先前重构的内容的经转换样本值的集合来预测(1642)当前块的样本值。在编码期间,编码器可随后生成、编码和重构(1652)残留值。在解码期间,解码器可重构(1652)残留值。编码器或解码器随后至少部分地基于预测的样本值来重构(1662)当前块的样本值。对于非跳跃的块,编码器或解码器可将预测的样本值与经重构的残留值组合以产生经重构的样本值。
这时,当前块的经重构样本值处于第二格式。当前块的经重构样本值在存储成经重构内容的一部分之前被转换成第一格式。编码器或解码器将当前块的经重构样本值从第二格式转换(1672)成第一格式,并将现在处于第一格式(例如,主格式)的当前块的经转换的、经重构样本值存储(1670)成先前重构的内容的一部分。
例如,如果第一格式和第二格式具有不同的色彩空间,则编码器或解码器执行色彩空间变换操作和/或色彩空间重排序操作以将当前块的经重构的样本值的色彩空间改变到第一格式。(从第二格式到第一格式的色彩空间转换操作一般反映从第一格式到第二格式的早期色彩空间转换操作。)例如,编码器或解码器可如下将当前块的经重构的样本值R从YCoCg色彩空间转换到RGB色彩空间。
例如,假设某位置在YCoCg色彩空间中的样本值分别为RsY,RsCo和RsCg,并且当前比特深度为比特_深度当前(bit_depthcurrent)。为了调整动态范围,术语增加_值(add_value)被定义成1<<(bit_depthcurrent-1)(例如,对于8比特样本值为128)。该位置在RGB色彩空间中的样本值RsR、RsG和RsB可通过以下来计算:
RsCo-=add_value
RsCg-=add_value
RsR=RsY+RsCo-RsCg
RsG=RsY+RsCg
RsB=RsY-RsCo-RsCg
样本值RsR、RsG和RsB被夹在由最小样本值和最大样本值限定的范围中。
更一般地,供从第二色彩空间变换回第一色彩空间的色彩转换矩阵CC_矩阵2_到_1(CC_matrix2_to_1)可被定义成:
[c′00,c′01,c′02
c′10,c′11,c′12
c′20,c′21,c′22]
为了调整输出的动态范围,可使用偏移的矩阵CC_offsets2_to_1。偏移CC_offsets2_to_1可被定义为:
[o′0,
o′1,
o′2]
假设某位置在第二色彩空间中的样本值为RsCC2=[Rs00,Rs01,Rs02]T。该位置在第一色彩空间中的样本值RsCC1可被计算成:
RsCC1=CC_matrix2_to_1*(RsCC2+CC_offsets2_to_1)
样本值RsCC1被夹在适当的范围内。
针对经重构的样本值R的色彩空间重排序操作可通过对这样的样本值的块或平面的色彩分量进行重排序以便改变主要色彩分量和次要色彩分量的次序来实现。
如果第一和第二格式具有不同的色彩采样率,则编码器或解码器(利用或不利用滤波)执行下采样或上采样,以将当前块的经重构的样本值的色彩采样率改变到第一格式。(从第二格式到第一格式的色彩采样率转换操作一般反映从第一格式到第二格式的早期色彩采样率转换操作。)例如,编码器或解码器可通过对经下采样的色彩分量进行上采样来将当前块的经重构样本值R从4:2:0色彩采样率转换到4:4:4色彩采样率。
如果第一和第二格式具有不同的比特深度,则编码器或解码器如下将当前块的经重构样本值R从比特深度比特_深度当前转换成经重构内容的样本值的比特深度比特_深度参考。
ifbit_depthref>bit_depthcurrent
shift=bit_depthref-bit_depthcurrent
R<<=shift
elseifbit_depthref<bit_depthcurrent
shift=bit_depthcurrent-bit_depthref
add=1<<(shift-1)
R=(R+add)>>shift
编码器或解码器可对片或图片的其他块重复技术(1600)。
在图16中,转换(1632)在预测(1642)之前发生。替换地,对于一些类型的预测(例如,帧内空间预测、帧内BC预测),转换可遵循以下预测。在这种情况下,编码器或解码器使用先前重构的内容的样本值集合来预测当前块的样本值,随后将当前块的预测的样本值从第一格式转换到第二格式。编码器或解码器至少部分地基于当前块的经转换的预测的样本值来重构当前块的样本值。
例如,假设第一格式的比特深度为每样本10比特,第二格式的比特深度为每样本8比特,并且当前块使用帧内空间预测。编码器或解码器获得帧内空间预测中使用的各邻近位置的10比特样本值。这些10比特样本值用于生成10比特的预测的样本值,这些10比特的预测的样本值随后被转换成8比特样本值。
替换地,经重构内容的单元的样本值可以以用于编码这些单元的格式来存储。还存储对相应单元的编码格式的某个指示。经重构内容的样本值被按需转换成另一格式以供预测。
F.去块操作的示例
在编码或解码期间,编码器或解码器可根据一个或多个规则对先前重构的内容执行自适应内环路去块。在一些情况下,去块可被应用在被编码成具有不同色彩空间的两个块之间的边界上。
例如,在自适应去块的一些实现中,针对两个块之间的边界的去块过滤器的强度至少部分地基于毗邻块中的任一者是否具有非零残留值。当两个毗邻块具有不同的色彩空间时,针对这些块之间的边界的去块过滤器的强度可取决于这两个毗邻块的主要分量是否具有非零残留值。例如,第一毗邻块的主要分量被评估,并且第二毗邻块的主要分量被评估,即使色彩空间对于这两个块而言是不同的。过滤器强度取决于这些块的任一主要分量是否具有非零残留值。
替换地,(诸)规则可考虑两个毗邻块的不同色彩空间。在该情况下,当两个毗邻块具有不同的色彩空间时,针对这些块之间的边界的去块过滤器的强度取决于这两个毗邻块的相应分量是否具有非零残留值。例如,假设一个毗邻块的色彩空间为GBR,并且另一毗邻块的色彩空间为RGB。两个色彩空间为RGB型色彩空间。在确定G分量的过滤器强度时,编码器或解码器考虑第一块的第一分量(G)的残留值以及第二块的第二分量(G)的残留值。自适应去块的该变型可用于具有不同RGB型色彩空间的块。
G.针对自适应切换的编码器策略的示例
本章节描述了编码器在决定如何在编码期间自适应地切换色彩空间、色彩采样率和/或比特深度时所遵循的示例策略。此处所描述的编码器策略包括速率-失真分析方法和试探方法。
A.针对自适应切换的速率-失真分析方法
在一组针对自适应切换的方法中,编码器对于色彩空间、色彩采样率或比特深度或它们的组合使用不同选项来对视频单元进行多次编码。编码器选择提供最佳性能的那个选项,并且在对单元进行编码时使用所选择的选项。视频单元可以是块、片、图片或视频序列的其它部分。典型地,编码器在这类方法中执行多遍编码。
为了评估哪个选项(例如色彩空间、色彩采样率、或比特深度、或它们的组合)提供最佳性能,编码器可确定在对单元进行编码期间使用不同选项时的速率-失真成本,并且选择具有最低速率-失真成本的那个选项。速率-失真成本具有失真成本D和速率成本R,并具有为速率成本赋予相对于失真成本的权重的因子λ(常被称为拉格朗日乘数)(D+λR)或反之(R+λD)。速率成本可以是估算的或者实际的比特率成本。一般来说,失真成本基于原始样本与重构样本的比较。失真成本可以作为绝对差之和(“SAD”)、绝对Hadamard变换差之和(“SAHD”)或其它绝对变化差之和(“SATD”)、平方误差之和(“SSE”)、均方差(“MSE”)、均方或另一失真度量来测量。因子λ可在编码期间变化(例如,当量化步长大小变大时,增加速率成本的相对权重)。速率-失真成本通常提供对不同选项的性能的最准确评估,但也具有最高的计算复杂性。
编码器可改变速率-失真成本函数的各项中的一个或多个来将速率-失真分析偏向色彩空间、色彩采样率或比特深度的特定选项(例如,将分析偏向用于重构内容的主要格式)。例如,当使用速率-失真分析来确定视频单元的色彩空间(或色彩采样率、或比特深度)以在多个色彩空间(或色彩采样率、或比特深度)之间作出决定时,速率-失真分析被偏向默认色彩空间(或色彩采样率、或比特深度)。当评估非默认色彩空间(或色彩采样率、或比特深度)时,编码器可将失真成本按比例增大(大于1的因子)、将速率成本按比例增大(大于1的因子)、增加失真惩罚、增加速率惩罚和/或使用更大的拉格朗日乘数因子。或者,当评估默认色彩空间(或色彩采样率、或比特深度)时,编码器可将失真成本按比例减小(小于1的因子)、将速率成本按比例减小(小于1的因子)、和/或使用更小的拉格朗日乘数因子。
编码器可改变编码期间偏向或偏离默认色彩空间(或色彩采样率、或比特深度)的程度。例如,编码器可基于对默认色彩空间(或色彩采样率、或比特深度)可能是更合适于对视频内容进行编码的置信度来调整往默认色彩空间(或色彩采样率、或比特深度)的偏移(例如,如果视频内容很可能是人工创造的内容,则增加朝RGB色彩空间、或4:4:4色彩采样率、或较低的比特深度的偏移)。
替代地,编码器可使用另一方法来评估对于色彩空间、色彩采样率和/或比特深度哪个选项提供最佳性能。例如,对于给定的量化步长大小,编码器测量哪个选项导致最少比特的编码数据。或者,编码器仅对使用不同选项的编码的失真进行评估。或者,编码器使用更简单的测量,诸如将一个选项相比较于另一选项的失真减少收益,这可能在单遍编码中足够简单来确定。例如,编码器检查在给定选项被使用时与另一选项被使用时相比失真减少的量(以SAD、SATD、TSE、MSE或另一失真度量的角度)。
蛮力编码方法可能是计算密集的。它们潜在地涉及大量的附加计算、附加存储器存储、以及附加存储器读取和写入操作。
图17示出用于在编码期间使用速率-失真分析来自适应地选择色彩空间、色彩采样率和/或比特深度的通用技术(1700)。图像编码器或视频编码器(诸如参考图3或图5a-5b描述的编码器)可执行技术(1700)。
总体的,编码器对序列中的视频进行编码。在编码期间,色彩空间、色彩采样率和/或比特深度在序列内空间地和/或时间地切换。图17示出对视频的给定单元的编码处理的各阶段。
编码器得到(1710)下一单元并且执行(1720)速率-失真分析来评估单元的多个选项。多个选项是色彩空间、色彩采样率或比特深度、或以上的组合。
编码器基于速率-失真分析的结果来选择(1730)多个选项中的一个,并且以所选的选项来对单元编码(1740)。编码器在比特流中输出该单元的经编码的数据。编码器检查(1750)是否继续下一单元,并且如果如此,则得到(1710)下一单元。
因此,对于序列内的视频的多个单元,编码器可逐单元地重复该技术(1700)。多个单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或序列的某些其他部分。
对于速率-失真分析(1720),编码器可通过以不同色彩空间对单元编码来评估不同色彩空间。例如,编码器可评估至少一个YUV型色彩空间(诸如YCbCr和/或YCoCg)以及至少一个RGB型色彩空间(诸如GBR、BGR和/或RGB),记录经评估的色彩空间中的每一个的速率成本和失真成本,并且根据需要执行色彩空间变换操作。在单元被转换回输入视频的原始色彩空间之后,可对重构的采样值测量失真。或者,作为另一示例,编码器可评估多个RGB型色彩空间(诸如GRB、BGR和RGB),记录经评估的色彩空间中的每一个的速率成本和失真成本,并且根据需要执行色彩空间重新排序操作。同样,在单元被转换回输入视频的原始色彩空间之后,可对重构的采样值测量失真。
对于速率-失真分析(1720),编码器还可通过以不同色彩采样率对单元编码来评估不同色彩采样率。例如,编码器可评估多个色彩采样率(诸如4:4:4、4:2:2、4:2:0和4:0:0中的两个或更多个),记录经评估的色彩采样率中的每一个的速率成本和失真成本,并且根据需要执行上采样和下采样操作。同样,在单元被转换回输入视频的原始色彩采样率之后,可对重构的采样值测量失真。
对于速率-失真分析(1720),编码器还可通过以不同比特深度对单元编码来评估不同比特深度。例如,编码器可评估多个比特深度(诸如每个样本12个比特、每个样本10个比特以及每个样本8个比特中的两个或更多个),记录经评估的比特深度中的每一个的速率成本和失真成本,并且根据需要执行缩放操作。同样,在单元被转换回输入视频的原始比特深度之后,可对重构的采样值测量失真。
或者,对于速率-失真分析(1720),编码器可评估以下不同组合:(a)色彩空间和色彩采样率、(b)色彩空间和比特深度、(c)色彩采样率和比特深度、或(d)色彩空间、色彩采样率和比特深度。对于每种组合,编码器记录速率成本和失真成本,根据需要执行转换操作
速率-失真分析可以与试探方法相结合地使用。例如,如以下描述的,可基于对色彩空间的主要色彩分量的样本值的试探分析或其它试探分析将色彩空间的一个选项排除出速率-失真分析的考虑。类似地,可基于指示某选项没有希望的试探分析将色彩采样率或比特深度的一个选项排除出速率-失真分析的考虑。
B.用于自适应切换的试探方法
在另一组针对自适应切换的方法中,编码器评估视频单元的关于色彩空间、色彩采样率或比特深度、或它们的组合的不同选项的一个或多个准则。基于评估的结果,编码器选择选项之一,并且在编码单元时使用所选择的选项。视频单元可以是块、片、图片或视频序列的其它部分。一般来说,试探方法比速率-失真分析在计算上简单。
图18示出用于在编码期间基于一个或多个准则来自适应地选择色彩空间、色彩采样率和/或比特深度的通用技术(1800)。图像编码器或视频编码器(诸如参考图3或图5a-5b描述的编码器)可执行技术(1800)。
总体的,编码器对序列中的视频进行编码。在编码期间,色彩空间、色彩采样率和/或比特深度在序列内空间地和/或时间地切换。图18示出对视频的给定单元的编码处理的各阶段。
编码器得到(1810)下一单元并且对一个或多个准则进行评估(1820)以在单元的多个选项之间进行选择。多个选项是色彩空间、色彩采样率或比特深度、或以上的组合。
编码器基于评估的结果来选择(1830)多个选项中的一个,并且以所选的选项来对单元编码(1840)。编码器在比特流中输出该单元的经编码的数据。编码器检查(1850)是否继续下一单元,并且如果如此,则得到(1810)下一单元。
因此,对于序列内的视频的多个单元,编码器可逐单元地重复该技术(1800)。多个单元可以是序列的图片、序列的给定图片的片、序列的给定图片的块或序列的某些其他部分。
对于评估(1820),编码器能够通过确定单元的色彩分量中的哪一种是支配的来评估不同色彩空间(例如,多个RGB型的色彩空间,诸如RGB、GBR以及BGR)。编码器随后选择色彩空间中主要色彩分量是单元的支配色彩分量的那个色彩空间。典型地,编码器在编码主要色彩分量时具有更多灵活性。例如,编码器可从主要色彩分量中的大量可能的空间内预测模式中选择,但是对于次要色彩分量只可从小得多的数量的可能的空间内预测模式中选择。通过选择支配色彩分量是其主要色彩分量的色彩空间,编码器在许多情况下可改进整体的编码效率。
为了确定哪个色彩分量是支配的,编码器可标识单元的色彩分量中的哪一个具有最高的能量。例如,如果红色(R)分量具有最高能量,则编码器选择RGB色彩空间。如果绿色(G)分量具有最高能量,则编码器选择GBR色彩空间。而如果蓝色(B)分量具有最高能量,则编码器选择BGR色彩空间。具体来说,屏幕捕捉内容的片或块可在给定图片中具有不同的支配色彩分量。
替代地,为了确定哪个色彩分量是支配的,编码器可标识色彩分量中的哪一个具有最多不同的值。或者,编码器可标识色彩分量中的哪一个具有大于阈值量的不同值计数。例如,编码器对色彩空间的主要色彩分量中的不同(相异)样本值的数目进行计数。如果主要色彩分量中的不同样本值的计数低于阈值量(例如,3、4、5、或某个其它数目个不同样本值),则色彩空间被排除出考虑。当单元的主要色彩分量过于简单时,可用于该主要色彩分量的编码选项很可能被浪费,因此编码器选择具有不同主要色彩分量的色彩空间。
编码器可在使用速率-失真分析来评估色彩空间之前评估单元的主要色彩分量中的不同样本值的计数。通过检查不同样本值的计数作为速率-失真分析的阈值条件,编码器可避免针对不太可能被选择的色彩空间的计算复杂的速率-失真分析。取而代之的,编码器继续到下一个色彩空间。(然而,对于默认(主)格式,编码器可始终执行速率-失真分析。)
替代地,为了确定哪个色彩分量是支配的,编码器可测量单元的各个色彩分量的样本值的方差。编码器随后选择具有最高方差的色彩分量是主要色彩分量的色彩空间。
或者,对于评估(1820),编码器能够通过确定单元的视频内容的类型来评估不同色彩空间(例如,一个或多个RGB型色彩空间以及一个或多个YUV型色彩空间)。如果单元的视频内容的类型是低比特率自然视频,则编码器为该单元选择YUV型色彩空间。另一方面,如果单元的视频内容的类型是人工创建的视频,则编码器为该单元选择RGB型色彩空间。具体来说,在一些编码场景中,采用4:2:0色彩采样率的YUV型色彩空间对于自然视频(尤其是较低比特率的视频)而言是高效的,而采用4:4:4色彩采样率的RGB型色彩空间对于屏幕捕捉内容而言是高效的。
对于评估(1820),编码器还可基于会话操作中的信息丢失来评估不同色彩采样率。例如,编码器将单元的一个或多个(次要)色彩分量从第一色彩采样率(诸如4:4:4)下采样到第二色彩采样率(诸如4:2:2或4:2:0)。编码器随后将单元的色彩分量从第二色彩采样率上采样到第一色彩采样率,并且测量因下采样导致的信息丢失。编码器至少部分基于所测得的信息丢失来挑选各色彩采样率中的一个。具体来说,如果编码器发现在将单元的次要色彩分量从4:4:4下采样到4:2:0(或4:2:2)并随后将它们上采样回4:4:4时不存在信息丢失,则编码器可简单地为该单元使用4:2:0(或4:2:2)的色彩采样率。或者,编码器可基于测得的信息丢失与信息丢失的阈值量的比较来选择色彩采样率。
对于评估(1820),编码器还可通过确定单元的视频内容的类型来评估不同比特深度。如果单元的视频内容的类型是自然视频,则编码器为该单元选择第一比特深度。另一方面,如果单元的视频内容的类型是人工创建的视频,则编码器为该单元选择第二比特深度,其中第二比特深度低于第一比特深度。具体来说,在一些编码场景中,即使是在为自然视频使用较高的比特深度改善编码效率的情况下,为屏幕捕捉内容使用较高的比特深度也可能损害编码效率。通过基于视频的类型来适配比特深度,编码器能够在许多情况下改善编码效率。
替代地,作为评估(1820)的一部分,编码器考虑其它和/或附加准则。
C.选择编码参数的时机
在编码器对视频序列的块进行编码时,可高效地一次性为所有的色彩空间确定某些编码参数。具体来说,许多非残留编码参数可在一个色彩空间中被确定,并在评估其它色彩空间时被应用。这类参数包括帧内/帧间模式决定、划分模式、帧内预测方向、BV值和MV值。例如,无论给定块的色彩空间是什么,相同的(或至少非常类似的)MV值可能在运动估计中被找到,而相同的(或至少非常类似的)BV值可能在帧内BC估计中被找到。编码器可对一个色彩空间执行运动估计或帧内BC估计,并在评估其它色彩空间时重新使用该MV值或BV值。在YUV型色彩空间中执行运动估计或帧内BC估计可能是有益的。
更一般地,当评估用于对视频单元进行编码的多个色彩空间时,编码器可为单元设置当单元处于第一色彩空间(诸如YUV型色彩空间)中时的一个或多个编码参数,并且在评估处于不同于第一色彩空间的第二色彩空间(诸如RGB型色彩空间)中的单元时重新使用该一个或多个编码参数。以此方式,编码器可加速针对不同色彩空间的速率-失真分析。
鉴于可应用所公开的本发明的原理的许多可能的实施例,应当认识到,所示实施例仅是本发明的优选示例,并且不应认为是限制本发明的范围。相反,本发明的范围由后续的权利要求来界定。我们要求作为我们的发明保护落入这些权利要求范围和精神内的所有内容。
Claims (24)
1.一种在具有视频编码器或图像编码器的计算设备中的方法,该方法包括:
对序列内的视频进行编码,其中在所述序列内空间地和/或时间地切换色彩空间、色彩采样率和/或比特深度,并且其中所述编码包括对于所述序列内的视频的多个单元中的每一个:
执行速率-失真分析来评估所述单元的多个选项,其中所述多个选项是所述色彩空间,所述色彩采样率或所述比特深度、或以上的组合;以及
基于所述速率-失真分析来选择所述多个选项中的一个;以及在比特流中输出经编码的数据。
2.如权利要求1所述的方法,其特征在于,所述视频的多个单元是所述序列的图片。
3.如权利要求1所述的方法,其特征在于,所述视频的多个单元是所述序列的给定图片的片。
4.如权利要求1所述的方法,其特征在于,所述视频的多个单元是所述序列的给定图片的块。
5.如权利要求1-4中的任意一项所述的方法,其特征在于,所述速率-失真分析包括在评估所述色彩空间时执行色彩空间变换操作,所述色彩空间包括至少一个YUV型色彩空间和至少一个RGB型色彩空间。
6.如权利要求1-4中的任意一项所述的方法,其特征在于,所述速率-失真分析包括在评估所述色彩空间时执行色彩平面渲染操作,所述色彩空间包括多个RGB型色彩空间。
7.如权利要求1-4中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述色彩采样率,所述色彩采样率包括4:4:4、4:2:2、4:2:0和4:0:0中的两个或更多个。
8.如权利要求1-4中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述比特深度,所述比特深度包括每样本12比特、每样本10比特和每样本8比特中的两个或更多个。
9.一种在具有视频编码器或图像编码器的计算设备中的方法,该方法包括:
对序列内的视频进行编码,其中在所述序列内空间地和/或时间地切换色彩空间、色彩采样率和/或比特深度,并且其中所述编码包括对于所述序列内的视频的多个单元中的每一个:
评估一个或多个准则来在所述单元的多个选项之间选择,其中所述多个选项是所述色彩空间、所述色彩采样率或所述比特深度、或以上的组合;以及
基于所述评估的结果来选择所述多个选项中的一个;以及在比特流中输出经编码的数据。
10.如权利要求9所述的方法,其特征在于,所述视频的多个单元是所述序列的图片。
11.如权利要求9所述的方法,其特征在于,所述视频的多个单元是所述序列的给定图片的片。
12.如权利要求9所述的方法,其特征在于,所述视频的多个单元是所述序列的给定图片的块。
13.如权利要求9-12中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述色彩空间,其中所述评估包括确定所述单元的多个色彩分量中的哪一个是支配的,并且其中所述选择挑选所述色彩空间中主色彩分量是所述单元的支配色彩分量的那个色彩空间。
14.如权利要求13所述的方法,其特征在于,确定所述多个色彩分量中的哪一个是支配的包括标识所述多个色彩分量中的哪一个具有最高能量、所述多个色彩分量中的哪一个的值中具有最高方差、所述多个色彩分量中的哪一个具有最多不同值、或者所述多个色彩分量中的哪一个具有高于阈值量的不同值计数。
15.如权利要求13所述的方法,其特征在于,所述色彩空间包括多个RGB型色彩空间。
16.如权利要求9-12中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述色彩空间,其中所述评估包括确定所述单元的视频内容的类型,并且其中所述选择包括:
如果所述单元的视频内容的类型是低比特率自然视频,则为所述单元选择YUV型色彩空间;以及
如果所述单元的视频内容的类型是人工创建的视频,则为所述单元选择RGB型色彩空间。
17.如权利要求9-12中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述色彩采样率,并且其中所述评估包括:
将所述单元的一个或多个色彩分量从第一色彩采样率下采样至第二色彩采样率;
将所述单元的一个或多个色彩分量从第二色彩采样率上采样至第一色彩采样率;以及
测量因为所述下采样导致的信息丢失,其中所述选择至少部分基于所测得的信息丢失来挑选所述色彩采样率中的一个。
18.如权利要求17所述的方法,其特征在于,所述第一色彩采样率是4:4:4,并且所述第二色彩采样率是4:2:2或4:2:0。
19.如权利要求9-12中的任意一项所述的方法,其特征在于,所述单元的多个选项是所述比特深度,其中所述评估包括确定所述单元的视频内容的类型,并且其中所述选择包括:
如果所述单元的视频内容的类型是自然视频,则为所述单元选择第一比特深度;以及
如果所述单元的视频内容的类型是人工创建的视频,则为所述单元选择低于所述第一比特深度的第二比特深度。
20.如权利要求1-19中的任意一项所述的方法,其特征在于,对于所述序列内的视频的多个单元中的至少一个,编码所述单元包括:
在所述单元处于第一色彩空间中时为所述单元设置一个或多个编码参数;以及
在评估处于不同于所述第一色彩空间的第二色彩空间中的单元时,重新使用所述一个或多个编码参数。
21.如权利要求20所述的方法,其特征在于,所述第一色彩空间是YUV型色彩空间,并且所述第二色彩空间是RGB型色彩空间。
22.如权利要求20所述的方法,其特征在于,所述一个或多个编码参数包括帧内/帧间模式、划分模式、帧内预测方向、块矢量值以及运动矢量值中的一个或多个。
23.适于执行权利要求1-22中的任一项所述的方法的计算设备。
24.一个或多个存储计算机可执行指令的计算机可读介质,所述计算机可执行指令使得计算设备因此被编程为执行如权利要求1-22中的任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/072852 WO2015131330A1 (en) | 2014-03-04 | 2014-03-04 | Encoding strategies for adaptive switching of color spaces, color sampling rates and/or bit depths |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105264888A true CN105264888A (zh) | 2016-01-20 |
CN105264888B CN105264888B (zh) | 2018-09-14 |
Family
ID=54054343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480031771.5A Active CN105264888B (zh) | 2014-03-04 | 2014-03-04 | 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 |
Country Status (4)
Country | Link |
---|---|
US (5) | US10182241B2 (zh) |
EP (1) | EP3114835B1 (zh) |
CN (1) | CN105264888B (zh) |
WO (1) | WO2015131330A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107454397A (zh) * | 2016-04-20 | 2017-12-08 | 联发科技股份有限公司 | 对预测值执行色彩空间转换的图像编码/解码方法及装置 |
WO2017211306A1 (zh) * | 2016-06-08 | 2017-12-14 | 同济大学 | 视频数据压缩码流的解码、视频数据的编码方法及装置 |
CN108574845A (zh) * | 2017-03-12 | 2018-09-25 | 上海天荷电子信息有限公司 | 动态采用多种采样格式的数据压缩方法和装置 |
US10362320B2 (en) | 2017-04-21 | 2019-07-23 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
TWI703856B (zh) * | 2019-04-18 | 2020-09-01 | 瑞昱半導體股份有限公司 | 影像壓縮方法及影像壓縮器 |
WO2020228835A1 (en) * | 2019-05-16 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Adaptive color-format conversion in video coding |
CN112655208A (zh) * | 2018-07-09 | 2021-04-13 | 弗劳恩霍夫应用研究促进协会 | 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法 |
WO2021174878A1 (zh) * | 2020-03-02 | 2021-09-10 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、计算机设备及存储介质 |
CN113678453A (zh) * | 2019-04-12 | 2021-11-19 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测的上下文确定 |
CN114205586A (zh) * | 2021-12-07 | 2022-03-18 | 眸芯科技(上海)有限公司 | 基于多色彩空间进行率失真优化的视频处理方法及应用 |
US11805275B2 (en) | 2019-06-05 | 2023-10-31 | Beijing Bytedance Network Technology Co., Ltd | Context determination for matrix-based intra prediction |
US11943444B2 (en) | 2019-05-31 | 2024-03-26 | Beijing Bytedance Network Technology Co., Ltd. | Restricted upsampling process in matrix-based intra prediction |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101917224B1 (ko) * | 2012-09-18 | 2018-11-13 | 엘지이노텍 주식회사 | 영상데이터 전송장치 |
JP6093009B2 (ja) * | 2013-04-19 | 2017-03-08 | 日立マクセル株式会社 | 符号化方法及び符号化装置 |
WO2015014773A1 (en) | 2013-07-29 | 2015-02-05 | Koninklijke Kpn N.V. | Providing tile video streams to a client |
CN105264888B (zh) | 2014-03-04 | 2018-09-14 | 微软技术许可有限责任公司 | 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 |
CN110049325B (zh) | 2014-03-04 | 2022-07-05 | 微软技术许可有限责任公司 | 色彩空间、色彩采样率和/或比特深度的自适应切换 |
JP6367359B2 (ja) | 2014-03-27 | 2018-08-01 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 色空間を切り替えるときの量子化/スケーリング及び逆量子化/スケーリングの調整 |
WO2015197818A1 (en) | 2014-06-27 | 2015-12-30 | Koninklijke Kpn N.V. | Hevc-tiled video streaming |
FR3024582A1 (fr) * | 2014-07-29 | 2016-02-05 | Orange | Gestion de la perte de trame dans un contexte de transition fd/lpd |
EP3195597A4 (en) * | 2014-09-19 | 2018-02-21 | Telefonaktiebolaget LM Ericsson (publ) | Methods, encoders and decoders for coding of video sequences |
CN105960802B (zh) | 2014-10-08 | 2018-02-06 | 微软技术许可有限责任公司 | 切换色彩空间时对编码和解码的调整 |
KR102365685B1 (ko) * | 2015-01-05 | 2022-02-21 | 삼성전자주식회사 | 인코더의 작동 방법과 상기 인코더를 포함하는 장치들 |
WO2016145243A1 (en) * | 2015-03-10 | 2016-09-15 | Apple Inc. | Adaptive chroma downsampling and color space conversion techniques |
KR101770300B1 (ko) * | 2015-06-09 | 2017-08-22 | 삼성전자주식회사 | 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
US10715843B2 (en) * | 2015-08-20 | 2020-07-14 | Koninklijke Kpn N.V. | Forming one or more tile streams on the basis of one or more video streams |
EP3154264A1 (en) * | 2015-10-08 | 2017-04-12 | Thomson Licensing | Method of transitioning color transformations between two successive main sequences of a video content |
EP3360330B1 (en) | 2015-10-08 | 2021-03-24 | Koninklijke KPN N.V. | Enhancing a region of interest in video frames of a video stream |
US20170105012A1 (en) * | 2015-10-08 | 2017-04-13 | Mediatek Inc. | Method and Apparatus for Cross Color Space Mode Decision |
US20180146019A1 (en) * | 2016-11-21 | 2018-05-24 | International Business Machines Corporation | Light-weight resolution switching for online video streaming |
CN109565604A (zh) * | 2016-12-30 | 2019-04-02 | 华为技术有限公司 | 图像滤波方法、装置以及设备 |
US11212539B2 (en) * | 2017-07-28 | 2021-12-28 | Nvidia Corporation | Efficient lossless compression of captured raw image information systems and methods |
US10574997B2 (en) * | 2017-10-27 | 2020-02-25 | Apple Inc. | Noise level control in video coding |
US10699444B2 (en) | 2017-11-22 | 2020-06-30 | Apple Inc | Point cloud occupancy map compression |
US10841458B2 (en) * | 2018-03-02 | 2020-11-17 | Canon Kabushiki Kaisha | Image processing apparatus, image processing method, and storage medium |
US10776957B2 (en) | 2018-10-02 | 2020-09-15 | Samsung Electronics Co., Ltd. | Online image compression in hardware |
EP3939270A4 (en) | 2019-04-16 | 2022-05-11 | Beijing Bytedance Network Technology Co., Ltd. | MATRIX DERIVATION IN AN INTRA CODING MODE |
WO2020221373A1 (en) | 2019-05-01 | 2020-11-05 | Beijing Bytedance Network Technology Co., Ltd. | Matrix-based intra prediction using filtering |
CN117097912A (zh) | 2019-05-01 | 2023-11-21 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测的上下文编码 |
CN117412039A (zh) | 2019-05-22 | 2024-01-16 | 北京字节跳动网络技术有限公司 | 使用上采样的基于矩阵的帧内预测 |
US11089308B1 (en) * | 2019-06-13 | 2021-08-10 | Xilinx, Inc. | Removing blocking artifacts in video encoders |
US11523185B2 (en) | 2019-06-19 | 2022-12-06 | Koninklijke Kpn N.V. | Rendering video stream in sub-area of visible display area |
CN114208172A (zh) * | 2019-09-24 | 2022-03-18 | 北京达佳互联信息技术有限公司 | 执行用于调色板模式的率失真分析的方法和装置 |
WO2021083188A1 (en) | 2019-10-28 | 2021-05-06 | Beijing Bytedance Network Technology Co., Ltd. | Syntax signaling and parsing based on colour component |
JP7343702B2 (ja) * | 2020-06-10 | 2023-09-12 | 日本放送協会 | デブロッキングフィルタ装置、復号装置、及びプログラム |
US12034910B2 (en) * | 2020-06-18 | 2024-07-09 | Lg Electronics Inc. | Image encoding/decoding method and apparatus for signaling high level information for tool control based on color representation format, and computer-readable recording medium storing bitstream |
KR20220037382A (ko) | 2020-09-17 | 2022-03-24 | 레몬 인크. | 디코더 구성 레코드에서의 픽처 치수 표시 |
US20220103842A1 (en) * | 2020-09-30 | 2022-03-31 | Qualcomm Incorporated | Fixed bit depth processing for cross-component linear model (cclm) mode in video coding |
WO2022268236A1 (en) * | 2021-06-25 | 2022-12-29 | Polar Hpc Solutions Limited | Image compression and associated color approximation |
KR20240039139A (ko) * | 2021-07-09 | 2024-03-26 | 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 | 비디오 코딩을 위한 잔여 및 계수 코딩 |
US12041248B2 (en) * | 2021-08-02 | 2024-07-16 | Mediatek Singapore Pte. Ltd. | Color component processing in down-sample video coding |
CN114173189B (zh) * | 2021-10-29 | 2023-02-07 | 荣耀终端有限公司 | 视频编辑方法、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6961736B1 (en) * | 2002-05-31 | 2005-11-01 | Adobe Systems Incorporated | Compact color feature vector representation |
US20090180555A1 (en) * | 2008-01-10 | 2009-07-16 | Microsoft Corporation | Filtering and dithering as pre-processing before encoding |
CN102761738A (zh) * | 2011-12-05 | 2012-10-31 | 上海天荷电子信息有限公司 | 基于混合色度采样率的图像压缩方法和装置 |
US20130188696A1 (en) * | 2012-01-19 | 2013-07-25 | Futurewei Technologies, Inc. | Reduced Look-Up Table for LM Mode Calculation |
US20130272385A1 (en) * | 2012-04-13 | 2013-10-17 | Qualcomm Incorporated | Level decision in rate distortion optimized quantization |
Family Cites Families (110)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3238704A (en) | 1963-03-07 | 1966-03-08 | Engelhard Ind Inc | Diffusion purification of gases |
US5386496A (en) | 1991-02-15 | 1995-01-31 | Toyo Ink Mfg. Co., Ltd. | Method and device for nonlinear transformation of colour information by neural network |
EP0579873B1 (en) | 1992-07-20 | 1999-05-06 | Océ-Technologies B.V. | Method of reproducing text on a raster output device |
JP3284829B2 (ja) * | 1995-06-15 | 2002-05-20 | ミノルタ株式会社 | 画像処理装置 |
US5805228A (en) * | 1996-08-09 | 1998-09-08 | U.S. Robotics Access Corp. | Video encoder/decoder system |
US6319306B1 (en) | 2000-03-23 | 2001-11-20 | Idatech, Llc | Hydrogen-selective metal membrane modules and method of forming the same |
JPH1155538A (ja) | 1997-08-01 | 1999-02-26 | Fujitsu Ltd | カラー画像情報処理システム、カラー画像情報入力装置及びカラー画像出力装置 |
JPH11164152A (ja) | 1997-11-26 | 1999-06-18 | Ricoh Co Ltd | カラー画像データ圧縮装置 |
US6262812B1 (en) | 1998-04-30 | 2001-07-17 | Xerox Corporation | Method and apparatus for object-oriented adjustment of color attributes in a perceptually uniform manner |
US7129860B2 (en) | 1999-01-29 | 2006-10-31 | Quickshift, Inc. | System and method for performing scalable embedded parallel data decompression |
JP3725454B2 (ja) * | 2001-01-17 | 2005-12-14 | セイコーエプソン株式会社 | 画像ファイルの出力画像調整 |
US8374237B2 (en) | 2001-03-02 | 2013-02-12 | Dolby Laboratories Licensing Corporation | High precision encoding and decoding of video images |
US6975680B2 (en) * | 2001-07-12 | 2005-12-13 | Dolby Laboratories, Inc. | Macroblock mode decision biasing for video compression systems |
JP3902968B2 (ja) | 2002-03-26 | 2007-04-11 | キヤノン株式会社 | 画像処理装置及びその制御方法及びコンピュータプログラム及び記憶媒体 |
US7155065B1 (en) | 2002-03-27 | 2006-12-26 | Microsoft Corporation | System and method for progressively transforming and coding digital data |
JP4617644B2 (ja) | 2003-07-18 | 2011-01-26 | ソニー株式会社 | 符号化装置及び方法 |
US20070206682A1 (en) | 2003-09-29 | 2007-09-06 | Eric Hamilton | Method And Apparatus For Coding Information |
US7308135B2 (en) | 2004-01-14 | 2007-12-11 | Eastman Kodak Company | Constructing extended color gamut digital images from limited color gamut digital images |
US7428332B2 (en) | 2004-01-14 | 2008-09-23 | Spaulding Kevin E | Applying an adjusted image enhancement algorithm to a digital image |
KR100518849B1 (ko) | 2004-03-02 | 2005-09-30 | 엘지전자 주식회사 | 영상 압축 및 복원 방법 |
US7209145B2 (en) | 2004-04-02 | 2007-04-24 | Xerox Corporation | Color device profile having a buffered look-up table |
US7689051B2 (en) | 2004-04-15 | 2010-03-30 | Microsoft Corporation | Predictive lossless coding of images and video |
US20050259730A1 (en) | 2004-05-18 | 2005-11-24 | Sharp Laboratories Of America, Inc. | Video coding with residual color conversion using reversible YCoCg |
KR100601867B1 (ko) | 2004-06-11 | 2006-07-19 | 삼성전자주식회사 | 벡터 스트레칭을 이용한 색역 매핑 장치 및 방법 |
US7454055B1 (en) | 2004-11-12 | 2008-11-18 | Payton Paul M | Enhanced image compression utilizing Hilbert curve scanning of quantized discrete cosine transform coefficients |
TWI257074B (en) | 2005-02-22 | 2006-06-21 | Sunplus Technology Co Ltd | Motion estimation method and system using colors information |
KR100723403B1 (ko) | 2005-02-28 | 2007-05-30 | 삼성전자주식회사 | 컬러 성분간 단일 부호화 모드를 이용한 예측영상 생성 방법 및 장치와, 그를 이용한 영상 및 비디오 부호화/복호화방법 및 장치 |
KR100763178B1 (ko) | 2005-03-04 | 2007-10-04 | 삼성전자주식회사 | 색 공간 스케일러블 비디오 코딩 및 디코딩 방법, 이를위한 장치 |
US20060210156A1 (en) | 2005-03-18 | 2006-09-21 | Sharp Laboratories Of America, Inc. | Video compression for raw rgb format using residual color transform |
US7792370B2 (en) | 2005-03-18 | 2010-09-07 | Sharp Laboratories Of America, Inc. | Residual color transform for 4:2:0 RGB format |
KR101246915B1 (ko) | 2005-04-18 | 2013-03-25 | 삼성전자주식회사 | 동영상 부호화 또는 복호화 방법 및 장치 |
JP2006340012A (ja) | 2005-06-01 | 2006-12-14 | Konica Minolta Medical & Graphic Inc | 色調整方法 |
US7706607B2 (en) | 2005-06-23 | 2010-04-27 | Microsoft Corporation | Optimized color image encoding and decoding using color space parameter data |
KR101204801B1 (ko) | 2005-07-15 | 2012-11-26 | 삼성전자주식회사 | 색상계에 적응적인 화소값 보정 방법 및 장치, 그를 이용항영상 부호화/복호화 방법 및 장치 |
CN100425066C (zh) | 2005-09-23 | 2008-10-08 | 逐点半导体(上海)有限公司 | 图像压缩的方法 |
EP1964389A2 (en) | 2005-12-21 | 2008-09-03 | Thomson Licensing | Constrained color palette in a color space |
WO2007079781A1 (en) | 2006-01-13 | 2007-07-19 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Picture coding using adaptive colour space transformation |
EP1977602B1 (en) | 2006-01-13 | 2013-03-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Picture coding using adaptive colour space transformation |
EP1989882B1 (en) | 2006-01-23 | 2015-11-11 | Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. | High dynamic range codecs |
US8243340B2 (en) | 2006-02-23 | 2012-08-14 | Microsoft Corporation | Pre-processing of image data for enhanced compression |
WO2007116551A1 (ja) | 2006-03-30 | 2007-10-18 | Kabushiki Kaisha Toshiba | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 |
CN101110963B (zh) | 2006-07-21 | 2010-05-12 | 帆宣***科技股份有限公司 | 图像调整装置 |
CN100502507C (zh) | 2006-09-14 | 2009-06-17 | 浙江大学 | 视频数据压缩编码方法 |
BRPI0622046B1 (pt) * | 2006-09-30 | 2020-01-21 | Interdigital Vc Holdings Inc | método e dispositivo para codificar e decodificar camada de aprimoramento de cor para vídeo |
KR100843095B1 (ko) * | 2006-12-13 | 2008-07-03 | 삼성전자주식회사 | 선호색 재현 장치 및 방법 |
US8055070B2 (en) | 2007-01-05 | 2011-11-08 | Geo Semiconductor Inc. | Color and geometry distortion correction system and method |
KR20080067226A (ko) | 2007-01-15 | 2008-07-18 | 주식회사 대우일렉트로닉스 | 칼라 스페이스 컨버터의 rgb 출력 편차 제거 방법 |
WO2008127072A1 (en) | 2007-04-16 | 2008-10-23 | Electronics And Telecommunications Research Institute | Color video scalability encoding and decoding method and device thereof |
TW200845723A (en) | 2007-04-23 | 2008-11-16 | Thomson Licensing | Method and apparatus for encoding video data, method and apparatus for decoding encoded video data and encoded video signal |
CN101076125B (zh) | 2007-06-18 | 2010-07-28 | 山东经济学院 | 图像压缩中RGB与YCbCr转换计算的方法 |
US8422803B2 (en) | 2007-06-28 | 2013-04-16 | Mitsubishi Electric Corporation | Image encoding device, image decoding device, image encoding method and image decoding method |
US8538197B2 (en) | 2007-08-02 | 2013-09-17 | Sony Corporation | Image processing apparatus |
US8189243B1 (en) | 2007-11-13 | 2012-05-29 | Adobe Systems Incorporated | Color calibration for digital imaging devices |
CN101163252B (zh) | 2007-11-27 | 2011-10-26 | 中国科学院计算技术研究所 | 一种多媒体视频图像的缩放方法 |
KR101213704B1 (ko) | 2007-12-05 | 2012-12-18 | 삼성전자주식회사 | 가변 컬러 포맷 기반 동영상 부호화 방법 및 장치, 그복호화 방법 및 장치 |
US8369638B2 (en) | 2008-05-27 | 2013-02-05 | Microsoft Corporation | Reducing DC leakage in HD photo transform |
US8897359B2 (en) | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
EP2144432A1 (en) | 2008-07-08 | 2010-01-13 | Panasonic Corporation | Adaptive color format conversion and deconversion |
US20100027973A1 (en) | 2008-07-29 | 2010-02-04 | Chia-Yun Cheng | Image processing circuit and method capable of performing online color space conversion |
US8279924B2 (en) | 2008-10-03 | 2012-10-02 | Qualcomm Incorporated | Quantization parameter selections for encoding of chroma and luma video blocks |
US8451896B2 (en) | 2009-10-19 | 2013-05-28 | Hong Kong Applied Science and Technology Research Institute Company Limited | Method and apparatus for adaptive quantization in digital video coding |
JP5227987B2 (ja) | 2010-03-10 | 2013-07-03 | 日本放送協会 | 符号化装置、復号装置及びプログラム |
CN102223525B (zh) | 2010-04-13 | 2014-02-19 | 富士通株式会社 | 视频解码方法和*** |
JP5073004B2 (ja) * | 2010-04-23 | 2012-11-14 | 株式会社東芝 | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 |
US9872019B2 (en) | 2010-07-20 | 2018-01-16 | Sk Telecom Co., Ltd. | Method and device for deblocking-filtering, and method and device for encoding and decoding using same |
US20120026394A1 (en) | 2010-07-30 | 2012-02-02 | Emi Maruyama | Video Decoder, Decoding Method, and Video Encoder |
US8860785B2 (en) | 2010-12-17 | 2014-10-14 | Microsoft Corporation | Stereo 3D video support in computing devices |
WO2012122426A1 (en) | 2011-03-10 | 2012-09-13 | Dolby Laboratories Licensing Corporation | Reference processing for bitdepth and color format scalable video coding |
US20140003527A1 (en) | 2011-03-10 | 2014-01-02 | Dolby Laboratories Licensing Corporation | Bitdepth and Color Scalable Video Coding |
JP2012217137A (ja) | 2011-03-31 | 2012-11-08 | Sony Corp | 画像処理装置、画像処理方法、画像処理プログラム |
JP6094973B2 (ja) * | 2011-05-20 | 2017-03-15 | サン パテント トラスト | 色平面内予測を用いて映像を符号化および復号する方法および装置 |
US9185424B2 (en) | 2011-07-05 | 2015-11-10 | Qualcomm Incorporated | Image data compression |
US8724711B2 (en) | 2011-07-12 | 2014-05-13 | Intel Corporation | Luma-based chroma intra prediction |
US9769472B2 (en) | 2011-08-17 | 2017-09-19 | Mediatek Singapore Pte. Ltd. | Method and apparatus for Intra prediction using non-square blocks |
US8804816B2 (en) | 2011-08-30 | 2014-08-12 | Microsoft Corporation | Video encoding enhancements |
US20130083855A1 (en) | 2011-09-30 | 2013-04-04 | Dane P. Kottke | Adaptive color space selection for high quality video compression |
US9807403B2 (en) | 2011-10-21 | 2017-10-31 | Qualcomm Incorporated | Adaptive loop filtering for chroma components |
EP2777250B1 (en) | 2011-11-07 | 2017-05-31 | Intel Corporation | Cross-channel residual prediction |
KR20130058524A (ko) | 2011-11-25 | 2013-06-04 | 오수미 | 색차 인트라 예측 블록 생성 방법 |
WO2013106190A1 (en) | 2012-01-09 | 2013-07-18 | Dolby Laboratories Licensing Corporation | Hybrid reference picture reconstruction method for single and multiple layered video coding systems |
CN106162185B (zh) | 2012-01-20 | 2019-10-18 | 维洛媒体国际有限公司 | 色度量化参数扩展 |
JP5901362B2 (ja) | 2012-03-08 | 2016-04-06 | 日本放送協会 | 色変換装置、カラーサブサンプリング装置およびこれらのプログラム |
JP5624576B2 (ja) | 2012-03-14 | 2014-11-12 | 株式会社東芝 | 画像圧縮コントローラ及び画像圧縮装置 |
US9451258B2 (en) | 2012-04-03 | 2016-09-20 | Qualcomm Incorporated | Chroma slice-level QP offset and deblocking |
JP5909149B2 (ja) | 2012-05-15 | 2016-04-26 | 日本放送協会 | 色変換装置、符号化器および復号器ならびにそれらのプログラム |
GB2503875B (en) | 2012-06-29 | 2015-06-10 | Canon Kk | Method and device for encoding or decoding an image |
US9414054B2 (en) | 2012-07-02 | 2016-08-09 | Microsoft Technology Licensing, Llc | Control and use of chroma quantization parameter values |
US8897580B2 (en) | 2012-07-30 | 2014-11-25 | Apple Inc. | Error diffusion with color conversion and encoding |
US11240515B2 (en) * | 2012-09-10 | 2022-02-01 | Apple Inc. | Video display preference filtering |
WO2014045506A1 (en) | 2012-09-24 | 2014-03-27 | Sharp Kabushiki Kaisha | Video compression with color space scalability |
US9451250B2 (en) * | 2012-10-03 | 2016-09-20 | Broadcom Corporation | Bounded rate compression with rate control for slices |
CN104937935A (zh) | 2012-11-16 | 2015-09-23 | Vid拓展公司 | 用于视觉条件意识视频编码的感知预处理滤波器 |
CN103096092B (zh) | 2013-02-07 | 2015-12-02 | 上海国茂数字技术有限公司 | 基于颜色空间变换进行编解码误差修正的方法和*** |
JP6033725B2 (ja) | 2013-03-28 | 2016-11-30 | Kddi株式会社 | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム |
WO2014162736A1 (en) | 2013-04-05 | 2014-10-09 | Sharp Kabushiki Kaisha | Video compression with color bit depth scaling |
US9225988B2 (en) * | 2013-05-30 | 2015-12-29 | Apple Inc. | Adaptive color space transform coding |
US9225991B2 (en) | 2013-05-30 | 2015-12-29 | Apple Inc. | Adaptive color space transform coding |
US9300967B2 (en) | 2013-06-19 | 2016-03-29 | Apple Inc. | Sample adaptive offset control |
US20140376611A1 (en) * | 2013-06-21 | 2014-12-25 | Qualcomm Incorporated | Adaptive color transforms for video coding |
US9294766B2 (en) | 2013-09-09 | 2016-03-22 | Apple Inc. | Chroma quantization in video coding |
EP2887672A1 (en) * | 2013-12-17 | 2015-06-24 | Thomson Licensing | Method for coding a sequence of pictures and method for decoding a bitstream and corresponding devices |
CN110049325B (zh) | 2014-03-04 | 2022-07-05 | 微软技术许可有限责任公司 | 色彩空间、色彩采样率和/或比特深度的自适应切换 |
CN105264888B (zh) | 2014-03-04 | 2018-09-14 | 微软技术许可有限责任公司 | 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 |
US11070810B2 (en) | 2014-03-14 | 2021-07-20 | Qualcomm Incorporated | Modifying bit depths in color-space transform coding |
JP6367359B2 (ja) | 2014-03-27 | 2018-08-01 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 色空間を切り替えるときの量子化/スケーリング及び逆量子化/スケーリングの調整 |
US10142642B2 (en) | 2014-06-04 | 2018-11-27 | Qualcomm Incorporated | Block adaptive color-space conversion coding |
US9924175B2 (en) | 2014-06-11 | 2018-03-20 | Qualcomm Incorporated | Determining application of deblocking filtering to palette coded blocks in video coding |
US20150373327A1 (en) | 2014-06-20 | 2015-12-24 | Qualcomm Incorporated | Block adaptive color-space conversion coding |
CN105960802B (zh) | 2014-10-08 | 2018-02-06 | 微软技术许可有限责任公司 | 切换色彩空间时对编码和解码的调整 |
US10290119B2 (en) | 2016-09-15 | 2019-05-14 | Sportsmedia Technology Corporation | Multi view camera registration |
-
2014
- 2014-03-04 CN CN201480031771.5A patent/CN105264888B/zh active Active
- 2014-03-04 EP EP14885039.9A patent/EP3114835B1/en active Active
- 2014-03-04 US US15/029,243 patent/US10182241B2/en active Active
- 2014-03-04 WO PCT/CN2014/072852 patent/WO2015131330A1/en active Application Filing
-
2018
- 2018-09-24 US US16/140,034 patent/US10681375B2/en active Active
-
2020
- 2020-04-17 US US16/851,886 patent/US11166042B2/en active Active
-
2021
- 2021-10-01 US US17/492,338 patent/US11632569B2/en active Active
-
2023
- 2023-03-02 US US18/177,633 patent/US20230209088A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6961736B1 (en) * | 2002-05-31 | 2005-11-01 | Adobe Systems Incorporated | Compact color feature vector representation |
US20090180555A1 (en) * | 2008-01-10 | 2009-07-16 | Microsoft Corporation | Filtering and dithering as pre-processing before encoding |
CN102761738A (zh) * | 2011-12-05 | 2012-10-31 | 上海天荷电子信息有限公司 | 基于混合色度采样率的图像压缩方法和装置 |
US20130188696A1 (en) * | 2012-01-19 | 2013-07-25 | Futurewei Technologies, Inc. | Reduced Look-Up Table for LM Mode Calculation |
US20130272385A1 (en) * | 2012-04-13 | 2013-10-17 | Qualcomm Incorporated | Level decision in rate distortion optimized quantization |
Non-Patent Citations (4)
Title |
---|
DETLEV MARPE, 等: "Macroblock-Adaptive Residual Color Space Transform for 4:4:4 Video Coding", 《IMAGE PROCESSING, 2006 IEEE INTERNATIONAL CONFERENCE》 * |
KEI KAWAMURA: "AHG7: In-loop color-space transformation of residual signals for range extensions", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 * |
WEI DAI: "RCE1: Adaptive Color Transforms For Range Extensions", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 * |
WOO-SHIK KIM: "Color Format Extension", 《OINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG》 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107454397B (zh) * | 2016-04-20 | 2019-12-20 | 联发科技股份有限公司 | 对预测值执行色彩空间转换的图像编码/解码方法及装置 |
CN107454397A (zh) * | 2016-04-20 | 2017-12-08 | 联发科技股份有限公司 | 对预测值执行色彩空间转换的图像编码/解码方法及装置 |
WO2017211306A1 (zh) * | 2016-06-08 | 2017-12-14 | 同济大学 | 视频数据压缩码流的解码、视频数据的编码方法及装置 |
CN107483942A (zh) * | 2016-06-08 | 2017-12-15 | 同济大学 | 视频数据压缩码流的解码、视频数据的编码方法及装置 |
CN108574845A (zh) * | 2017-03-12 | 2018-09-25 | 上海天荷电子信息有限公司 | 动态采用多种采样格式的数据压缩方法和装置 |
CN108574845B (zh) * | 2017-03-12 | 2024-06-18 | 上海天荷电子信息有限公司 | 动态采用多种采样格式的数据压缩方法和装置 |
US11202084B2 (en) | 2017-04-21 | 2021-12-14 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
US10362320B2 (en) | 2017-04-21 | 2019-07-23 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
US10869045B2 (en) | 2017-04-21 | 2020-12-15 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
US11503313B2 (en) | 2017-04-21 | 2022-11-15 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
CN112655208B (zh) * | 2018-07-09 | 2023-12-15 | 弗劳恩霍夫应用研究促进协会 | 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法 |
CN112655208A (zh) * | 2018-07-09 | 2021-04-13 | 弗劳恩霍夫应用研究促进协会 | 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法 |
US11831877B2 (en) | 2019-04-12 | 2023-11-28 | Beijing Bytedance Network Technology Co., Ltd | Calculation in matrix-based intra prediction |
CN113678453A (zh) * | 2019-04-12 | 2021-11-19 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测的上下文确定 |
CN113678453B (zh) * | 2019-04-12 | 2024-05-14 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测的上下文确定 |
US11393130B2 (en) | 2019-04-18 | 2022-07-19 | Realtek Semiconductor Corporation | Image compression method and image compressor |
TWI703856B (zh) * | 2019-04-18 | 2020-09-01 | 瑞昱半導體股份有限公司 | 影像壓縮方法及影像壓縮器 |
CN113875232A (zh) * | 2019-05-16 | 2021-12-31 | 北京字节跳动网络技术有限公司 | 视频编解码中的自适应颜色格式转换 |
WO2020228835A1 (en) * | 2019-05-16 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Adaptive color-format conversion in video coding |
CN113875232B (zh) * | 2019-05-16 | 2024-07-09 | 北京字节跳动网络技术有限公司 | 视频编解码中的自适应颜色格式转换 |
US11943444B2 (en) | 2019-05-31 | 2024-03-26 | Beijing Bytedance Network Technology Co., Ltd. | Restricted upsampling process in matrix-based intra prediction |
US11805275B2 (en) | 2019-06-05 | 2023-10-31 | Beijing Bytedance Network Technology Co., Ltd | Context determination for matrix-based intra prediction |
WO2021174878A1 (zh) * | 2020-03-02 | 2021-09-10 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、计算机设备及存储介质 |
CN114205586A (zh) * | 2021-12-07 | 2022-03-18 | 眸芯科技(上海)有限公司 | 基于多色彩空间进行率失真优化的视频处理方法及应用 |
Also Published As
Publication number | Publication date |
---|---|
EP3114835B1 (en) | 2020-04-22 |
US20230209088A1 (en) | 2023-06-29 |
WO2015131330A1 (en) | 2015-09-11 |
EP3114835A1 (en) | 2017-01-11 |
US10182241B2 (en) | 2019-01-15 |
US11632569B2 (en) | 2023-04-18 |
CN105264888B (zh) | 2018-09-14 |
EP3114835A4 (en) | 2017-03-01 |
US20220030271A1 (en) | 2022-01-27 |
US20160261885A1 (en) | 2016-09-08 |
US10681375B2 (en) | 2020-06-09 |
US11166042B2 (en) | 2021-11-02 |
US20200244992A1 (en) | 2020-07-30 |
US20190028737A1 (en) | 2019-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105264888A (zh) | 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略 | |
CN105432077B (zh) | 在切换色彩空间时调整量化/缩放和逆量化/缩放 | |
CN105230023A (zh) | 色彩空间、色彩采样率和/或比特深度的自适应切换 | |
CN105960802B (zh) | 切换色彩空间时对编码和解码的调整 | |
CN105917648B (zh) | 具有非对称分区的帧内块复制预测以及编码器侧搜索图案、搜索范围和用于分区的方法 | |
RU2682859C1 (ru) | Выбор точности вектора движения | |
CN105247871A (zh) | 帧内块复制预测中的块翻动和跳跃模式 | |
JP6462119B2 (ja) | コンピューティングデバイス | |
CN106664405A (zh) | 用调色板模式对经逸出编码的像素的稳健编码/解码 | |
RU2666635C2 (ru) | Характеристики режима индексной карты основных цветов для кодирования и декодирования видео и изображения | |
CN105409221A (zh) | 用于样本自适应偏移滤波的编码器侧决策 | |
CN105556971A (zh) | 针对帧内块复制预测中的块翻动和跳跃模式的编码器侧判定 | |
CN105359531A (zh) | 针对屏幕内容编码的编码器侧判定 | |
CN105706450A (zh) | 根据基于散列的块匹配的结果的编码器决定 | |
CN113557527B (zh) | 视频解码方法、视频解码器及介质 | |
CN107251557A (zh) | 高色度分辨率细节的编码/解码 | |
CN107211150A (zh) | 动态更新质量至较高的色度采样率 | |
JP2017538381A (ja) | ビデオ符号化における成分間予測 | |
CN107710758A (zh) | 针对视频译码处理高动态范围及广色域视频数据 | |
CN106031177A (zh) | 用于硬件加速的视频编码的主编码器 | |
US11743475B2 (en) | Advanced video coding method, system, apparatus, and storage medium | |
CN104885457A (zh) | 用于具有增强动态范围的超高清视频信号的向后兼容编码 | |
CN105284112A (zh) | 用于确定量化参数的值的方法和装置 | |
KR20090087767A (ko) | 영상의 인트라 예측 부호화 방법 | |
CN114270836A (zh) | 视频编解码的颜色转换 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |