CN107251557A - 高色度分辨率细节的编码/解码 - Google Patents

高色度分辨率细节的编码/解码 Download PDF

Info

Publication number
CN107251557A
CN107251557A CN201680006016.0A CN201680006016A CN107251557A CN 107251557 A CN107251557 A CN 107251557A CN 201680006016 A CN201680006016 A CN 201680006016A CN 107251557 A CN107251557 A CN 107251557A
Authority
CN
China
Prior art keywords
picture
code
region
sample value
subsequence
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
Application number
CN201680006016.0A
Other languages
English (en)
Other versions
CN107251557B (zh
Inventor
朱立华
S·阿哈荣
吴勇军
B·A·库马
J·E·范埃斯特伦
C·哈吉尤
S·萨德瓦尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107251557A publication Critical patent/CN107251557A/zh
Application granted granted Critical
Publication of CN107251557B publication Critical patent/CN107251557B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Abstract

给出了使用对低分辨率色度采样格式(例如,YUV 4:2:0)的码化图片操作的视频编码器和解码器对高分辨率色度采样格式(例如,YUV 4:4:4)的视频图片的编码和解码操作。例如,逐个区域选择性地对高色度分辨率细节进行编码。或者,作为另一示例,包含输入图片的低色度分辨率版本的样本值的码化图片和包含输入图片的高色度分辨率细节的样本值的码化图片作为单个码化图片序列的分离子序列而被编码,这能够支持有效的运动补偿。以这种方式,对低分辨率色度采样格式的码化图片操作的可用的编码器和解码器能够被有效地用于提供高色度分辨率细节。

Description

高色度分辨率细节的编码/解码
背景技术
工程师使用压缩(也称为源编码)以降低数字视频的比特率。压缩通过将信息转换为较低比特率形式,而降低存储和发送视频信息的成本。压缩能够是无损的,在该情况中视频的质量在被重构时不会受到影响但是比特率的降低受限于视频的复杂性。或者,压缩能够是有损的,在该情况中重构视频的质量受到影响但是比特率的降低更急剧。解压缩(也称为解码)从压缩形式重构原始的信息形式。“编解码器”是编码器/解码器系统。
在过去的二十年,各种视频编解码标准已被采用,包括ITU-T H.261、H.262(MPEG-2或ISO/IEC 13818-2)、H.263、H.264(MPEG-4 AVC或ISO/IEC 14496-10)和H.265(HEVC或ISO/IEC 23008-2)标准、MPEG-1(ISO/IEC 11172-2)和MPEG-4视觉(ISO/IEC 14496-2)标准以及SMPTE 421M标准。视频编解码标准通常定义编码的视频比特流的语法的选项、在编码和解码中使用具体特征时比特流中的详细参数。在许多情况中,视频编解码标准还提供了与解码器应该执行以在解码中实施相符的结果的解码操作有关的细节以。除了编解码标准以外,各种专有编解码格式(例如VP8、VP9和其它VPx格式)定义了编码的视频比特流的语法的其它选项和相应的解码操作。
对于编码,视频源(例如摄像机或屏幕捕获模块)通常提供被转换为诸如YUV 4:4:4色度采样格式的视频。YUV格式包括亮度(或Y)分量以及多个色度(或U和V)分量,其中Y分量具有表示近似亮度值的样本值,U和V分量具有表示色差值的样本值。在YUV 4:4:4格式中,色度信息以与亮度信息相同的空间分辨率表示。
许多市场上可买到的视频编码器和解码器仅支持YUV 4:2:0色度采样格式。YUV4:2:0格式是与YUV 4:4:4格式相比对色度信息进行子采样的格式,使得色度分辨率在水平和垂直方向均为亮度分辨率的一半。作为设计原理,决定使用YUV 4:2:0格式编码/解码的前提是理解对于典型使用情况(例如摄像机捕获的自然的内容的编码/解码),观看者通常注意不到以YUV 4:2:0格式编码/解码的视频与以YUV 4:4:4格式编码/解码的视频之间的显著视觉差。(与亮度或强度(亮度)的变化相比,人眼对颜色(色度)的变化较不敏感。)因此,YUV 4:2:0格式的每个图片具有较少样本的压缩优点很吸引人。
然而,存在一些使用情况,视频具有较丰富的颜色信息以及较高的颜色保真度可能是合乎情理的。在这些使用情况中,YUV 4:4:4色度采样格式与YUV 4:2:0色度采样格式之间的差异更容易被观看者感知。例如,对于计算机屏幕文本内容、具有(artificial)非自然硬边边界的动画视频内容、颜色文本、或更一般的视频内容的某些特征(例如滚动标题和硬边图形、或具有集中于色度通道中的信息的视频)的编码/解码,YUV 4:4:4格式可能优于YUV 4:2:0格式。一些编解码器支持YUV 4:4:4格式的视频图片的直接编码和解码,但是缺少对使用YUV 4:4:4格式的编译码器的广泛支持(尤其在硬件实施方面)是一个阻碍。对于许多使用情形,对视频提供YUV 4:4:4质量的其它现有方法在率失真效率和计算复杂度方面具有不足。
发明内容
概况地说,详细描述给出了使用对低分辨率色度采样格式(例如,YUV 4:2:0)的码化图片进行操作的视频编码器和解码器,以对高分辨率色度采样格式(例如,YUV 4:4:4)的视频图片进行编码和解码的创新。例如,高色度分辨率细节选择性地逐个区域被编码,从而在色度分辨率的增加可能明显改善质量的情况下发生(因对高色度分辨率细节的样本值编码引起的)比特率的提高。或者,作为另一示例,包含输入图片的低色度分辨率版本的样本值的码化图片和包含输入图片的高色度分辨率细节的样本值的码化图片作为单个码化图片序列的分离子序列被编码,这便于有效的运动估计和补偿。以这种方式,对低分辨率色度采样格式的码化图片操作的可用的编码器和解码器可有效地用于提供高色度分辨率细节。而且,针对输入图片的低色度分辨率版本和高色度分辨率细节使用不同子序列,能够便于由解复用器、路由器、或其它比特流编辑工具对子序列的分离(例如,以将输入图片的低色度分辨率版本的编码子序列发送给一些播放设备但是将两个编码子序列发送给其它播放设备)。此外,在解码之后,高色度分辨率细节能够使用简单的操作而与低色度分辨率版本组合以重构高分辨率色度采样格式的图片。
根据本文描述的创新的一个方面,视频处理工具(例如视频编码器)将输入图片的样本值封装成第一和第二码化图片。输入图片根据输入图片格式(例如,具有诸如4:4:4的色度采样率)被组织。第一和第二码化图片分别根据第一和第二码化图片格式被组织。第一和第二码化图片格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。与输入图片格式相比,第一和第二码化图片格式的至少一个可具有较低的色度采样率(例如4:2:0)。第一码化图片包含输入图片的低色度分辨率版本的样本值。第二码化图片包含输入图片的高色度分辨率细节的样本值。
视频处理工具对第一和第二码化图片进行编码以产生编码数据。作为编码的一部分,视频处理工具选择一个或多个区域,输入图片的高色度分辨率细节的相应样本值在该一个或多个区域中作为第二码化图片的一部分被编码。因此,视频处理工具可通过对仅在输入图片的高色度分辨率细节的这些区域中的样本值进行编码,来选择性地增加图片的特定区域的色度分辨率。这可允许视频处理工具逐个区域适应色度分辨率,从而在色度分辨率的增加可能明显改善质量的情况下发生(因对高色度分辨率细节的样本值进行编码引起的)比特率的提高。相反地,视频处理工具能够在色度分辨率增加可能不被观看者注意到的情况下避免对高色度分辨率细节的样本值进行编码。
视频处理工具输出编码数据,该编码数据包括第一和第二码化图片之一或两者的编码数据。视频处理工具还输出区域数据,该区域数据标识输入图片的高色度分辨率细节的相应样本值作为第二码化图片的一部分被编码的区域。
对于相应的解码器侧行为,视频处理工具(例如视频解码器)接收编码数据,并对分别根据第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)组织的第一和第二码化图片进行解码。第一码化图片包含输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。视频处理工具还接收区域数据,该区域数据标识输出图片的高色度分辨率细节的相应样本值在其中作为第二码化图片的一部分被编码的一个或多个区域。
视频处理工具至少部分地基于区域数据将第一和第二码化图片的样本值解封装成输出图片。输出图片根据输出图片格式(例如,具有诸如4:4:4的较高色度采样率)被组织。
根据本文描述的创新的另一方面,视频处理工具(例如视频编码器)将输入图片的样本值封装成第一和第二码化图片。输入图片根据输入图片格式(例如,具有诸如4:4:4的色度采样率)被组织。第一和第二码化图片根据第一和第二码化图片格式被组织。第一和第二码化图片格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。与输入图片格式相比,第一和第二码化图片格式的至少一个可以具有较低的色度采样率(例如4:2:0)。第一码化图片包含输入图片的低色度分辨率版本的样本值。第二码化图片包含输入图片的高色度分辨率细节的样本值。
视频处理工具对作为码化图片序列中的分离码化图片的第一和第二码化图片进行编码,由此产生编码数据。在编码期间,第一码化图片作为该序列的第一子序列的一部分被编码,第二码化图片作为该序列的不同的第二子序列的一部分被编码。为了运动补偿,该第一子序列中的码化图片不被允许参考第二子序列中的任何码化图片,第二子序列中的码化图片不被允许参考第一子序列中的任何码化图片。以这种方式,两个子序列能够使用给定的标准或格式(例如,控制参考图片关系)的相符语法而作为单个序列的一部分被有效地编码。视频处理工具输出编码数据,该编码数据包括第一和第二码化图片之一或两者的编码数据。
对于相应的解码器侧行为,视频处理工具(例如视频解码器)接收编码数据,并对根据第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)组织的第一和第二码化图片进行解码。第一码化图片包含输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。
视频处理工具对作为码化图片序列中的分离码化图片的第一和第二码化图片进行解码。在解码期间,第一码化图片作为所述序列的第一子序列的一部分被解码,第二码化图片作为所述序列的第二不同子序列的一部分被解码。为了运动补偿,第一子序列中的码化图片不参考第二子序列中的任何码化图片,第二子序列中的码化图片不参考第一子序列中的任何码化图片。视频处理工具然后将第一和第二码化图片的样本值解封装成输出图片,该输出图片根据输出图片格式(例如,具有较高色度采样率例如4:4:4)被组织。
创新可作为方法的一部分、作为被配置为执行方法的计算机系统的一部分、或作为存储计算机可执行指令的有形计算机可读介质的一部分实施,其中计算机可执行指令在被编程时使计算机系统执行该方法。各种创新可组合使用或单独使用。本发明的前面和其它的对象、特征和优点可通过以下详细描述变得更明显,其中以下描述参考附图进行。
附图说明
图1是可以在其中实施所描述的一些实施方式的示例计算机系统的示图;
图2a和图2b是可以在其中实施所描述的一些实施方式的示例网络环境的示图;
图3是可以在其中实施所描述的一些实施方式的一般帧封装/解封装系统的示图;
图4是可以协同其实施所描述的一些实施方式的示例编码器系统的示图;
图5是可以协同其实施所描述的一些实施方式的示例解码器系统的示图;
图6a和图6b是图示了可以协同其实施所描述的一些实施方式的示例视频编码器的示图;
图7是图示了可以协同其实施所描述的一些实施方式所的示例视频解码器的示图;
图8a-8e是示出了帧封装的示例方法的示图;
图9是图示了包括YUV 4:2:0图片子序列和YUV 4:2:0图片子序列的码化图片序列的示图;
图10a和图10b是图示了YUV 4:2:0图片子序列的码化图片之间的时间依赖性和UUV 4:2:0图片子序列的码化图片之间的时间依赖性的示图;
图11和图12是图示了对输入/输出图片的低色度分辨率版本和高色度分辨率细节的不同子序列中的码化图片分别进行编码和解码的一般技术的流程图;
图13是图示了对输入/输出图片的高色度分辨率细节的区域中的样本值进行选择性编码和解码的示图;
图14是图示了对输入图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码的示图;
图15和图16是图示了在对输入/输出图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码和解码时使用的区域数据的示例的示图;
图17和图18是图示了对高色度分辨率细节的区域中的样本值分别进行选择性编码和解码的一般技术的流程图;
图19是图示了在对输入图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码的示例决策规则中考虑的区域的示图;
图20a-20e是图示了对输入图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码的示例决策规则的流程图;
图21是图示了用于在对高色度分辨率细节的区域中的样本值进行选择性编码时应用决策规则的一般技术的流程图;
图22a-22d是图示了色度样本值的抗混叠滤波和相应的恢复滤波的各方面的示图;
图23是图示了用于在输出图片的一个或多个高色度分辨率区域中选择性地应用恢复滤波器的一般技术的流程图;
图24是图示了输出图片的低色度分辨率区域与高色度分辨率区域之间的边界处的去块滤波的各方面的示图;
图25是图示了用于在输出图片的低色度分辨率区域与高色度分辨率区域之间的一个或多个边界处应用去块滤波器的一般技术的流程图;
图26是图示了输出图片的区域中的自适应去振铃滤波的各方面的流程图;
图27a-27d是图示了用于输出图片的高色度分辨率区域的去振铃滤波器的示例的示图;以及
图28是图示了用于在输出图片的高色度分辨率区域中应用去振铃滤波器的一般技术的流程图。
具体实施方式
具体实施方式给出了使用对低分辨率色度采样格式(例如,YUV 4:2:0)的码化图片进行操作的视频编码器和解码器,来对高分辨率色度采样格式(例如YUV 4:4:4)的视频图片进行编码和解码的创新。例如,高色度分辨率细节逐个区域被选择性编码。基于该特征,在色度分辨率的相应增加可能明显改善质量的情况下能够发生(由高色度分辨率细节的样本值的编码引起的)比特率的提高。或者,作为另一示例,包含输入图片的低色度分辨率版本的样本值的码化图片和包含输入图片的高色度分辨率细节的样本值的码化图片作为单个码化图片序列的分离子序列被编码,这可以便于有效的运动补偿。以这种方式,对低分辨率色度采样格式的码化图片操作的可用的编码器和解码器能够有效地被用于提供高色度分辨率细节。而且,使用针对输入图片的低色度分辨率版本和高色度分辨率细节的不同子序列,能够便于由解复用器、路由器或其它比特流编辑工具对子序列的分离(例如,以将输入图片的低色度分辨率版本的编码子序列发送给一些播放设备但是将两个编码子序列发送给其它播放设备)。此外,在解码之后,高色度分辨率细节能够使用简单操作与低色度分辨率版本组合以重构高分辨率色度采样格式的图片。
如本文中所使用的,术语“码化图片”指示被编码和解码的图片,它通常为具有色度采样率例如4:2:0的码化图片格式。术语“输入图片”指示输入图片格式的图片,它在将样本值重排为码化图片格式用于编码之前通常具有较高色度采样率(例如4:4:4)。相反地,术语“输出图片”指示输出图片格式的图片,它在从解码后的码化图片格式重排样本值之后通常与输入图片格式具有相同的色度采样率。本文描述的一些示例涉及封装/解封装YUV 4:4:4格式的输入/输出图片的样本值,以使用适于YUV 4:2:0格式的编解码器进行编码/解码。更一般地,所描述的方法可用于其它色度采样格式。例如,除了例如4:4:4、4:2:2、4:2:0、4:1:1、4:0:0等采样率的YUV颜色空间的变型(例如Y’UV、YIQ、Y’IQ、YdbDr、YCbCr、YCoCg等)以外,所描述的方法可用于作为色度采样格式的例如4:4:4、4:2:2、4:2:0、4:1:1、4:0:0等采样率的颜色空间(例如RGB、GBR等)。术语“封装”指示将用于第一图片格式的图片的一些或所有样本值分离、转换、重排、重新格式化、滤波、或以其它方式转变为第二图片格式的一个或多个图片的任何操作。相反地,术语“解封装”指示将用于第二图片格式的一个或多个图片的一些或所有样本值组合、构建、转换、重排、重新格式化、滤波或以其它方式转变回第一图片格式的图片的任何操作。
在所描述的许多示例中,YUV 4:4:4格式的输入图片被封装为YUV 4:2:0格式的两个码化图片,该两个码化图片被编码。YUV 4:2:0格式的两个码化图片被解码并且(对于至少一些样本值)被解封装为YUV 4:4:4格式的输出图片。更一般地,输入图片格式的输入图片可以被封装成码化图片格式的多个码化图片,其中针对各自码化图片的格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。例如,对于YUV 4:4:4格式的输入图片,一个码化图片是YUV 4:2:2格式,另一码化图片是4:0:0格式。在此配置中,YUV 4:2:2格式的码化图片可存储输入图片的低色度分辨率版本,4:0:0的码化图片可存储高色度分辨率细节。
通常,当输入图片格式的输入图片被封装成码化图片格式的多个码化图片时,码化图片不包括重叠的数据。例如,YUV 4:4:4格式的输入图片的一些样本值(可能在样本值的滤波之后)被封装成YUV 4:2:0格式的第一码化图片,输入图片的其它样本值被封装成YUV 4:2:0格式的第二码化图片。备选地,码化图片可包括重叠的数据,这潜在地损害压缩效率。例如,假设YUV 4:4:4格式的输入图片的样本值被封装成YUV 4:2:2格式或YUV 4:2:0格式的第一码化图片。相同的样本值的一些以及附加的样本值可以被封装成YUV 4:2:0格式或YUV 4:2:2格式的第二码化图片。
尽管本文给出的操作在某些地方被描述为由视频编码器或视频解码器执行,但是在许多情况中操作可由另一类型的媒体编码器或媒体解码器(例如,图像编码器或图像解码器)或其它媒体处理工具执行。例如,所描述的技术可应用于静态图像编码/解码、医疗扫描内容编码/解码、多光谱图像内容编码/解码等。
本文给出的一些创新参考专用于H.264/AVC标准或H.265/HEVC标准的语法元素和操作进行说明。本文给出的创新还可以被实施用于其它标准或格式。
本文给出的许多创新可在对某些“非自然”创建的视频内容(例如远程桌面会议或另一使用情形的屏幕捕获内容)进行编码时改善率失真性能。屏幕捕获内容通常包括重复结构(例如,图形、文本字符)。屏幕捕获内容常以具有高色度采样分辨率的格式(例如,YUV4:4:4或RGB 4:4:4)被编码,但是它也可以以具有较低色度采样分辨率的格式(例如,YUV4:2:0)被编码。用于对屏幕捕获内容进行编码/解码的常见情形包括远程桌面会议以及对自然视频或其它“混合内容”视频上的图形叠加进行编码/解码。本文给出的许多创新也可用于自然视频。
更一般地,本文给出的示例的各种备选是可行的。例如,本文给出的一些方法可通过改变所描述的方法动作的排序,通过拆分、重复、或省略某些方法动作等被改变。所公开的技术的各个方面可组合或单独地使用。不同实施方式使用所描述的创新中的一个或多个。本文给出的一些创新解决了背景技术中提到的一个或多个问题。通常,给定的技术/工具未解决所有问题。
I.示例计算机系统
图1图示了可以实施所描述的若干创新的合适计算机系统(100)的一般示例。计算机系统(100)不旨在建议对用途或功能的范围的任何限制,因为创新可在多种通用或专用计算机系统中实施。
参考图1,计算机系统(100)包括一个或多个处理单元(110、115)和存储器(120、125)。处理单元(110、115)执行计算机可执行指令。处理单元可以是通用CPU、ASIC中的处理器或任何其它类型的处理器。在多处理系统中,多个处理单元执行计算机可执行指令以提升处理能力。例如,图1示出了CPU(110)以及GPU或协处理单元(115)。有形存储器(120、125)可以是处理单元可存取的易失性存储器(例如,寄存器、缓冲器、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存等)、或两者的某一组合。存储器(120、125)存储软件(180),软件(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数字信号处理器(“DSP”)的ASIC、GPU、或可编程逻辑设备(“PLD”)例如现场可编程门阵列(“FPGA”))实施。
为了陈述,详细的描述使用像“确定”、“设置”和“使用”的术语描述计算机系统中的计算机操作。这些术语是由计算机执行的操作的高层抽象,并且不应该与人类执行的动作混淆。与这些术语对应的实际的计算机操作根据实施方式改变。
II.示例网络环境
图2a和图2b示出了包括视频编码器(220)和视频解码器(270)的示例网络环境(201、202)。编码器(220)和解码器(270)在网络(250)上使用适当的通信协议连接。网络(250)能够包括因特网或另一计算机网络。
在图2a所示的网络环境(201)中,每个实时通信(“RTC”)工具(210)包括编码器(220)和解码器(270)以用于双向通信。给定的编码器(220)可产生与H.265标准、SMPTE421M标准、H.264标准、另一标准、或专有格式的变型或扩展相兼容的输出,其中相应解码器(270)接受来自编码器(220)的编码数据。双向通信可以是视频会议、视频电话呼叫、或其它两方或多方通信情形的一部分。尽管图2a中的网络环境(201)包括两个实时通信工具(210),但是网络环境(201)可代替地包括参与多方通信的三个或更多个实时通信工具(210)。
实时通信工具(210)管理编码器(220)的编码。图4示出了可以被包括在实时通信工具(210)中的示例编码器系统(400)。备选地,实时通信工具(210)使用另一编码器系统。实时通信工具(210)还管理解码器(270)的解码。图5示出了可以被包括在实时通信工具(210)中的示例解码器系统(500)。备选地,实时通信工具(210)使用另一解码器系统。
在图2b所示的网络环境(202)中,编码工具(212)包括编码器(220),编码器(220)对视频进行编码以用于传送至包括(多个)解码器(270)的多个播放工具(214)。可以为视频监控系统、网络摄像头监视系统、远程桌上会议表示或视频被编码且从一个位置被发送至一个或多个其它位置的其它场景提供单向通信。尽管图2b中的网络环境(202)包括两个播放工具(214),但是网络环境(202)可包括更多或更少的播放工具(214)。一般地,播放工具(214)与编码工具(212)通信以确定将由播放工具(214)接收的视频流。播放工具(214)接收流,将接收的编码数据缓存适当的周期,并且开始解码和播放。
图4示出了可以被包括在编码工具(212)中的示例编码器系统(400)。备选地,编码工具(212)使用另一编码器系统。编码工具(212)还可包括用于对与一个或多个播放工具(214)的连接进行管理的服务器端控制器逻辑。图5示出了可以被包括在播放工具(214)中的示例解码器系统(500)。备选地,播放工具(214)使用另一解码器系统。播放工具(214)可包括用于对与编码工具(212)的连接进行管理的客户端控制器逻辑。
III.示例帧封装/解封装系统
图3是可以协同其实施所描述的一些实施方式一般帧封装/解封装系统(300)的框图。
系统(300)包括视频源(310),视频源(310)产生具有第一较高色度采样率的输入图片格式(例如YUV 4:4:4格式)的源图片(311)。视频源(310)可以是摄像机、调谐卡、屏幕捕获模块、存储介质或其它数字视频源。
拆分器(315)重排输入图片格式的图片(311)以产生具有第二较低色度采样率的码化图片格式(例如,YUV 4:2:0格式)的源图片(316)。下面描述使用帧封装拆分图片(311)的示例方法。备选地,源图片(316)能够具有不同的码化图片格式(例如,用于图片(311)的低色度分辨率版本的码化图片的YUV 4:2:2格式、用于具有高色度分辨率细节的码化图片的YUV 4:0:0格式),其中码化图片格式的至少一个具有比输入图片格式低的色度采样率。拆分器(315)能够在解码之后发送与一个或多个区域有关的元数据(317)以由组合器(385)使用,其中元数据(317)指示是否且如何执行拆分。下面描述发送与区域有关的元数据的示例方法。
编码器(340)对具有较低色度采样率的码化图片格式的图片(316)进行编码。(如果图片(316)具有不同的码化图片格式,则不同的编码器可用于不同的码化图片格式,或能够使用支持两种格式的单个编码器)。下面参考图4、图6a和图6b描述示例编码器。编码器(340)通过代表存储、通信连接或用于输出的另一信道的信道(350)输出编码数据(341)。
在本文描述的一些示例中,码化图片格式的图片(316)作为2个不同的图片子序列被编码。在第一子序列中,图片包含图片(311)的低色度分辨率版本的样本值。在第二子序列中,图片包含图片(311)的高色度分辨率细节的样本值。编码数据(341)包括第一子序列的编码数据和第二子序列的编码数据。每个子序列符合编码器(340)的格式并且可由用于该格式的解码器(360)解码。在编码器(340)与解码器(360)之间,比特流编辑工具(未示出)(例如解复用器或路由器)可分离第一子序列的编码数据与第二子序列的编码数据。这允许比特流编辑工具仅将第一子序列的编码数据发送给一些播放设备(例如,缺少用于以高色度分辨率播放的足够的显示分辨率、计算资源或网络连接的那些播放设备),从而通过消除第二子序列的高色度分辨率细节来降低整体比特率。第一子序列的编码数据仍然符合编码器(340)的格式并且可由用于该格式的解码器(360)解码。比特流编辑工具可将包括两个子序列的编码数据的所有编码数据(341)发送至其它播放设备(例如,具有用于以高色度分辨率播放的足够的显示分辨率、计算资源和网络连接的那些播放设备)。
解码器(360)接收编码数据(341)的至少一些并且对具有较低色度采样率的码化图片格式的至少一些图片(316)进行解码。(如果图片(316)具有不同的码化图片格式,不同的解码器可用于不同的码化图片格式,或者能够使用支持两种格式的单个解码器。)下面参考图5和图7描述示例解码器。解码器(360)输出具有较低色度采样率的码化图片格式的重构图片(381)。例如,解码器(360)接收并解码码化图片第一子序列的编码数据,该数据包含图片(311)低色度分辨率版本的样本值。或者,除接收并解码第一子序列的编码数据外,解码器(360)接收并解码第二子序列的编码数据,该数据包含图片(311)的高色度分辨率细节的样本值。
组合器(385)可选地重排具有较低色度采样率的码化图片格式(或多个不同码化图片格式)的重构图片(381),以重构具有较高色度采样率的输出图片格式的输出图片(386)。下面描述使用帧解封装进行组合的示例方法。组合器(385)可接收指示是否和如何执行拆分的与(多个)区域有关的元数据(317),并使用元数据(317)指导组合操作。组合器(385)将输出图片格式的重构图片输出至输出目标端(390)。对输出图片格式(例如,YUV 4:4:4格式)的输出图片的颜色空间转换可将样本值转换成另一格式(例如,RGB4:4:4格式)以用于显示。
IV.示例编码器系统
图4是可以协同其实施所描述的一些实施方式的示例编码器系统(400)的框图。编码器系统(400)可以是能够以多个编码模式中的任一个(例如,用于实时通信或远程桌上会议的低延迟编码模式、转码模式和用于从文件或流产生用于播放的媒体的较高延迟编码模式)操作的通用编码工具,或者它可以是适于一个这种编码模式的专用编码工具。编码器系统(400)可适于对具体类型的内容(例如,屏幕捕获内容)进行编码。编码器系统(400)能够作为操作系统模块的一部分、作为应用库的一部分、作为独立应用的一部分、或使用专用硬件来实施。编码器系统(400)能够针对一些或所有编码操作使用一个或多个通用处理器(例如,一个或多个CPU),针对某些编码操作使用图形硬件(例如,GPU),或针对某些编码操作使用专用硬件(例如ASIC)。总的来说,编码器系统(400)从视频源(410)接收具有第一较高色度采样率的输入图片格式(例如,YUV 4:4:4)的源视频图片(411)序列,将输入的源图片(411)拆分成具有第二较低色度采样率的码化图片格式(例如,YUV 4:2:0)或多个码化图片格式的源图片(416),并且对码化图片格式的源图片(416)进行编码以产生输出至信道(490)的编码数据。
视频源(410)可以是摄像机、调谐卡、存储介质、屏幕捕获模块、或其它数字视频源。视频源(410)以例如30个帧/秒的帧速率产生视频图片序列。如本文中所使用的,术语“图片”一般指源图像数据、编码图西乡数据或重构的图像数据。对于逐行扫描视频,图片是逐行扫描视频帧。对于隔行视频,在示例实施方式中,隔行视频帧可在编码之前被去隔行。备选地,两个互补的隔行视频段一起被编码为单个视频帧或被编码为两个单独编码的段。除了指示逐行扫描视频帧或隔行扫描视频帧以外,术语“图片”可指示单个不成对的视频段、一对互补的视频段、在给定时间表示视频对象的视频对象平面、或较大图像中的感兴趣区域。视频对象平面或区域可以是较大图像的一部分,其包括一个场景的多个对象或区域。在从捕获格式(例如,RGB格式)的颜色空间转换之后,源图片(411)是具有较高色度采样格式的输入图片格式(例如,YUV 4:4:4格式)。
拆分器(415)(也称为格式化器)重排输入图片格式的图片(411)以产生具有较低色度采样率的码化图片格式(例如,YUV 4:2:0格式)的源图片(416)。下面描述使用帧封装进行拆分的示例方法。备选地,源图片(416)可具有不同的码化图片格式(例如,用于图片(411)的低色度分辨率版本的码化图片的YUV 4:2:2格式和用于具有高色度分辨率细节的码化图片的YUV 4:0:0格式),其中码化图片格式的至少一个具有比输入图片格式低的色度采样率。拆分器(415)可在解码之后发送指示是否和如何执行拆分的元数据(未示出)以供组合器使用。下面描述发送该元数据的示例方法。例如,如下所述,拆分器(415)能够执行预处理操作。
到达的源图片(416)被存储在源图片暂时存储器存储区域(420),存储区域(420)包括多个图片缓冲器存储区域(421、422......42n)。图片缓冲器(421、422等)将一个源图片保持在源图片存储区域(420)中。在一个或多个源图片(416)被存储在图片缓冲器(421、422等)中之后,图片选择器(430)从源图片存储区域(420)选择单个源图片。图片选择器(430)所选择的用于输入到编码器(440)的图片的顺序可以不同于视频源(410)产生图片的顺序,例如,一些图片的编码可在顺序上被延迟,以允许一些后面的图片首先被编码因而便于暂时反向预测。
拆分器(415)和帧存储区域(420)的顺序可以被切换。在编码器(440)之前,编码器系统(400)能够包括在编码之前执行所选择的图片(431)的预处理(例如,滤波)的预处理器(未示出)。预处理可包括将颜色空间转换为主要(例如,亮度)和次要(例如,距红色和距蓝色的色度差)分量以及重采样处理(例如,以减少色度分量的空间分辨率)以用于编码。
编码器(440)对所选择的(码化图片格式的)图片(431)进行编码以产生码化图片(441),而且产生存储器管理控制操作(“MMCO”)或参考图片集(“RPS”)信息(442)。RPS是可用于在当前图片或任何后续图片的运动压缩中参考的图片集。如果当前图片不是已被编码的第一图片,在执行其编码过程时,编码器(440)能够使用已被存储在解码图片暂时存储器存储区域(460)中的一个或多个之前编码/解码的图片(469)。所存储的解码图片(469)用作当前源图片(431)的内容的图片间预测的参考图片。MMCO/RPS信息(442)向解码器指示哪些重构图片可用作参考图片,因此应当被存储在图片存储区域中。
一般地,编码器(440)包括执行编码任务(例如,分割成图块(tile)、图片内预测估计和预测、运动估计和补偿、频率转换、量化和熵编码)的多个编码模块。编码器(440)执行的确切操作可根据压缩格式而改变。输出的编码数据的格式可以是H.26x格式(例如,H.261、H.262、H.263、H.264、H.265)、Windows媒体视频格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、VPx格式(例如,VP8、VP9)、或另一格式的变型或扩展。一般地,编码器(440)适于对具有较低色度采样率的码化图片格式的码化图片进行编码。如果图片(416)具有不同的码化图片格式,则不同的编码器可用于不同的码化图片格式,或能够使用支持所有码化图片格式的单个编码器。
编码器(440)可将图片分割成相同尺寸或不同尺寸的多个条。例如,编码器(440)沿条行和条列拆分图片,条行和条列用图片边界限定图片内的条的水平边界和垂直边界,每个条是长方形区域。条常用于提供用于并行处理的选项。图片还可以被组织成一个或多个片,片可以是整个图片或图片的一部分。片可独立于图片中的其它片被解码,这改进了差错恢复。片或条的内容被进一步分割成块以用于编码和解码。
对于根据H.264标准的语法,编码器(440)可将图片分割成相同尺寸或不同尺寸的多个片。编码器(440)将图片(或片)的内容拆分成16x16宏块。宏块包括被组织成4个8x8亮度块的亮度样本值和被组织成8x8色度块的相应的色度样本值。一般地,宏块具有预测模式(例如,间或内)。宏块包括一个或多个预测单元(例如,8x8块、4x4块,可以被称为用于图片间预测的分割)用于发送预测信息(例如,预测模式细节、运动矢量(“MV”)信息等)和/或预测处理。宏块还具有一个或多个残留数据单元以用于残留编码/解码。
对于根据H.265标准的语法,编码器(440)将图片(或片或图块)的内容拆分成编码树单元。编码树单元(“CTU”)包括被组织成亮度编码树块(“CTB”)的亮度样本值和被组织成两个色度CTB的相应的色度样本值。CTU(及其CTB)的尺寸由编码器选择。亮度CTB可包含例如64x64、32x32或16x16亮度样本值。CTU包括一个或多个编码单元。编码单元(“CU”)具有亮度编码块(“CB”)和两个相应的色度CB。一般地,CU具有预测模式(例如,间或内)。CU包括一个或多个预测单元用于发送预测信息(例如,预测模式细节、位移值等)和/或预测处理。预测单元(“PU”)具有亮度预测块(“PB”)和两个色度PB。CU还具有一个或多个转换单元以用于残留编码/解码,其中转换单元(“TU”)具有亮度转换块(“TB”)和两个色度TB。编码器决定如何将视频分割成CTU、CU、PU、TU等。
如本文中所使用的,术语“块”可根据内容指示宏块、残留数据单元、CB、PB或TB、或一些其它样本值集。术语“单元”可指示宏块、CTU、CU、PU、TU、或一些其它块集,或者它可根据内容指示单个块,或者它可指示片、图块、图片、图片组、或其它高级区域。
返回图4,编码器(440)依据从图片(431)中的其它之前重构的样本值的预测表示源图片(431)的内编码块。对于块的内空间预测,图片内估计器估计将相邻的重构样本值外插到块中。图片内估计器可输出被熵编码的预测信息(例如,预测模式/用于内空间预测的方向)。图片内预测预测器应用预测信息以确定内预测值。
编码器(440)依据从一个或多个参考图片的预测表示源图片(431)的图片间编码预测块。运动估计器估计块相对于一个或多个参考图片(469)的运动。当多个参考图片被使用时,多个参考图片能够来自不同的时间方向或相同的时间方向。运动补偿预测参考区域是(多个)参考图片中的样本值的区域,其中参考图片中的样本值用于生成当前图片的样本值的块的运动补偿预测值。根据本文中描述的一些创新,包括输入图片的低色度分辨率版本的样本值的码化图片和包括输入图片的高色度分辨率细节的样本值的码化图片被组织到不同的子序列中。针对包括低色度分辨率版本的样本值的码化图片的运动估计和补偿在第一码化图片子序列内执行。针对包括高色度分辨率细节的样本值的码化图片的运动估计和补偿在不同的第二码化图片子序列内执行。运动估计器输出被熵编码的运动信息(例如MV信息和参考图片索引)。运动补偿器对参考图片应用MV以确定用于图片间预测的运动补偿预测值。
编码器(440)能够确定块的预测值(内或间)与相应的原始值之间的差(如果有)。这些预测残留值使用频率转换(如果频率转换不被跳过)和量化被进一步编码。例如,编码器(440)针对视频的图片、图块、片、宏块、CU和/或其它部分设置量化参数(“QP”)的值,并由此量化转换系数。编码器(440)的熵编码器压缩量化的转换系数值以及某些边信息(例如,MV信息、参考图片索引、QP值、模式决定、参数选择)。典型的熵编码技术包括指数哥伦布编码、Golomb-Rice编码、算术编码、差分编码、霍夫曼编码、游程长度编码、可变长-可变长(“V2V”)编码、可变长-固定长(“V2F”)编码、Lempel-Ziv(“LV”)编码、词典编码、概率区间分割熵编码(“PIPE”)和上述的组合。熵编码器能够使用用于不同类信息的不同编码技术,能够组合地应用多个技术(例如,应用Golomb-Rice编码,然后应用算术编码),并且能够从具体编码技术内的多个代码表选择。如果频率转换被跳过,则预测残留值或输入样本值可以被量化和熵编码。如果针对图片内码化内容的预测被跳过,从输入样本值计算的转换系数可以被量化和熵编码。
自适应去块滤波器被包括在编码器(440)中的运动补偿环路(即,“环内”滤波)内以平滑解码图片的跨块边界行和/或列的不连续。备选地或附加地,其它滤波(例如,去振铃滤波、自适应环路滤波(“ALF”)、或样本自适应偏移(“SAO”)滤波;未示出)能够作为环内滤波操作被应用。
编码器(440)产生基本比特流中的编码数据。基本比特流的语法通常在编译码标准或格式、或其扩展或变型中被定义。如下面所解释的,作为编码器(440)的输出,基本比特流被通常以容器格式被打包或组织。基本比特流中的编码数据包括被组织成语法结构的语法元素。一般地,语法元素可以是数据的任何元素,语法结构是基本比特流中的按规定顺序的零个或多个语法元素。
对于根据H.264标准或H.265标准的语法,图片参数集(“PPS”)是包含可以与图片相关联的语法元素的语法结构。PPS可用于单个图片,或者PPS可重复用于序列中的多个图片。PPS通常包括与PPS相关联的图片的QP的默认值或初始值。PPS通常与图片的编码数据分开被发送。在图片的编码数据内,语法元素指示哪个PPS用于该图片。类似地,对于根据H.264标准或H.265标准的语法,序列参数集(“SPS”)是包含可与图片序列相关联的语法元素的语法结构。比特流可包括单个SPS或多个SPS。SPS通常与该序列的其它数据分开被发送,并且其它数据中的语法元素指示使用哪个SPS。
参考图4,码化图片(441)和MMCO/RPS信息(442)(或等效于MMCO/RPS信息(442)的信息,由于图片的依赖性和有序结构在编码器(440)处已知)由解码过程仿真器(450)处理。解码过程仿真器(450)实施解码器的一些功能,例如解码任务以重构参考图片。以与MMCO/RPS信息(442)一致的方式,解码过程仿真器(450)确定给定的码化图片(441)是否需要被重构和存储用作待被编码的后续图片的图片间预测中的参考图片。如果码化图片(441)需要被存储,则解码过程仿真器(450)对解码过程建模,其中解码过程由接收码化图片(441)并产生相应的解码图片(451)的解码器实行。在这种情况下,当编码器(440)已使用已被存储在解码图片存储区域(460)中的解码图片(469)时,解码过程仿真器(450)还使用来自存储区域(460)的解码图片(469)作为解码过程的一部分。
解码图片暂时存储器存储区域(460)包括多个图片缓冲器存储区域(461、462......46n)。以与MMCO/RPS信息(442)一致的方式,解码过程仿真器(450)管理存储区域(460)的内容以标识具有不再被编码器(440)需要用作参考图片的图片的任何图片缓冲器(461、462等)。在对解码过程建模之后,解码过程仿真器(450)将新解码的图片(451)存储在已经以这种方式标识的图片缓冲器(461、462等)中。
码化图片(441)和MMCO/RPS信息(442)被缓冲存储在暂时编码数据区域(470)或其它编码数据缓冲器中。作为基本比特流的语法的一部分,编码数据区域(470)中所聚合的编码数据包含一个或多个图片的编码数据。编码数据区域(470)中所聚合的编码数据还能够包括与码化视频数据相关的媒体元数据(例如,作为一个或多个补充增强信息(“SEI”)消息或视频可用性信息(“VUI”)消息中的一个或多个参数)。
来自暂时编码数据区域(470)的聚合数据(471)由信道编码器(480)处理。信道编码器(480)可(例如,根据媒体程序流或传输流格式(例如,ITU-T H.222.0|ISO/IEC 13818-1)或互联网实时传输协议格式(例如,IETF RFC 3550))打包和/或复用聚合的数据用于作为媒体流传输或存储,在该情况中信道编码器(480)可添加作为媒体传输流的语法的一部分的语法元素。或者,信道编码器(480)可(例如,根据媒体容器格式(例如,ISO/IEC 14496-12))组织聚合的数据用于作为文件存储,在该情况下信道编码器(480)可添加语法元素以作为媒体存储文件的语法的一部分。或者,更一般地,信道编码器(480)可实施一个或多个媒体系统复用协议或传输协议,在该情况中信道编码器(480)可添加语法元素以作为该协议的语法的一部分。信道编码器(480)提供输出至信道(490),信道(490)代表存储、通信连接、或用于该输出的另一信道。信道编码器(480)或信道(490)还可包括(例如,用于前向纠错(“FEC”)编码和模拟信号调制的)其它元件(未示出)。
V.示例解码器系统
图5是可以协同其实施所描述的一些实施方式的示例解码器系统(500)的框图。解码器系统(500)可以是能够以多个解码模式(例如,用于实时通信或远程桌上会议的低延迟解码模式、转码模式和用于来自文件或流的媒体播放的较高延迟解码模式)中的任一个进行操作的通用解码工具,或者它可以是适于一个这种解码模式的专用解码工具。解码器系统(500)可适于解码具体类型的内容(例如,屏幕捕获内容)。解码器系统(500)可被实施为操作系统模块、应用库的一部分、独立的应用、或使用专用硬件。解码器系统(500)可针对一些或所有解码操作使用一个或多个通用处理器(例如,一个或多个CPU),针对某些解码操作使用图形硬件(例如,GPU),针对某些解码操作使用专用硬件(例如ASIC)。总的来说,编码器系统(500)从信道(510)接收编码数据,对具有第一较低色度采样率的码化图片格式(例如,YUV 4:2:0格式)或多个码化图片格式的图片进行解码,可选地将码化图片格式的码化图片的样本值组组合为具有较高色度采样率的第二输出图片格式(例如,YUV 4:4:4)的码化图片,并产生(输出图片格式的)重构图片以作为输出目标端(590)的输出。
解码器系统(500)包括信道(510),信道(510)可代表存储、通信连接、或用于作为输入的编码数据的另一信道。信道(510)产生已被信道编码的编码数据。信道解码器(520)可处理编码数据。例如,信道解码器(520)(例如,根据媒体程序流或传输流格式(例如ITU-TH.222.0|ISO/IEC 13818-1)或因特网实时传输协议格式(例如,IETF RFC 3550))拆包和/或解复用已聚合用于作为媒体流传输或存储的数据,在该情况下信道解码器(520)可解析作为媒体传输流的语法的一部分添加的语法元素。或者,信道解码器(520)(例如,根据媒体容器格式(例如,ISO/IEC 14496-12))分离已被聚合用于作为文件存储的码化视频数据,在该情况中信道解码器(520)可解析作为媒体存储文件的语法的一部分添加的语法元素。或者,更一般地,信道解码器(520)可实施一个或多个媒体系统可解复用协议或传输协议,在该情况中信道解码器(520)可解析作为该协议的语法的一部分添加的语法元素。用于媒体传输流、媒体存储流、复用协议或传输协议的语法元素可包括与包括高色度分辨率细节的区域有关的元数据。信道(510)或信道解码器(520)还可包括(例如,用于FEC解码和模拟信号解调的)其它元件(未示出)。
从信道解码器(520)输出的编码数据(521)被存储在暂时编码数据区域(530)直到足够量的这种数据已经被接收。编码数据(521)包括(具有较低色度采样率的码化图片格式的、或多个不同码化图片格式的)码化图片(531)和MMCO/RPS信息(432)。编码数据区域(530)中的编码数据(521)包含一个或多个码化图片的,作为基本码化视频比特流的语法的一部分的编码数据。编码数据区域(530)中的编码数据(521)还可包括与码化图片有关的媒体元数据(例如,作为一个或多个SEI消息或VUI消息中的一个或多个参数)。
一般地,编码数据区域(530)暂时存储编码数据(521)直到该编码数据(521)由解码器(550)使用。那时,码化图片(531)的编码数据和MMCO/RPS信息(532)从编码数据区域(530)被转移至解码器(550)。随着解码继续,新的编码数据被添加至编码数据区域(530),并且留在编码数据区域(530)中的最旧编码数据被转移至解码器(550)。
解码器(550)对码化图片(531)解码以产生具有较低色度采样率的码化图片格式(或多个不同的码化图片格式)的相应的解码图片(551)。图片可以被分割成相同尺寸或不同尺寸的多个图块。图片还可以被组织成一个或多个片。片或图块的内容可以被进一步分割成块或其它样本值集。
如果合适,在执行其解码过程时,解码器(550)能够使用一个或多个之前解码的图片(569)作为图片间预测的参考图片。解码器(550)从解码图片暂时存储器存储区域(560)读取之前解码的图片(569)。一般地,解码器(550)包括执行解码任务(例如,熵解码、图片内预测、运动补偿图片间预测、反量化、逆频率转换(如果不被跳过)、图块合并)的多个解码模块。解码器(550)执行的确切操作可根据压缩格式改变。一般地,解码器(550)适于对具有较低色度采样率的码化图片格式的图片进行解码。如果图片(569)具有不同的码化图片格式,则不同的解码器可用于不同的码化图片格式,或能够使用支持所有码化图片格式的单个解码器。
例如,解码器(550)接收码化图片或码化图片序列的编码数据,并且产生包括解码图片(551)的输出。在解码器(550)中,缓冲器接收码化图片的编码数据,并且在适当的时间使接收的编码数据为熵解码器可用。熵解码器对熵编码的量化数据以及熵编码的边信息进行熵解码,通常应用在编码器中执行的熵编码的逆。
运动补偿器将运动信息应用于一个或多个参考图片以形成正被重构的图片的任何编码块间的运动补偿预测值。根据本文描述的一些创新,包括输入图片的低色度分辨率版本的样本值的码化图片和包括输入图片的高色度分辨率细节的样本值的码化图片被组织到不同的子序列中。包括低色度分辨率版本的样本值的码化图片的运动补偿在第一码化图片子序列内执行。包括高色度分辨率细节的样本值的码化图片的运动补偿在不同的第二码化图片子序列内执行。图片内预测模块可从相邻的、之前重构的样本值空间预测当前块的样本值。
解码器(550)还重构预测残留值。反量化器对熵解码数据进行反量化。例如,解码器(550)基于比特流中的语法元素为图片、图块、片和/或视频的其它部分设置QP值,并由此对转换系数进行反量化。逆频率转换器将量化的频域数据转换成空域数据。在一些实施中,频率转换可以被跳过,在该情况中逆频率转换也被跳过。如果这样,预测残留值可以被熵解码并被反量化。对于图片间预测块,解码器(550)组合重构的预测残留值与运动补偿的预测值。解码器(550)可类似地组合预测残留值与来自图片内预测的预测值。
自适应去块滤波器包括在视频解码器(550)中的运动补偿环路内以平滑跨解码图片(551)中跨块边界行和/或列的不连续。备选地或附加地,其它滤波(例如,去振铃滤波、ALF、或SAO滤波;未示出)可以作为环内滤波操作被应用。
解码图片暂时存储器存储区域(560)包括多个图片缓冲器存储区域(561、562......56n)。解码器(550)使用MMCO/RPS信息(532)标识可存储解码图片(551)的图片缓冲器(561、562等)。解码器(550)将解码图片(551)存储在该图片缓冲器中。
输出定序器(580)标识按输出顺序产生的下一图片何时在解码图片存储区域(560)中可用。当按输出顺序产生的码化图片格式的下一图片在解码图片存储区域(560)中可用时,它由输出定序器(580)读取并被输出至(a)用于显示码化图片格式的图片的输出目标端(590)(例如,显示器)或(b)组合器(585)。一般地,输出定序器(580)从解码图片存储区域(560)输出图片的顺序可以不同于解码器(550)解码图片的顺序。
组合器(585)重排(具有较低色度采样率的)码化图片格式或多个码化图片格式的图片(581)以产生具有较高色度采样率的输出图片格式(例如,YUV 4:4:4格式)的输出图片(586)。下面描述使用帧解封装进行组合的示例方法。组合器(585)能够使用指示是否和如何执行拆分的元数据(未示出)指导组合操作。组合器(585)可执行如下描述的后处理操作。解码器系统(500)还可对输出图片格式(例如,YUV 4:4:4格式)或码化图片格式(例如,YUV4:2:0格式)的输出图片执行颜色空间转换,将样本值转换成另一个格式(例如,RGB 4:4:4)以用于显示。
VI.示例视频编码器
图6a和图6b是可以协同其实施所描述的一些实施方式的一般视频编码器(600)的框图。作为输入视频信号(605),编码器(600)接收包括当前图片的例如具有较低色度采样率的码化图片格式(例如,YUV 4:2:0)的码化图片序列。编码器(600)产生码化视频比特流(695)中的编码数据作为输出。
编码器(600)是基于块的,并使用依赖于实施方式的块格式。块可在不同阶段(例如,预测阶段、频率转换阶段和/或熵编码阶段)被进一步细分。例如,图片可以被分为64x64块、32x32块、或16x16块,这些块可又被分为更小块的样本值以用于编码和解码。在用于H.264标准的编码实施方式中,例如,编码器将图片分割成宏块、块、分区(用于图片间预测)和残留数据单元。在用于H.265标准的编码实施方式中,例如,编码器将图片分割成CTU(CTB)、CU(CB)、PU(PB)和TU(TB)。
编码器(600)使用图片内编码和/或图片间编码压缩图片。编码器(600)的许多组件用于图片内编码和图片间编码。这些组件实施的确切操作可根据正被压缩的信息类型改变。
图块化模块(610)可选地将图片分割成相同尺寸或不同尺寸的多个图块。例如,图块化模块(610)沿图块行和图块列拆分图片,图块行和图块列用图片边界限定图片内的图块的水平边界和垂直边界,每个图块是长方形区域。编码器(600)还可将图片分割成一个或多个片,其中每个片包括一个或多个片片段。
通用编码控制(620)接收输入视频信号(605)的图片以及来自编码器(600)的各个模块的反馈(未示出)。总的来说,通用编码控制(620)将控制信号(未示出)提供给其它模块(例如,图块化模块(610)、转换器/定标器/量化器(630)、定标器/逆转换器(635)、图片内估计器(640)、运动估计器(650)和内/间切换)以在编码期间设置和改变编码参数。具体地,如下文所描述,通用编码控制(620)可控制与输入图片的高色度分辨率细节的样本值被编码的区域有关的控制决定。如下文所描述,通用编码控制(620)还可控制与输入图片的低色度分辨率版本的样本值被编码的区域有关的控制决定。作为另一示例,通用编码控制(620)能够改变QP值以控制包括输入图片的低色度分辨率版本的样本值的码化图片区域的量化和/或控制包括高色度分辨率细节的样本值的码化图片区域的量化。更一般地,通用编码控制(620)能够管理与编码期间编码模式有关的决定。通用编码控制(620)产生指示在编码期间所做出的决定的通用控制数据(622),从而相应的解码器可做出一致的决定。通用控制数据(622)被提供给报头格式化器/熵编码器(690)。
如果当前图片使用图片间预测被预测,则运动估计器(650)估计当前图片的样本值的块相对于一个或多个参考图片的运动。解码图片缓冲器(670)缓冲存储一个或多个之前重构的码化图片以用作参考图片。当多个参考图片被使用时,多个参考图片可来自不同的时间方向或相同的时间方向。运动估计器(650)产生作为边信息的运动数据(652),例如MV数据、合并模式索引值和参考图片选择数据。运动数据(652)被提供给报头格式化器/熵编码器(690)以及运动补偿器(655)。运动补偿器(655)将MV应用于来自解码图片缓冲器(670)的(多个)重构参考图片。运动补偿器(655)产生用于当前图片的运动补偿预测。
包括输入图片的低色度分辨率版本的样本值的码化图片和包括输入图片的高色度分辨率的样本值的码化图片可以被组织到不同子序列中以用于运动估计和补偿。例如,对于包括输入图片的低色度分辨率的样本值的码化图片,运动估计和补偿在第一码化图片子序列内执行。类似地,对于包括高色度分辨率细节的样本值的码化图片,运动估计和补偿在不同的第二码化图片子序列内执行。编码器(600)能够使用参考图片重排序和/或不同的参考图片索引集来管理码化图片的不同子序列中的每个子序列内的时间依赖性。
在编码器(600)内的单独路径中,图片内估计器(640)确定如何对输入视频信号(605)的当前图片的样本值的块执行图片内预测。当前图片能够使用图片内编码被全部或部分编码。对于内空间预测,通过使用当前图片的重构(638)的值,图片内估计器(640)确定如何从当前图片的相邻的、之前重构的样本值空间预测当前图片的当前块的样本值(例如,确定用于当前块的空间预测的方向)。图片内估计器(640)产生作为边信息的内预测数据(642),例如指示内预测使用空间预测还是使用另一类型的内编码的信息、以及(用于内空间预测的)预测模式/方向。内预测数据(642)被提供给报头格式化器/熵编码器(690)以及图片内预测器(645)。根据内预测数据(642),图片内预测器(645)从当前图片的相邻的、之前重构的样本值空间预测当前图片的当前块的样本值。
内/间切换选择用于给定块的预测(658)是运动补偿预测还是图片内预测。
预测(658)的块与输入视频信号(605)的原始当前图片的相应部分之间的差异(如果有)为非跳过模式的块提供残留(618)值。在当前图片的重构期间,对于非跳过模式的块,重构的残留值与预测(658)组合以产生视频信号(605)的原始内容的大致或确切的重构(638)。(在有损补偿中,一些信息从视频信号(605)丢失)。
在转换器/定标器/量化器(630)中,频率转换器将空域视频信息转换成频域(即,频谱转换)数据。对于基于块的视频编码,频率转换器将离散余弦转换(“DCT”)、其整数近似、或另一类型的前向块转换(例如,离散正弦转换或其整数近似)应用于预测残留数据的块(或预测(658)为空情况下的样本值),以产生频率转换系数的块。转换器/定标器/量化器(630)可应用具有可变块尺寸的转换。在此情况中,转换器/定标器/量化器(630)可确定转换的哪些块尺寸用于当前块的残留值。编码器(600)还可在一些情况下跳过转换步骤。
定标器/量化器定标和量化转换系数。例如,量化器以随逐个图片、逐图块、逐片、逐个宏块、逐个CU、逐块、或其它基础变化的量化步长将死区标量量化应用于频域数据。转换系数还能够使用其它定标因子(例如,权值矩阵中的权值)被定标或以其它方式被量化。量化的转换系数数据(632)被提供给报头格式化器/熵编码器(690)。
在定标器/逆转换器(635)中,定标器/反量化器对量化的转换系数执行反定标和反量化。当转换阶段未被跳过时,逆频率转换器执行逆频率转换,产生重构的预测残留值或样本值的块。对于非跳过模式的块,编码器(600)组合重构的残留值与预测(658)值(例如,运动补偿预测值、图片内预测值)以形成重构(638)。对于跳过模式的块,编码器(600)使用预测(658)值作为重构(638)。
对于图片内预测,重构(638)值可以被回馈给图片内估计器(640)和图片内预测器(645)。而且,重构(638)值可用于后续图片的运动补偿预测。重构(638)值可以被进一步滤波。滤波控制(660)确定针对视频信号(605)的给定图片,如何对重构(638)值执行去块滤波和SAO滤波。对于一些类型的码化图片(例如,包括高色度分辨率细节的样本值的码化图片),滤波可适应性地被禁用。滤波控制(660)产生滤波控制数据(662),滤波控制数据(662)可以被提供给报头格式化器/熵编码器(690)和合并器/滤波器(665)。
在合并器/滤波器(665)中,编码器(600)将来自不同图块的内容合并成图片的重构版本。编码器(600)根据滤波控制数据(662)选择性地执行去块滤波和SAO滤波,以适应性地平滑图片中跨边界的不连续。备选地或附加地,可以应用其它滤波(例如,去振铃滤波或ALF;未示出)。图块边界可根据编码器(600)的设置选择性地被滤波或完全未被滤波,并且编码器(600)可在编码比特流内提供语法以指示这种滤波是否被应用。解码图片缓冲器(670)缓冲存储重构的当前图片以用于后续运动补偿预测。
报头格式化器/熵编码器(690)格式化和/或熵编码通用控制数据(622)、量化的转换系数数据(632)、内预测数据(642)、运动数据(652)和滤波控制数据(662)。报头格式化器/熵编码器(690)在码化视频比特流(695)中提供编码数据。码化视频比特流(695)的格式可以是H.26x格式(例如,H.261、H.262、H.263、H.264、H.265)、Windows媒体视频格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、VPx格式(例如,VP8、VP9)、或另一格式的变型或扩展。
根据实施方式和所期望的压缩类型,编码器(600)的模块可以被添加、被省略、被拆分成多个模块、与其它模块组合、和/或被类似模块替换。在替代实施方式中,具有不同模块和/或其它配置的模块的编码器执行一个或多个所描述的技术。编码器的具体实施方式通常使用编码器(600)的变型或补充版本。编码器(600)内的模块之间显示的关系指示编码器中的信息的一般流,为了简单起见未示出其它关系。
VII.示例视频解码器
图7是可协同其实施所描述的一些实施方式的一般解码器(700)的框图。解码器(700)接收码化视频比特流(705)中的编码数据并产生包括例如具有较低色度采样率的码化图片格式(例如,YUV 4:2:0)的码化图片的输出用于重构的视频(795)。码化视频比特流(705)的格式可以是Windows媒体视频格式、VPx格式(例如,VP8、VP9)、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、H.26x格式(例如,H.261、H.262、H.263、H.264、H.265)、或另一格式的变型或扩展。
图片可以被组织成相同尺寸或不同尺寸的多个图块。图片还可以被组织成一个或多个片。片或图块的内容可以被进一步组织成块。解码器(700)是基于块的并使用依赖于实施方式的块格式。块可在不同阶段被进一步细分。例如,图片可以被分为64x64块、32x32块或16x16块,这些块可又被分为样本值的更小块。在用于H.264标准的解码实施方式中,图片被分割成CTU(CTB)、CU(CB)、PU(PB)和TU(TB)。
解码器(700)使用图片内解码和/或图片间解码解压缩图片。解码器(700)的许多组件用于图片内解码和图片间解码两者。由这些组件执行的确切操作可根据正被解压缩的信息类型改变。
缓冲器接收码化视频比特流(705)中的编码数据并使接收的编码数据为解析器/熵解码器(710)可用。解析器/熵解码器(710)通常应用编码器(600)中执行的熵编码的逆(例如,内容自适应二进制算术解码),以对熵编码的数据进行熵解码。作为解析和熵解码的结果,解析器/熵解码器(710)产生通用控制数据(722)、量化的转换系数数据(732)、内预测数据(742)、运动数据(752)和滤波控制数据(762)。
通用解码控制(720)接收通用控制数据(722)并将控制信号(未示出)提供给其它模块(例如,定标器/逆转换器(735)、图片内预测器(745)、运动补偿器(755)和内/间切换)以在解码期间设置和改变解码参数。具体地,如下所述,通用解码控制(720)可确定输出图片的高色度分辨率细节的样本值被解码的区域。如下所述,通用解码控制(720)还可确定输出图片的低色度分辨率版本的样本值被解码的区域。作为另一示例,通用解码控制(720)可改变QP值以控制包括输入图片的低色度分辨率版本的样本值的码化图片的区域的反量化和/或控制包括高色度分辨率细节的样本值的码化图片的区域的反量化。更一般地,通用解码控制(720)可管理解码期间与解码模式有关的决定。
如果当前图片使用图片间预测被预测,则运动补偿器(755)接收运动数据(752)(例如MV数据、参考图片选择数据和合并模式索引值)。运动补偿器(755)将MV应用于来自解码图片缓冲器(770)的重构参考图片。运动补偿器(755)产生针对当前图片的间码化块的运动补偿预测。解码图片缓冲器(770)存储一个或多个之前重构的图片以用作参考图片。
包括输入图片的低色度分辨率版本的样本值的码化图片和包括输入图片的高色度分辨率细节的样本值的码化图片可以被组织到不同的子序列中以用于运动补偿。例如对于包括输入图片的低色度分辨率版本的样本值的码化图片,运动补偿在第一码化图片子序列内被执行。类似地,对于包括高色度分辨率细节的样本值的码化图片,运动补偿在不同的第二码化图片子序列内被执行。解码器(700)能够使用参考图片重排序和/或不同的参考图片索引集来管理不同的码化图片子序列中的每个子序列内的时间依赖性。
在解码器(700)内的单独路径中,图片内预测器(745)接收内预测数据(742),例如指示图片内预测是否使用空间预测的信息、以及(用于内空间预测的)预测模式方向。对于内空间预测,通过使用当前图片的重构(738)值,根据预测模式数据,图片内预测器(745)从当前图片的相邻的、之前重构的样本值空间预测当前图片的当前块的样本值。
内/间切换选择运动补偿预测或图片内预测的值用作给定块的预测(758)。例如,当遵循H.265/HEVC语法时,内/间切换可基于为图片的CU编码的语法元素被控制,其中该图片可包含内预测的CU和间预测的CU。当残留值已被编码/发送时,解码器(700)组合预测(758)与重构的残留值以产生视频信号的内容的重构(738)。当残留值未被编码/发送时,解码器(700)将预测(758)值用作重构(758)。
当残留值已被编码/发送时为了重构残留值,定标器/逆转换器(735)接收和处理量化的转换系数数据(732)。在定标器/逆转换器(735)中,定标器/反量化器对量化的转换系数执行反定标和反量化。逆频率转换器执行逆频率转换,产生重构的预测残留值或样本值的块。例如,逆频率转换器将逆块转换应用于频率转换系数,以产生样本值数据或预测残留数据。逆频率转换可以是逆DCT、其整数近似、或另一类型的逆频率转换(例如,逆离散正弦转换或其整数近似)。如果频率转换在编码期间被跳过,则逆频率转换也被跳过。在此情况中,定标器/反量化器可对预测残留数据(或样本值数据)的块执行反量化,产生重构的值。
对于图片内预测,重构(738)值可以被回馈给图片内预测器(745)。对于图片间预测,重构(738)至可以被进一步滤波。在合并器/滤波器(765)中,解码器(700)将不同图块的内容合并成图片的重构版本。解码器(700)根据滤波控制数据(762)和滤波自适应的规则选择性地执行去块滤波和SAO滤波,以自适应地平衡图片中跨边界的不连续。备选地或附加地,其它滤波(例如,去振铃滤波或ALF;未示出)可以被应用。对于一些类型的码化图片(例如,包括高色度分辨率细节的码化图片),滤波可以被自适应地禁用。根据解码器(700)的设置或编码的比特流数据内的语法元素,图块边界可以被选择性地滤波或完全不被滤波。编码图片缓冲器(770)缓存重构的当前图片用于后续运动补偿预测。
解码器(700)还可包括后处理滤波器。后处理滤波器(708)可包括去块滤波、去振铃滤波、自适应维纳滤波、膜晶粒再生滤波、SAO滤波或另一类滤波。然而“环内”滤波在运动补偿环路中在图片的重构样本值上被执行因此影响参考图片的样本值,在重构的采样值被输出以用于显示之前,后处理滤波器(708)在运动补偿环路外被应用于重构的采样值。
根据实施方式和期望的解压缩类型,解码器(700)的模块可以被添加、被省略、被拆分成多个模块、与其它模块组合、和/或被类似的模块替换。在替代实施方式中,具有不同模块和/其它配置的模块的解码器执行一个或多个所描述的技术。解码器的具体实施方式通常使用解码器(700)的变型或补充版本。所示的解码器(700)内的模块之间显示的关系指示解码器中的一般信息流;为了简单起见未示出其它关系。
VIII.在输入/输出图片格式与码化图片格式之间重排样本值
视频源(例如摄像机或屏幕捕获模块)通常提供视频,该视频被转换为诸如YUV 4:4:4色度采样格式的格式。例如,一些视频源提供RGB格式的未压缩视频图片,图片在编码之前被转换为视频编码器期望的YUV格式。YUV格式包括亮度(或Y)分量以及多个色度(或U和V)分量,其中Y分量具有表示近似亮度值的样本值,U和V分量具有表示色差值的样本值。色差值的精确定义(以及YUV颜色空间与另一颜色空间例如RGB的转换操作)依赖于实施方式。一般地,如本文中所使用的,术语YUV指示具有亮度分量以及一个或多个色度分量的任何颜色空间,包括Y’UV、YIQ、Y’IQ和YDbDr及变型(例如YCbCr和YCoCg)。所使用的分量信号测量可通过应用非线性传递特性函数(一般称为“伽玛预补偿”且常使用角分符号表示,但是为了印刷方便,角分符号常被省略)进行调节。或者,分量信号测量可在与光振幅具有线性关系的域中进行。亮度和色度分量信号可与人类视觉系统的亮度和颜色感知对齐,或者亮度和色度分量信号可在某种程度上偏离该测量(例如,在YCoCg变型中,简化颜色分量值的计算的公式被应用)。如本文中描述的YUV格式的示例包括在已知为ITU-R BT.601、ITU-RBT.7.9和ITU-R BT.2020的国际标准中描述的格式。色度样本类型的示例在H.264/AVC标准的图E-1中示出。4:4:4格式可以是YUV 4:4:4格式或另一颜色空间格式(例如RGB或GBR)。
许多市场上可买到的视频编码器和解码器仅支持YUV 4:2:0色度采样格式。YUV4:2:0是与YUV 4:4:4格式相比对色度信息子采样的格式,其保留了全分辨率色度信息(即,色度信息以与亮度信息相同的分辨率被表示)。然而,存在一些使用情况,YUV 4:2:0格式的视频的视觉缺陷更容易被观看者感知。例如,对于计算机屏幕文本内容(尤其使用ClearType技术渲染的文本)、具有非自然硬边边界的动画视频内容、颜色文本、或更一般的视频内容的某些特征(例如滚动标题、硬边图形、或具有集中在色度信道中的信息的视频)的编码/解码,4:4:4格式可以优于4:2:0格式。
这部分描述了在具有第一较高色度采样率的输入图片格式与具有第二较低色度采样率的码化图片格式之间重排样本值的各种方法。码化图片格式的图片然后使用适于码化图片格式的编码器被编码。在(使用适于码化图片格式的解码器)解码之后,码化图片格式可以被输出用于进一步处理和显示。或者,在该解码之后,具有较高色度采样率的输出图片格式的图片可通过将来自码化图片格式的图片的样本值重排为输出图片格式的输出图片,而被恢复以用于输出和显示。备选地,代替使用单个码化图片格式,不同的码化图片可具有不同的码化图片格式,其中该不同的码化图片格式包括具有比输入图片格式低的色度样本率的至少一个码化图片格式。
作为一个具体示例,当编码/解码使用YUV 4:2:0格式时,本文中描述的各种方法可用于保留YUV 4:4:4格式的帧的色度信息。在这些方法中,YUV 4:4:4帧被封装为两个YUV4:2:0帧。典型的4:4:4帧在每4个像素位置包含12个样本值,而4:2:0帧在每4个像素位置仅包含6个样本值。所以,4:4:4帧中包含的所有样本值可以被封装为两个4:2:0帧。
图8a示出了重排单个YUV 4:4:4图片(801)的样本值的一般方法(800)。单个YUV4:4:4图片(801)包括作为YUV 4:4:4图片(801)的3个分量平面的Y444信道、U444信道和V444模块的中的样本值。每个分量平面具有宽W和高H的分辨率。为了方便描述本文中使用的一些示例,W和H可以被4整除,但并不意味这是对方法的限制。
单个YUV 4:4:4图片(801)的样本值被拆分成YUV 4:2:0格式的两个图片,该YUV4:2:0格式的两个图片被标记为YUV 4:2:0图片(802)和UUV 4:2:0图片(803)。YUV 4:2:0图片(802)包括Y420信道、U420信道和V420信道中的样本值。Y420信道包括来自单个YUV 4:4:4图片(801)的Y444信道的样本值。U420信道包括来自单个YUV 4:4:4图片(801)的U444信道的一些样本值,V420信道包括来自单个YUV 4:4:4图片(801)的V444信道的一些样本值。UUV 4:2:0图片(803)包括来自单个YUV 4:4:4图片(801)的U444信道和V444信道的其它色度样本值,该色度样本值被安排在UUV 4:2:0图片(803)的Y420信道、U420信道和V420信道中。
参考图8b-8e描述重排单个YUV 4:4:4图片(801)的色度样本值的示例方法。在示例方法中,将单个YUV 4:4:4图片(801)的样本值重排成YUV 4:2:0图片(802)和UUV 4:2:0图片(803),并同时维持YUV 4:4:4图片(801)的色度信息的几何对应性。在Y分量、U分量和V分量之间具有良好几何对应性的YUV 4:2:0格式的图片能够被更好地压缩,因为它们符合合适于YUV 4:2:0格式的编码图片的典型编码器所期望的模型。而且,在示例方法中,尽管色度样本值的分辨率较低,YUV 4:2:0图片(802)表示由YUV 4:4:4图片(801)表示的完整场景。不能够或选择不反向重排样本值的解码器能够完成表示场景的YUV 4:2:0图片(802)的重构版本并将其直接馈送给显示器。
图8b示出了重排单个YUV 4:4:4图片(801)的样本值的第一示例(810)。在此方法(810)中,将YUV 4:4:4图片(801)的样本值封装成YUV 4:2:0格式的两个图片(812、813)。YUV 4:2:0图片(812)提供了YUV 4:2:0格式的主视(由YUV 4:4:4图片(801)表示的完整场景的较低色度分辨率版本)。UUV 4:2:0图片(813)提供YUV 4:2:0格式的较高色度分辨率细节。
在图8b中,区域A1......A6是YUV 4:2:0格式的对应图片(812、813)内的不同区域。YUV 4:4:4图片(801)的Y444信道的样本值被指派给YUV 4:2:0图片(812)中的区域A1。YUV 4:4:4图片(801)的U444信道的偶数行的偶数列的样本值被指派给YUV 4:2:0图片(812)中的区域A2,YUV 4:4:4图片(801)的V444信道的偶数行的偶数列的样本值被指派给YUV 4:2:0图片(812)中的区域A3。可对被指派给区域A2和A3的样本值进行滤波以减轻伪像(例如,混叠伪像)。对于与用于滤波的选项有关的附加细节,参见XII部分;也参见公开号为2014/0092998 A1和2014/0112394 A1的美国专利申请。
对于UUV 4:2:0图片(813),来自YUV 4:4:4图片(801)的U444信道和V444信道的奇数列的样本值被指派给UUV 4:2:0图片(813)中的区域A4。U个样本值的列和V个样本值的列可逐列交替,例如U444列1、V444列1、U444列3、V444列3等等。YUV 4:4:4图片(801)的U444信道的奇数行的偶数列的样本值被指派给UUV 4:2:0图片(813)中的区域A5,YUV 4:4:4图片(801)的V444信道的奇数行的偶数列的样本值被指派给UUV 4:2:0图片(813)中的区域A6。图8b中所示的方法对实施方式(例如,使用NV12格式的实施方式,其将U样本值和V样本值封装在一起)而言是“硬件友好的”。
因此,对于图8b中所示的示例方法:
·对于区域A1,在[0,W-1]×[0,H-1]的(x,y)范围中,
·对于区域A2,在的(x,y)范围中,
·对于区域A3,在的(x,y)范围中,
·对于区域A4,在的(x,y)范围中,并且在的(x,y)范围中,
·对于区域A5,在的(x,y)范围中,
·对于区域A6,在的(x,y)范围中,
图8c示出了将单个YUV 4:4:4图片(801)的样本值重排为YUV 4:2:0格式的两个图片的第二示例(820)。YUV 4:2:0图片(822)提供YUV 4:2:0格式的主视图(由YUV 4:4:4图片(801)表示的完整场景的较低色度分辨率版本),并且UUV 4:2:0图片(823)提供YUV 4:2:0格式的较高色度分辨率细节。
在图8c中,区域B1......B6是YUV 4:2:0格式的对应图片(822、823)内的不同区域。对于区域B1......B3,按照图8b中所示的第一示例方法指派样本值。对于UUV 4:2:0图片(823),来自YUV 4:4:4图片(801)的U444信道和V444信道的奇数行的样本值被指派给UUV4:2:0图片(823)中的区域B4。U样本值的行和V样本值的行可逐行交替,例如U444行1、V444行1、U444行3、V444行3等等。YUV 4:4:4图片(801)的U444信道的偶数行的奇数列的样本值被指派给UUV 4:2:0图片(823)的区域B5,YUV 4:4:4图片(801)的V444信道的偶数行的奇数列的样本值被指派给UUV 4:2:0图片(823)的区域B6。
因此,对于图8c中所示的示例方法:
·对于区域B1,在[0,W-1]×[0,H-1]的(x,y)范围中,
·对于区域B2,在的(x,y)范围中,
·对于区域B3,在的(x,y)范围中,
·对于区域B4,在的(x,y)范围中,并且在的(x,y)范围中,
·对于区域B5,在的(x,y)范围中,
·对于区域B6,在的(x,y)范围中,
图8d示出了将单个YUV 4:4:4图片(801)的样本值重排为YUV 4:2:0格式的两个图片的第三示例(830)。YUV 4:2:0图片(832)提供YUV 4:2:0格式的主视图(由YUV 4:4:4图片(801)表示的完整场景的较低色度分辨率版本),并且UUV 4:2:0图片(833)提供YUV 4:2:0格式的较高色度分辨率细节。
在图8d中,区域C1......C9是YUV 4:2:0格式的对应图片(832,833)内的不同区域。对于区域C1......C3,按照图8b中所示的第一示例方法指派样本值。对于UUV 4:2:0图片(833),如下所示,来自YUV 4:4:4图片(801)的U444信道和V444信道的样本值被指派给UUV4:2:0图片(833)中的区域C4......C9。
·对于区域C1,在[0,W-1]×[0,H-1]的(x,y)范围中,
·对于区域C2,在的(x,y)范围中,
·对于区域C3,在的(x,y)范围中,
·对于区域C4,在的(x,y)范围中,
·对于区域C5,在的(x,y)范围中,
·对于区域C6,在的(x,y)范围中,
·对于区域C7,在的(x,y)范围中,
·对于区域C8,在的(x,y)范围中,
·对于区域C9,在的(x,y)范围中,
可代替地以不同的方式将YUV 4:4:4图片(801)的Y444信道、U444信道和V444信道中的样本值指派给区域C1......C9。例如,将YUV 4:4:4图片(801)的U444信道和V444信道的偶数列的样本值指派给区域C4和C5,将YUV 4:4:4图片(801)的U444信道和V444信道的奇数列的样本值分布到区域C2、C3和C6......C9。
图8e示出了将单个YUV 4:4:4图片(801)的样本值重排为YUV 4:2:0格式的两个图片的第四示例(840)。YUV 4:2:0图片(842)提供YUV 4:2:0格式的主视图(由YUV 4:4:4图片(801)表示的完整场景的较低色度分辨率版本),并且UUV 4:2:0图片(843)提供YUV 4:2:0格式的较高色度分辨率细节。
在图8e中,区域D1......D9是YUV 4:2:0格式的对应图片(842,843)内的不同区域。对于区域D1......D3,如同图8b所示的第一示例方法指派样本值。对于UUV 4:2:0图片(843),如下将来自YUV 4:4:4图片(801)的U444信道和V444信道的样本值指派给UUV 4:2:0图片(843)中的区域D4......D9。
·对于区域D1,在[0,W-1]×[0,H-1]的(x,y)范围中,
·对于区域D2,在的(x,y)范围中,
·对于区域D3,在的(x,y)范围中,
·对于区域D4,在的(x,y)范围中,
·对于区域D5,在的(x,y)范围中,
·对于区域D6,在的(x,y)范围中,
·对于区域D7,在的(x,y)范围中,
·对于区域D8,在的(x,y)范围中,
·对于区域D9,在的(x,y)范围中,
可代替地以不同的方式将YUV 4:4:4图片(801)的Y444信道、U444信道和V444信道中的样本值指派给区域D1......D9。例如,将YUV 4:4:4图片(801)的U444信道和V444信道的偶数行的样本值指派给区域D4和D5,将YUV 4:4:4图片(801)的U444信道和V444信道的奇数行的样本值分布到区域D2、D3和D6......D9之间。
备选地,可以按照某种其它方式将单个YUV 4:4:4图片(801)的样本值重排为YUV4:2:0图片和UUV 4:2:0图片。
将码化图片格式(例如,YUV 4:2:0格式)的码化图片的样本值重排为输出图片格式(例如,YUV 4:4:4格式)的输出图片的过程能够简单地对参考图8a-8e所描述的方法之一进行镜像。将被指派给YUV 4:2:0格式的码化图片的区域的样本值指派回YUV 4:4:4格式的输出图片中的那些样本值的原始位置。在将输入图片格式的样本值重排为码化图片格式时所执行的滤波能够在将样本值重排回输出图片格式时被反转。对于附加细节,参见XII部分;也参见公开号为2014/0092998 A1和2014/0112394 A1的美国专利申请。
在之前的将来自YUV 4:4:4格式的图片的样本值重排为YUV 4:2:0格式的图片以用于编码和解码的方法中,YUV 4:2:0格式的图片的所有样本值被编码和解码。与仅对YUV4:2:0格式的低色度分辨率版本进行编码相比,当高色度分辨率细节复杂或因其它方式难以压缩时,该方法可显著提高编码视频的比特率,甚至在一些情况下使比特率加倍。尤其在编码质量低且运动显著的区域中,高色度分辨率细节可以以观看者不太可能注意到的方式改善质量。然而,在一些实施方式中,现有技术方法不能优雅地缩放质量和比特率而使得该方法不适于自适应流,并且不允许简单地丢弃高色度分辨率细节的码化图片。与仅对图片的低色度分辨率版本进行编码相比,现有技术方法还会显著增加编码和解码的计算复杂度。
IX.将低色度分辨率版本和高色度分辨率细节分离为不同的码化图片子序列
这部分给出了对图片的高色度分辨率细节进行编码和解码的领域中的第一组创新。特别地,这部分描述了对具有输入图片的低色度分辨率版本的样本值的码化图片进行编码和解码的方法,该输入图片位于与具有输入图片的高色度分辨率细节的样本值的码化图片分离的子序列中。在一些示例实施方式中,不同子序列(备选地称为子流)中的码化图片在单个码化图片序列(备选地称为码化图片流)中交替,这允许通过传统编解码工具使用根据用于这些编解码工具的给定标准或格式的相符语法进行有效的编码和解码。
A.低色度分辨率版本和高色度分辨率细节的不同的码化图片子序列的示例
对于输入图片格式的给定输入图片,视频编码工具将输入图片拆分成一个码化图片格式(或多个码化图片格式)的多个码化图片。例如,视频编码工具能够使用参考图8a-8e描述的方法中的任一个或使用另一方法将输入图片的样本值重排为两个码化图片。码化图片之一包括输入图片(例如,YUV 4:2:0图片)的低色度分辨率版本的样本值。另一码化图片包括输入图片(例如,YUV 4:2:0图片)的高色度分辨率细节的样本值。
视频编码工具将两个码化图片指派给给定序列的码化图片内的两个不同的码化图片子序列。一个码化图片子序列的包括具有输入图片的低色度分辨率版本的样本值的码化图片。另一子序列包括具有输入图片的高色度分辨率细节的样本值的码化图片。
图9示出了包括YUV 4:2:0图片子序列和UUV 4:2:0图片子序列的码化图片序列(900)。YUV 4:2:0图片子序列包括具有输入图片的低色度分辨率版本的样本值的YUV 4:2:0格式的码化图片(910、911......919)。UUV 4:2:0图片子序列包括具有输入图片的高色度分辨率细节的样本值的YUV 4:2:0格式的码化图片(920、921......929)。如图9所示,YUV4:2:0图片和UUV 4:2:0图片以交错,以在YUV 4:2:0图片与UUV 4:2:0图片之间交替。或者,YUV 4:2:0图片和UUV 4:2:0图片可根据一些其它样式被组织到单个序列中。
视频编码工具对一个码化图片格式(或多个码化图片格式)的码化图片进行编码。作为编码的一部分,视频编码工具管理运动补偿依赖性。具体地,在对具有输入图片的低色度分辨率版本的样本值的码化图片的块执行运动估计和/或运动补偿时,视频编码工具将可用的参考图片集限于具有其它输入图片的低色度分辨率版本的样本值的码化图片。类似地,在对具有输入图片的高色度分辨率细节的样本值的码化图片的块执行运动估计和/或运动补偿时,视频编码工具将可用的参考图片集限于具有其它输入图片的高色度分辨率细节的样本值的码化图片。
视频编码工具能够使用多个参考图片、参考图片重排序和/或长期参考图片来管理不同子序列的码化图片的运动补偿依赖性。例如,H.264标准和H.265标准包括支持多个参考图片、参考图片重排序和长期参考图片的编码工具。解码图片缓冲器可存储多个参考图片(例如,一个或多个YUV 4:2:0图片以及一个或多个UUV 4:2:0图片)。长期参考图片可以被缓冲存储在解码图片缓冲器任何周期以用作参考图片。视频编码工具可重排序参考图片以使得最常用的参考图片具有较小参考图片索引,这可更有效地对参考图片索引进行熵编码。而且,视频编码工具可针对一个码化图片子序列中的参考图片而使用一个参考图片索引集,并且为另一码化图片子序列中的参考图片使用不同的参考图片索引集。
为了说明,图10a示出了YUV 4:2:0图片子序列的码化图片之间的时间依赖性和UUV 4:2:0图片子序列的码化图片之间的时间依赖性的简单示例(1000)。码化图片序列(1005)包括YUV 4:2:0图片子序列(1010、1030)和UUV 4:2:0图片子序列(1020、1040)。第一YUV 4:2:0图片(1010)被标记为(例如,由参考图片索引0标引的)长期参考图片。第一UUV4:2:0图片(1020)也被标记为(例如,由参考图片索引1标引的)长期参考图片。第二YUV 4:2:0图片(1030)使用第一YUV 4:2:0图片(1010)作为参考图片(例如,将运动估计和补偿约束为使用参考图片索引0),但是不被允许使用第一UUV 4:2:0图片(1020)作为参考图片(甚至在第一UUV 4:2:0图片(1020)已被重构时)。第二UUV 4:2:0图片(1040)使用第一UUV 4:2:0图片(1020)作为参考图片(例如,将运动估计和补偿约束为使用参考图片索引1),但是不被允许使用第一YUV 4:2:0图片(1010)作为参考图片(甚至在第一YUV 4:2:0图片(1010)已被重构时)。长期参考图片的使用便于了单个序列中的两个子序列的构建。
图10b示出了YUV 4:2:0图片子序列的码化图片之间的时间依赖性和UUV 4:2:0图片子序列的码化图片之间的时间依赖性的更复杂的示例(1001)。再者,给定的YUV 4:2:0图片可仅使用YUV 4:2:0图片子序列中的另一码化图片作为参考图片,给定的UUV 4:2:0图片可仅使用UUV 4:2:0图片子序列中的另一码化图片作为参考图片。图10b示出了序列(1005)中跨多个中介码化图片的长期预测的示例。最后一个UUV 4:2:0图片(1090)使用被任何数量的YUV 4:2:0图片分离的第一UUV 4:2:0图片(1020)作为参考图片。最后一个UUV 4:2:0图片(1090)不被允许使用任一中介YUV 4:2:0图片作为参考图片。
如下一部分中所解释的,码化图片可以被从子序列丢弃。例如,对于具有高色度分辨率细节的样本值的码化图片,如果没有区域包括被编码的样本值,则码化图片被从其子序列丢弃。而且,两者中的任一子序列中的码化图片(或其区域)可以零运动而被跳过,从而码化图片(或区域)无编码数据被输出,并且码化图片(或区域)根据该子序列中的前一码化图片而被重复。
在相应的解码期间,视频解码工具对一个码化图片格式(或多个码化图片格式)的码化图片进行解码。当两者中的任一子序列中的码化图片(或区域)以零运动而被跳过,而使得码化图片(或区域)无编码数据被接收时,码化图片(或区域)可通过根据该子序列的前一码化图片重复被解码。作为解码的一部分,视频解码工具执行与编码器实施的运动补偿依赖性一致的运动补偿。具体地,在对具有输出图片的低色度分辨率版本的样本值的码化图片的块执行运动补偿时,可用的参考图片集被限于具有其它输出图片的低色度分辨率版本的样本值的码化图片。类似地,在对具有输出图片的高色度分辨率细节的样本值的码化图片的块执行运动补偿时,可用的参考图片集被限于具有其它输出图片的高色度分辨率细节的样本值的码化图片。
在视频解码工具中,用于不同码化图片子序列的运动补偿依赖性能够使用多个参考图片、参考图片重排序和/或长期参考图片而被管理。例如,H.264标准和H.265标准包括支持多个参考图片、参考图片重排序和长期参考图片的编码工具。
对于输出图片格式的给定输出图片,视频解码工具可组合单个码化图片格式(或多个码化图片格式)的多个码化图片。例如,视频解码工具可通过使参考图8a-8e描述的方法的任一个逆向进行或使用另一方法将两个码化图片的样本值重排为输出图片。码化图片之一包括输出图片(例如,YUV 4:2:0图片)的低色度分辨率版本的样本值。另一码化图片包括输出图片(例如,UUV 4:2:0图片)的高色度分辨率细节的样本值。如果两者中的任一码化图片(或其内的区域)以零运动而被跳过,则相同子序列中的前一码化图片(或同位置区域)可提供在构建输出图片时使用的(当前码化图片或其区域的)样本值。
B.用于对低色度分辨率版本和高色度分辨率细节的不同子序列进行编码/解码的技术
图11图示了用于对输入图片的低色度分辨率版本和高色度分辨率细节的不同子序列中的码化图片进行编码的一般技术(1100)。视频编码工具(例如参考图4描述的编码器系统(400)或另一编码工具)能够执行技术(1100)。
编码工具将根据输入图片格式组织的输入图片的样本值封装(1110)为分别根据第一和第二码化图片格式组织的第一和第二码化图片。第一和第二码化图片格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。一般地,输入图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率为4:4:4,第二色度采样率为4:2:0。第一码化图片包含输入图片的低色度分辨率版本的样本值。第二码化图片格式包含输入图片的高色度分辨率细节的样本值。例如,编码工具使用参考图8a-8e描述的方法的任一个、或另一方法将样本值封装为第一和第二码化图片。
编码工具将第一和第二码化图片作为码化图片序列中的分离码化图片进行编码(1120),由此产生编码数据。作为编码的一部分,第一码化图片作为该序列的第一子序列的一部分被编码,第二码化图片作为该序列的第二子序列的一部分被编码。第一子序列不同于第二子序列。为了运动补偿(以及运动估计(通过扩展)),第一子序列中的编码数据不被允许参考第二子序列中的任何码化图片,第二子序列中的码化图片不被允许参考第一子序列的任何码化图片。
例如,编码工具通过使用第一长期参考图片索引集管理第一子序列内的运动补偿依赖性,其中第一长期参考图片索引集标识第一子序列中的码化图片。类似地,编码工具通过使用第二长期参考图片索引集管理第二子序列内的运动补偿依赖性,其中第二长期参考图片索引集标识第二子序列中的码化图片。编码工具还可重排序参考图片使得第一子序列中的码化图片不参考第二子序列中的任何码化图片并且第二子序列中的码化图片不参考第一子序列中的任何码化图片。如III部分中所描述的,第一子序列的编码数据和第二子序列的编码数据可随后被比特流编码工具(例如,解复用器或路由器)分离。这允许比特流编辑工具仅将第一子序列的编码数据发送给播放设备(用于以低色度分辨率解码和播放)或者将两个子序列的编码数据发送给播放设备(用于以高色度分辨率潜在地解码和播放)。对于附加细节,参见III部分。
回到图11,编码工具输出(1130)编码数据,该编码数据包括第一和第二码化图片之一或两者的编码数据。在一些情况中,对于第一码化图片和/或第二码化图片,编码数据包括仅为码化图片一部分(例如,码化图片的一个或多个区域(如下所述)但非码化图片的所有区域)的编码数据。编码工具可为一个或多个其它输入图片的每个重复技术(1100)。在一些情况中,第二码化图片可以被丢弃(因而不被编码),从而第二码化图片无编码数据被输出。而且,第一码化图片或第二码化图片(或其区域)可以零运动而被跳过,从而码化图片(或区域)无编码数据被输出,码化图片(或区域)根据子序列中的前一码化图片而被重复。因此,当来自输入图片的第一和第二码化图片被编码时,编码工具可以不为第一码化图片产生编码数据,或为第一码化图片的一些区域、或第一码化图片的所有区域产生编码数据,并且编码工具可以不为第二码化图片产生编码,或为第二码化图片的一些区域、第二码化图片的所有区域产生编码数据。
图12图示了用于对输出图片的低色度分辨率版本和高色度分辨率细节的不同子序列中的码化图片进行解码的一般技术(1200)。视频解码工具(例如参考图5所述的解码器系统或另一解码工具)能够执行技术(1200)。
解码工具接收(1210)编码数据并对第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式化)的第一和第二码化图片进行解码(1220)。第一码化图片包含输出图片格式的输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。一般地,输出图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率是4:4:4,第二色度采样率是4:2:0。
解码工具将第一和第二码化图片作为码化图片序列中分离的码化图片进行解码(1220)。作为解码(1220)的一部分,第一码化图片作为该序列的第一子序列的一部分被解码,该第二码化图片作为该序列的第二子序列的一部分被解码。第一子序列不同于第二子序列。当两者中的任一子序列中的码化图片(或其区域)以零运动而被跳过,以使得码化图片(或区域)无编码数据被接收时,码化图片(或区域)可通过根据子序列中的前一码化图片重复被解码。为了运动补偿,第一子序列中的码化图片不参考第二子序列中的任何码化图片,第二子序列中的码化图片不参考第一子序列中的任何码化图片。
例如,第一子序列内的运动补偿依赖性通过使用第一长期参考图片索引集被管理,其中第一长期参考图片索引集标识第一子序列中的码化图片。类似地,第二子序列内的运动补偿依赖性通过使用第二长期参考图片索引集被管理,其中第二长期参考图片索引集标识第二子序列中的码化图片。参考图片还可以被重排序使得第一子序列中的码化图片不参考第二子序列中的任何码化图片并且第二子序列中的码化图片不参考第一子序列中的任何码化图片。
解码工具将第一和第二码化图片的样本值解封装(1230)为输出图片。例如,解码工具使参考图片8a-8e描述的任一方法或另一方法逆向进行以解封装来自第一和第二码化图片的样本值。在一些情况中,第一码化图片和/或第二码化图片的编码数据包括仅为码化图片一部分(例如,码化图片如下所述的一个或多个区域但非码化图片的所有区域)的编码数据,这影响解封装期间哪些样本值被重排。例如,例如,如果两者中的任一码化图片(或其区域)以零运动而被跳过,则相同子序列中的前一码化图片(或同位置区域)可提供在构建输出图片时使用的(当前码化图片或其区域的)样本值。
解码工具可以为一个或多个其它输出图片重复技术(1200)。在一些情况中,第二码化图片可以被丢弃(因此不被编码),使得第二码化图片无编码数据被接收或解码。而且,第一码化图片或第二码化图片(或其区域)可以以零运动而被跳过,从而码化图片(或区域)无编码数据被接收,并且代替地,码化图片(或区域)根据子序列中的前一码化图片而被重复。因此,当输出图片的第一和第二码化图片被解码时,解码工具可以不使用第一码化图片的编码数据,或使用第一码化图片的一些区域、或第一码化图片的所有区域的编码数据,并且解码工具可以不使用第二码化图片的编码数据,或使用第一码化图片的一些区域、或第一码化图片的所有区域的编码数据。
X.选择性地编码/解码高色度分辨率细节的区域
这部分给出了对图片的高色度分辨率细节进行编码和解码的领域中的第二组创新。特别地,这部分描述了对高色度分辨率细节的区域进行选择性编码/解码的方法,从而针对一些区域而非其它区域的高色度分辨率细节的样本值被编码/解码。高色度分辨率细节的样本值被编码的区域可变化,这便于了比特率和质量的自适应性。
A.低色度分辨率版本和高色度分辨率细节的码化图片的不同区域的示例
对于输入图片格式的给定输入图片,视频编码工具将输入图片划分成一个图片格式(或多个码化图片格式)的多个码化图片。例如,视频编码工具能够使用参考图8a-8e描述的方法中的任一个或使用另一方法将输入图片的样本值重排为两个码化图片。码化图片之一包括输入图片(例如,YUV 4:2:0图片)的低色度分辨率版本的样本值。另一码化图片包括输入图片(例如,UUV 4:2:0图片)的高色度分辨率细节的样本值。
视频编码工具将第一和/或第二码化图片拆分成区域(备选地称为子区域)。区域的尺寸依赖于实施方式。例如,区域尺寸是16x16的倍数(例如,16x16、32x32、或64x64)以便于使用用传统的编解码工具实施。备选地,区域具有一些其它尺寸。给定码化图片中的区域可具有相同的尺寸或不同的尺寸。
对于第一码化图片,视频编码工具决定输入图片的将被编码的低色度分辨率版本的样本值所在的区域(如果有)。对于第二码化图片,视频编码工具决定输入图片的将被编码的高色度分辨率细节的样本值所在的区域(如果有)。XI部分给出了决定待被编码的样本值所在区域的示例方法。对于给定的码化图片,视频编码工具可以不对码化图片的区域编码,或可对码化图片的一些区域、或所有区域编码。如下文所解释,当在区域中样本值不被码化时,该区域可依赖于上下文被跳过或丢弃。
对于码化图片,视频编码工具生成和输出数据,该数据标识码化图片的样本值被编码的区域。下面给出了这种区域数据的示例。区域数据可由视频编码工具熵编码且由视频解码工具熵解码。如参考图3-5所描述的,区域数据可作为元数据被发送。
在相应的解码期间,视频解码工具接收和处理区域数据,该区域数据标识码化图片的样本值已被编码的区域。视频解码工具对码化图片进行解码,包括至少对样本值已被编码的区域的编码数据进行解码。当码化图片(或其区域)以零运动被被跳过,以使得码化图片(或区域)无编码数据被接收时,码化图片(或区域)可通过根据前一码化图片重复被解码。对于给定的输出图片格式的输出图片,视频解码工具可组合一个码化图片格式的(或多个码化图片格式的)多个码化图片。例如,视频解码工具可通过使参考图8a-8e描述的方法中的任一个逆向进行或使用另一方法将(分别低色度分辨率版本和高色度分辨率细节的)两个码化图片的样本值重排为输出图片。如果两者中的任一码化图片(或其内的区域)以零运动而被跳过,则相同子序列中的前一码化图片(或同位置区域)可提供在构建输出图片时使用的(当前码化图片或其区域的)样本值。
为了说明,图13示出了对高色度分辨率细节的区域中的样本值进行选择性地编码和解码的简单示例(1300)。视频编码工具接收输入图片格式(例如,YUV 4:4:4格式)的输入图片(1310)的高色度分辨率版本。视频编码工具将输入图片(1310)的样本值重排为一个码化图片格式(例如,YUV 4:2:0格式)或多个码化图片格式的两个图片(1320、1330)。第一码化图片(1320)包括输入图片(1310)的低色度分辨率版本的样本值。第二码化图片(1330)包括输入图片(1310)的高色度分辨率细节的两个区域中的样本值。对于第二码化图片(1330)的其余部分,高色度分辨率细节丢失。
码化图片(1320、1330)由视频编码工具编码,通过网络传输,且由视频解码工具解码。视频解码工具还将来自重构的码化图片(1320、1330)的样本值组组合为输出图片格式(例如,YUV 4:4:4格式)的输出图片(1340)。输出图片(1340)包括低色度分辨率的区域,该区域并入了来自第一码化图片(1320)的样本值。对于该区域,高色度分辨率细节从第二码化图片(1330)丢失。输出图片(1340)还包括高色度分辨率的区域,该区域并入了来自第一码化图片(1320)的样本值和来自第二码化图片(1330)的样本值。
尽管图13示出了具有高色度分辨率细节的两个区域,但是在其它示例中,第二码化图片(1330)具有高色度分辨率细节的更多或更少区域。在不同的极端,第二码化图片(1330)的区域都不具有高色度分辨率细节(因此可以被丢弃)或者其所有区域都具有高色度分辨率细节。
图14示出了对输入图片的低色度分辨率的区域中的样本值和输入图片的高色度分辨率细节的区域中的样本值进行选择性编码的示例(1400)。输入图片格式(例如,YUV 4:4:4格式)的输入图片(1410、1420、1430、1440、1450)序列分别包括输入图片的高色度分辨率版本的样本值。视频编码工具将输入图片(1410、1420、1430、1440、1450)中的每个拆分成一个码化图片格式(例如,YUV 4:2:0格式)或多个码化图片格式的两个码化图片。对于每个输入图片,两个码化图片之一表示输入图片的低色度版本、或至少被选择的区域,另一码化图片表示输入图片的高色度分辨率细节、或至少被选择的区域。
对于各种码化图片,视频编码工具选择样本值被编码的区域能够针对输入图片的低色度分辨率版本和高色度分辨率细节独立地选择区域。例如,对于第一输入图片(1410),输入图片的低色度分辨率版本的所有区域被编码,但是高色度分辨率细节的区域不被编码。对于第二输入图片(1420),输入图片的低色度分辨率版本的所有区域被编码,高色度分辨率细节的两个不同区域被编码。对于第三输入图片(1430),输入图片的低色度分辨率版本的区域或高色度分辨率细节的区域都不被编码。对于第四输入图片(1440),输入图片的低色度分辨率版本的一个区域被编码(并且一个区域不被编码),但是高色度分辨率细节的区域不被编码。最后,对于第五输入图片(1450),输入图片的低色度分辨率版本的区域不被编码,但是高色度分辨率细节的一个区域被编码(并且一个区域不被编码)。因此,对于输入图片的低色度分辨率版本,能够不针对任何区域编码样本值、针对一些区域或所有区域编码样本值。分离地,对于输入图片的高色度分辨率细节,能够不针对任何区域编码样本值、针对一些区域或所有区域编码样本值。
因此,码化图片能够被从子序列丢弃。例如,对于第一输入图片(1410),无包括被编码的样本值的区域的具有高色度分辨率细节的样本值的码化图片被从其子序列丢弃。而且,两者中的任一子序列中的码化图片(或其区域)以零运动而被跳过,以使得码化图片(或区域)无编码数据被输出,并且码化图片(或区域)根据子序列中的前一码化图片而被重复。例如,对于第三输入图片(1430),具有输入图片的低色度分辨率版本的样本值的码化图片可以零运动而被跳过,使得码化图片无编码数据被输出,并且码化图片根据子序列中的前一码化图片而被重复。或者,对于第三输入图片(1430),具有高色度分辨率细节的样本值的码化图片的两个区域可以零运动被跳过,使得码化图片无编码数据被输出,并且两个区域根据两个区域被编码的子序列中的前一码化图片而被重复。
B.区域数据的示例
码化图片的区域数据指示样本值被编码的码化图片的区域。区域可在码化图片中被预定义分割(例如,具有预定义的尺寸和位置,例如H.264实施方式中的MB或H.265实施方式中的CTU)。备选地,区域的尺寸和/或位置可在区域数据中被规定。例如,对于一个或多个区域的每个,区域数据包括(a)规定区域的角的一个或多个参数以及规定区域宽度和高度的参数;(b)规定区域的多个角的参数;或者(c)规定区域中的一列宏块或编码单元的参数。
除了区域数据的定义区域的尺寸和位置的参数(如果有)以外,区域数据包括索引值映射,该映射指示样本值作为码化图片的一部分被编码的任何区域。例如,映射包括索引值/区域。映射能够指示第二码化图片的编码数据包括输入(或输出)图片的高色度分辨率细节的编码样本值的任何区域。当区域也针对第一码化图片被选择时,另一映射可指示第一码化图片的编码数据包括输入(或输出)图片的低色度分辨率版本的编码样本值的任何区域。当码化图片的区域中的样本值被编码时,码化图片的编码数据直接代表区域的样本值。另一方面,当在区域中样本值不被编码时,区域可根据上下文被跳过或丢弃。
对于码化图片的给定区域,索引值指示与区域有关的信息。图15和图16示出了索引值的示例。备选地,索引值指示其它信息。在任何情况中,编码工具或解码工具能够使用码化图片映射中的索引值确定作为码化图片的一部分而被编码的样本值所在的区域。
图15示出了可在对输入图片(或输出图片)的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码和解码时使用的示例区域数据(1500)。在编码期间,视频编码工具能够使用区域数据(1500)控制哪些区域具有编码的样本值。在相应的解码中,视频解码工具能够使用区域数据(1500)确定样本值已被编码的区域。在图15中,第一码化图片(1510)(标记为YUV 4:2:0图片)包括输入图片x的低色度分辨率版本。第二码化图片(1520)(标记为UUV 4:2:0图片)包括输入图片x的高色度分辨率细节。
码化图片(1510、1520)的每个被分割成1两个区域。对于第一码化图片(1510),第一索引值映射(1512)指示与同位置区域中的样本值被编码的最近一个前YUV 4:2:0图片的同位置区域相比样本值变化(“脏”)的区域。第一码化图片(1510)的区域0-4和8中的样本值是“脏”,但是区域5-7和9-11中的样本值“不脏”。对于第二码化图片(1520),另一索引值映射(1522)指示与同位置区域中的样本值被编码的最近一个前UUV 4:2:0图片的同位置区域相比样本值变化(“脏”)的区域。第二码化图片(1520)的区域1-8的样本值为“脏”,但是区域9-11中的样本值“不脏”。在映射(1512、1522)的每个中,对于给定的区域,索引值0x00(或一比特值0)指示区域“脏”,索引值0x01(或一比特的值1)指示区域“不脏”。
根据映射(1512、1522)中的索引值,视频编码工具和视频解码工具推断码化图片中样本值被编码的区域。例如,根据解释如图15所示定义的区域数据的一个方法,对于第一码化图片(1510),脏区域的样本值被编码,不脏区域的样本值不被编码。代替地,第一码化图片(1510)的不脏区域作为以零运动而被跳过的区域而被编码,其拷贝其前一YUV 4:2:0图片中的同位置区域。因此,总是存在对输入/输出图片的低色度分辨率版本的区域可用的一些(被编码或被拷贝(被跳过)的)表示,。对于第二码化图片(1520),脏区域的样本值被编码,不脏区域的样本值不被编码。代替地,第二码化图片(1520)的不脏区域作为以零运动而被跳过的区域而被编码(如果从同位置区域被编码后为发生改变,则从前一UUV 4:2:0图片中的同位置区域拷贝)或(以其他方式)被丢弃。因此,输入/输出图片的高色度分辨率细节的区域可直接以该区域的样本值被编码、被拷贝(被跳过)、或被丢弃。
根据解释如图15所示定义的区域数据的另一方法,第二码化图片(1520)的区域根据稍微不同的规则被编码或不被编码。具体地,对于第二码化图片,只有在第一码化图片(1510)的同位置区域不脏的情况下,脏区域的样本值被编码,否则第二码化图片(1520)的脏区域的样本值不被编码。如在第一方法中,第二码化图片(1520)的不脏区域作为以零运动而被跳过的区域被编码或被丢弃。因此,高色度分辨率细节的脏区域可在若干码化图片仍然为脏直到它最终被编码。该方法与XI.A.1部分中描述的决策规则一致。
图16示出了能够对在输入图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码和解码时使用的另一示例区域数据(1600)。第一码化图片(1610)(标记为YUV 4:2:0图片)包括输入图片x的低色度分辨率版本,第二码化图片(1620)(标记为UUV 4:2:0图片)包括输入图片x的高色度分辨率细节。
码化图片(1610、1620)的每个被分割成12个区域并具有相应的索引值映射(1612、1622)。区域的索引值是两比特的值,第一比特指示与同位置区域中的样本值被编码的最近一个前码化图片中的同位置区域相比区域中的样本值是否变化(“脏”),第二比特(至少针对不脏区域)指示区域中的样本值是否(即,在前一码化图片的同位置区域中)以高质量被编码。因此,值0x00(或两比特值00)指示之前未以高质量被编码的不脏区域,值0x01(或两比特值01)指示之前以高质量被编码的不脏区域。值0x02(或两比特值10)指示脏区域。根据索引值,视频编码工具和视频解码工具能够使用XI.A.3部分中描述的规则推断给定区域被编码还是不被编码。
映射中的索引值可由视频编码工具(例如,使用行程编码或上下文自适应算术编码)熵编码。在该情况中,视频解码工具执行相应的熵解码。例如,区域数据可作为H.264标准或H.265标准的新型SEI消息的一部分、作为容器结构的字段、作为传输协议消息的字段、或作为一些其它类型元数据被发送。
在图15和图16中,每个区域具有相同的尺寸。备选地,区域在码化图片内或在图片之间可具有不同的尺寸。
C.用于低色度分辨率版本和高色度分辨率细节的码化图片的所选区域进行编码/解码的技术
图17图示了用于对高色度分辨率细节的区域中的样本值进行选择性编码的一般技术(1700)。视频编码工具(例如参考图4描述的编码器系统(400)或另一编码工具)能够执行技术(1700)。
编码工具将根据输入图片格式组织的输入图片的样本值封装(1710)为根据第一和第二码化图片格式组织的第一和第二码化图片。第一和第二码化图片格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。一般地,输入图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率为4:4:4,第二色度采样率为4:2:0。第一码化图片包含输入图片的低色度分辨率版本的样本值。第二码化图片包含输入图片的高色度分辨率细节的样本值。例如,编码工具使用参考图8a-8e描述的方法的任一个或另一方法将样本值封装为第一和第二码化图片。
编码工具对第一和第二码化图片进行编码(1720),由此产生编码数据。作为编码的一部分,编码工具选择一个或多个区域,在该一个或多个区域中,输入图片的高色度分辨率细节的相应样本值作为第二码化图片的一部分而被编码。作为编码的一部分,编码工具还可选择一个或多个区域,在该一个多个区域中,输入图片的低色度分辨率版本的相应样本值作为第一码化图片的一部分而被编码。如IX部分中所描述的,第一和第二码化图片可作为不同码化图片子序列而被编码。
编码工具输出(1730)编码数据,该编码数据包括第一和第二码化图片之一或两者的编码数据。在一些情况中,第一码化图片和/或第二码化图片的编码数据包括仅针对码化图片一部分(例如,码化图片的一个或多个区域但非码化图片的所有区域)的编码数据。编码数据可作为一个比特流的一部分被输出。比特流的语法许可第一码化图片和/或第二码化图片缺少输入图片的至少一部分的编码样本值。
编码工具还输出(1740)区域数据,该区域数据标识输入图片的作为第二码化图片的一部分而被编码的高色度分辨率细节的相应样本值所在的(多个)区域。当编码工具还选择输入图片的作为第一码化图片的一部分而被编码的低色度分辨率版本的相应样本值所在(多个)区域时,区域数据还标识该区域。例如,区域数据如X.B部分描述地被格式化。备选地,区域数据以某种其它方式被格式化。
编码工具能够针对一个或多个其它输入图片重复技术(1700)。在一些情况中,第二码化图片可以被丢弃(因此不被编码),使得第二码化图片无编码数据被输出。而且,第一码化图片或第二码化图片(或其区域)能够以零运动而被跳过,使得码化图片(或区域)无编码数据被输出并且码化图片(或区域)根据子序列中的前一码化图片而被重复。因此,当来自输入图片的第一和第二码化图片被编码时,编码工具可以不产生第一码化图片的编码数据,或可产生第一码化图片的一些区域或第一码化图片的所有区域的编码数据,并且编码工具可以不产生第二码化图片的编码数据,或可产生第二码化图片的一些区域或第二码化图片的所有区域的编码数据。
图18图示了对高色度分辨率细节的区域中的样本值进行选择性解码的一般技术(1800)。视频解码工具(例如参考图5描述的解码器系统(500)或另一解码工具)能够执行技术(1800)。
解码工具接收(1810)编码数据并且对第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)的第一和第二码化图片进行解码(1820)。第一码化图片包含输出图片格式的输出图片的低色度版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。一般地,输出图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率为4:4:4,第二色度采样率为4:2:0。编码数据可作为一个比特流的一部分而被接收。比特流的语法许可第一码化图片和/或第二码化图片缺少输出图片的至少一部分的编码样本值。如IX部分中所描述的,第一和第二码化图片能够作为不同码化图片子序列的一部分而被解码。当码化图片(或其区域)以零运动而被跳过以使得码化图片(或区域)无编码数据被接收时,码化图片(或区域)可通过根据前一码化图片重复被解码。
解码工具还接收(1830)区域数据,该区域数据标识输出图片的作为第二码化图片的一部分被编码的高色度分辨率细节的相应样本值所在的一个或多个区域。在一些示例实施中,区域数据还标识输出图片的作为第一码化图片的一部分被编码的低色度分辨率版本的相应样本值所在的一个或多个区域。例如,区域数据如X.B部分描述地被格式化。备选地,区域数据以某种其它方式被格式化。
至少部分地基于区域数据,解码工具将第一和第二码化图片的样本值解封装(1840)为输出图片。例如,解码工具使参考图8a-8e描述的方法的任一个或另一方法逆向进行,以解封装来自第一和第二码化图片的样本值。在一些情况中,第二码化图片包括仅为码化图片一部分(例如,码化图片的一个或多个区域但非码化图片的所有区域)的样本值,这影响哪些样本值在解封装期间被重排。如果两者中的任一码化图片(或其内的区域)以零运动而被跳过,则相同子序列中的前一码化图片(或同位置区域)可提供在构建输出图片时使用的(当前码化图片或其区域)的样本值。
解码工具可针对一个或多个其它输出图片重复技术(1800)。在一些情况中,第二码化图片可以被丢弃(因此不被编码),使得第二码化图片无编码数据被接收或解码。而且,如在这部分中所解释的,第一码化图片或第二码化图片(或其区域)可以零运动而被跳过,使得码化图片(或区域)无编码数据被接收并且代替地码化图片(或区域)根据子序列中的前一码化图片而被重复。因此,当输出图片的第一和第二码化图片被解码时,解码工具能够不使用第一码化图片的编码数据,或能够使用第一码化图片的一些区域、或第一码化图片的所有区域的编码数据,并且解码工具能够不使用第二码化图片的编码数据,或能够使用第二码化图片的一些区域、或第二码化图片的所有区域的编码数据。
XI.用于选择性编码区域的决策规则
这部分给出了对图片的低色度分辨率版本和高色度分辨率细节的区域编码的领域的创新。特别地,这部分描述了在对高色度分辨率细节的区域进行选择性编码时使用的决策规则,从而针对一些区域而非其它区域对高色度分辨率细节的样本值进行编码。例如,根据一组决策规则,逐个区域选择性地对高色度分辨率细节进行编码。决策规则还可控制为图片的低色度分辨率版本选择编码的区域。以这种方式,对低分辨率色度采样格式的码化图片操作的可用编码器可有效地用于提供图片的低色度分辨率版本和高色度分辨率细节。
通过对高色度分辨率细节的哪些区域编码有关的逐个区域决定,在色度分辨率的相应增加可能明显改善质量时发生(因高色度分辨率细节的样本值的编码引起的)比特率的提高。例如,当运动繁重或编码质量低时,因为添加的色度分辨率细节不可能由观看者注意到,所以高色度分辨率细节的区域不被编码。另一方面,当区域静止且编码质量高时,由于添加的色度分辨率细节更可能明显地提高质量,所以色度分辨率细节的区域被编码。
除了明智地分配比特率以增加色度分辨率以外,如本文中描述的逐个区域决策可在编码和解码期间节省计算资源。对于高色度分辨率细节不可能明显改善质量的区域,对该细节编码或解码不消耗资源。
A.用于输入图片的低色度分辨率版本和高色度分辨率细节的区域选择的示例决策规则
图19示出了可在用于对输入图片的低色度分辨率版本和高色度分辨率细节进行选择性编码的示例决策规则中考虑的码化图片。在图19中,输入图片的样本值被重排为两个子序列的码化图片——YUV 4:2:0子序列的码化图片和UUV 4:2:0子序列的码化图片。在YUV 4:2:0子序列中,码化图片包括输入图片的低色度分辨率版本的样本值。在UUV 4:2:0子序列中,码化图片包括输入图片的高色度分辨率细节的样本值。
当前YUV 4:2:0图片(1920)是当前输入图片的低色度分辨率版本,当前UUV 4:2:0图片(1925)包括当前输入图片的高色度分辨率细节。前一YUV 4:2:0图片(1910)是前一输入图片的低色度分辨率版本。当前YUV 4:2:0图片(1920)包括区域(1922)。前一YUV 4:2:0图片(1910)是相应的同位置区域(1912)被编码的YUV 4:2:0子序列中的最近一个前码化图片。前一UUV 4:2:0图片(1935)包括前一输入图片的高色度分辨率细节。当前UUV 4:2:0图片(1925)还包括区域(1926)。前一UUV 4:2:0图片(1935)是相应的同位置区域(1936)被编码的UUV 4:2:0子序列中的最近一个前码化图片。前一YUV 4:2:0图片(1910)和前一UUV 4:2:0图片(1935)可包括来自相同输入图片的样本值,或它们可包括来自不同输入图片的样本值。而且,对于当前YUV 4:2:0图片(1920)的不同区域,前一YUV 4:2:0图片(1910)可以不同(例如,如果区域在不同的时间变化)。类似地,对于当前UUV 4:2:0图片(1925)的不同区域,前一YUV 4:2:0图片(1935)可以不同(例如,如果区域在不同的时间变化)。
YUV 4:2:0图片(1910、1920)和UUV 4:2:0图片(1925、1935)被分割成区域(也称为子区域)。区域的尺寸依赖于实施方式。例如,区域的尺寸是16x16的倍数(例如,16x16、32x32、或64x64)以便于使用传统编解码工具(例如,使用MB或CTU)来实施。备选地,区域具有某一其它尺寸。
图20a-20e示出了用于对输入图片的低色度分辨率版本和高色度分辨率细节的区域中的样本值进行选择性编码的示例决策规则(2000-2004)。在示例决策规则(2000-2004)中,在多个码化图片中以及在一些情况下在当前输入图片中评估区域的一个或多个属性。当在多个图片之间评估给定区域的属性时,每个图片中的同位置区域的属性被评估。也就是说,在每个图片中,图片的相应位置处且具有相应尺寸的区域的属性被评估。例如,如图19所示,YUV 4:2:0图片(1920、1910)中的同位置区域(1922、1912)的属性可以被评估。或者,作为另一示例,UUV 4:2:0图片(1925、1935)中的同位置区域(1926、1936)的属性可以被评估。或者,当做出关于当前UUV 4:2:0图片(1925)的区域(1926)的决策时,输入图片中的同位置区域的属性可以被评估。
图20a-20e示出了用于逐个区域对YUV 4:2:0图片和当前UUV 4:2:0图片中的区域做出决定的示例决策规则。备选地,决策规则被逐个区域应用于当前YUV 4:2:0图片中的区域,然后决策规则被逐个区域应用于当前UUV 4:2:0图片中的区域。
1.第一示例决策规则——检查变化
图20a示出了第一示例决策规则(2000)。在第一示例决策规则(2000)的若干阶段,编码工具检查给定区域是否静止(不随时间变化)。在针对输入图片的低色度分辨率版本的区域静止之后区域的高色度分辨率细节被编码。通过将色度分辨率的增加限于静止区域,编码工具可降低与对高色度分辨率细节进行编码相关联的比特率,还可提高整体编码/解码速度。
编码工具能够使用若干方法的任一个检查区域是否静止。例如,编码工具计算当前YUV 4:2:0图片(1920)的区域(1922)中的样本值与前一YUV 4:2:0图片(1910)的区域(1912)中的样本值之间的差,并且评估该差的量(例如,检查任一差是否为非零)。类似地,编码工具可计算当前UUV 4:2:0图片(1925)的区域(1926)中的样本值与前一UUV 4:2:0图片(1935)的区域(1936)中的样本值之间的差,并且评估该差的量(例如,检查任一差是否为非零)。或者,作为另一示例,编码工具比较当前YUV 4:2:0图片(1920)的区域(1922)中的一个或多个运动矢量(“MV”)与MV阈值(例如,检查任一MV值是否为非零)。类似地,编码工具比较当前UUV 4:2:0图片(1925)的区域(1926)中的一个或多个运动矢量(“MV”)与MV阈值(例如,检查任一MV值是否为非零)。
参考图20a,根据第一示例决策规则(2000),编码工具获得(2010)下一区域。编码工具检查(2020)在YUV 4:2:0子序列的码化图片中区域是否变化。如果是,编码工具对当前输入图片(即,当前YUV 4:2:0图片)的低色度分辨率版本的区域中的样本值进行编码(2021)。因此,只要在YUV 4:2:0子序列中区域非静止,则区域的低色度分辨率版本被编码。编码工具检查(2090)是否完成,如果未完成,则继续下一区域。
如果在YUV 4:2:0子序列中区域未变化,则编码工具检查(2060)在UUV 4:2:0子序列的码化图片中区域是否变化。如果是,则编码工具对当前输入图片(即,当前UUV 4:2:0图片)的高色度分辨率细节的区域中的样本值进行编码(2061)。因此,在YUV 4:2:0子序列中区域静止之后,区域的高色度分辨率细节被编码。然而,在高色度分辨率细节被编码之后,只要针对高色度分辨率细节的区域无变化,高色度分辨率细节不被重新编码。
在编码(2061)之后,或如果在UUV 4:2:0子序列中区域未变化,则编码工具检查(2090)是否完成。如果未完成,则编码工具通过获得(2010)下一区域继续。
返回参考图15中所示的区域数据(1500),YUV 4:2:0图片(1510)的映射(1512)指示对于YUV 4:2:0图片(1510)的每个区域,与同位置区域中的样本值被编码的最近一个前YUV 4:2:0图片的同位置区域相比区域变化(“脏”)还是未变化(“不脏”)。对于第一示例决策规则(2000),映射(1512)可表示当前YUV 4:2:0图片(1920)的对应区域变化还是未变化。类似地,UUV 4:2:0图片(1520)的映射(1522)指示对于UUV 4:2:0图片(1520)的每个区域,与同位置区域中的样本值被编码的最近一个UUV 4:2:0图片的同位置区域相比,区域变化(“脏”)还是未变化(“不脏”)。对于第一示例决策规则(2000),映射(1522)能够表示当前UUV4:2:0图片(1925)的对应区域变化还是未变化。
对于第一示例决策规则(2000),如参考图20a描述的,编码工具能够以与映射(1512、1522)中的索引值一致的方式对码化图片的区域进行编码。相应解码工具能够以与映射(1512、1522)中的索引值一致的方式对区域进行解码。
2.第二示例决策规则——检查YUV 4:2:0图片的质量
图20b示出了第二示例决策规则(2001)。除了检查区域是否随时间静止以外,在第二示例决策规则(2001)中,编码工具检查针对输入图片的低色度分辨率版本的编码质量是否高。在针对输入图片的低色度分辨率版本的区域静止且质量足够高之后,给定区域的高色度分辨率细节被编码。通过进一步将色度分辨率的增加限于具有高质量的静止区域,编码工具可进一步降低与对高色度分辨率细节进行编码相关联的比特率并且进一步提高整体编码/解码速度。
根据第二示例决策规则(2001),编码工具获得(2010)下一区域。编码工具检查(2020)在YUV 4:2:0子序列中区域是否变化(参见XI.A.1部分)。如果是,则编码工具以初始质量水平(例如,对于H.264编码或H.265编码,QP=30)对当前输入图片(即,当前YUV 4:2:0图片)的低色度分辨率版本的区域中的样本值进行编码(2022)。因此,只要在YUV 4:2:0子序列中区域非静止,区域的低色度分辨率版本以初始质量水平被编码。编码工具检查(2090)是否完成,如果未完成,则继续下一区域。
如果在码化图片的YUV 4:2:0子序列中的区域未变化,则编码工具检查(2030)在YUV 4:2:0子序列中区域的编码质量是否高。例如,编码工具比较前一YUV 4:2:0图片中的区域的一个或多个QP值与QP阈值。QP阈值依赖于实施方式(例如,对于H.264编码或H.265编码,QP阈值为16)。如果在YUV 4:2:0子序列中区域的编码质量不高,则编码工具以高质量水平(例如,对于H.264编码或H.265编码,QP=16)对当前输入图片(即,当前YUV 4:2:0图片)的低色度分辨率版本的区域中的样本值进行编码(2032)。因此,如果在YUV 4:2:0子序列中区域静止但未以高质量水平被编码,则编码工具提高当前输入图片的低色度分辨率版本的区域的编码质量。编码工具检查(2090)是否完成,如果未完成,则继续下一区域。
另一方面,如果YUV 4:2:0子序列的(静止)区域的编码质量高,则编码工具检查(2060)UUV 4:2:0子序列中区域是否变化(参见XI.A.1部分)。如果是,则编码工具对当前输入图片(即,当前UUV 4:2:0图片)的高色度分辨率细节的区域中的样本值进行编码(2061)。因此,在YUV 4:2:0子序列中区域静止且以高质量水平被编码之后,区域的高色度分辨率细节被编码。然而,在高色度分辨率细节被编码之后,只要对高色度分辨率细节而言区域未变化,高色度分辨率细节不被重新编码。
在编码(2061)之后,或者如果在UUV 4:2:0子序列中区域未变化,则编码工具检查(2090)是否完成。如果未完成,则编码工具通过获得(2010)下一区域继续。
根据第二示例决策规则(2001),当前输入图片(即,当前UUV 4:2:0图片)的高色度分辨率细节的区域中的样本值以默认的固定质量水平被编码。例如,默认的质量水平是高质量水平。备选地,如以下针对示例决策规则(2002)所描述的,高色度分辨率细节的区域中的样本值能够以不同的质量分级而被编码。
根据第二示例决策规则(2001),输入图片的低色度分辨率版本的区域中的样本值以两个不同的质量分级——初始质量和高质量被编码。备选地,输入图片的低色度分辨率版本的区域中的样本值能够以更多质量分级而被编码,附加的检查点逐渐提高质量直到达到全质量,此时区域的高色度分辨率细节被编码。
3.第三示例决策规则——检查YUV 4:2:0图片和UUV 4:2:0图片的质量
图20c示出了第三示例决策规则(2002)。第三示例决策规则(2002)通过在对高色度分辨率细节的区域中的样本值进行编码时支持质量分级,以扩展第二示例决策规则(2001)。
第三示例决策规则(2002)的初始阶段(2010、2020、2022、2030、2032)如同第二示例决策规则(2001)操作。如果YUV 4:2:0子序列的(静止)区域的编码质量高,则编码工具检查(2060)在UUV 4:2:0子序列中区域是否变化(参见XI.A.1部分)。如果是,则编码工具以初始质量水平(例如,对H.264编码或H.265编码,QP=30)对当前输入图片(即,当前UUV 4:2:0图片)的高色度分辨率细节的区域中的样本值进行编码(2062)。因此,在YUV 4:2:0子序列中区域静止且以高质量水平被编码之后,区域的高色度分辨率首先以初始质量水平被编码。
如果在UUV 4:2:0子序列中区域未变化,则编码工具检查(2070)在UUV 4:2:0子序列中区域的编码质量是否高。例如,编码工具比较前一UUV 4:2:0图片中的区域的一个或多个QP值与QP阈值。QP阈值依赖于实施方式(例如,对于H.264编码或H.265编码,QP为16)。如果在UUV 4:2:0子序列中区域的编码质量不高,则编码工具以高质量水平(例如,对于H.264编码或H.265编码,QP=16)对高色度分辨率细节的区域中的样本值进行编码(2072)。因此,如果在UUV 4:2:0子序列中区域静止但未以高质量水平被编码,则编码工具提高高色度分辨率细节的区域的编码质量。编码工具检查(2090)是否完成,如果未完成,则继续下一区域。
另一方面,如果UUV 4:2:0子序列的(静止)区域的编码质量高,则编码工具跳过对区域的进一步编码。在高色度分辨率细节以高质量水平被编码之后,只要针对高色度分辨率细节的区域未变化,高色度分辨率细节不被重新编码。编码工具检查(2090)是否完成。如果未完成,编码工具通过获得(2010)下一区域继续。
例如,在第三示例决策规则(2002)中实施的进展中,在YUV 4:2:0图片中的变化区域首先以初始质量水平被编码。如果区域变为静止,则在YUV 4:2:0子序列中区域的编码质量提高。在YUV 4:2:0图片中静止区域以高质量水平被编码之后,在UUV 4:2:0图片中区域以初始质量水平被编码。只要区域静止,在UUV 4:2:0子序列中区域的编码质量进一步提高,直到在UUV 4:2:0子序列中到达高质量水平。
根据第三示例决策规则(2002),高色度分辨率细节的区域中的样本值可以两个不同的质量分级——初始质量和高质量被编码。备选地,高色度分辨率细节的区域中的样本值可以更多的质量分级被编码,附加的检查点逐渐提高质量直到达到全质量。
返回参考图16中所示的区域数据(1600),YUV 4:2:0图片(1610)的映射(1612)针对YUV 4:2:0图片(1610)的每个区域,指示(1)与同位置区域中的样本值被编码的最近一个前YUV 4:2:0图片的同位置区域相比,区域变化(“脏”)还是未变化(“不脏”)、以及(2)区域是否以高质量水平被编码。对于第三示例决策规则(2002),映射(1612)可表示当前YUV 4:2:0图片(1920)的对应区域变化还是未变化、以及对应区域是否以高质量水平被编码。类似地,UUV 4:2:0图片(1620)的映射(1622)为UUV 4:2:0图片(1620)的每个区域指示(1)与同位置区域中的样本值被编码的最近一个前UUV 4:2:0图片的同位置区域相比,区域变化(“脏”)还是未变化(“不脏”)、以及(2)区域是否以高质量水平被编码。对于第三示例决策规则(2002),映射(1622)可表示当前UUV 4:2:0图片(1925)的对应区域变化还是未变化、以及对应区域是否以高质量水平被编码。
对于第三示例决策规则(2002),如参考图20c所描述的,编码工具可以与对映射(1612、1622)中的索引值一致的方式对码化图片的区域进行编码。相应的解码工具可以与映射(1612、1622)中的索引值一致的方式对区域进行解码。例如,如果在YUV 4:2:0子序列中区域静止、在YUV 4:2:0子序列中以高质量被编码并在UUV 4:2:0子序列中非静止,则当前UUV 4:2:0图片的区域的样本值可以初始质量被编码/解码。
4.第四示例决策规则——检查内容分类
图20d示出了第四示例决策规则(2003)。第四示例决策规则(2003)还通过检查区域的内容分类来扩展第一示例决策规则(2000)。
第四示例决策规则(2003)的一些阶段(2010、2020、2021、2060、2061)如同第一示例决策规则(2000)操作。然而,新条件被检查以甚至使得对高色度分辨率细节进行编码具有更多选择性。通过进一步将色度分辨率的增加限于具有某些类型内容的区域,编码工具可进一步降低与对高色度分辨率细节进行编码相关联的比特率并进一步提高整体编码/解码速度。
在第四示例决策规则(2003)中,如果在YUV 4:2:0子序列中区域未变化,则编码工具检查(2040)区域是否包括文本内容或高色度内容。如果是,则编码工具进入下一阶段(2060)。否则,编码工具检查(2090)是否完成,如果未完成,则通过获得(2010)下一阶段继续。因此,只有区域的分类指示区域包括文本内容或其它高色度内容,区域的高色度分辨率细节被编码。
为了获取区域是否包括文本内容,编码工具可将任何可用的文本方法用于文本分类。例如,编码工具使用将区域分类为包括文本内容还是图像内容的方法。利用较高色度分辨率对文本内容(而非图像内容)的高色度分辨率细节进行编码通常有利于文本内容,但针对图像内容可能没那么容易被观察。
为了获取区域是否包括高色度内容,编码工具可评估色度样本值与重要阈值相比(例如,比较色度样本值的平均绝对值与阈值)是否显著。以这种方式,编码工具可考虑区域中颜色的混合。如果区域主要包括黑色和白色值,则色度样本值具有低量值。另一方面,如果区域主要包括红色和绿色值,则色度样本值通常具有较高量值。对高色度内容(而非低色度内容)的高色度分辨率细节进行编码利用较高色度分辨率通常有利于高色度内容,但是对于低色度内容可能没那么由帮助。
在图20d中,第四示例决策规则(2003)扩展第一示例决策规则(2000)。备选地,如这部分所描述的,第二示例决策规则(2001)或第三示例决策规则(2002)被扩展以检查区域的内容分类。
5.第五示例决策规则——检查稳定性周期
图20e示出了第五示例决策规则(2004)。第五示例决策规则(2004)还通过检查在高色度分辨率细节被编码之前区域在阈值时间周期(例如,图片技术)静止来扩展第一示例决策规则(2000)。
第五示例决策规则(2004)的一些阶段(2010、2020、2021、2060、2061)如同第一示例决策规则(2000)操作。然而,新条件被检查以使得对高色度分辨率细节进行编码甚至更具有选择性。通过进一步将色度分辨率的增加限于在图片阈值计数内静止的区域,编码工具可进一步降低与对高色度分辨率细节进行编码相关联的比特率并进一步提高整体编码/解码速度。
在第五示例决策规则(2004)中,如果在YUV 4:2:0子序列中区域未变化,则编码工具检查(2050)对至少n个YUV 4:2:0图片而言区域是否未变化,其中n指示图片阈值计数。如果是,编码工具进入下一阶段(2060)。否则,编码工具检查(2090)是否完成,如果未完成,则通过获得(2010)下一区域继续。因此,只有在YUV 4:2:0子序列中区域在图片阈值计数内静止,区域的高色度分辨率细节被编码。
图片阈值计数依赖于实施方式。例如,图片阈值计数是1个图片、3个图片、5个图片、10个图片、或某一其它数量的图片。等待阈值计数满足在对输入图片的低色度分辨率版本的样本值进行编码与对高色度分辨率细节的样本值进行编码之间强加了时滞。时滞可消除对可用比特率的需求并消除编码和解码期间对计算资源的需求。而且,在区域静止阈值时间段之后对高色度分辨率细节进行编码利用较高色度分辨率通常对静止内容有利,但对移动内容可能不太容易被观察。
在图20e中,第五示例决策规则(2004)扩展了第一示例决策规则(2000)。备选地,如这部分所描述的,第二示例决策规则(2001)或第三示例决策规则(2002)被扩展以检查在高色度分辨率细节被编码之前区域静止阈值时间周期(例如,图片计数)。而且,编码工具能够检查内容分类(如第四示例决策规则(2003)中所描述的)结合以检查新条件(如这部分所描述的)。
B.区域选择的示例技术
图21图示了用于在对高色度分辨率细节的区域中的样本值进行选择性编码时应用决策规则的一般技术(2100)。视频编码工具(例如参考图4描述的编码器系统(400)或另一编码工具)能够执行技术(2100)。
编码工具将根据输入图片格式组织的输入图片的样本值封装(2110)成分别根据第一和第二码化图片格式组织的第一和第二码化图片。第一和第二码化图片格式可以是相同的码化图片格式或不同的码化图片格式(例如,不同的色度采样率)。一般地,输入图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率为4:4:4,第二色度采样率为4:2:0。第一码化图片包含输入图片的低色度分辨率版本的样本值。第二码化图片包含输入图片的高色度分辨率细节的样本值。例如,编码工具使用参考图8a-8e描述的方法的任一个、或另一方法将样本值封装成第一和第二码化图片。
编码工具对第一和第二码化图片进行编码(2120),由此产生编码数据。对于编码,对于一个或多个区域的每个,编码工具评估区域的一个或多个属性。例如,编码工具评估区域的变化程度、区域的编码数据的质量、和/或区域的内容分类。备选地,编码工具评估区域的其它和/或附加的属性。至少部分地基于评估结果,编码工具确定是否将输入图片的高色度分辨率细节的区域中的样本值作为第二码化图片的一部分进行编码。编码工具还可至少部分地基于评估结果,确定是否将输入图片的低色度分辨率版本的区域中的样本值作为第一码化图片的一部分进行编码。如IX部分所描述的,第一和第二码化图片可作为不同子序列的码化图片的一部分被编码。在极端情况中,第一和第二码化图片的每个作为单个区域被处理。编码工具输出(2130)编码数据,该编码数据包括第一和第二码化图片之一或两者的编码数据。
例如,对于区域的一个属性,编码工具评估第一和第二码化图片之一与区域被编码的最近一个前图片之间的区域的变化程度。为了评估区域的变化程度,编码工具可例如(a)计算码化图片的区域中的样本值与区域被编码的最近一个前图片(例如,YUV 4:2:0图片、或UUV 4:2:0图片)的区域中的样本值之间的差,并评估差的量值;和/或(b)比较(例如,YUV 4:2:0图片的)区域中的一个或多个MV值与MV阈值。备选地,以某种其它方式,编码工具能够评估区域的变化程度。
当它评估区域的变化程度时,编码工具能够比较针对低色度分辨率版本的区域未变化的图片计数与阈值计数。因此,编码器可确定区域是否在至少3个图片、5个图片、10个图片或某一其它数量图片内未变化。
作为另一示例,对于区域的另一属性,编码工具评估区域的编码数据的质量是否满足阈值质量水平。为了评估区域中的编码数据的质量,编码工具能够比较(例如,区域被编码的最近一个前图片的低色度分辨率版本的)区域中的一个或多个QP值与QP阈值。如果QP值为QP阈值或低于QP阈值,则区域的编码数据满足阈值质量水平。否则,区域的编码数据不满足阈值质量水平。备选地,以某种其它方式,编码工具能够评估区域的编码数据的质量是否满足阈值质量水平。
作为又一示例,对于区域的另一属性,编码工具对区域中的内容进行分类。例如,编码工具将区域中的内容分类为文本内容或非文本内容。或者,编码工具将区域中的内容分类为高色度内容(色度样本值与重要阈值相比重要)或低色度内容(色度样本值与重要阈值相比不重要)。备选地,以某种其它方式,编码工具能够对区域中的内容进行分类。
对于YUV 4:2:0子序列和/或UUV 4:2:0子序列,可组合考虑区域的各个属性。例如,编码工具应用如XI.A部分描述的决策规则集之一。
回到图21,编码工具可针对一个或多个其它输入图片的每个重复技术(2100)。在一些情况中,第二码化图片可以被丢弃(因此不被编码),从而第二码化图片无编码数据被输出。而且,第一码化图片或第二码化图片(或其区域)能够以零运动而被跳过,从而码化图片(或区域)无编码数据被输出,并且码化图片(或区域)根据子序列中的前一码化图片而被重复。因此,当来自输入图片的第一和第二码化图片被编码时,编码工具可以不针对第一码化图片产生编码数据,或可产生第一码化图片的一些区域、或第一码化图片的所有区域的编码数据,并且编码工具可以不针对第二码化图片产生编码数据,或可产生第二码化图片的一些区域、或第二码化图片的所有区域的编码数据。
XII.色度样本值的滤波
这部分给出了输出图片的高色度分辨率区域中或周围的滤波领域中的创新。例如,这部分描述了将恢复滤波器应用于输出图片的高色度分辨率区域,从而对之前在色度子采样期间执行的抗混叠滤波进行补偿但是跳过将恢复滤波器应用于输出图片的低色度分辨率区域的方法。这部分还描述了将去块滤波器应用于输出图片的色度样本值,从而可通过减轻低色度分辨率区域与高色度分辨率区域之间的边界处的可感知伪像以改善视觉质量的方法。最后,这部分描述了将去振铃滤波器应用于输出图片的色度样本值,从而可通过减轻因高色度分辨率细节的低质量编码引起的可感知伪像以改善视觉质量的方法。
A.抗混叠滤波器和相应的恢复滤波器
较高分辨率色度采样格式的帧的色度样本值的简单子采样能够在下采样的色度样本值中引入混叠伪像。为了减轻混叠,封装(参见VIII部分)能够包括对色度样本值进行滤波的操作。该滤波可以被称为抗混叠滤波。相应的解封装然后能够包括以补偿色度样本值的抗混叠滤波的恢复操作。这部分描述了抗混叠滤波和恢复滤波操作的示例。
当YUV 4:4:4图片被划分成YUV 4:2:0格式的两个图片(即,如VIII部分所描述的,被划分成YUV 4:2:0图片和UUV 4:2:0图片)时,抗混叠滤波能够仅在YUV 4:2:0图片用于显示时帮助改善质量。这可许可解码器忽略UUV 4:2:0图片,而并不需要冒由色度信息的简单子采样导致的混叠伪像的风险。没有抗混叠滤波(即,当YUV 4:2:0图片的色度样本值通过对来自YUV 4:4:4图片的色度样本值的直接子采样获得时),仅当YUV 4:2:0图片被用于生成输出时能够在一些内容上看到混叠伪像(例如,ClearType文本内容的厚度失真)。另一方面,当解码器组合UUV 4:2:0图片和YUV 4:2:0图片时,解码器可执行恢复滤波操作作为解封装的一部分以从(YUV 4:2:0图片的)滤波后的色度样本值和(UUV 4:2:0图片的)其它色度样本值恢复(因有损压缩引起的近似限制内的)YUV 4:4:4图片的原始色度样本值。
在一些示例实施中,抗混叠滤波操作和恢复滤波操作被限制,以使得它们仅影响作为YUV 4:2:0图片一部分的色度样本值。也就是说,滤波后的样本值是YUV 4:2:0图片的色度分量的一部分,作为UUV 4:2:0一部分的样本值不被滤波。
滤波操作的细节可依赖于色度样本位置类型(指示色度样本网格与亮度样本网格的对齐)。许多不同类型的滤波器可在色度子采样期间被使用。对于给定的色度样本位置类型,如果色度样本值在具体的方向(水平或垂直)与亮度样本值对齐,则奇抽头对称滤波器(例如,[1 2 1]/4、或[0.25 0.5 0.25]、连同取整运算)被用于在该方向对色度进行滤波。另一方面,如果色度样本值在具体方向(水平或垂直)不与亮度样本值对齐并且色度样本网格位置在具体方向(水平/垂直)位于亮度样本位置之间的中心,则偶抽头对称滤波器(通常[1 1]/2、或[0.5 0.5]、连同取整运算)被用于在该方向对色度进行滤波。后一情况的另一可能滤波器选择是[1 3 3 1]/8、或[0.125 0.375 0.375 0.125]、连同取整运算。在这部分后面给出的示例使用偶抽头对称滤波器,但是备选地能够使用奇抽头对称滤波器、或其它滤波器。
通常做出恢复滤波操作的选择以使得恢复滤波操作补偿抗混叠滤波操作。在一些情况中,恢复滤波使抗混叠滤波直接逆向,而如下面所解释的,在其它情况中恢复滤波仅使抗混叠滤波近似逆向。
在图22a和图22b中,在抗混叠滤波之后,色度样本值在水平或垂直方向不与亮度样本值对齐,因此滤波器[0.5 0.5]在水平和垂直方向被应用用于抗混叠滤波。图22a示出了应用在4个位置使用色度样本值的抗混叠滤波器和相应的恢复滤波器的过程流(2201)。图22b示出了应用在3个位置使用色度样本值的替代的抗混叠滤波器和相应的恢复滤波器的过程流(2202)。
图22a示出了来自YUV 4:4:4图片的U444信道的4个色度样本值U0、U1、U2和U3。4个色度样本值的位置为U0=U444(2x,2y)、U1=U444(2x+1,2y)、U2=U444(2x,2y+1)和U3=U444(2x+1,2y+1)。作为封装操作的一部分,抗混叠滤波器被应用以确定滤波后的像素值,该像素值将替换YUV 4:2:0图片中的U0。由于此滤波,在YUV 4:2:0图片中不直接由来自YUV 4:4:4图片的位置U444(2x,2y)处的样本值U0表示,代替地,在YUV 4:2:0图片中的相应位置指派滤波后的样本值UF。在UUV 4:2:0图片中仍然直接由YUV 4:4:4图片中分别在位置U444(2x+1,2y)、U444(2x,2y+1)和U444(2x+1,2y+1)处的色度样本值U1、U2和U3表示。
一般地,对于抗混叠滤波操作,可为不同的样本位置指派不同的权值。可如下生成YUV 4:4:4图片的位置U444(2x,2y)的滤波后的样本值UF:
UF444(2x,2y)=(α*U444(2x,2y)+β*U444(2x+1,2y)+γ*U444(2x,2y+1)+δ*U444(2x+1,2y+1)/(α+β+γ+δ),
其中对于YUV 4:4:4图片的宽度W和高度H,(x,y)的范围是其中α、β、γ和δ是依赖于实施方式的加权因子。如果加权因子都等于1,则滤波后的样本值UF简单地为UF444(2x,2y)=(U444(2x,2y)+U444(2x+1,2y)+U444(2x,2y+1)+U444(2x+1,2y+1))/4、U0、U1、U2和U3的平均值。否则,如果因子α、β、γ和δ中的任一个具有相同值,则某些乘法操作可以被排除。
在不存在量化误差、取整误差等时,原始样本值U0可优选地通过使在抗混叠滤波中执行的操作直接逆向而被重构。然而,在考虑量化误差时,使用α、β、γ和δ小于1的值可能是明智的以减少可感知的伪像。一般地,β、γ和δ应该在0.0至1.0的范围内,当量化步长越大时β、γ和δ应该越小。使用β、γ和δ的高值可能使因有损压缩引入的伪像恶化。α、β、γ和δ的值可以被设计为使用交叉相关分析进行有条件的优化。
回到图22a,色度样本值被分离为码化图片(例如,YUV 4:2:0图片和UUV 4:2:0图片),该码化图片被编码。在传输之后,该码化图片被解码(重构),然后被解封装为输出图片。重构的样本值UF’、U1’、U2’和U3’是YUV 4:4:4图片的U444信道的分别在位置U444(2x,2y)、U444(2x+1,2y)、U444(2x,2y+1)和U444(2x+1,2y+1)处的重构的色度样本值。(标记’指示在考虑量化、取整等的作用的情况下从(可能有损)编码的重构。)
作为解封装过程的一部分,可从重构的滤波后的样本值UF’和其它重构的色度样本值U1’、U2’和U3’恢复色度样本值U0的重构版本U0’。可如下恢复YUV 4:4:4图片的重构位置U444(2x,2y)的样本值U0’:
U'444(2x,2y)=((α+β+γ+δ)*UF’444(2x,2y)-β*U'444(2x+1,2y)-γ*U'444(2x,2y+1)-δ*U'444(2x+1,2y+1))/α,
其中(x,y)的范围是其中α、β、γ和δ是依赖于实施的加权因子。如果加权因子都等于1,则滤波后的样本值U0’简单地为U'444(2x,2y)=4*UF’444(2x,2y)-U'444(2x+1,2y)-U'444(2x,2y+1)-U'444(2x+1,2y+1)。
例如,对于抗混叠滤波,以权值α=β=γ=δ=1对位置(2x,2y)、(2x+1,2y)、(2x,2y+1)和(2x+1,2y+1)的色度样本值29、23、27和10进行滤波以产生色度样本值22.25,色度样本值22.25被取整为22。用滤波后的色度样本值22代替原始色度样本值29。在恢复滤波期间,将位置(2x,2y)的样本值重构为88-23-27-10=28。原始样本值(29)与重构样本值(28)之间的差显示了因抗混叠滤波引起的精度损失。
图22b示出了来自YUV 4:4:4图片的U444信道的4个色度样本值U0、U1、U2和U3。图22b中所示的过程流映射图22a中所示的过程流,但是不同的抗混叠滤波器和恢复滤波器被应用。在图22b中,抗混叠滤波器和恢复滤波器使用3个位置处的色度样本值,这可在边缘穿过色度样本值U0、U1和U2但不包括U3时提供更好的平滑质量。
作为封装操作的一部分,在图22b中所示的方法中,可如下生成YUV 4:4:4图片的位置U444(2x,2y)的滤波后的样本值UF:
UF444(2x,2y)=(α*U444(2x,2y)+β*U444(2x+1,2y)+γ*U444(2x,2y+1))/(α+β+γ),
其中对于YUV 4:4:4图片的宽度W和高度H,(x,y)的范围是其中α、β和γ是依赖于实施的加权因子。如果加权因子都等于1,则滤波后的样本值UF简单地为UF444(2x,2y)=(U444(2x,2y)+U444(2x+1,2y)+U444(2x,2y+1))/3、U0、U1和U2的平均值。参考图22a描述加权因子α、β和γ值的选择。
作为解封装过程的一部分,可从重构的滤波后的样本值UF’和其它重构的色度样本值U1’和U2’恢复色度样本值U0的重构版本U0’。可如下恢复YUV 4:4:4图片的位置U444(2x,2y)的重构样本值U0’:
U'444(2x,2y)=((α+β+γ)*UF’444(2x,2y)-β*U'444(2x+1,2y)-γ*U'444(2x,2y+1))/α,
其中(x,y)的范围是其中α、β、γ和δ是依赖于实施的加权因子。如果加权因子都等于1,则重构样本值U0’简单地为U'444(2x,2y)=3*UF’444(2x,2y)-U'444(2x+1,2y)-U'444(2x,2y+1)。
例如,对于抗混叠滤波,以权值α=β=γ=δ=1对位置(2x,2y)、(2x+1,2y)和(2x,2y+1)的色度样本值29、23和27进行滤波以产生色度样本值26.33,色度样本值26.33被取整为26。用滤波后的色度样本值26代替原始色度样本值29。在恢复滤波期间,将位置(2x,2y)的样本值重构为78-23-27=28。原始样本值(29)与重构样本值(28)之间的差显示了因用于抗混叠滤波的滤波引起的精度损失。然而,注意因为异常样本值U3的贡献被忽略,所以图22b的3位置滤波器滤波后的值(26)远比图22a的4位置滤波器滤波后的值(22)接近原始样本值(29)。
图22b所示的3位置滤波器能够以“边缘意识”方式被选择性地应用。如图22c所示,在封装操作期间,编码工具可检查指示应用3位置抗混叠滤波器还是4位置抗混叠滤波器的条件。例如,编码工具检查(2210)U1+U2=2*U3的绝对值是否大于阈值,其中阈值依赖于实施(例如,0、10或20)。如果是,编码工具应用(2230)如图22b所示的3位置抗混叠滤波器。否则,编码工具应用(2220)如图22a所示的4位置抗混叠滤波器。阈值的值可以实验法确定。一般地,具有越高的阈值使得3位置滤波器被应用的可能性越小。
如图22d所示,在相应的解封装操作期间,解码工具能够检查指示应用3位置恢复滤波器还是4位置恢复滤波器的条件。例如,解码工具检查(2240)U11+U2'-2*U3'的绝对值是否大于阈值,其中阈值依赖于实施方式(例如,0、10或20)。如果是,解码工具应用(2260)图22b所示的3位置恢复滤波器。否则,解码工具应用(2250)图22a所示的4位置恢复滤波器。通常,(基于原始值U1、U2和U3做出决定的)编码工具和(基于重构值U1’、U2’和U3’做出决定的)解码工具做出相同的决定,但是因原始值与重构值之间的差可为一些色度样本值做出不相同的决定。不相同的决定可稍微影响质量,但是不影响后续的解码。备选地,解码工具可发送指示应用哪些恢复滤波器的信息。
尽管图22a-22d示出了YUV 4:4:4图片的U444信道的色度样本值,但是来自YUV 4:4:4的V444信道的色度样本值能够以相同的方式被滤波和重构。
备选地,封装和解封装期间的滤波操作不限于YUV 4:4:4图片的作为YUV 4:2:0图片一部分的色度样本值。代替地,也针对YUV 4:4:4图片的作为UUV 4:2:0图片一部分的色度样本值执行滤波操作。该附加的滤波操作能够使用与用于YUV 4:4:4图片的作为YUV 4:2:0一部分的色度样本值的抗混叠和恢复滤波不同的操作。
在抗混叠滤波操作和恢复滤波操作的前述示例中,在抗混叠滤波期间使用平均滤波并且在恢复期间使用相应的滤波。备选地,抗混叠滤波操作和恢复滤波操作可实施转换/逆转换对。例如,转换/逆转换对可以是小波转换、提升转换和其它转换中的一类。还可根据使用情形设计具体转换。或者,抗混叠滤波和恢复滤波能够使用具有其它滤波器支持区域或其它滤波器抽头的其它滤波器结构,或使用关于内容和/或保真度自适应的(例如,关于用于编码的量化步长自适应的)滤波。因此,对于本申请中给出的示例,第一码化图片和第二码化图片的样本值可以是小波系数或像素位置的值。动态乘法和除法运算可用比特位移操作实施。归一化可以被跳过(例如,如下一段描述的当码化图片具有较高样本比特深度时)或被推迟直至最后一个阶段。对于与这些选择和用于滤波的其它选择有关的附加细节,参见公开号为2014/0112394 A1的美国专利申请。
在一些示例实施中,码化图片的表示和/或压缩能够使用比输入图片高的样本比特深度。例如,输入图片的样本比特深度是8比特/样本,码化图片的样本比特深度是10比特/样本。这可帮助减少在应用抗混叠滤波操作和恢复滤波操作期间的精度损失。或者,这可在码化图片使用有损压缩被编码时帮助实施较高保真度等级。例如,如果输入图片具有8比特/样本的样本比特深度并且码化图片具有10比特/样本的样本比特深度,则可在编码器和解码器的所有或大部分内部模块中维持10比特/样本的比特深度。在将内容解封装至接收端处的输出图片之后,样本比特深度可减少至8比特/样本(如果必要)。更一般地,输入图片格式的输入图片的样本值可具有第一比特深度(例如,8、10、12或16比特/样本)而(解封装操作之后的)码化图片格式的码化图片的样本值具有比第一比特深度高的第二比特深度。因此,对于本申请中给出的示例,第一码化图片和第二码化图片的样本值可具有不同的比特深度。
B.向高色度分辨率区域选择性地应用恢复滤波器
根据这部分中描述的方法,视频处理工具在输出图片的高色度分辨率区域应用恢复滤波器,但是跳过在输出图片的低色度分辨率区域中应用恢复滤波器。以这种方式,视频处理工具可在色度子采样期间选择性地补偿之前执行的抗混叠滤波。这允许视频处理工具在执行4:4:4颜色转换之前或同时在高色度分辨率区域应用恢复滤波器,以(在量化误差、取整误差等内)从输入图片恢复原始色度样本值。另一方面,对于低色度分辨率区域,视频处理工具可以不针对传统的4:2:0颜色转换应用恢复滤波器。
图23图示了用于在输出图片的一个或多个高色度分辨率区域选择性地应用恢复滤波器的一般技术(2300)。视频解码工具(例如参考图5描述的解码器系统(500)或另一解码工具)能够执行技术(2300)。
解码工具接收(2310)编码数据并对根据第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)组织的第一和第二码化图片进行解码(2320)。第一码化图片包含输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。
解码工具将第一和第二码化图片的样本值解封装(2330)成输出图片,其中输出图片根据输出图片格式被组织。例如,解码工具使参考图8a-8e描述的方法的任一个、或另一方法逆向进行,以解封装来自第一和第二码化图片的样本值。在一些情况中,第二码化图片包括仅为码化图片一部分(码化图片的一个或多个区域但非码化图片的所有区域)的样本值,这影响哪些样本值在解封装期间被重排。具体地,根据图23所示的技术(2300),输出图片的高色度分辨率区域依赖于第一和第二码化图片,但是输出图片的低色度分辨率区域仅依赖于第一码化图片。也就是说,第二码化图片包括高色度分辨率区域的样本值,但不包括低色度分辨率区域的样本值。
作为解封装(2330)的一部分,解码工具应用恢复滤波器以将高色度分辨率区域的色度样本值相乘。例如,对于(高色度分辨率区域的色度样本值中的)给定的色度样本值,对于输出图片中的给定位置,解码工具基于给定色度样本值和输出图片中相邻位置处的其它色度样本值恢复给定位置处的原始色度样本值的重构。其它色度样本值可以是(例如,用于参考图22a描述的4位置恢复滤波器的)3个色度样本值、(例如,用于参考图22b描述的3位置恢复滤波器的)2个色度样本值、或一些其它数量的色度样本值。或者,解码工具可在两个或更多个恢复滤波器之间切换。例如,对于给定的色度样本值,解码工具评估依赖于相邻位置处的其它色度样本值的条件,并且根据评估结果,在使用3个其它色度样本值(如图22a)或2个其它色度样本值(如图22b)之间选择以调节给定的色度样本值。备选地,解码工具将另一恢复滤波器应用于高色度分辨率区域的色度样本值。
作为解封装的一部分(2330),解码工具跳过将恢复滤波器应用于低色度分辨率区域的多个色度样本值。代替应用恢复滤波器,解码工具可将低通滤波器应用于低色度分辨率区域的色度样本值。例如,通过使用低通滤波器,解码工具通过在来自第一码化图片的重构色度样本之间插值生成输出图片中的位置的色度样本值(代替丢失高色度分辨率细节)。
解码工具可针对一个或多个其它输出图片的每个重复技术(2300)。在一些情况中,第二码化图片可已被丢弃(因此不被编码),从而第二码化图片无编码数据被接收或解码,在该情况中恢复滤波器不被应用。
备选地,甚至当抗混叠滤波被执行时,解码工具可选择性地跳过高色度分辨率区域的恢复滤波操作。例如,解码工具可跳过恢复滤波以减少解码和播放的计算负荷。
C.向低分辨率区域与高分辨率区域之间的边界应用去块滤波器
当输出图片包括高色度分辨率区域和低色度分辨率区域时,两个区域之间可能存在明显的不连续。不连续可能是两个区域之间的锐边或缝,这可能在输出图片的平滑区域或渐变区域中尤其明显。去块滤波器能够使用低通滤波平滑不连续。
根据这部分中描述的方法,视频处理工具将去块滤波器应用于输出图片中的低色度分辨率区域与高色度分辨率区域之间的边界处的色度样本值。应用去块滤波器可通过减轻边界处的压缩伪像改善视觉质量。例如,去块滤波器混合边界的不同侧上的样本值以平滑边界处的可感知的伪像不连续。
图24示出了输出图片(2401)的低色度分辨率区域与高色度分辨率区域之间的边界处的去块滤波的各方面。输出图片(2401)包括具有低色度分辨率的两个区域(2410、2440)和具有高色度分辨率的两个区域(2420、2430)。水平边界(2421)分离一个低色度分辨率区域(2440)与相邻的高色度分辨率区域(2420)。另一水平边界(2431)分离另一低色度分辨率区域(2410)与相邻的高色度分辨率区域(2430)。两个垂直边界(2422、2432)分离低色度分辨率区域(2410、2440)与相邻的高色度分辨率区域(2420、2430)。
对于给定的垂直边界(2422、2432),视频处理工具将去块滤波应用于与垂直边界(2422、2432)交叉的一行或多行(水平)的色度样本值。对于给定的水平边界(2421、2431),视频处理工具将去块滤波应用于与水平边界(2421、2431)交叉的一行或多行(垂直)的色度样本值。去块滤波器可以是在标准(例如,H.264、H.265或VC-1)或用于环内滤波或后处理的专用格式(例如,VP8或VP9)中规定的去块滤波器,或者它可以是另一去块滤波器。
去块滤波器在被不适当使用时能够引入明显的模糊度。自适应去块滤波器可改变去块滤波器如何及何时被应用以平衡移除伪像不连续的倾向性与引入不想要模糊度的倾向性。通常,去块滤波器是内容自适应的。根据与边界交叉的给定行中的某些样本值的值(和/或滤波点周围的其它本地信息),去块滤波器可以被应用或不被应用至给定行中的色度样本值。例如,视频处理工具可执行去块滤波以平滑(基于样本值)看起来是平滑或相对平滑行的色度样本值中的伪像不连续。然而,视频处理工具可针对(基于样本值)看起来是图片的内容中的实际边的不连续跳过去块滤波。而且,根据与边界交叉的给定行中的某些样本值的值(和/或滤波点周围的其它本地信息),被应用于给定行中的色度样本值的去块滤波器的强度可(例如,通过改变滤波器的滤波器系数或改变多少色度样本值被滤波)改变。
视频处理工具可自动地在输出图片中的低色度分辨率区域与高色度分辨率区域之间的边界使用去块滤波。或者,去块滤波的使用(或强度)可通过设置(例如,用户设置或应用设置)被控制。或者,去块滤波的使用(或强度)可用作为比特流中的元数据被发送的一个或多个语法元素(所谓的“滤波提示”)规定。
图25示出了在输出图片的低色度分辨率区域与高色度分辨率区域之间的一个或多个边界应用去块滤波器的一般技术(2500)。视频解码工具(例如参考图5描述的解码器系统(500)或另一解码工具)能够执行技术(2500)。
解码工具接收(2510)编码数据并对根据第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)组织的第一和第二码化图片进行解码(2520)。第一码化图片包含输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。
解码工具将第一和第二码化图片的样本值解封装(2530)为输出图片,该输出图片根据输出图片格式被组织。例如,解码工具使参考图8a-8e描述的方法的任一个或另一方法逆向进行,以解封装来自第一和第二码化图片的样本值。在一些情况中,第二码化图片包括仅为码化图片一部分(例如,码化图片的一个或多个区域但非码化图片的所有区域)的样本值,这影响哪些样本值在解封装期间被重排。具体地,根据图25所示的技术(2500),输出图片的高色度分辨率区域依赖于第一和第二码化图片,但是输出图片的低色度分辨率区域仅依赖于第一码化图片。也就是说,第二码化图片包括高色度分辨率区域的样本值,但不包括低色度分辨率区域的样本值。
解码工具将去块滤波器应用(2540)于沿输出图片的高色度分辨率区域与低色度分辨率区域之间的边界的至少一些样本值。例如,解码工具应用上面列出的去块滤波器之一。备选地,解码工具应用另一去块滤波器。对于非自适应性滤波器,在与边界交叉的多个行的每行的多个色度样本值,在边界的每侧,解码工具调节该行中的多个色度样本值的一个或多个。或者,对于自适应的去块滤波器,对与边界交叉的多个行的每行的多个色度样本值,解码工具(1)评估依赖于该行中的至少一些样本值(例如,亮度样本值和/或色度样本值)的条件,(2)根据评估结果,在边界的每侧调节该行中的多个色度样本值的一个或多个。
解码工具可针对一个或多个其它输出图片的每个重复技术(2500)。在一些情况中,第二码化图片可已被丢弃(因此不被编码),从而第二码化图片无编码数据被接收或解码,在该情况中不在高色度分辨率区域的任何边界应用去块滤波器。
备选地,解码工具可在后处理期间选择性地跳过去块滤波操作。例如,解码工具可在后处理期间跳过去块滤波以减少解码和播放的计算负荷,或如由比特流中的滤波提示规定的。
D.向高色度分辨率区域应用去振铃滤波器
当输出图片包括高色度分辨率区域时,区域的高色度分辨率细节能够以比区域的低色度分辨率细节低的质量(例如,较高的量化参数的值)被编码。在该情况中,高色度分辨率区域可包括振铃伪像、高频噪声、或因高色度分辨率细节的低编码质量引起的其它明显失真。例如,当来自高质量YUV 4:2:0图片的样本值由来自低质量UUV 4:2:0图片的样本值构建时,振铃伪像可出现在高色度分辨率区域中。振铃伪像可以被看作绕重构内容的实际边的微弱重复边。振铃伪像可由高频系数的量化引起。在极端情况中,失真可甚至比单独使用YUV 4:2:0图片构造的区域严重。
去振铃滤波器可用于保持内容中的实际边,并且移除围绕边的振铃伪像,但是在不适当使用时可使边模糊。去振铃滤波器可以是基于对重构内容中的边的检测改变滤波器模式和滤波器强度的自适应保边滤波器。例如,去振铃滤波器可基于具有马尔科夫随机场的保边最大值后验(“MAP”)估计,但是振铃滤波器倾向于具有高计算代价。下面描述振铃滤波器的其它示例。
根据这部分描述的方法,视频处理工具将振铃滤波器选择性地应用于输出图片的高色度分辨率区域中的色度样本值。应用去振铃滤波器可通过减轻因高色度分辨率细节的低质量编码引起的压缩伪像来改善视觉质量。
图26图示了输出图片的区域中的自适应去振铃滤波的技术(2600)。视频解码工具(例如参考图5描述的解码器系统(500)或另一解码工具)能够执行技术(2600)。
对于输出图片的给定区域,解码工具检查(2610)区域是否为高色度分辨率区域。如果是,解码工具通过检查(2620)区域是否由区域的高质量低色度分辨率版本和低质量高色度分辨率细节构建继续。备选地,解码工具检查一些其它条件。如果条件满足,解码工具在区域中应用(2630)去振铃滤波器。去振铃滤波器可基于在标准(例如,VC-1)中规定的去振铃滤波器或在后处理中使用的专用格式,或者它可以是另一去振铃滤波器。通常,去振铃滤波器是内容自适应的。
对于图26中检查(2620)中的条件,选择性地被应用的去振铃滤波器以比来自区域的低质量高色度分辨率细节的色度样本值更重地对来自该区域的高质量低色度分辨率细节的色度样本值进行加权。例如,去振铃滤波器以比第二码化图片(高色度分辨率细节)的样本值更重地对依赖于第一码化图片(低色度分辨率版本)的样本值进行加权。这可通过有效地使用来自第二码化图片的色度样本值改善而非替换取自第一码化图片的近似高分辨率色度样本值来改善视觉质量。
图27a-27d图示了用于输出图片的高色度分辨率区域的振铃滤波器的示例。图27a-27d示出了具有3x3滤波器核的去振铃滤波器,该去振铃滤波器具有根据核在输出图片中的位置改变的滤波器抽头,但是归一化因子(等于16)不变。总的来说,滤波器抽头在具有使用来自第一码化图片的值恢复的色度样本值的位置处较高。图27a-27d所示的色度样本值包括使用来自第一码化图片的值恢复的重构色度样本值(示为U0’)以及来自第二码化图片的重构色度样本值(示为U1’、U2’、U3’)。
图27a示出了滤波器核的第一位置(2701)。对于第一位置(2701),核包括使用来自第一码化图片的值恢复的4个色度样本值U0’。中心样本值具有最高权值(4),但是4个U0’值具有下一最高权值(2)。
图27b示出了滤波器核的第二位置(2702)。对于第二位置(2702),核包括具有最高权值(4)的两个恢复的色度样本值U0’。中心色度样本值具有下一最高权值(2)。图27c示出了滤波器核的第三位置(2703)。对于第三位置(2703),滤波器抽头与第二位置(2702)相同但被旋转。
图27d示出了滤波器核的第四位置(2704)。对于第四位置(2704),核包括具有最高权值(4)的单个恢复的色度样本值U0’。4个相邻的色度样本值具有下一最高权值(2)。
视频处理工具能够在输出图片的高色度分辨率区域中自动地使用去振铃滤波。或者,去振铃滤波的使用(或强度)能够通过设置(例如,用户设置或应用设置)而被控制。或者,去振铃滤波的使用(或强度)能够用作为比特流中的元数据发送的一个或多个语法元素(所谓的“滤波提示”)规定。
图28图示了用于在输出图片的高色度分辨率区域中应用去振铃滤波器的一般技术(2800)。视频解码工具例如参考图5描述的解码器系统(500)或另一解码工具可执行技术(2800)。
解码工具接收(2810)编码数据并对根据第一和第二码化图片格式(可以是相同的码化图片格式或不同的码化图片格式)组织的第一和第二码化图片进行解码(2820)。第一码化图片包含输出图片的低色度分辨率版本的样本值。第二码化图片包含输出图片的高色度分辨率细节的样本值。
解码工具将第一和第二码化图片的样本值解封装(2830)成输出图片,该输出图片根据输出图片格式被组织。例如,解码工具使参考图8a-8e描述的方法的任一个或另一方法逆向进行,以解封装来自第一和第二码化图片的样本值。具体地,根据图28所示的技术(2800),输出图片的高色度分辨率区域依赖于第一和第二码化图片。也就是说,第二码化图片包括高色度分辨率区域的样本值。
解码工具将去振铃滤波器应用(2840)于输出图片的高色度分辨率区域的至少一些样本值。例如,解码工具应用上面列出的去振铃滤波器之一。备选地,解码工具应用另一去振铃滤波器。去振铃滤波器可相对于来自第二码化图片的高色度分辨率区域的样本值的去振铃滤波,来强调根据第一码化图片的高色度分辨率区域的样本值的去振铃滤波。当确定是否应用去振铃滤波器时,解码工具能够评估依赖于用于高色度分辨率区域的第一码化图片的编码质量和用于高色度分辨率区域的第二码化图片的编码质量的条件,其中与是否应用去振铃滤波器有关的决定依赖于评估结果。备选地,当确定是否应用去振铃滤波器时,解码工具能够评估一些其它条件。
解码工具可针对一个或多个其它输出图片的每个重复技术(2800)。在一些情况中,第二码化图片可已被丢弃(因此不被编码),从而第二码化图片无编码数据被接收或解码,在该情况中不在任何高色度分辨率区域中应用去振铃滤波器。
备选地,解码工具可在后处理期间选择性地跳过去振铃滤波操作。例如,解码工具可在后处理期间跳过去振铃滤波以减少解码和播放的计算负荷,或如比特流中的滤波提示规定的。
E.替代和变型
对于XII.B、XII.C和XII.D部分描述的方法,编码数据可作为比特流的一部分被接收。比特流的语法许可第一码化图片和/或第二码化图片缺少输出图片的至少一部分的编码样本值。第一和第二码化图片可作为不同的码化图片子序列而被解码,如IX部分描述的。当码化图片(或其区域)以零运动而被跳过,以使得码化图片(或区域)无编码数据被接收时,码化图片(或区域)可通过根据前一码化图片重复被解码。因此,当输出图片的第一和第二码化图片被解码时,解码工具能够不使用第一码化图片的编码数据,或能够使用第一码化图片的一些区域或第一码化图片的所有区域的编码数据,并且解码工具能够不使用第二码化图片的编码数据,或能够使用第二码化图片的一些区域或第二码化图片的所有区域的编码数据。而且,如果两者中的任一码化图片(或其内的区域)以零运动而被跳过,则相同子序列中的前一码化图片(或同位置区域)可提供在构建输出图片时使用的(当前码化图片或其区域)的样本值。
对于XII.B、XII.C和XII.D部分描述的方法,一般地,输出图片格式具有第一色度采样率,第一和第二码化图片格式的至少一个具有比第一色度采样率低的第二色度采样率。例如,第一色度采样率为4:4:4,第二色度采样率为4:2:0。备选地,图片格式的一个或多个具有一些其它色度采样率。
除了应用去振铃滤波器和/作为后处理操作的一部分应用去振铃滤波器以外,视频处理工具能够应用一个或多个其它类型的滤波器(例如,去噪滤波器)。
鉴于所公开的发明的原理可以被应用的许多可能实施方式,应该认识到所说明的实施方式仅是本发明的优选示例并且不应该被当作限制本发明的范围。然而,本发明的范围由下面的权利要求限定。因此我们声称落入权利要求范围和精神内的全部内容为我们的发明。

