[go: up one dir, main page]

HK1228145B - Perceptual color transformations for wide color gamut video coding - Google Patents

Perceptual color transformations for wide color gamut video coding Download PDF

Info

Publication number
HK1228145B
HK1228145B HK17101506.6A HK17101506A HK1228145B HK 1228145 B HK1228145 B HK 1228145B HK 17101506 A HK17101506 A HK 17101506A HK 1228145 B HK1228145 B HK 1228145B
Authority
HK
Hong Kong
Prior art keywords
chromaticity
triangle
vertices
color space
component
Prior art date
Application number
HK17101506.6A
Other languages
Chinese (zh)
Other versions
HK1228145A1 (en
Inventor
D.卢戈布尔
T.O.艾丁
A.斯摩立科
N.斯蒂凡思科
Original Assignee
迪斯尼企业公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 迪斯尼企业公司 filed Critical 迪斯尼企业公司
Publication of HK1228145A1 publication Critical patent/HK1228145A1/en
Publication of HK1228145B publication Critical patent/HK1228145B/en

Links

Description

用于广色域视频编码的感知颜色变换Perceptual color transform for wide color gamut video coding

相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS

本申请要求2015年5月1日提交的编号为62/156,124的美国临时专利申请的权益,其通过引用作为整体全并入本文。This application claims the benefit of U.S. Provisional Patent Application No. 62/156,124, filed May 1, 2015, which is hereby incorporated by reference in its entirety.

技术领域Technical Field

本公开总体涉及视频编码。The present disclosure relates generally to video coding.

背景技术Background Art

人们对具有高动态范围(HDR)以及广色域(WCG)的视频或其他视觉内容的分布越来越感兴趣,这是由于,与传统标准动态范围(SDR)和标准色域(SCG)内容相比,其有能力提供更加增强的视觉体验。SDR内容的亮度通常在例如0.1到100尼特之间,该范围明显低于人眼可以在真实生活中所看到的。然而,以HDR和WCG拍摄或重新灌录的镜头片段包括更多的信息,这进而需要伴随着增加的比特率的更大的文件尺寸。There is growing interest in distributing video or other visual content with high dynamic range (HDR) and wide color gamut (WCG) due to its ability to provide a more enhanced visual experience compared to traditional standard dynamic range (SDR) and standard color gamut (SCG) content. The brightness of SDR content typically ranges from, for example, 0.1 to 100 nits, a range significantly lower than what the human eye can see in real life. However, footage shot or remastered in HDR and WCG contains more information, which in turn requires larger file sizes with increased bit rates.

发明内容Summary of the Invention

各种实施例旨在通过使用恒定亮度编码流水线以固定的比特率来提供更好的内容(例如,图片)质量,其中图片内容可以转换为接近感知均匀亮度/色度(Y/U’V’)颜色空间。此外,本发明公开了用于使用在编码流水线中(使用区别于光度变换并且与光度变换不同的专用的色品变换进行的)各种色品变换。Various embodiments are directed to providing improved content (e.g., picture) quality at a fixed bit rate by using a constant luma encoding pipeline, wherein the picture content can be converted to a near-perceptually uniform luma/chroma (Y/U'V') color space. Furthermore, the present invention discloses various chromaticity transforms used in the encoding pipeline (using a dedicated chromaticity transform distinct from and in addition to the photometric transform).

根据本公开的一个实施例,一种计算机实现方法包括将加色模型信号转换为具有色品成分(component)和亮度成分的均匀颜色空间信号。该计算机实现方法进一步包括通过将色品比变换应用到色品成分并且将亮度比变换应用到亮度成分来变换色品成分和亮度成分。此外,计算机实现方法包括量化变换的色品成分和亮度成分,并且编码量化的色品成分和亮度成分。According to one embodiment of the present disclosure, a computer-implemented method includes converting an additive color model signal into a uniform color space signal having a chromaticity component and a luminance component. The computer-implemented method further includes transforming the chromaticity component and the luminance component by applying a chromaticity ratio transform to the chromaticity component and applying a luminance ratio transform to the luminance component. Furthermore, the computer-implemented method includes quantizing the transformed chromaticity component and the luminance component, and encoding the quantized chromaticity component and the luminance component.

根据本公开的另一个实施例,一种非暂时性计算机可读存储介质具有包括在其上的计算机可执行程序代码,该计算机可执行程序代码被配置为使处理器用于:解码携带图像信号的输入比特流的量化颜色和光亮度成分,该图像信号由具有光亮度和颜色成分的第一颜色空间模型表示;将量化的颜色和光亮度成分去量化;在去量化颜色成分上应用第一逆变换;在去量化光亮度成分上应用第二逆变换;并且将由第一颜色空间模型表示的图像信号转换为由第二颜色空间模型表示的图像信号,该第二颜色空间模型是加色空间模型。According to another embodiment of the present disclosure, a non-transitory computer-readable storage medium has computer executable program code included thereon, which is configured to cause a processor to: decode quantized color and luminance components of an input bit stream carrying an image signal, the image signal being represented by a first color space model having luminance and color components; dequantize the quantized color and luminance components; apply a first inverse transform to the dequantized color components; apply a second inverse transform to the dequantized luminance components; and convert the image signal represented by the first color space model into an image signal represented by a second color space model, which second color space model is an additive color space model.

根据本公开的又一实施例,一种系统包括转换器,该转换器用于将由第一颜色空间模型表示的图像信号变换为由具有亮度和颜色成分的第二颜色空间模型所表示的图像信号。该系统进一步包括将第一变换应用到颜色成分的第一变换器;光电传递函数编码器,其用于将第二变换应用到光亮度成分;量化器,其用于量化变换的颜色和亮度成分;和编码器,其用于对量化的颜色和光亮度成分进行编码并输出比特流。According to another embodiment of the present disclosure, a system includes a converter for converting an image signal represented by a first color space model into an image signal represented by a second color space model having luminance and color components. The system further includes a first converter for applying the first transform to the color components; an optical transfer function encoder for applying the second transform to the luminance components; a quantizer for quantizing the transformed color and luminance components; and an encoder for encoding the quantized color and luminance components and outputting a bitstream.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

本公开根据一个或多个实施例参考附图来详细描述。所述附图只用于说明并且只描述了典型的或示例实施例。The present disclosure is described in detail according to one or more embodiments with reference to the accompanying drawings, which are for illustration purposes only and depict only typical or example embodiments.

图1是说明根据各个实施例的示例操作的流程图,该示例操作能够被执行以获得具有专用色品变换的恒定亮度编码流水线。1 is a flow diagram illustrating example operations that can be performed to achieve a constant luma encoding pipeline with dedicated chromaticity transforms, in accordance with various embodiments.

图2A是视频处理流水线的示意图表示,其中可以根据各个实施例实现图1中的具有专用色品变换的恒定亮度编码流水线。2A is a schematic diagram representation of a video processing pipeline in which the constant luma encoding pipeline with dedicated chromaticity transform of FIG. 1 may be implemented according to various embodiments.

图2B是可以被用于图2A的视频处理流水线的具有图1中的专用色品变换的恒定亮度编码流水线的示意表示。2B is a schematic representation of a constant luminance encoding pipeline with the dedicated chromaticity transform of FIG. 1 that may be used with the video processing pipeline of FIG. 2A .

图3是传统非恒定亮度流水线的示意表示。FIG3 is a schematic representation of a conventional non-constant brightness pipeline.

图4是可以被用于图1的具有专用色品变换的恒定亮度编码流水线的色品变换的概念性表示。4 is a conceptual representation of a chromaticity transform that may be used with the constant luma encoding pipeline of FIG. 1 with a dedicated chromaticity transform.

图5是为了应用可以应用于具有图1中的专用色品变换的恒定亮度编码流水线的色品变换将颜色空间细分为网格的示例表示。5 is an example representation of the subdivision of the color space into a grid for applying a chromaticity transform that may be applied to the constant luminance encoding pipeline with the dedicated chromaticity transform of FIG. 1 .

图6是对网格的每个顶点应用变换时的常规格网的形成的示例表示。FIG. 6 is an example representation of the formation of a conventional mesh when a transformation is applied to each vertex of the mesh.

图7A是变换色品值中利用的直接变换的拉伸步骤的示例表示。FIG. 7A is an example representation of the stretching step of a direct transform utilized in transforming chromaticity values.

图7B是连接至多边形的边界点的顶点的示例表示。FIG. 7B is an example representation of vertices connected to boundary points of a polygon.

图7C是映射到单位方形的颜色空间三角形的等距点的示例表示。FIG. 7C is an example representation of equidistant points of a color space triangle mapped to a unit square.

图8A是可以被应用到具有图1的专用色品变换的恒定亮度编码流水线中的非最优化的最小平方色品变换的示例表示。8A is an example representation of a non-optimized least-squares chromaticity transform that may be applied in a constant-luminance encoding pipeline with the dedicated chromaticity transform of FIG. 1 .

图8B是可以被应用至具有图1的专用色品变换的恒定亮度编码流水线中的最优化的最小平方色品变换的示例表示。8B is an example representation of an optimized least-squares chromaticity transform that may be applied to a constant-luminance encoding pipeline with the dedicated chromaticity transform of FIG. 1 .

图9是可用于实现本发明所描述的实施例的各种特性的示例计算组件。FIG. 9 illustrates example computing components that may be used to implement various features of the embodiments described herein.

上述图示并不是详尽的并且并不将本公开局限为本文中的具体形式。The foregoing diagrams are not intended to be exhaustive and do not limit the disclosure to the precise forms disclosed herein.

具体实施方式DETAILED DESCRIPTION

与传统的非恒定亮度视频编码流水线相比,在本文中公开的各个实施例提供具有专用色度变换的恒定亮度编码流水线。如上所述,高动态范围(HDR)和广色域(WCG)内的镜头片段(footage)相比于标准动态范围(SDR)包括更多的信息,这需要更多的存储空间或者增加的分配比特率。因为该比特率对某一分配通道来说过高,所以需要更高的压缩效率。Compared to conventional non-constant luma video encoding pipelines, various embodiments disclosed herein provide a constant luma encoding pipeline with dedicated chroma transforms. As mentioned above, footage in high dynamic range (HDR) and wide color gamut (WCG) contains more information than footage in standard dynamic range (SDR), which requires more storage space or an increased distribution bitrate. Because this bitrate is too high for a particular distribution channel, higher compression efficiency is required.

图1说明了根据各种实施例执行的通过使用具有专用色度变换的恒定亮度编码流水线获得更高效的颜色(标准色域(SCG)和WCG)视频编码的示例操作。结合图2B的此编码流水线的示意图来说明图1。编码流水线201可被考虑为具有预处理部分209和编码部分(通过编码器210体现)。FIG1 illustrates example operations for achieving more efficient color (standard color gamut (SCG) and WCG) video encoding using a constant luma encoding pipeline with dedicated chroma transforms, according to various embodiments. FIG1 is illustrated in conjunction with FIG2B , which is a schematic diagram of such an encoding pipeline. The encoding pipeline 201 can be thought of as having a pre-processing portion 209 and an encoding portion (embodied by encoder 210).

在操作100中,加色模型信号被转变为具有色品成分或通道和亮度成分或通道的均匀颜色空间信号(由图2B中转换器202实现)。红、绿、蓝(RGB)色模型为加色模型的示例,在加色模型中,红、绿和蓝光以各种方式添加在一起以得到多种其他颜色。RGB颜色模型可被用于电子系统(例如,监视器、TV等)中的图像感知、表现和显示。输入设备(例如摄影机、图像扫描仪、视频游戏机、数码相机等)可以将RGB信号输入到输出设备(例如,TV、监视器、投影仪或其他显示器)中。均匀颜色空间可以被称为被用于颜色图像流水线的CIE颜色空间或者YUV颜色空间。均匀颜色空间能够编码可以将人的感知考虑在内的图像或视频并且允许色度成分能够掩蔽(mask)传输误差和压缩失真(artifact)(而不是使用视频或图像的“直接”RGB表示)。变换的结果是具有亮度成分或通道、Y(代表光亮度)和色品成分或通道、U和V(代表颜色)的信号。In operation 100, an additive color model signal is converted to a uniform color space signal having a chromaticity component or channel and a luminance component or channel (implemented by converter 202 in FIG. 2B ). The red, green, blue (RGB) color model is an example of an additive color model, in which red, green, and blue light are added together in various ways to produce a variety of other colors. The RGB color model can be used for image perception, representation, and display in electronic systems (e.g., monitors, TVs, etc.). Input devices (e.g., cameras, image scanners, video game consoles, digital cameras, etc.) can input RGB signals to output devices (e.g., TVs, monitors, projectors, or other displays). Uniform color spaces can be referred to as CIE color spaces or YUV color spaces used in color image pipelines. Uniform color spaces can encode images or videos that take human perception into account and allow chromaticity components to mask transmission errors and compression artifacts (rather than using a "direct" RGB representation of video or images). The result of the transform is a signal having a luminance component or channel, Y (representing brightness), and chrominance components or channels, U and V (representing color).

如上所述值得注意的是,从所述RGB颜色空间到YUV颜色空间的转变可以从RGB到YUV成分或通道来“直接”进行。然而,根据其他的实施例,可以进行中间转变(未示出)来将RGB成分或通道变换为XYZ颜色空间,其中XYZ成分可以随后被变换为前面提到的YUV成分。As noted above, it is noteworthy that the conversion from the RGB color space to the YUV color space can be performed "directly" from RGB to YUV components or channels. However, according to other embodiments, an intermediate conversion (not shown) can be performed to convert the RGB components or channels into an XYZ color space, where the XYZ components can then be converted into the aforementioned YUV components.

在操作102中,色品成分和亮度成分被变换,通过将色品比变换(chromaticity-specific transform)应用到色度成分并且将亮度比(specific)变换应用到所述亮度成分来进行该变换(分别通过图2B中的变换器206和204来进行色度和亮度的变换)。如图2B所示,U和V通道被变换为U’和V’通道,其中色品变换根据各种实施例保持感知均匀性(这使用传统编码流水线上利用的传统变换方法是不可能的)。值得注意的是,亮度成分或通道被单独处理(例如,利用(由图2B的OETF编码器204执行的)光电传递函数(OETF)),从而导致了伽玛压缩的或编码的明度(luma)成分Y’。亮度和色品成分的单独处理进一步有助于使压缩更加有效。In operation 102, the chromaticity and luma components are transformed by applying a chromaticity-specific transform to the chroma components and a luma-specific transform to the luma component (chroma and luma transformations are performed by transformers 206 and 204, respectively, in FIG2B ). As shown in FIG2B , the U and V channels are transformed into U′ and V′ channels, where the chromaticity transform maintains perceptual uniformity according to various embodiments (which is not possible using conventional transform methods utilized in conventional encoding pipelines). Notably, the luma component or channel is processed separately (e.g., using an optoelectronic transfer function (OETF) (performed by OETF encoder 204, FIG2B )), resulting in a gamma-compressed or encoded luma component Y′. The separate processing of the luma and chroma components further helps to make the compression more efficient.

在操作104中,明度Y’以及色品成分U’和V’被量化(由图2B中的量化器208进行),导致具有DY’、DU’和DV’的成分或通道的信号。量化可涉及通过在此情况下将一系列值(明度和色品成分值)压缩为单个量子值从而减少用来表示图像的颜色数量来实现的一种有损压缩技术。In operation 104, the luma Y' and chroma components U' and V' are quantized (performed by quantizer 208 in FIG. 2B ), resulting in a signal having components or channels of DY', DU', and DV'. Quantization may involve a lossy compression technique that reduces the number of colors used to represent the image by compressing a series of values (in this case, luma and chroma component values) into a single quantum value.

在操作106中,色品成分DU’和DV’被编码(通过图2B中的编码器210来进行)。量化的明度成分DY’也是如此。编码器210可以具有带有计算机代码的存储器单元,该存储器单元被配置为使处理器应用视频编解码器,例如高效视频编码(HEVC)编解码器,这是高级视频编码(AVC)也被称为H.264的后继者。应注意的是,HEVC最初针对SDR和SCG内容被设计,并且在传统应用中,针对压缩效率而言,HEVC用于编码HDR或者WCG视频序列并不是最优的。然而,在本公开中公开的上述色品变换将色品成分(U,V)转变成不同的值(U’,V’),这对于压缩目的来说是更加高效的(更好利用了(例,HEVC)编解码器水平处的码字)。此外,如之前还讨论的,为了维持CIE或YUV颜色空间的感知适应,尽可能地使变换的色品成分被感知均匀。In operation 106, the chromaticity components DU' and DV' are encoded (by encoder 210 in Figure 2B). The same is true for the quantized luminance component DY'. The encoder 210 can have a memory unit with computer code that is configured to cause a processor to apply a video codec, such as the High Efficiency Video Coding (HEVC) codec, which is the successor to Advanced Video Coding (AVC) also known as H.264. It should be noted that HEVC was originally designed for SDR and SCG content, and in traditional applications, HEVC is not optimal for encoding HDR or WCG video sequences in terms of compression efficiency. However, the above-mentioned chromaticity transform disclosed in the present disclosure converts the chromaticity components (U, V) into different values (U', V'), which is more efficient for compression purposes (better utilization of codewords at the (e.g., HEVC) codec level). In addition, as previously discussed, in order to maintain perceptual adaptation to the CIE or YUV color space, the transformed chromaticity components are made as perceptually uniform as possible.

图2A图示其中可以实现各种实施例的示例编码器和解码器体系结构系统200。系统200可包括编码器210、解码器218和与编码器218和解码器210两者连通的(多个)网络或分配通道216。编码器210可以包括存储器212和处理器214,而解码器218也可以包括存储器220和处理器222。解码器218可以是机顶盒、调谐器等。在操作中,编码器210的处理器214可以执行存储在存储器212中的计算机指令,例如,用于编码视频序列的计算机指令。也就是说,视频内容(其可以是HDR或WCG格式的)被馈送到编码器210中,接着被压缩,以准备进行存储和/或传输。例如,编码器210的处理器214可以通过使用上述HEVC编解码器执行一过程来编码视频序列,并将编码的视频序列经过网络216传输至解码器218。解码器218(体现为某种类型接收设备,例如,机顶盒,调谐器等)可以接收编码的HDR或WCG视频序列用于进行解码并呈现到显示器224。也就是说,解码器218的处理器222可以执行存储在存储器220上的计算机指令,例如,用于对接收的HEVC编码的视频序列进行解码的计算机指令。2A illustrates an example encoder and decoder architecture system 200 in which various embodiments may be implemented. System 200 may include an encoder 210, a decoder 218, and (a plurality of) networks or distribution channels 216 in communication with both encoder 218 and decoder 210. Encoder 210 may include memory 212 and a processor 214, while decoder 218 may also include memory 220 and a processor 222. Decoder 218 may be a set-top box, a tuner, or the like. In operation, processor 214 of encoder 210 may execute computer instructions stored in memory 212, such as computer instructions for encoding a video sequence. That is, video content (which may be in HDR or WCG format) is fed into encoder 210 and then compressed in preparation for storage and/or transmission. For example, processor 214 of encoder 210 may encode a video sequence by performing a process using the HEVC codec described above, and transmit the encoded video sequence to decoder 218 via network 216. The decoder 218 (embodied as some type of receiving device, such as a set-top box, a tuner, etc.) may receive the encoded HDR or WCG video sequence for decoding and presentation to a display 224. That is, the processor 222 of the decoder 218 may execute computer instructions stored on the memory 220, such as computer instructions for decoding the received HEVC encoded video sequence.

如上所述,系统200也分别包括预处理部分209和后处理部分223,其中一种或更多种算法根据各种实施例针对(vis-à-vis)转换器202、OETF编码器204、色品变换器206和量化器208被执行。这些组件可以是单独的硬件和/或软件组件或者是同一硬件/软件组件的功能部分。尽管没有示出后处理部分223的相应组件,应理解的是其包括用于进行编码的视频序列的去量化和逆色变换的相似的硬件和/或软件。也就是说,输入比特流可以由解码器218来解码。通过解码输入比特流,解码器218可以将输入比特流转变为一系列变换系数、空间预测模式和运动补偿向量。应注意到,编码流水线的编码方面和解码方面不需要包括改良的(例如,HEVC)编解码器。As described above, the system 200 also includes a pre-processing portion 209 and a post-processing portion 223, respectively, wherein one or more algorithms are executed for the (vis-à-vis) converter 202, the OETF encoder 204, the chromaticity converter 206, and the quantizer 208 according to various embodiments. These components can be separate hardware and/or software components or functional parts of the same hardware/software component. Although the corresponding components of the post-processing portion 223 are not shown, it should be understood that it includes similar hardware and/or software for dequantization and inverse color transformation of the encoded video sequence. That is, the input bitstream can be decoded by the decoder 218. By decoding the input bitstream, the decoder 218 can convert the input bitstream into a series of transform coefficients, spatial prediction modes, and motion compensation vectors. It should be noted that the encoding and decoding aspects of the encoding pipeline do not need to include a modified (e.g., HEVC) codec.

如上所述,传统的编码流水线基于非恒定亮度编码。图3图示示例传统编码流水线301来提供现有技术与本文中公开的各种实施例之间的区别的判断。传统编码流水线301将RGB颜色空间中的图像作为输入。因为输入视频序列的每个帧都必须被分独处理,所以参考流水线中的每个步骤被应用于序列中的每个帧。输入(RGB)图像首先被转变为范围为[0,1]的双精度。因此,由伽马编码器302来应用非线性传递函数(TF),这重新分配R、G和B通道的线性亮度至其他编码水平并且产生非线性RGB成分(用R’、G’和B’来表示)。可以认识到,处于较低强度的亮度的小改变相比于高强度来讲被更好的感知。此外,传统编码流水线301中的至少一部分后续过程将会是有损的,并且用于存储的比特数是有限的。TF通过为这些较低的值使用比特空间(bit space)中的较大部分来保留在较低强度中的有价值的信息。如果图像的某些显而易见的编码误差被引入到RGB中,观察者在较低强度时相比于较高强度将会更多地感知到这些误差。如果这些误差替代地是在R’G’B’域中,一旦图像被转变回RGB,这些误差将会在各种强度下同样是显而易见的。因此,较低的强度值被扩展,同时较高的强度值被压缩到一起。As described above, conventional encoding pipelines are based on non-constant luminance encoding. FIG3 illustrates an example conventional encoding pipeline 301 to provide a juxtaposition between the prior art and the various embodiments disclosed herein. Conventional encoding pipeline 301 takes as input an image in RGB color space. Because each frame of the input video sequence must be processed separately, each step in the reference pipeline is applied to each frame in the sequence. The input (RGB) image is first converted to double precision in the range [0, 1]. Therefore, a nonlinear transfer function (TF) is applied by gamma encoder 302, which redistributes the linear luminance of the R, G, and B channels to other coding levels and produces nonlinear RGB components (denoted by R', G', and B'). It can be appreciated that small changes in luminance at lower intensities are better perceived than at higher intensities. Furthermore, at least a portion of the subsequent processes in conventional encoding pipeline 301 will be lossy, and the number of bits available for storage is limited. TF preserves valuable information at lower intensities by using a larger portion of the bit space for these lower values. If certain noticeable encoding errors are introduced into the image in RGB, the viewer will perceive these errors more at lower intensities than at higher intensities. If these errors are instead in the R'G'B' domain, once the image is converted back to RGB, these errors will also be noticeable at all intensities. Therefore, lower intensity values are stretched, while higher intensity values are compressed together.

根据BT.2020规范,转变器304将所述R’G’B’成分转变为所述Y’C’bC’r颜色空间。Y’C’bC’r颜色空间表示明度成分Y’、和蓝色差C’b以及红色差C’r颜色成分。量化器306作用为量化由CY’、DC’r和DC’b表示的Y’、C’r和C’b成分。编码器308(例如,应用AVC/H.264编解码器)将量化的成分进行编码并输出编码的比特流,该比特流可以按上文所述被存储和/或传输。According to the BT.2020 specification, the converter 304 converts the R'G'B' components into the Y'C'bC'r color space. The Y'C'bC'r color space represents the luminance component Y', the blue difference C'b, and the red difference C'r color components. The quantizer 306 functions to quantize the Y', C'r, and C'b components represented by CY', DC'r, and DC'b. The encoder 308 (e.g., using the AVC/H.264 codec) encodes the quantized components and outputs an encoded bitstream, which can be stored and/or transmitted as described above.

与编码流水线201相比,明度成分Y’代表基于伽马校正RGB原色被非线性化编码的光强度。明度中引入的编码误差可能会漏进色度,并且不仅在光亮度上产生可观察到的差异,在由显示器呈现的颜色上也会产生显而易见的差异—因此,导致传统编码流水线(例如,编码流水线301)的非恒定亮度方面。虽然这个非恒定亮度编码流水线被设计用于编码SDR信号(例如,RGB在BT.709颜色空间中高达100尼特(nit)),其也可以被更改用途用于编码HDR和WCG信号(例如RGB在BT.2020颜色空间中高达10000尼特)。然而,此传统编码流水线在其继续应用亮度的非恒定编码时仍然存在设计不合理。在HDR内容中,这些误差的编码变得更加显而易见(例如,在颜色范围内的编码失真在HDR内容中相比于在SDR内容中变得更加明显)。Compared to encoding pipeline 201, the luminance component Y' represents the light intensity that is nonlinearly encoded based on the gamma-corrected RGB primary colors. The encoding errors introduced in the luminance may leak into the chrominance and produce observable differences not only in the brightness of the light, but also in the colors presented by the display - thus, resulting in non-constant brightness aspects of the traditional encoding pipeline (e.g., encoding pipeline 301). Although this non-constant brightness encoding pipeline is designed for encoding SDR signals (e.g., RGB up to 100 nits in the BT.709 color space), it can also be repurposed for encoding HDR and WCG signals (e.g., RGB up to 10,000 nits in the BT.2020 color space). However, this traditional encoding pipeline still has design flaws when it continues to apply non-constant encoding of luminance. In HDR content, the encoding of these errors becomes more obvious (e.g., encoding distortions within the color range become more obvious in HDR content than in SDR content).

回到图2B,相对于传统编码流水线301,亮度成分Y被明确表示(与所述色品成分U和V区分)在恒定亮度编码流水线201中。因此,引入明度成分Y’的任何量化和编码误差只在亮度Y上有影响。具体地,压缩误差到色度的漏泄将不会发生。Returning to FIG. 2B , relative to the conventional encoding pipeline 301, the luma component Y is explicitly represented (distinguished from the chroma components U and V) in the constant luma encoding pipeline 201. Therefore, any quantization and encoding errors introduced into the luma component Y' only have an effect on luma Y. Specifically, leakage of compression errors into the chroma will not occur.

具体地,代替将图像从RGB颜色空间变换为Y’C’bC’r颜色空间(如在传统编码流水线301中),RGB信号被转变到例如XYZ颜色空间(等式1),然后被转变到YUV颜色空间(等式2)。为了返回RGB颜色空间(在系统200的后处理部分223的解码期间),可以使用等式1的逆矩阵(等式3)。Specifically, instead of converting the image from RGB color space to Y'C'bC'r color space (as in the conventional encoding pipeline 301), the RGB signal is converted to, for example, XYZ color space (Equation 1), and then converted to YUV color space (Equation 2). To return to RGB color space (during decoding in the post-processing portion 223 of the system 200), the inverse matrix of Equation 1 can be used (Equation 3).

and

and

除了编码流水线201的恒定亮度以外,一种专用色品变换被提供用于能够改进色度压缩并且提高整体压缩效率。专用色度变换(由图2B中的变换器206在图1中的操作102来应用)通过扩大用于压缩的码字分布,以固定的比特率减少了颜色通道中的编码误差。可以理解为,专用色品变换只影响色品成分U和V。色品变换获得这两个成分并且返回通道(U’,V’)=T(U,V),其中T表示会在以下说明的变换。In addition to the constant luminance of encoding pipeline 201, a dedicated chromaticity transform is provided to improve chromaticity compression and increase overall compression efficiency. The dedicated chromaticity transform (applied by transformer 206 in FIG. 2B at operation 102 in FIG. 1 ) reduces coding errors in the color channels at a fixed bit rate by broadening the codeword distribution used for compression. It can be understood that the dedicated chromaticity transform only affects the chromaticity components U and V. The chromaticity transform takes these two components and returns the channel (U', V') = T(U, V), where T represents the transform described below.

应注意的是,当对图像进行量化以降低位深度时,可以在图像上应用色品变换。此外,在使用编解码器例如HEVC压缩图像之前,可以使用变换来以固定的比特率增强图片质量。传统变换在相同的比特率下针对视频序列不具有同样的质量增强效果。It should be noted that when quantizing an image to reduce the bit depth, a chromaticity transform can be applied to the image. In addition, before compressing the image using a codec such as HEVC, a transform can be used to enhance the picture quality at a fixed bit rate. Traditional transforms do not have the same quality enhancement effect on video sequences at the same bit rate.

色品变换的整体目标如图4所示,其表示变换为概念性的方形(square)(概念性的方形减少了废码字的数量)的概念性的颜色表示(作为具有在三角形的角中的三原色红、绿和蓝以及这些角之间的所有可能的颜色组合的三角形)。The overall goal of the chromaticity transformation is shown in FIG4 , which represents a conceptual color representation (as a triangle with the primary colors red, green, and blue in the corners of the triangle and all possible color combinations between these corners) transformed into a conceptual square (the conceptual square reduces the number of waste codewords).

作为说明,在颜色空间中的所有颜色的色品坐标(coordinate)位于YUV颜色空间(三角形402)的CIE图内。三角形402的角示出颜色空间(例如,BT.2020)的三原色坐标RGB。在此颜色空间中定义的所有色品值位于三角形402内。颜色空间的三个RGB原色定义了该颜色空间的色域、或者所有可能的颜色范围。点越是靠近图的边界,其颜色越是饱和。因此,颜色空间的三角形越大,三原色越饱和,并且色域越大。应该注意的是,以BT.2020原色捕捉和存储的镜头片段具有最大的色域并且被称为WCG(相对于例如BT.709,其为SCG颜色空间的示例)。As an illustration, the chromaticity coordinates of all colors in the color space lie within the CIE diagram of the YUV color space (triangle 402). The corners of triangle 402 show the three primary color coordinates RGB of a color space (e.g., BT.2020). All chromaticity values defined in this color space lie within triangle 402. The three RGB primary colors of a color space define the color gamut, or the range of all possible colors, of the color space. The closer a point is to the edge of the diagram, the more saturated its color. Therefore, the larger the triangle of the color space, the more saturated the three primary colors, and the larger the color gamut. It should be noted that footage captured and stored with BT.2020 primary colors has the largest color gamut and is referred to as WCG (as opposed to, for example, BT.709, which is an example of an SCG color space).

动态范围被定义为最大光强度和最小光强度之间的比例。动态范围越高,在最大光强度和最小光强度之间的差异越大。SDR中的镜头片段的光亮度通常在0.1到100尼特(cd/m2)的范围中。然而在现实生活中,光源远高于200cd/m2,并且夜空可以远低于0.1cd/m2。就HDR内容来说,最小值可以低至0.005cd/m2或高达10,000cd/m2Dynamic range is defined as the ratio between the maximum and minimum light intensities. The higher the dynamic range, the greater the difference between the maximum and minimum light intensities. SDR footage typically has a brightness range of 0.1 to 100 nits (cd/ ). However, in real life, light sources can be well above 200 cd/ , and the night sky can be well below 0.1 cd/ . For HDR content, the minimum can be as low as 0.005 cd/ or as high as 10,000 cd/ .

因为RGB图像被用作编码流水线201的输入,所以RGB图像的像素的所有色品坐标成分均位于由R、G、B顶点所限定的三角形402的U-V色品空间内。然而,在U-V色品空间上的编码允许三角形402之外的许多数值对(例如,无效色品值)的表示。为了降低这些码字的浪费,本公开的各个实施例将所有(U,V)对映射到矩形(例如,单位方形404)中。为了从如上所述的用于压缩的U-V空间的感知均匀性获益,没有强的局部变形被引入到从三角形402到单位方形404的映射中。(u,v)对可以被定义为像素的色品值,其中u∈U,v∈V。图像中的每个像素的(u,v)值将位于这个三角形之内或者在其边界上。Because an RGB image is used as input to the encoding pipeline 201, all chromaticity coordinate components of the pixels of the RGB image are located within the U-V chromaticity space of the triangle 402 defined by the R, G, and B vertices. However, encoding in the U-V chromaticity space allows the representation of many value pairs outside the triangle 402 (e.g., invalid chromaticity values). To reduce the waste of these codewords, various embodiments of the present disclosure map all (U, V) pairs into a rectangle (e.g., the unit square 404). To benefit from the perceptual uniformity of the U-V space used for compression as described above, no strong local distortion is introduced into the mapping from the triangle 402 to the unit square 404. The (u, v) pair can be defined as the chromaticity value of the pixel, where u∈U and v∈V. The (u, v) value of each pixel in the image will lie within this triangle or on its boundary.

如前文所述,在此公开的色品变换的一个目标是提供具有更大码字范围的(例如,HEVC)编码解码器。量化步骤以双精度格式在[0,1]范围中获得图像并将其量化为在范围[0,4095]中的12位整数值、将最小输入值(0)映射为0并且将最大输入值(1)映射为4095。因此,U和V成分可以每个都利用范围[0,1]。每个图像像素的色品值(u,v)可以为单位方形404内部的任何值,单位方形404由点(0,0)、(0,1)、(1,0)和(1,1)来定义。这不是基于YUV颜色空间如何适合笛卡尔坐标系统的情况。值得注意的是,三角形402仅占用单位方形的相对小的部分。As previously mentioned, one goal of the chromaticity transform disclosed herein is to provide a codec (e.g., HEVC) with a larger codeword range. The quantization step takes an image in double precision format in the range [0, 1] and quantizes it to 12-bit integer values in the range [0, 4095], mapping the minimum input value (0) to 0 and the maximum input value (1) to 4095. Thus, the U and V components can each utilize the range [0, 1]. The chromaticity value (u, v) of each image pixel can be any value inside the unit square 404, which is defined by the points (0, 0), (0, 1), (1, 0), and (1, 1). This is not the case based on how the YUV color space fits into a Cartesian coordinate system. Notably, the triangle 402 only occupies a relatively small portion of the unit square.

因此,所需的变换T使得在三角形402内由三原色(例如,BT.2020)定义的每个可能值被映射到单位方形404中的某点,从而尽可能地利用其面积-也就是说将三角形变换为方形。对每个像素(u’,v’)的变换的色品值以及下面的此变换的某些约束进行讨论。Therefore, the required transformation T is such that every possible value defined by the three primary colors (e.g., BT.2020) within triangle 402 is mapped to a point in unit square 404, thereby making the best possible use of its area—that is, transforming the triangle into a square. The transformed chromaticity value of each pixel (u', v') and certain constraints of this transformation are discussed below.

如上所述,在图2中的后处理步骤223中,一定要执行逆变换T-1,这意味着当应用T-1时,每个变换值(u’,v’)必须映射回原始值(u,v)。也就是说,下面如等式4所表示的特性必须保留,意味着T是可逆的并且色品变换在编码流水线201中是无损步骤。As described above, in the post-processing step 223 in FIG2 , an inverse transform T −1 must be performed, which means that when T −1 is applied, each transformed value (u′, v′) must be mapped back to the original value (u, v). In other words, the property expressed in Equation 4 below must be preserved, meaning that T is reversible and the chromaticity transform is a lossless step in the encoding pipeline 201.

应理解的是,T将会导致大型全局畸变,彻底改变三角形的形状。一旦色品变换被集成到编码流水线201中,U’和V’通道被改变,这是由于编码和解码是有损耗的并且引入误差。这意味着(urec,vrec)=(u,v)+ε,其中ε是任意方向的小误差向量。YUV颜色空间是接近感知均匀的,因此(urec,vrec)和(u,v)之间的感知差异应只取决于ε的长度,而不取决于方向。这意味着T应当引入最小的局部畸变,意味着对接近某值(u,v)的所有色品值来说,它们到变换的值(u’,v’)的新距离可以增加或减少,但应该全部几乎相等。It should be understood that T will cause large global distortions, completely changing the shape of the triangle. Once the chromaticity transform is integrated into the encoding pipeline 201, the U' and V' channels are altered because encoding and decoding are lossy and introduce errors. This means that (u rec , v rec ) = (u, v) + ε, where ε is a small error vector in any direction. The YUV color space is nearly perceptually uniform, so the perceived difference between (u rec , v rec ) and (u, v) should only depend on the length of ε, not the direction. This means that T should introduce minimal local distortion, meaning that for all chromaticity values close to a certain value (u, v), their new distance to the transformed value (u', v') may increase or decrease, but should all be approximately equal.

根据一个实施例,接下来将会讨论,色品变换可以基于直接变换。根据另一实施例,也会在下文中进行说明,色品变换可以基于最小平方变换。应当了解的是,根据其他实施例仍然可以使用其他变换。According to one embodiment, as will be discussed below, the chromaticity transform can be based on a direct transform. According to another embodiment, also described below, the chromaticity transform can be based on a least squares transform. It should be understood that other transforms can still be used according to other embodiments.

图5图示根据各个实施例细分图4中的三角形402准备用于色品值的变换方法的示例。三角形402可以被细分为网格,其包括由三个顶点构成的更小的三角形。为了细分三角形,三角形的三个角之间的中间点被标记并被连接,因此形成了的四个更小的三角形。可以针对每个更小的三角形进行第二次细分,结果总共有16个三角形。可以重复进行该细分的过程,其中每次新的细分将三角形的数量增加到4倍,所以n次细分将会产生4n个三角形,其中n∈N并且n≥1。三角形502和504分别是已经被细分3次和4次的主三角形的示例。三角形502在三次细分之后有64个较小的三角形,同时三角形504由于进行四次细分而具有256个较小的三角形。结果是一个三角形的列表,其中每个三角形可以通过记住在网格中的三个顶点来存储。Tr(a,b,c)表示由顶点a、b和c来定义的三角形。FIG5 illustrates an example of a method for subdividing triangle 402 in FIG4 in preparation for chromaticity value transformation according to various embodiments. Triangle 402 can be subdivided into a mesh consisting of smaller triangles formed by three vertices. To subdivide the triangle, the midpoints between the three corners of the triangle are marked and connected, thus forming four smaller triangles. A second subdivision can be performed for each smaller triangle, resulting in a total of 16 triangles. This subdivision process can be repeated, with each new subdivision quadrupling the number of triangles. Therefore, n subdivisions will produce 4n triangles, where n∈N and n≥1. Triangles 502 and 504 are examples of main triangles that have been subdivided three and four times, respectively. Triangle 502 has 64 smaller triangles after three subdivisions, while triangle 504 has 256 smaller triangles due to four subdivisions. The result is a list of triangles, where each triangle can be stored by remembering the three vertices in the mesh. Tr(a, b, c) represents the triangle defined by vertices a, b, and c.

n一旦被选择,4n个较小的三角形中的每个被映射到单位方形404。这导致一定程度的畸变。对每个三角形Tr(a,b,c)来说,相应的映射的三角形Tr(a’,b’,c’)被存储。映射三角形不应该互相重叠。Once n is chosen, each of the 4 n smaller triangles is mapped to the unit square 404. This results in a certain degree of distortion. For each triangle Tr(a, b, c), the corresponding mapped triangle Tr(a', b', c') is stored. The mapped triangles should not overlap each other.

当映射单个色品值(u,v)时,每个(u,v)值位于主YUV颜色空间三角形402(主三角形是指较大、未经细分的三角形)内,从而也位于细分三角形402(三角形502)后生成的较小的三角形中的一个内。一旦找到这个三角形Tr(a,b,c),点(u,v)的位置p可以通过使用针对Tr(a,b,c)的重心坐标λ1、λ2和λ3来表示,其中When mapping a single chromaticity value (u, v), each (u, v) value lies within the main YUV color space triangle 402 (the main triangle is the larger, unsubdivided triangle), and thus also lies within one of the smaller triangles generated after subdividing triangle 402 (triangle 502). Once this triangle Tr(a, b, c) is found, the position p of the point (u, v) can be expressed by using the barycentric coordinates λ 1 , λ 2 and λ 3 for Tr(a, b, c), where

因此,在映射三角形Tr(a’,b’,c’)中的正确位置p’可以由以下公式得出:Therefore, the correct position p' in the mapped triangle Tr(a', b', c') can be obtained by the following formula:

p′=λ1α′+λ2b′+λ3c′p′=λ 1 α′+λ 2 b′+λ 3 c′

等式4.3Equation 4.3

在每个点分别执行这个过程。可以使用以下公式计算重心坐标:This process is performed separately for each point. The coordinates of the center of gravity can be calculated using the following formula:

其中点的下标定义其u或v成分,并且where the subscript of a point defines its u or v component, and

利用重心坐标映射的一个特性是可逆的,这意味着点(u’,v’)在其位置p’处的反向映射将其放置在其原始的位置p。如上所述,变换应当是可逆的从而允许图像信号的适当解码。One property of barycentric coordinate mapping is that it is reversible, which means that the reverse mapping of a point (u', v') at its position p' places it at its original position p. As mentioned above, the transformation should be reversible to allow proper decoding of the image signal.

在其中包括色品点(u,v)时发现三角形应当在“合理”时间内完成,例如,在直播过程中,应该快速进行解码从而足以防止任何滞后/延迟。根据一个实施例,每个三角形的三个重心坐标可以被计算并且测试公式4.2是否有效。如果这样,色品点位于三角形内部。分别测试从上述(多个)细分产生的三角形中的每个是低效的。由此,各个实施例依靠通过执行以下的恒定时间测试:Finding a triangle when the chromaticity point (u, v) is included should be completed in a "reasonable" time, for example, during a live broadcast, decoding should be fast enough to prevent any lag/delay. According to one embodiment, the three barycentric coordinates of each triangle can be calculated and tested whether Equation 4.2 is valid. If so, the chromaticity point is inside the triangle. Testing each of the triangles resulting from the above (multiple) subdivisions separately is inefficient. Therefore, various embodiments rely on performing the following constant time test:

考虑变换给定色品值(u,v)的线性变换,Consider a linear transformation that transforms a given chromaticity value (u, v),

其中R、G和B代表三原色(三角形402的三个角)。如果此变换应用到网格上的每个顶点,主三角形将会占据单位方形404的左下方的一半。如图6所示,较小的三角形将会以这样的方式对齐:它们的两个较短边可以是水平或者垂直的(在本示例中,n为3)。如果两个相邻的三角形被集合到一起以形成方形600,这将会形成一个规则的格网。Where R, G, and B represent the three primary colors (the three corners of triangle 402). If this transformation is applied to each vertex on the grid, the main triangle will occupy the lower left half of the unit square 404. As shown in Figure 6, the smaller triangles will be aligned in such a way that their two shorter sides can be horizontal or vertical (in this example, n is 3). If two adjacent triangles are brought together to form a square 600, this will form a regular grid.

为了发现点(u,v)的相应三角形,对(u,v)应用等式4.3而不是网格本身。对于具体的细分值n来讲,变换的点(u,v)trans所处的常规格网的方形是不重要的(trivial)。由于所有的三角形被建立索引并且每个方形包括两个三角形,剩下的步骤是寻找三角形中哪一个包括点(u,v)。这可以通过针对两个三角形计算(u,v)的重心坐标并且然后测试等式4.2是否有效来完成。To find the corresponding triangle for a point (u, v), equation 4.3 is applied to (u, v) instead of the mesh itself. For a specific subdivision value n, the square of the regular grid in which the transformed point (u, v) trans lies is trivial. Since all triangles are indexed and each square contains two triangles, the remaining step is to find which of the triangles contains the point (u, v). This can be done by calculating the barycentric coordinates of (u, v) for both triangles and then testing whether equation 4.2 is valid.

在后处理223(图2A)期间,每个映射的色品值(u’,v’)的位置必须位于原始网格中(例如,图5)。根据一个实施例,查找表被利用。也就是说,对于在变换网格中的每个可能值,查找表指定值被映射到原始网格中哪个位置。接着单独的三角形被映射到单位方形上同时遵从变换T的特性。During post-processing 223 ( FIG. 2A ), the location of each mapped chromaticity value (u′, v′) must lie within the original grid (e.g., FIG. 5 ). According to one embodiment, a lookup table is utilized. That is, for each possible value in the transformed grid, the lookup table specifies to which location in the original grid the value is mapped. The individual triangles are then mapped onto the unit square while adhering to the properties of the transform T.

如上所述,使用在色品值变换中的一种变换可以是直接变换。当使用直接变换时,网格被认为是顶点的集合,其中每个顶点将会被复制并且被映射到单位方形内部的一些新位置。这种类型的变换涉及在主三角形的边界线上选择四个顶点,并且通过将这些顶点牵拉至方形的四个角来拉伸主三角形。选择三角形的三个角是合理的,即原色R、G和B作为三个顶点而被牵拉。也可以在三角形的边界上选择第四个顶点。根据本公开的一个方面,可以选择位于连接点/顶点R和B的线的中间顶点P。因为n≥1,可知P是存在的。As described above, one type of transformation used in the chromaticity value transformation may be a direct transformation. When a direct transformation is used, the mesh is considered to be a collection of vertices, where each vertex will be copied and mapped to some new position inside the unit square. This type of transformation involves selecting four vertices on the boundary line of the main triangle and stretching the main triangle by pulling these vertices to the four corners of the square. It is reasonable to select three corners of the triangle, that is, the primary colors R, G and B are pulled as three vertices. A fourth vertex can also be selected on the boundary of the triangle. According to one aspect of the present disclosure, a vertex P located in the middle of the line connecting points/vertices R and B can be selected. Since n≥1, it can be seen that P exists.

图7图示这个概念性延伸的示例,其中四个顶点R、G、B和P在主三角形702上被示出,并且示出这四个顶点如何被映射。R可以被牵拉至单位正方形704的右上角,G被牵拉至单位正方形704的左上角,B被牵拉至单位正方形704的左下角,并且P被牵拉至单位正方形704的右下角。此外,其余的顶点沿着主三角形的边界被标记(用粗体点来强调)。所有这些m个顶点在一起形成了凸多边形P的边界。因为这些m个顶点位于四个顶点R、G、B和P中的任何两个之间的直线上,因此被映射到单位方形704的相应边界上,彼此之间等距。例如,G和B之间的顶点中的一个(简称为v∈GB)被映射到单位方形的左边缘,并且B和P之间的三个顶点被映射到单位方形的下边缘。此外,单位方形的四个边缘上的m个顶点形成了凸多边形P’。余下的顶点现在使用均值坐标(MVC)由P映射到P’。FIG7 illustrates an example of this conceptual extension, in which four vertices R, G, B and P are shown on the main triangle 702, and how these four vertices are mapped are shown. R can be pulled to the upper right corner of the unit square 704, G is pulled to the upper left corner of the unit square 704, B is pulled to the lower left corner of the unit square 704, and P is pulled to the lower right corner of the unit square 704. In addition, the remaining vertices are marked along the boundary of the main triangle (emphasized with bold points). All these m vertices together form the boundary of the convex polygon P. Because these m vertices are located on a straight line between any two of the four vertices R, G, B and P, they are mapped to the corresponding boundaries of the unit square 704, equidistant from each other. For example, one of the vertices between G and B (abbreviated as v∈GB) is mapped to the left edge of the unit square, and the three vertices between B and P are mapped to the lower edge of the unit square. In addition, the m vertices on the four edges of the unit square form a convex polygon P'. The remaining vertices are now mapped from P to P’ using mean value coordinates (MVC).

MVC可以被表示为重心坐标的泛化(generalization)。(上文中提到的)重心坐标被用于三角形,其本质上是具有三个顶点的多边形。然而,MVC同样适用于具有任意数目的顶点的多边形。因此,利用MVCλi针对P的将多边形P内部的顶点v映射到多边形P’内部的新位置的映射通过以下给出MVC can be expressed as a generalization of barycentric coordinates. Barycentric coordinates (mentioned above) are used for triangles, which are essentially polygons with three vertices. However, MVC is also applicable to polygons with any number of vertices. Therefore, the mapping of a vertex v inside polygon P to a new position inside polygon P' using MVCλi for P is given by

其中pi和f(pi)表示多边形P和P’的边界顶点。图7B示出连接到多边形的边界点的顶点v(连同用于MVC的角定义),其以逆时针排序。顶点v的MVCλi由下式给出where p i and f(p i ) represent the boundary vertices of polygons P and P'. Figure 7B shows the vertices v connected to the boundary points of the polygons (along with the corner definitions for MVC), which are sorted counterclockwise. The MVC λ i of vertex v is given by

其中in

并且αi是角and α i is the angle

等式4.7中说明的映射的一种特性在于其同样(此外,针对T变换)是可逆的,因此将顶点从T’映射回到T将会将顶点放置到其原始的位置。返回到图7A,其中示出基于使用MVC映射主三角形502的内部顶点生成三角形。正如本领域内普通技术人员所理解的,接近右下顶点P的较小的三角形与顶点G周围的三角形相比更加多的畸变。因为相比蓝色色调和红色色调来说,人眼对绿色色调的小变化更加敏感,需要在顶点G周围尽可能具有小的畸变。这是为什么第四个顶点是被选择为沿着主三角形502的这条边。此外,这是三角形的最长边,因此选择在另一边缘上的顶点很可能会导致更大的整体畸变。A property of the mapping illustrated in Equation 4.7 is that it is also (among other things, for a T transform) reversible, so mapping a vertex from T' back to T will place the vertex back to its original position. Returning to Figure 7A, there is shown the generation of triangles based on mapping the interior vertices of the main triangle 502 using MVC. As one of ordinary skill in the art will appreciate, the smaller triangles closer to the lower right vertex P are more distorted than the triangles around vertex G. Because the human eye is more sensitive to small changes in green hue than to blue and red hues, it is desirable to have as little distortion as possible around vertex G. This is why the fourth vertex is chosen to be along this side of the main triangle 502. Furthermore, this is the longest side of the triangle, so choosing a vertex on another edge would likely result in greater overall distortion.

总之,为了实现用于色品变换过程的直接变换,包括形成较小三角形的顶点和边缘的网格在主颜色空间三角形(例如三角形702)内被建立。通过选择四个顶点并且朝向单位方形(例如,单位方形704)的角牵拉这些顶点来拉伸主三角形。MVC可以被用来映射内部顶点。针对较小三角形Tr(a,b,c)的色品值(u,v)的重心坐标将(u,v)映射到其相应的三角形Tr(a,’b,’c’)。图7C示出通过使用文中所述的直接变换将等距点映射到单位方形的示例。图7C示出(主三角形702的)等距点如何被映射到单位方形704,并且示出可能出现的畸变模式。以最优方式分布顶点产生尽可能感知均匀的色度。In summary, to implement a direct transform for the chromaticity conversion process, a mesh including the vertices and edges that form the smaller triangles is created within a main color space triangle (e.g., triangle 702). The main triangle is stretched by selecting four vertices and pulling these vertices towards the corners of a unit square (e.g., unit square 704). MVC can be used to map the internal vertices. The barycentric coordinates of the chromaticity values (u,v) for the smaller triangle Tr(a,b,c) map (u,v) to its corresponding triangle Tr(a,'b,'c'). Figure 7C shows an example of mapping equidistant points to a unit square using the direct transform described herein. Figure 7C shows how equidistant points (of the main triangle 702) are mapped to the unit square 704, and shows the possible distortion patterns that may occur. Distributing the vertices in an optimal manner produces a chromaticity that is as perceptually uniform as possible.

根据另一个实施例,变换色品值中利用的色品变换可以基于最小平方变换。图8A示出颜色空间三角形802中的色品值到单位方形804的示例变换(这不是最优的示例)。According to another embodiment, the chromaticity transform utilized in transforming the chromaticity values may be based on a least squares transform. Figure 8A shows an example transformation of chromaticity values in a color space triangle 802 to a unit square 804 (this is not an optimal example).

像利用直接变换时按照的步骤一样,在主三角形802上选择同样四个顶点R、G、B和P,并生成了网格。为了这个变换,对网格的变形应用三组约束。一些约束使主三角形802尽可能地被拉伸,其他约束则尽量保持较小三角形的形状。可以理解的是,并不是所有的约束都能够完美被满足,因此最小平方变换涉及到权衡。As with the direct transformation, the same four vertices (R, G, B, and P) are selected on the main triangle 802 and a mesh is generated. For this transformation, three sets of constraints are applied to the deformation of the mesh. Some constraints stretch the main triangle 802 as much as possible, while others try to preserve the shape of the smaller triangles. It's understandable that not all constraints can be perfectly satisfied, so least-squares transformations involve trade-offs.

这些约束可以根据能量E1,E2和E3来表示,其中能量的整体总和应该被最小化。能量Ei越小,就会越满足第i组约束。图8的示例利用细分值n=3以及参数α=β=γ=1(下文将会讨论)。These constraints can be expressed in terms of energies E 1 , E 2 and E 3 , where the overall sum of the energies should be minimized. The smaller the energy E i , the more the i -th set of constraints will be satisfied. The example of FIG8 utilizes a refinement value n = 3 and parameters α = β = γ = 1 (discussed below).

第一约束可以被称为锚固(anchor)约束,其指定四个顶点应当映射至与在直接变换中相同的单元方形的四个角。这可以如下数学地被表示:The first constraint can be called an anchor constraint, which specifies that the four vertices should be mapped to the four corners of the same unit square as in the direct transformation. This can be expressed mathematically as follows:

第一能量项E1可以被表达为:The first energy term E1 can be expressed as:

第二约束可以称为边界约束,其指定在主三角形802的边界上的顶点(以加粗的点突出)应当被放置在单位方形804的边界上某处,如根据直接变换那样。例如,位于点B和G之间的顶点v应当被映射到单位方形804的左边缘上,从而使其u-坐标、vu等于零。对于所有的边界顶点,这些约束由以下给出:The second constraint may be referred to as a boundary constraint, which specifies that vertices on the boundary of the main triangle 802 (highlighted with bold dots) should be placed somewhere on the boundary of the unit square 804, as according to a direct transformation. For example, the vertex v located between points B and G should be mapped to the left edge of the unit square 804 so that its u-coordinate, v u, is equal to zero. For all boundary vertices, these constraints are given by:

并且能量E2由以下给出:And the energy E2 is given by:

第一个两组约束(锚固和边界)试图将主三角形以与直接变换相同的方式进行拉伸。然而,关于主三角形的内部顶点,第三组约束(涉及均匀性约束)的目标是使(主三角形经过细分后的)较小的三角形尽可能的保持它们的形状以防止变形。每个三角形Tr(a,b,c)具有外心crm,外心是到顶点a、b和c是等距的特殊点。因此,这三个顶点位于围绕crm的圆上。从映射的三角形Tr(a’,b’,c’)的顶点到其新外心的距离应当同样被最小化。因此,这些约束应当会导致相似三角形。对三角形T的集合中的所有三角形来说,总能量E3等于从每个顶点到其映射的三角形的外心的平方距离之和。The first two sets of constraints (anchoring and bounding) try to stretch the main triangle in the same way as the direct transformation. However, with respect to the internal vertices of the main triangle, the third set of constraints (involving uniformity constraints) aims to make the smaller triangles (after the main triangle has been subdivided) maintain their shape as much as possible to prevent deformation. Each triangle Tr(a, b, c) has a circumcenter crm, which is a special point that is equidistant from the vertices a, b and c. Therefore, these three vertices lie on a circle around crm. The distance from the vertices of the mapped triangle Tr(a', b', c') to its new circumcenter should also be minimized. Therefore, these constraints should lead to similar triangles. For all triangles in the set of triangles T, the total energy E 3 is equal to the sum of the squared distances from each vertex to the circumcenter of the triangle to which it is mapped.

外心crm可以使用重心坐标λ1、λ2和λ3通过计算以下来表示:The circumcenter crm can be expressed using the barycentric coordinates λ 1 , λ 2 , and λ 3 by calculating:

Crm=λ1α′-λ1b′-λ2C′,Crm=λ 1 α′-λ 1 b′-λ 2 C′,

等式4.15Equation 4.15

其中in

其中表示在两个顶点之间的欧几里得(Euclidean)距离。为了确保这三个坐标的总和等于1,通过将这三个坐标中的每个都除以三个值的总和来使其标准化。均匀性约束不需要保留网格中的三角形形状,而仅需要保持这些三角形“坚硬”(例如,不容易变形)。三角形可能变形非常严重但仍然符合均匀性约束,因为有无限数目的具有相同外心的三角形。然而,结合其他两个约束,三角形将会保持坚硬并维持接近其原始的形状。where represents the Euclidean distance between two vertices. To ensure that the sum of these three coordinates is equal to 1, they are normalized by dividing each of the three coordinates by the sum of the three values. The uniformity constraint does not require preserving the shape of the triangles in the mesh, but only requires keeping these triangles "rigid" (e.g., not easily deformed). A triangle can deform very badly and still meet the uniformity constraint because there are an infinite number of triangles with the same circumcenter. However, combined with the other two constraints, the triangle will remain rigid and maintain close to its original shape.

理想情况下,网格应该被变形,使得网格利用单位方形的整个区域(为了提供具有更大范围码字的编码解码器)。为了实现此,定义了边界和锚固约束,但是同时,局部变形被最小化(例如,通过定义均匀性约束)。这导致了上述等式4.11、4.13和4.14中导出的三个能量项E1、E2和E3之间的权衡。为了获得最优的结果,总能量之和E根据如下被最小化:Ideally, the grid should be deformed so that it utilizes the entire area of the unit square (in order to provide a codec with a larger range of codewords). To achieve this, boundary and anchor constraints are defined, but at the same time, local deformations are minimized (e.g., by defining a uniformity constraint). This leads to a trade-off between the three energy terms E 1 , E 2 , and E 3 derived in equations 4.11, 4.13, and 4.14 above. To obtain optimal results, the total energy sum E is minimized according to:

E=αE1+βE2+γE3 E=αE 1 +βE 2 +γE 3

等式4.17Equation 4.17

附加参数α、β和γ在求解等式4时被引入用来指定能量项应该具有多少权重。最初,这三个参数都等于1。例如,如果期望加强E2中的边界约束并且希望边界顶点更靠近单位方形的边缘,β的值可以被增加。应该认识到,所有三组约束都是线性的,这将比如果这些约束是非线性的情况更容易求解等式4.17。由于这个特性,等式4.17可以用矩阵符号重新表示,并且最终要解决的问题由线性等式系统给出:Additional parameters α, β, and γ are introduced when solving Equation 4 to specify how much weight the energy term should have. Initially, all three parameters are equal to 1. For example, if it is desired to tighten the boundary constraints in E 2 and want the boundary vertices to be closer to the edge of the unit square, the value of β can be increased. It should be recognized that all three sets of constraints are linear, which makes it easier to solve Equation 4.17 than if these constraints were nonlinear. Due to this property, Equation 4.17 can be reformulated in matrix notation, and the final problem to be solved is given by the system of linear equations:

这可以在最小平方意义上被求解。在这里,x是包括映射的顶点的值的求解向量。对于k个顶点,x必须包括每个顶点的u和v坐标,因此x∈R2k。这种求解使得顶点的分布尽可能的感知均匀。映射的顶点v’在x中以下列方式保持一致:This can be solved in a least squares sense. Here, x is a solution vector containing the values of the mapped vertices. For k vertices, x must contain the u and v coordinates of each vertex, so x∈R2k . This solution makes the distribution of vertices as perceptually uniform as possible. The mapped vertices v' are kept consistent in x in the following way:

其中总共有l个单独约束,有A∈Rl×2k并且b∈Rl,x中的每个值都保持单独约束,由于每个顶点经受多个约束l≥2k,因此等式系统是超定的(overdertermined)。There are a total of l individual constraints, with A∈Rl ×2k and b∈Rl . Each value in x holds an individual constraint. Since each vertex is subject to multiple constraints l≥2k, the system of equations is overdetermined.

如本文所考虑,产生的最小平方变换形状见单位方形804。畸变的三角形覆盖了单位方形的大部分区域,但并不是全部方区域。与具有最小平方变换的直接变换相比,可以考虑这两者之间的权衡。通过使用直接变换,可以对单位正方形的整体性加以影响,但是网格中的三角形被严重畸变。在最小平方变换中,不必利用单位方形的全部区域,但是关于映射的三角形存在较少的畸变。As considered herein, the resulting least squares transformed shape is shown in unit square 804. The distorted triangles cover most of the unit square, but not all of it. A trade-off can be considered when comparing this to a direct transformation with a least squares transform. By using a direct transformation, the integrity of the unit square can be affected, but the triangles in the mesh are severely distorted. In a least squares transform, the entire unit square is not necessarily utilized, but there is less distortion of the mapped triangles.

如针对等式4.17所描述,所得的变换可以被修正,这取决于用户通过改变参数α、β,和γ希望优化哪个约束。如果这些值没有被修正,则最小平方变换被认为不是最优化的。例如,假如用户希望覆盖单位方形的更大的区域,则可以放弃均匀性约束。为了这样做,可以增大α和β的值。此变换(所谓的最优化的最小平方变换)的示例被说明为单位方形806,其中设置参数α=β=3并且γ=1。当将非最优化的最小平方变换(被示出为单位方形804)与最优化版本(被示出为单位方形806)相比时,可以看出网格是如何改变其形状的。As described for Equation 4.17, the resulting transformation can be modified depending on which constraint the user wishes to optimize by changing the parameters α, β, and γ. If these values are not modified, the least squares transformation is considered non-optimal. For example, if the user wishes to cover a larger area of the unit square, the uniformity constraint can be abandoned. To do so, the values of α and β can be increased. An example of this transformation (a so-called optimized least squares transformation) is illustrated as unit square 806, where the parameters α = β = 3 and γ = 1 are set. When the non-optimized least squares transformation (shown as unit square 804) is compared to the optimized version (shown as unit square 806), it can be seen how the grid changes its shape.

WCG中的视频或图像内容例如P3或BT.2020具有更广的色域并且因此要求用于存储和传输的更多比特。根据各种实施例,系统和方法提供处于固定给定比特率的改善的图像质量,或者通过选择某一图像质量并降低比特率,提供选择某一期望的图像质量的能力。通过利用称作色品变换来实现最优化,其涉及两个色品通道U和V的变换。如果YUV颜色空间被用于编码,则提供给编码解码器的码字比该编码解码器实际上能够接受的要少。如果U和V的码字分布被扩大,某些编码错误在重构的信号中将会变得较不突出,并且由于本文所公开的色品变换,视频和图像内容的图片质量被改善。然而,尽管扩大了码字的分布(这转变为提供编码解码器以更多的信息),但是压缩更有效率,从而取消了导致颜色保留和更好的内容的整体颜色质量的增加的比特率(例如,在同一比特率下,针对颜色可以实现1/2dB或更高的提升)的影响。Video or image content in WCG, such as P3 or BT.2020, has a wider color gamut and therefore requires more bits for storage and transmission. According to various embodiments, the system and method provide improved image quality at a fixed given bit rate, or provide the ability to select a desired image quality by selecting a certain image quality and reducing the bit rate. Optimization is achieved by utilizing a process called chromaticity conversion, which involves converting two chromaticity channels, U and V. If the YUV color space is used for encoding, the codewords provided to the codec are fewer than the codec can actually accept. If the codeword distribution of U and V is expanded, certain coding errors will become less prominent in the reconstructed signal, and due to the chromaticity conversion disclosed herein, the picture quality of the video and image content is improved. However, despite the expansion of the codeword distribution (which translates into providing the codec with more information), the compression is more efficient, thereby canceling the impact of the increased bit rate (for example, at the same bit rate, a 1/2dB or higher improvement can be achieved for color) resulting in color preservation and better overall color quality of the content.

图9是计算组件的示例,可以用来实现本文所公开的系统和方法各种特征,例如上文中提到的,视频编码流水线中200的预处理部分209和后处理部分223各自的一个或多个方面的特征和功能性。Figure 9 is an example of computing components that can be used to implement various features of the systems and methods disclosed herein, such as the features and functionality of one or more aspects of the pre-processing portion 209 and the post-processing portion 223 of the video encoding pipeline 200 mentioned above.

如本文所使用的,术语组件可描述给定的功能性单元,该功能性单元可以根据本发明的一个或多个实施例来执行。如本文所使用的,利用任何形式的硬件、软件或两者的组合可以实现组件。例如,一个或多个处理器、控制器、专用集成电路(ASIC)、PLA、PAL、复杂可编程逻辑器件(CPLD)、现场可编程门阵列(FPGA)、逻辑组件、软件程序或者可以被实现以构成组件的其他机构。在实现方式中,本文所述的各种元件可以被实现为分立组件或可以在一个或多个组件内部分共享或者全部共享所述的功能和特性。也就是说,由于本文中描述的各种特性和功能在读完本说明书之后对本领域普通技术人员来讲是显而易见的,因此各种特征和功能性可以被实现在任何给定应用中,并且能够以各种组合和排列被实现在一个或多个单独的或共享的组件中。虽然功能的各个特性或元素可以作为独立的组件被单独描述或声明,本领域的普通技术人员可以理解,这些特性或功能可以被共享在一个或多个通用软件和硬件元件中,并且本说明不要求或暗示利用单独的硬件或软件组件来实现这种特性或功能。As used herein, the term component can describe a given functional unit that can be executed according to one or more embodiments of the present invention. As used herein, a component can be implemented using any form of hardware, software, or a combination of the two. For example, one or more processors, controllers, application specific integrated circuits (ASICs), PLAs, PALs, complex programmable logic devices (CPLDs), field programmable gate arrays (FPGAs), logic components, software programs, or other mechanisms that can be implemented to constitute a component. In an implementation, the various elements described herein can be implemented as discrete components or can be partially shared or fully shared within one or more components. That is, since the various characteristics and functions described herein are obvious to those of ordinary skill in the art after reading this specification, various features and functionality can be implemented in any given application and can be implemented in one or more separate or shared components in various combinations and arrangements. Although the various characteristics or elements of a function can be described or stated separately as independent components, it will be understood by those of ordinary skill in the art that these characteristics or functions can be shared in one or more general software and hardware elements, and this description does not require or imply the use of separate hardware or software components to implement such characteristics or functions.

其中全部或部分使用软件来实现应用的组件或多个组件,在一个实施例中,可以实现这些软件元件以利用计算或处理组件来操作,计算或处理组件能够执行上文针对其所描述的功能。图9示出一个这样的示例计算组件。根据这个示例的计算组件900描述了多个实施例。读完本说明书之后,如何使用其他计算组件或体系结构实现该应用对相关领域的普通技术人员来说是显而易见的。Where a component or components of an application are implemented in whole or in part using software, in one embodiment, these software elements can be implemented to operate using a computing or processing component that is capable of performing the functions described above. FIG9 illustrates an example computing component. Various embodiments are described based on this example computing component 900. After reading this specification, it will be apparent to one of ordinary skill in the relevant art how to implement the application using other computing components or architectures.

现在参考图9,计算组件900可以表示例如可能发现于自调节显示器、台式机、便携式电脑、笔记本电脑和平板电脑内的计算或处理能力;手提计算设备(平板电脑,掌上电脑(PDA)、智能手机、移动电话、掌上型电脑等);智能终端或者其他具有显示器的设备;服务器;或者任何其他类型的可能针对给定的应用或环境是需要的或适合的专用或通用计算设备。计算组件900也可以代表嵌入到给定设备或以其他方式对于给定设备可用的计算能力。例如,计算组件可以在其他电子设备(例如,导航系统、便携式计算设备以及可能包括某种形式的处理能力的其他电子设备)中被发现。Referring now to FIG9 , computing component 900 may represent computing or processing capabilities such as may be found within self-adjusting displays, desktops, laptops, notebook computers, and tablet computers; portable computing devices (tablet computers, personal digital assistants (PDAs), smartphones, mobile phones, palmtops, etc.); smart terminals or other devices with displays; servers; or any other type of specialized or general-purpose computing device that may be needed or suitable for a given application or environment. Computing component 900 may also represent computing capabilities embedded in or otherwise available to a given device. For example, computing components may be found in other electronic devices (e.g., navigation systems, portable computing devices, and other electronic devices that may include some form of processing capabilities).

计算组件900可能包括例如一个或多个处理器、控制器、控制组件或其他处理设备(例如,处理器904)。可以使用通用或专用处理引擎来实现处理器904,例如,微处理器、控制器或其他控制逻辑。在所示的示例中,处理器904被连接到总线902,然而可以使用任何通信介质来便于与计算组件900的其他组件交互或与外部进行通信。The computing component 900 may include, for example, one or more processors, controllers, control components, or other processing devices (e.g., processor 904). The processor 904 may be implemented using a general-purpose or special-purpose processing engine, such as a microprocessor, controller, or other control logic. In the example shown, the processor 904 is connected to a bus 902, however, any communication medium may be used to facilitate interaction with other components of the computing component 900 or to communicate with the outside world.

计算组件900也可能包括一个或多个内存组件,这里简单地指存储器908。例如,优选是随机存取存储器(RAM)或其他动态内存可以被用来存储由处理器904执行的信息和指令。存储器908也可以在执行由处理器904执行的指令的过程中被用来存储临时变量或其他中间信息。计算组件900可能类似地包括耦合至总线902的用于为处理器904存储静态信息和指令的只读存储器(“ROM”)或其他静态存储设备The computing component 900 may also include one or more memory components, referred to herein simply as memory 908. For example, preferably random access memory (RAM) or other dynamic memory may be used to store information and instructions executed by the processor 904. The memory 908 may also be used to store temporary variables or other intermediate information during the execution of instructions executed by the processor 904. The computing component 900 may similarly include a read-only memory ("ROM") or other static storage device coupled to the bus 902 for storing static information and instructions for the processor 904.

计算组件900可能也包括一种或多种形式的信息储存机构910,这可能包括例如媒介驱动器912和存储单元接口920。媒介驱动器912可能包括驱动器或其他机构用于支持固定的或可移除的储存媒介914。例如,可能提供硬盘驱动器、固态驱动器、磁带驱动器、光盘驱动器、光盘(CD)或数字视频盘(DVD)驱动器(R或RW)或其他可移除或固定的媒介驱动器。因此,存储媒介914可包括例如硬盘、集成电路组件、磁带、胶卷、光盘、CD或DVD或其他写入到媒介驱动器912或由媒介驱动器912获取所读取的固定的或可移除的介质。正如这些示例所述,存储媒介914可能包括存储在其中的计算机软件或数据的计算机可用的存储介质。The computing component 900 may also include one or more forms of information storage mechanisms 910, which may include, for example, a media drive 912 and a storage unit interface 920. The media drive 912 may include a drive or other mechanism for supporting fixed or removable storage media 914. For example, a hard drive, a solid-state drive, a tape drive, an optical drive, a compact disc (CD) or digital video disc (DVD) drive (R or RW), or other removable or fixed media drive may be provided. Thus, the storage media 914 may include, for example, a hard drive, an integrated circuit assembly, a magnetic tape, a film, an optical disc, a CD or DVD, or other fixed or removable media that is written to or read by the media drive 912. As these examples illustrate, the storage media 914 may include computer-usable storage media having computer software or data stored therein.

在替代实施例中,信息存储机构910可能包括用于将计算机程序或其他指令或数据下载至计算组件900内的其他类似工具。这些工具可能包括例如固定或可移除的储存单元922和接口920。这些存储单元922和接口920的示例可包括程序盒式存储器和盒式存储器接口、可移除存储器(例如,闪存或其他可移除存储器组件)以及存储器插槽、PCMCIA插槽和卡片以及其他固定的或可移除的存储单元922及接口920,其能够将软件和数据从储存单元922传输至计算组件900。In alternative embodiments, the information storage mechanism 910 may include other similar means for downloading computer programs or other instructions or data into the computing component 900. These means may include, for example, fixed or removable storage units 922 and interfaces 920. Examples of these storage units 922 and interfaces 920 may include program cartridges and cartridge interfaces, removable memory (e.g., flash memory or other removable memory components) and memory slots, PCMCIA slots and cards, and other fixed or removable storage units 922 and interfaces 920 that enable software and data to be transferred from the storage unit 922 to the computing component 900.

计算组件900可能也包括通信接口924。通信接口924可能被用来在计算组件900和外部设备之间传输软件和数据。通信接口924的示例可能包括调制解调器和软调制解调器、网络接口(例如以太网、网络接口卡、无线媒介(Wimedia)、IEEE 802.XX或其他接口)、通信端口(例如,USB端口、IR端口、RS232端口接口或其他端口)、或其他通信接口。通过通信接口924传输的软件和数据通常由信号携带,可能是能够由给定通信结构924变换的电信号、电磁信号(包括光)或其他信号。这些信号可以经由通道928被提供给通信接口924。此通道928可能携带信号并且可以使用有线或无线通信介质来实现。通道的一些示例可能包括电话线、蜂窝链路、RF链路、光链路、网络接口、局域网或广域网或其他有线或无线通信通道。The computing component 900 may also include a communication interface 924. The communication interface 924 may be used to transfer software and data between the computing component 900 and external devices. Examples of the communication interface 924 may include a modem and soft modem, a network interface (e.g., Ethernet, a network interface card, Wimedia, IEEE 802.XX or other interface), a communication port (e.g., a USB port, an IR port, an RS232 port interface or other port), or other communication interfaces. The software and data transmitted through the communication interface 924 are typically carried by signals, which may be electrical signals, electromagnetic signals (including light), or other signals that can be transformed by a given communication structure 924. These signals can be provided to the communication interface 924 via a channel 928. This channel 928 may carry signals and may be implemented using a wired or wireless communication medium. Some examples of channels may include a telephone line, a cellular link, an RF link, an optical link, a network interface, a local area network or a wide area network, or other wired or wireless communication channels.

在本文中,术语“计算机程序介质”和“计算机可用介质”一般被用来指暂时性或非暂时性媒体,例如,存储器908、储存单元接口920、媒介914和通道928。这些或其他各种形式的计算机程序媒介或计算机可用媒介可以涉及将一个或多个指令的一个或多个序列输送至处理设备用于执行。包括在介质上的指令一般被称作“计算机程序编码”或“计算机程序产品”(可以计算机程序的形式进行分组或进行其他分组)。当执行指令时,这些指令可能使计算组件900能够进行本文讨论的本应用的特性或功能。As used herein, the terms "computer program medium" and "computer-usable medium" are generally used to refer to either transient or non-transitory media, such as memory 908, storage unit interface 920, media 914, and channel 928. These or various other forms of computer program media or computer-usable media may be involved in delivering one or more sequences of one or more instructions to a processing device for execution. The instructions included on the media are generally referred to as "computer program code" or "computer program product" (which may be grouped in the form of a computer program or otherwise grouped). When the instructions are executed, the instructions may enable computing component 900 to perform the features or functions of the present application discussed herein.

虽然上文根据各种示例性实施例和实现方式进行讨论,可以理解的是,在一个或多个单个实施例中描述的各种特性、方面和功能并不局限于仅应用在针对其进行描述的具体实施例中,而是替代地可以单独的或各种组合来应用到本应用的一个或多个其他实施例,而不论这些实施例是否被描述过,并且也不论这些特性是否被变现为所描述的实施例的一部分。因此,本申请的宽度和范围不应局限于任何上述示例性实施例。Although discussed above in terms of various exemplary embodiments and implementations, it is understood that the various features, aspects, and functions described in one or more individual embodiments are not limited to application only in the specific embodiment for which they are described, but instead may be applied alone or in various combinations to one or more other embodiments of the present application, regardless of whether such embodiments are described and regardless of whether such features are implemented as part of the described embodiments. Therefore, the breadth and scope of the present application should not be limited to any of the above-described exemplary embodiments.

在本文中用到的术语和短语以及它们的变型,除非以其他方式明确说明,都应该被视为开放的而不是限制性的。如上述示例:术语“包括”应当理解为“包括,但不限于”或者类似的表达;术语“示例”被用于提供讨论中的术语的示例性实例,而不是其详尽的或限制性的列表;术语“一”或“一个”应当理解为“至少一个”、“一个或更多个”或类似的表达;形容词如“常规的”、“通常的”、“正常的”、“标准的”、“已知的”以及相近含义的术语不应当被解释为限制所描述的术语为一给定的时间段或限制为在一给定的时间可用该术语,而是应当理解为包括现在或在未来的任何时间可以获得或已知的常规的、通常的、正常的、标准的技术。同样,本文涉及的技术对本领域普通技术人员来讲是显而易见的或已知的,这些技术包括对本领域技术人员现在或未来的任何时间来说都是显而易见的或已知的那些技术。The terms and phrases used herein, and their variations, unless expressly stated otherwise, should be considered open ended and not restrictive. For example, the term "including" should be understood as "including, but not limited to" or similar expressions; the term "example" is used to provide an illustrative example of the term in question, rather than an exhaustive or limiting list thereof; the term "a" or "an" should be understood as "at least one," "one or more," or similar expressions; adjectives such as "conventional," "usual," "normal," "standard," "known," and terms of similar meaning should not be interpreted as limiting the described term to a given time period or to limiting the term to be available at a given time, but should be understood to include conventional, common, normal, and standard technologies that are available or known now or at any time in the future. Similarly, the technologies referred to herein are obvious or known to those of ordinary skill in the art, including those that are obvious or known to those of ordinary skill in the art now or at any time in the future.

扩展词语或语句例如“一个或更多个”、“至少”、“但不限于”或在某些例子中的其他类似的语句的出现不应该意味在这些扩展语句不存在的实例中意图或需要更窄的情况。术语“组件”的使用并不意味着被描述或声明为组件的一部分的方面或功能被配置在共同封装件(common package)中。实际上,组件的任何或所有各个方面(不管是控制逻辑还是其他组件)可以被合并在单个封装件或者被单独维护,并且进一步分布到多个组群或封装件或跨越多个位置。The presence of expanded words or phrases such as "one or more," "at least," "but not limited to," or other similar phrases in certain examples should not imply that a narrower context is intended or required in instances where such expanded phrases are not present. The use of the term "component" does not imply that the aspects or functionality described or claimed as part of a component are configured in a common package. In fact, any or all aspects of a component (whether control logic or other components) can be combined in a single package or maintained separately and further distributed to multiple groups or packages or across multiple locations.

除此之外,本文阐述的各个实施例以示例性框图、流程图和其他图示被描述。在阅读本文档后,所示的实施例和其各种替代物可以在没有限制于所示的示例的情况下实现,这对本领域普通技术人员来说是显而易见的。例如,框图及其相应的描述不应当被解释为要求特定的体系结构或配置。In addition, the various embodiments described herein are described using exemplary block diagrams, flow charts, and other illustrations. After reading this document, it will be apparent to those skilled in the art that the illustrated embodiments and their various alternatives can be implemented without being limited to the illustrated examples. For example, the block diagrams and their corresponding descriptions should not be construed as requiring a specific architecture or configuration.

Claims (9)

1.一种用于广色域视频编码的感知颜色变换的方法,其包括:1. A method for perceptual color transformation in wide color gamut video coding, comprising: 将加色模型信号转换为具有色品成分和亮度成分的均匀颜色空间信号;The additive color model signal is converted into a uniform color space signal with chromaticity and luminance components; 通过在所述色品成分上应用色品比变换来对所述色品成分进行变换;The chromaticity components are transformed by applying a chromaticity ratio transformation to the chromaticity components; 通过在所述亮度成分上应用亮度比变换,与所述色品成分分开地对所述亮度成分进行变换;The luminance component is transformed separately from the chromaticity component by applying a luminance ratio transformation to the luminance component. 量化变换的色品成分和亮度成分;The chromaticity and brightness components of the quantization transformation; 对量化的色品成分和亮度成分进行编码;Encode the quantified chromaticity and luminance components; 其中所述均匀颜色空间信号包括YUV颜色空间信号,其中所述色品成分的变换包括将所述色品成分在所述YUV颜色空间中的主三角形表示细分为包括多个二级三角形的网格,并且其中所述主三角形表示的顶点中的每个包括所述加色模型的原色中的一个;以及The uniform color space signal includes a YUV color space signal, and the transformation of the chromaticity component includes subdividing the primary triangle representation of the chromaticity component in the YUV color space into a mesh comprising multiple secondary triangles, wherein each vertex of the primary triangle representation includes one of the primary colors of the additive color model; and 定义在所述加色模型的所述原色中的两个之间的中间顶点,并且将所述主三角形表示的所述顶点中的每个以及定义的中间顶点映射到所述色品成分在所述YUV颜色空间中的矩形表示。The middle vertex is defined between two of the primary colors in the additive color model, and each of the vertices represented by the main triangle and the defined middle vertex are mapped to a rectangular representation of the chromaticity component in the YUV color space. 2.根据权利要求1所述的方法,其中所述加色模型信号包括红-绿-蓝颜色模型信号即RGB颜色模型信号。2. The method according to claim 1, wherein the additive color model signal includes a red-green-blue color model signal, i.e., an RGB color model signal. 3.根据权利要求1所述的方法,其中所述矩形表示包括单位方形。3. The method of claim 1, wherein the rectangle represents a unit square. 4.根据权利要求1所述的方法,其中所述多个二级三角形中的每个的各自的顶点使用平均值坐标被映射到所述色品成分在所述YUV颜色空间中的所述矩形表示。4. The method of claim 1, wherein the respective vertices of each of the plurality of secondary triangles are mapped to the rectangular representation of the chromaticity component in the YUV color space using average coordinates. 5.根据权利要求4所述的方法,其中每个所述色品成分在所述YUV颜色空间中的值利用对应于每个所述色品成分的值的重心坐标被映射到所述色品成分的所述矩形表示。5. The method of claim 4, wherein the value of each chromaticity component in the YUV color space is mapped to the rectangular representation of the chromaticity component using the centroid coordinates corresponding to the value of each chromaticity component. 6.根据权利要求1所述的方法,进一步包括将所述主三角形表示的所述顶点中的每个和定义的中间顶点映射到所述色品成分在所述YUV颜色空间中的四边多边形表示中。6. The method of claim 1, further comprising mapping each of the vertices represented by the main triangle and the defined intermediate vertex to the quadrilateral representation of the chromaticity component in the YUV color space. 7.根据权利要求6所述的方法,进一步包括应用影响所述主三角形表示的所述顶点中的每个、每个所述多个二级三角形中的顶点中的每个以及定义的中间顶点到所述四边多边形表示的映射的多个约束中的至少一个。7. The method of claim 6, further comprising applying at least one of a plurality of constraints affecting each of the vertices of the primary triangle representation, each of the vertices of each of the plurality of secondary triangles, and the mapping of the defined intermediate vertices to the quadrilateral polygon representation. 8.根据权利要求7所述的方法,进一步包括调节所述多个约束中的至少一个的特征来修改所述色品比变换。8. The method of claim 7, further comprising adjusting a feature of at least one of the plurality of constraints to modify the chromaticity ratio transformation. 9.根据权利要求1所述的方法,其中所述亮度比变换包括光电子传递函数。9. The method according to claim 1, wherein the brightness ratio transformation includes a photoelectron transfer function.
HK17101506.6A 2015-05-01 2017-02-10 Perceptual color transformations for wide color gamut video coding HK1228145B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US62/156,124 2015-05-01
US14/862,027 2015-09-22

Publications (2)

Publication Number Publication Date
HK1228145A1 HK1228145A1 (en) 2017-10-27
HK1228145B true HK1228145B (en) 2020-12-11

Family

ID=

Similar Documents

Publication Publication Date Title
CN106101708B (en) Perception colour switching for wide color gamut video coding
CN107836118B (en) Method, apparatus and computer readable storage medium for pixel preprocessing and encoding
CN107211130B (en) Method and apparatus for encoding and decoding color picture
RU2737507C2 (en) Method and device for encoding an image of a high dynamic range, a corresponding decoding method and a decoding device
RU2710291C2 (en) Methods and apparatus for encoding and decoding colour hdr image
CN114189691B (en) Method and apparatus for encoding both HDR images and SDR images using color mapping functions
KR102711993B1 (en) Method and device for color space mapping
KR102509504B1 (en) Coding and decoding methods and corresponding devices
KR102736328B1 (en) Method and device for color global mapping
CN110741623B (en) Method and apparatus for gamut mapping
US11006152B2 (en) Method and apparatus for encoding/decoding a high dynamic range picture into a coded bitstream
CN106412595B (en) Method and apparatus for encoding high dynamic range frames and applied low dynamic range frames
CN107925778A (en) Pixel pre-processes and coding
US10602109B2 (en) Method and arrangements for HDR encoding
HK1228145B (en) Perceptual color transformations for wide color gamut video coding
HK1228145A1 (en) Perceptual color transformations for wide color gamut video coding
HK40081874A (en) A method and apparatus of encoding and decoding a color picture