Claims (15)

1.一个或多个存储计算机可执行指令的计算机可读介质,所述计算机可执行指令用于使计算机系统在由此被编程时执行视频处理,所述视频处理包括:
将根据输入图片格式而被组织的输入图片的样本值封装成第一码化图片和第二码化图片,所述第一码化图片和所述第二码化图片分别根据第一码化图片格式和第二码化图片格式而被组织,所述第一码化图片包含针对所述输入图片的低色度分辨率版本的样本值,并且所述第二码化图片包含针对所述输入图片的高色度分辨率细节的样本值;
对所述第一码化图片和所述第二码化图片进行编码以产生编码数据,包括选择一个或多个区域,所述一个或多个区域中的针对所述输入图片的高色度分辨率细节的相应样本值作为所述第二码化图片的一部分而被编码;
输出所述编码数据;以及
输出区域数据,所述区域数据标识其中针对所述输入图片的高色度分辨率细节的所述相应样本值作为所述第二码化图片的一部分而被编码的所述一个或多个区域。
2.根据权利要求1所述的一个或多个计算机可读介质,其中所述输入图片格式具有第一色度采样率,并且其中所述第一码化图片格式和所述第二码化图片格式中的至少一个具有比所述第一色度采样率低的第二色度采样率。
3.根据权利要求1所述的一个或多个计算机可读介质,其中所述第一码化图片和所述第二码化图片作为码化图片序列中分离的码化图片而被编码,并且其中在所述编码期间:
所述第一码化图片作为所述序列的第一子序列的一部分而被编码;
所述第二码化图片作为所述序列的第二子序列的一部分而被编码,所述第二子序列不同于所述第一子序列;
为了运动补偿,所述第一子序列中的码化图片不被允许参考所述第二子序列中的任何码化图片;以及
为了运动补偿,所述第二子序列中的码化图片不被允许参考所述第一子序列中的任何码化图片。
4.根据权利要求1所述的一个或多个计算机可读介质,其中针对所述第一子序列的编码数据和针对所述第二子序列的编码数据能够由比特流编辑工具分离。
5.根据权利要求1所述的一个或多个计算机可读介质,其中所述区域数据还标识如下一个或多个区域,所述一个或多个区域中的针对所述输入图片的低色度分辨率版本的相应样本值作为所述第一码化图片的一部分而被编码,所述区域数据包括:
第一映射,指示如下任何区域,针对所述第一码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述低色度分辨率版本的编码样本值;以及
第二映射,指示如下任何区域,针对所述第二码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述高色度分辨率细节的编码样本值。
6.一种在实施视频解码器的计算机系统中的视频处理的方法,包括:
接收编码数据;
对第一码化图片和第二码化图片进行解码,所述第一码化图片和所述第二码化图片分别根据第一码化图片格式和第二码化图片格式而被组织;
接收区域数据,所述区域数据标识一个或多个区域,所述一个或多个区域中的针对输出图片的高色度分辨率细节的相应样本值已经作为所述第二码化图片的一部分而被编码;以及
至少部分地基于所述区域数据,将针对所述第一码化图片和所述第二码化图片的样本值解封装成所述输出图片,所述输出图片根据输出图片格式而被组织,所述第一码化图片包含针对所述输出图片的低色度分辨率版本的样本值,并且所述第二码化图片包含针对所述输出图片的所述高色度分辨率细节的所述样本值。
7.根据权利要求6所述的方法,其中所述第一码化图片和所述第二码化图片作为码化图片序列中分离的码化图片而被解码,并且其中在所述解码期间:
所述第一码化图片作为所述序列的第一子序列的一部分而被解码;
所述第二码化图片作为所述序列的第二子序列的一部分而被解码,所述第二子序列不同于所述第一子序列;
为了运动补偿,所述第一子序列中的码化图片不被允许参考所述第二子序列中的任何码化图片;以及
为了运动补偿,所述第二子序列中的码化图片不被允许参考所述第一子序列中的任何码化图片。
8.根据权利要求6所述的方法,其中所述区域数据还标识如下一个或多个区域,所述一个或多个区域中的针对所述输出图片的所述低色度分辨率版本的相应样本值已经作为所述第一码化图片的一部分而被编码,所述区域数据包括:
第一映射,指示如下任何区域,针对所述第一码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述低色度分辨率版本的编码样本值;以及
第二映射,指示如下任何区域,针对所述第二码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述高色度分辨率细节的编码样本值。
9.根据权利要求8所述的方法,其中:
所述第一映射包括如下索引值,每个所述索引值指示相应区域中的针对所述低色度分辨率版本的样本值是否已经改变并且已经按高质量被编码;以及
所述第二映射包括如下索引值,每个所述索引值指示相应区域中的针对所述高色度分辨率细节的样本值是否已经改变并且已经按高质量被编码。
10.一种计算机系统,包括处理器、存储器和存储装置,其中所述计算机系统被配置为实施视频处理工具,所述视频处理工具包括:
格式化器,被配置为将根据输入图片格式而被组织的输入图片的样本值封装成第一码化图片和第二码化图片,所述第一码化图片和所述第二码化图片分别根据第一码化图片格式和第二码化图片格式而被组织,所述第一码化图片包含针对所述输入图片的低色度分辨率版本的样本值,并且所述第二码化图片包含针对所述输入图片的高色度分辨率细节的样本值;
视频编码器,被配置为将所述第一码化图片和所述第二码化图片作为码化图片序列中分离的码化图片进行编码,由此产生编码数据,其中:
所述第一码化图片作为所述序列的第一子序列的一部分而被编码;
所述第二码化图片作为所述序列的第二子序列的一部分而被编码,所述第二子序列不同于所述第一子序列;
为了运动补偿,所述第一子序列中的码化图片不被允许参考所述第二子序列中的任何码化图片;以及
为了运动补偿,所述第二子序列中的码化图片不被允许参考所述第一子序列中的任何码化图片;以及
缓冲器,被配置为输出所述编码数据。
11.根据权利要求10所述的计算机系统,其中所述视频编码器被配置为通过使用第一长期参考图片索引来管理所述第一子序列内的运动补偿依赖性,所述第一长期参考图片索引标识所述第一子序列中的码化图片,并且其中所述视频编码器被配置为通过使用第二长期参考图片索引来管理所述第二子序列内的运动补偿依赖性,所述第二长期参考图片索引标识所述第二子序列中的码化图片。
12.根据权利要求10所述的计算机系统,其中所述视频编码器被配置为对参考图片重新排序,以使得所述第一子序列中的码化图片不参考所述第二子序列中的任何码化图片,并且使得所述第二子序列中的码化图片不参考所述第一子序列中的任何码化图片。
13.根据权利要求10所述的计算机系统,其中所述视频编码器被配置为选择一个或多个区域,所述一个或多个区域中的针对所述输入图片的高色度分辨率细节的相应样本值作为所述第二码化图片的一部分而被编码,并且其中所述缓冲器被配置为输出区域数据,所述区域数据标识其中针对所述输入图片的高色度分辨率细节的所述相应样本值作为所述第二码化图片的一部分而被编码的所述一个或多个区域。
14.根据权利要求13所述的计算机系统,其中所述区域数据还标识如下一个或多个区域,所述一个或多个区域中的针对所述输入图片的所述低色度分辨率版本的相应样本值作为所述第一码化图片的一部分而被编码,所述区域数据包括:
第一映射,指示如下任何区域,针对所述第一码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述低色度分辨率版本的编码样本值;以及
第二映射,指示如下任何区域,针对所述第二码化图片的针对所述区域的所述编码数据包括针对所述输入图片的所述高色度分辨率细节的编码样本值。
15.根据权利要求13所述的计算机系统,其中所述区域数据是补充增强信息消息的一部分、容器结构的字段、或传输协议消息的字段。
CN201680006016.0A 2015-01-16 2016-01-13 高色度分辨率细节的编码/解码 Active CN107251557B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/599,416 US9749646B2 (en) 2015-01-16 2015-01-16 Encoding/decoding of high chroma resolution details
US14/599,416 2015-01-16
PCT/US2016/013119 WO2016115183A1 (en) 2015-01-16 2016-01-13 Encoding/decoding of high chroma resolution details

Publications (2)

Publication Number Publication Date
CN107251557A true CN107251557A (zh) 2017-10-13
CN107251557B CN107251557B (zh) 2020-05-19

Family

ID=55168501

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680006016.0A Active CN107251557B (zh) 2015-01-16 2016-01-13 高色度分辨率细节的编码/解码

Country Status (4)

Country Link
US (1) US9749646B2 (zh)
EP (1) EP3245790B1 (zh)
CN (1) CN107251557B (zh)
WO (1) WO2016115183A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572654A (zh) * 2019-09-27 2019-12-13 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、存储介质及电子装置
CN110798689A (zh) * 2019-10-18 2020-02-14 西安交通大学 一种将nv12+格式转换为p010格式的方法
CN111031388A (zh) * 2019-11-25 2020-04-17 无锡思朗电子科技有限公司 Yuv4:4:4数据的编解码方法
CN111935483A (zh) * 2020-09-29 2020-11-13 北京泽塔云科技股份有限公司 一种视频图像无损编解码方法及系统
WO2020259538A1 (en) * 2019-06-27 2020-12-30 Mediatek Inc. Method and apparatus of cross-component adaptive loop filtering for video coding
CN113271466A (zh) * 2020-02-14 2021-08-17 北京小鸟科技股份有限公司 图像编码方法、解码方法、传输方法以及存储装置和处理装置

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6125215B2 (ja) * 2012-09-21 2017-05-10 株式会社東芝 復号装置、及び符号化装置
US9979960B2 (en) 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
CN105872539B (zh) 2015-02-08 2020-01-14 同济大学 图像编码方法和装置及图像解码方法和装置
WO2017151877A1 (en) 2016-03-02 2017-09-08 MatrixView, Inc. Apparatus and method to improve image or video quality or encoding performance by enhancing discrete cosine transform coefficients
US10219002B2 (en) 2016-07-01 2019-02-26 Intel Corporation Dynamic fidelity updates for encoded displays
US10225536B2 (en) * 2016-07-01 2019-03-05 Intel Corporation Dynamic fidelity updates for encoded displays
US10838682B2 (en) 2016-07-28 2020-11-17 Intelligent Waves Llc System, method and computer program product for generating remote views in a virtual mobile device platform using efficient processing during display encoding
WO2018056181A1 (ja) * 2016-09-26 2018-03-29 ソニー株式会社 符号化装置、符号化方法、復号化装置、復号化方法、送信装置および受信装置
CN113518221B (zh) * 2016-10-14 2024-03-01 联发科技股份有限公司 视频编码或解码方法及相应装置
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values
US11153585B2 (en) 2017-02-23 2021-10-19 Netflix, Inc. Optimizing encoding operations when generating encoded versions of a media title
US11166034B2 (en) 2017-02-23 2021-11-02 Netflix, Inc. Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric
US10897618B2 (en) 2017-02-23 2021-01-19 Netflix, Inc. Techniques for positioning key frames within encoded video sequences
US10742708B2 (en) 2017-02-23 2020-08-11 Netflix, Inc. Iterative techniques for generating multiple encoded versions of a media title
US10666992B2 (en) 2017-07-18 2020-05-26 Netflix, Inc. Encoding techniques for optimizing distortion and bitrate
CN111602401B (zh) * 2018-01-16 2024-01-09 Vid拓展公司 用于360度视频译码的自适应帧封装
GB2575009B (en) * 2018-05-14 2022-12-14 Advanced Risc Mach Ltd Media processing systems
US11030777B2 (en) 2018-09-14 2021-06-08 Sony Group Corporation Adaptive subband coding for lifting transform
US11606569B2 (en) * 2018-09-25 2023-03-14 Apple Inc. Extending supported components for encoding image data
US11695977B2 (en) * 2018-09-28 2023-07-04 Apple Inc. Electronic device content provisioning adjustments based on wireless communication channel bandwidth condition
CN110972202B (zh) 2018-09-28 2023-09-01 苹果公司 基于无线通信信道带宽条件的移动设备内容提供调节
EP3866468A4 (en) 2018-10-12 2022-07-27 Wilus Institute of Standards and Technology Inc. VIDEO SIGNAL PROCESSING METHOD AND APPARATUS USING MULTI-ASSUMPTION PREDICTION
US11019359B2 (en) * 2019-01-15 2021-05-25 Tencent America LLC Chroma deblock filters for intra picture block compensation
US11019374B2 (en) 2019-02-04 2021-05-25 Netflix, Inc. Techniques for efficiently performing subsequence-based encoding for a media title
CN113574541A (zh) * 2019-03-11 2021-10-29 华为技术有限公司 视频译码中的基于子图像的条带地址
US20210127125A1 (en) * 2019-10-23 2021-04-29 Facebook Technologies, Llc Reducing size and power consumption for frame buffers using lossy compression
KR102192631B1 (ko) * 2019-11-28 2020-12-17 주식회사우경정보기술 병렬 포렌식 마킹 장치 및 방법
US11616983B2 (en) * 2020-05-05 2023-03-28 Tencent America LLC Joint component secondary transform
US11816819B2 (en) 2021-06-03 2023-11-14 Baylor University System and method for displaying super saturated color
US11501419B1 (en) * 2021-06-03 2022-11-15 Baylor University System and method for displaying super saturated color

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1728833A (zh) * 2004-07-15 2006-02-01 学校法人大洋学园 用于可伸缩编码和解码彩色视频的方法和设备
CN101156452A (zh) * 2005-04-13 2008-04-02 汤姆逊许可公司 利用公共预测器的亮度和色度解码
US20090219994A1 (en) * 2008-02-29 2009-09-03 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
CN101558650A (zh) * 2006-12-14 2009-10-14 汤姆森许可贸易公司 使用针对空间和位深预测的自适应预测顺序来编码和/或解码视频数据的方法及设备
CN102067599A (zh) * 2008-04-24 2011-05-18 摩托罗拉移动公司 用于对视频进行编码和解码的方法和装置
US20120008679A1 (en) * 2010-07-07 2012-01-12 Steve Bakke 4:4:4 color space video with 4:2:0 color space video encoders and decoders systems and methods
EP2456204A1 (en) * 2010-11-18 2012-05-23 Koninklijke Philips Electronics N.V. Method and apparatus for encoding or generating an image
CN102917228A (zh) * 2008-08-25 2013-02-06 微软公司 可伸缩视频编码和解码中的转换操作
CN102934445A (zh) * 2010-04-05 2013-02-13 三星电子株式会社 基于分段对图像编码和解码的方法和设备
US20150010068A1 (en) * 2013-07-05 2015-01-08 Canon Kabushiki Kaisha Method, device, and computer program for pre-encoding and post-decoding high bit-depth content in video encoder and decoder

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5047853A (en) 1990-03-16 1991-09-10 Apple Computer, Inc. Method for compresssing and decompressing color video data that uses luminance partitioning
JP3381855B2 (ja) 1992-12-28 2003-03-04 ソニー株式会社 画像信号符号化方法および画像信号符号化装置、並びに画像信号復号化方法および画像信号復号化装置
JP2933487B2 (ja) 1994-07-15 1999-08-16 松下電器産業株式会社 クロマフォーマット変換の方法
US5742892A (en) 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
US6282364B1 (en) 1996-02-05 2001-08-28 Matsushita Electric Industrial Co., Ltd. Video signal recording apparatus and video signal regenerating apparatus
US5712687A (en) 1996-04-25 1998-01-27 Tektronix, Inc. Chrominance resampling for color images
US6208350B1 (en) 1997-11-04 2001-03-27 Philips Electronics North America Corporation Methods and apparatus for processing DVD video
US6937659B1 (en) 1997-11-14 2005-08-30 Ac Capital Management, Inc. Apparatus and method for compressing video information
US6829301B1 (en) 1998-01-16 2004-12-07 Sarnoff Corporation Enhanced MPEG information distribution apparatus and method
ATE267439T1 (de) 1998-11-09 2004-06-15 Broadcom Corp Anzeigesystem zur mischung von graphischen daten und videodaten
US6674479B2 (en) 2000-01-07 2004-01-06 Intel Corporation Method and apparatus for implementing 4:2:0 to 4:2:2 and 4:2:2 to 4:2:0 color space conversion
US7576748B2 (en) 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
JP2002204356A (ja) 2000-10-27 2002-07-19 Canon Inc データ処理装置、プロセッサ、及びその制御方法
US20030112863A1 (en) 2001-07-12 2003-06-19 Demos Gary A. Method and system for improving compressed image chroma information
US7076108B2 (en) 2001-12-11 2006-07-11 Gen Dow Huang Apparatus and method for image/video compression using discrete wavelet transform
US7643675B2 (en) 2003-08-01 2010-01-05 Microsoft Corporation Strategies for processing image information using a color information data structure
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7551792B2 (en) 2003-11-07 2009-06-23 Mitsubishi Electric Research Laboratories, Inc. System and method for reducing ringing artifacts in images
US20050129130A1 (en) 2003-12-10 2005-06-16 Microsoft Corporation Color space coding framework
US20050228654A1 (en) 2004-03-30 2005-10-13 Yolanda Prieto Method and apparatus for improved bit rate efficiency in wavelet based codecs by means of subband correlation
US7515759B2 (en) 2004-07-14 2009-04-07 Sharp Laboratories Of America, Inc. 3D video coding using sub-sequences
US8879856B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
KR100873636B1 (ko) * 2005-11-14 2008-12-12 삼성전자주식회사 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치
WO2007060498A1 (en) 2005-11-22 2007-05-31 Freescale Semiconductor, Inc. Method and system for filtering image data
KR100771879B1 (ko) 2006-08-17 2007-11-01 삼성전자주식회사 내부 메모리 용량을 감소시키는 디블록킹 필터링 방법 및그 방법을 이용하는 영상 처리 장치
US9001899B2 (en) 2006-09-15 2015-04-07 Freescale Semiconductor, Inc. Video information processing system with selective chroma deblock filtering
JP5467637B2 (ja) 2007-01-04 2014-04-09 トムソン ライセンシング マルチビュー・コード化ビデオにおける照度補償および/または色補償についてのコーディング・アーチファクトを低減する方法および装置
US8054886B2 (en) 2007-02-21 2011-11-08 Microsoft Corporation Signaling and use of chroma sample positioning information
PL3758381T3 (pl) 2007-04-12 2021-07-05 Dolby International Ab Dzielenie na kafelki w kodowaniu i dekodowaniu wideo
KR20080114388A (ko) 2007-06-27 2008-12-31 삼성전자주식회사 스케일러블 영상 부호화장치 및 방법과 그 영상 복호화장치및 방법
US7924292B2 (en) 2007-08-31 2011-04-12 Broadcom Corportion Device and method for reducing visual artifacts in color images
US8139081B1 (en) 2007-09-07 2012-03-20 Zenverge, Inc. Method for conversion between YUV 4:4:4 and YUV 4:2:0
JP5035154B2 (ja) 2008-03-07 2012-09-26 富士通株式会社 映像信号処理装置及び映像信号処理方法
US9036714B2 (en) 2009-01-26 2015-05-19 Thomson Licensing Frame packing for video coding
JP4947389B2 (ja) 2009-04-03 2012-06-06 ソニー株式会社 画像信号復号装置、画像信号復号方法、および画像信号符号化方法
CN102754443B (zh) 2010-02-12 2014-11-12 佳能株式会社 图像处理设备和图像处理方法
US9225961B2 (en) 2010-05-13 2015-12-29 Qualcomm Incorporated Frame packing for asymmetric stereo video
CN103155568B (zh) 2010-07-08 2016-07-27 杜比实验室特许公司 用于使用参考处理信号进行多层图像和视频传输的系统和方法
EP2596635B1 (en) 2010-07-19 2020-05-20 Dolby Laboratories Licensing Corporation Enhancement methods for sampled and multiplexed image and video data
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
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8787443B2 (en) 2010-10-05 2014-07-22 Microsoft Corporation Content adaptive deblocking during video encoding and decoding
US10327008B2 (en) 2010-10-13 2019-06-18 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
US20120236115A1 (en) 2011-03-14 2012-09-20 Qualcomm Incorporated Post-filtering in full resolution frame-compatible stereoscopic video coding
US8780996B2 (en) 2011-04-07 2014-07-15 Google, Inc. System and method for encoding and decoding video data
WO2012142285A2 (en) 2011-04-12 2012-10-18 Dolby Laboratories Licensing Corporation Quality assessment for images that have extended dynamic ranges or wide color gamuts
CN103119944B (zh) 2011-05-20 2017-04-12 太阳专利托管公司 用于使用色彩平面间预测对视频进行编码和解码的方法和装置
US9414086B2 (en) 2011-06-04 2016-08-09 Apple Inc. Partial frame utilization in video codecs
US20130003839A1 (en) 2011-06-30 2013-01-03 Futurewei Technologies, Inc. Fast Encoding Method for Lossless Coding
US8787454B1 (en) 2011-07-13 2014-07-22 Google Inc. Method and apparatus for data compression using content-based features
TWI606718B (zh) * 2012-01-03 2017-11-21 杜比實驗室特許公司 規定視覺動態範圍編碼操作及參數
US9363516B2 (en) 2012-01-19 2016-06-07 Qualcomm Incorporated Deblocking chroma data for video coding
KR102013240B1 (ko) * 2012-02-02 2019-08-22 삼성전자주식회사 영역별 특성에 기초한 영상 부호화 방법 및 그 장치, 그리고 영상 복호화 방법 및 그 장치
WO2013128010A2 (en) 2012-03-02 2013-09-06 Canon Kabushiki Kaisha Method and devices for encoding a sequence of images into a scalable video bit-stream, and decoding a corresponding scalable video bit-stream
US8958474B2 (en) 2012-03-15 2015-02-17 Virtualinx, Inc. System and method for effectively encoding and decoding a wide-area network based remote presentation session
US8639057B1 (en) 2012-03-19 2014-01-28 The Modern Video Company Artifact removal method and system for contoured images and video
CN102801988B (zh) 2012-07-20 2014-10-08 浙江工业大学 一种基于色度分量幅度的yuv444转yuv420的视频格式转换方法
GB2506345A (en) 2012-09-06 2014-04-02 British Broadcasting Corp Video encoding and decoding with chrominance sub-sampling
US20140072027A1 (en) 2012-09-12 2014-03-13 Ati Technologies Ulc System for video compression
US20140072048A1 (en) 2012-09-13 2014-03-13 Samsung Electronics Co., Ltd Method and apparatus for a switchable de-ringing filter for image/video coding
US9979960B2 (en) 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
US9661340B2 (en) 2012-10-22 2017-05-23 Microsoft Technology Licensing, Llc Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats
US9426469B2 (en) 2012-12-17 2016-08-23 Broadcom Corporation Combination HEVC deblocker/SAO filter
US8817179B2 (en) 2013-01-08 2014-08-26 Microsoft Corporation Chroma frame conversion for the video codec
JP2014171097A (ja) 2013-03-04 2014-09-18 Toshiba Corp 符号化装置、符号化方法、復号装置、および、復号方法
US9749627B2 (en) 2013-04-08 2017-08-29 Microsoft Technology Licensing, Llc Control data for motion-constrained tile set
US9558567B2 (en) * 2013-07-12 2017-01-31 Qualcomm Incorporated Palette prediction in palette-based video coding
US8837826B1 (en) 2014-06-12 2014-09-16 Spinella Ip Holdings, Inc. System and method for transmission, reception, and restoration of decimated color channels in image data
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
US20160212423A1 (en) 2015-01-16 2016-07-21 Microsoft Technology Licensing, Llc Filtering to mitigate artifacts when changing chroma sampling rates

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1728833A (zh) * 2004-07-15 2006-02-01 学校法人大洋学园 用于可伸缩编码和解码彩色视频的方法和设备
CN101156452A (zh) * 2005-04-13 2008-04-02 汤姆逊许可公司 利用公共预测器的亮度和色度解码
CN101558650A (zh) * 2006-12-14 2009-10-14 汤姆森许可贸易公司 使用针对空间和位深预测的自适应预测顺序来编码和/或解码视频数据的方法及设备
US20090219994A1 (en) * 2008-02-29 2009-09-03 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
CN102067599A (zh) * 2008-04-24 2011-05-18 摩托罗拉移动公司 用于对视频进行编码和解码的方法和装置
CN102917228A (zh) * 2008-08-25 2013-02-06 微软公司 可伸缩视频编码和解码中的转换操作
CN102934445A (zh) * 2010-04-05 2013-02-13 三星电子株式会社 基于分段对图像编码和解码的方法和设备
US20120008679A1 (en) * 2010-07-07 2012-01-12 Steve Bakke 4:4:4 color space video with 4:2:0 color space video encoders and decoders systems and methods
EP2456204A1 (en) * 2010-11-18 2012-05-23 Koninklijke Philips Electronics N.V. Method and apparatus for encoding or generating an image
US20150010068A1 (en) * 2013-07-05 2015-01-08 Canon Kabushiki Kaisha Method, device, and computer program for pre-encoding and post-decoding high bit-depth content in video encoder and decoder

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020259538A1 (en) * 2019-06-27 2020-12-30 Mediatek Inc. Method and apparatus of cross-component adaptive loop filtering for video coding
US11930169B2 (en) 2019-06-27 2024-03-12 Hfi Innovation Inc. Method and apparatus of cross-component adaptive loop filtering for video coding
CN110572654A (zh) * 2019-09-27 2019-12-13 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、存储介质及电子装置
CN110572654B (zh) * 2019-09-27 2024-03-15 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、存储介质及电子装置
CN110798689A (zh) * 2019-10-18 2020-02-14 西安交通大学 一种将nv12+格式转换为p010格式的方法
CN111031388A (zh) * 2019-11-25 2020-04-17 无锡思朗电子科技有限公司 Yuv4:4:4数据的编解码方法
CN113271466A (zh) * 2020-02-14 2021-08-17 北京小鸟科技股份有限公司 图像编码方法、解码方法、传输方法以及存储装置和处理装置
CN111935483A (zh) * 2020-09-29 2020-11-13 北京泽塔云科技股份有限公司 一种视频图像无损编解码方法及系统

Also Published As

Publication number Publication date
EP3245790A1 (en) 2017-11-22
EP3245790B1 (en) 2023-11-08
US20160212433A1 (en) 2016-07-21
CN107251557B (zh) 2020-05-19
WO2016115183A1 (en) 2016-07-21
US9749646B2 (en) 2017-08-29

Similar Documents

Publication Publication Date Title
CN107251557A (zh) 高色度分辨率细节的编码/解码
CN105264888B (zh) 用于对色彩空间、色彩采样率和/或比特深度自适应切换的编码策略
CN107211150A (zh) 动态更新质量至较高的色度采样率
CN105432077B (zh) 在切换色彩空间时调整量化/缩放和逆量化/缩放
CN105230023B (zh) 色彩空间、色彩采样率和/或比特深度的自适应切换
KR102068431B1 (ko) 영상의 재구성된 샘플 세트에 대한 보상 오프셋들의 인코딩/디코딩을 최적화하는 방법 및 장치
CN104885457B (zh) 用于视频信号的向后兼容编码和解码的方法和装置
CN105960802B (zh) 切换色彩空间时对编码和解码的调整
CN110301134A (zh) 整合的图像整形和视频编码
CN110024398A (zh) 针对屏幕远程处理场景的局部的基于散列的运动估计
TW201637443A (zh) 在改變色度取樣率時濾波以減輕異常
CN105874795A (zh) 在波前并行处理被启用时对图片内预测模式的规则
JP2017538381A (ja) ビデオ符号化における成分間予測
CN105900420A (zh) 选择运动向量精度
CN105917650A (zh) 视频和图像编码/解码中的块向量预测
CN106031177A (zh) 用于硬件加速的视频编码的主编码器
CN105409221A (zh) 用于样本自适应偏移滤波的编码器侧决策
CN104919804A (zh) 帧封装和解封较高分辨率色度采样格式
CN101828405A (zh) 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
CN107409212A (zh) 用于编码和解码的使用变换系数的逐渐更新

Legal Events

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