用于混合视频编解码器的改进架构的制作方法_4

文档序号:8367831阅读:来源:国知局
在常规解码器200中)可不具有任何变换过程,且可在像素域中执行运动补偿及帧内预测。另一差异为,所揭示解码器可就在熵解码之后执行运动补偿及帧内预测,而常规解码器可在反量化及反变换过程之后执行运动补偿及帧内预测。
[0072]此外,利用本文所揭示的新编码及解码架构,各种模块或单元可经重新设计或微调以优化其性能,其可导致在效率和/或质量方面的额外译码增益。举例来说,变换模块可经设计以出于压缩目的而匹配视频帧的内容的特性。因此,可使用新变换矩阵。此外,本文所揭示的新架构可使得能够使用可通过考量新变换过程的特性而优化的新量化模块及熵译码器。
[0073]图6是可由视频编码器(例如,编码器300)实施的视频编码方法600的实施例的流程图。方法600在步骤610中开始,其中编码器可变换多个像素以产生第一多个变换系数。所述多个像素可位于输入像素块(例如,输入像素块302)中,且所述第一多个变换系数可位于变换块(例如,变换块332)中。在一实施例中,由于对输入像素直接执行变换,因此用于变换所述多个像素的变换矩阵可经选择以匹配所述视频帧的内容特性。
[0074]在步骤620中,编码器可量化所述第一多个变换系数以产生多个经量化变换系数,所述多个经量化变换系数可驻留在经量化变换块(例如,经量化变换块342)中。在步骤630中,编码器可基于为用于所述多个像素的预测参考物的多个经重建构像素计算多个预测像素。所述多个预测像素可位于预测块(例如,预测块322)中,且所述多个经重建构像素可位于经重建构块(例如,经重建构块372)中。
[0075]预测可为帧间或帧内的。在帧间预测的实施例中,所述多个像素位于当前帧中,所述多个经重建构像素位于可与当前帧处于相同GOP中的参考帧中。在帧内预测的实施例中,所述多个像素位于当前块中,且所述多个经重建构像素位于在当前块之前已译码的参考块中。在此情况下,计算所述多个预测像素使用参考块用于帧内预测,且遵循选自多个可用帧内预测模式的帧内预测模式。
[0076]在步骤640中,编码器可变换所述多个预测像素以产生第二多个变换系数,所述第二多个变换系数可位于经变换预测块(例如,经变换预测块328)中。在一实施例中,变换所述多个像素(在步骤610中)与变换所述多个预测像素(在步骤640中)使用相同的变换矩阵。另外,可不经任何量化而直接使用所述第二多个变换系数来计算所述多个预测残差系数。因此,量化噪声可被限于仅影响当前块/帧,而不影响任何未来块/帧。举例来说,在变换所述多个像素之前已经由量化而计算的所述多个经量化变换系数可能携带量化噪声。在此情况下,量化噪声对于所述第一多个变换系数的量化可能没有影响。
[0077]在步骤650中,编码器可将多个预测残差系数计算为所述多个经量化变换系数与所述第二多个变换系数之间的差。所述多个预测残差系数可位于预测残差块(例如,预测残差块344)中。在步骤660中,编码器可对所述多个预测残差系数进行熵编码以产生多个经编码残差系数,所述多个经编码残差系数可接着从编码器发射。
[0078]注意,图6仅说明对帧中的视频帧或块进行编码的必需步骤的一部分,因此方法600可包含完成编码所必需的任何其它步骤。举例来说,用于步骤630的所述多个经重建构像素可通过对多个经解量化变换系数进行反变换而产生。所述多个经解量化变换系数又可通过对在变换所述多个像素之前已经由量化计算的另外多个经量化变换系数进行解量化而产生。另外,可在用作预测参考物之前使用一或多个环内滤波器对所述多个经重建构像素进行滤波。所述一或多个环内滤波器可包含解块滤波器及SAO滤波器中的至少一者。
[0079]图7是可由视频解码器(例如,解码器400)实施的视频解码方法700的实施例的流程图。方法700在步骤710中开始,其中解码器可对多个经编码残差系数(例如,经编码残差系数402)进行解码以产生多个经解码残差系数(例如,经解码残差系数404)。
[0080]在步骤720中,解码器可变换多个预测像素(例如,预测像素442)以产生多个变换系数(例如,经变换系数448)。注意,所述多个预测像素为所述多个经重建构像素的预测版本。另外,可不经任何量化而直接使用所述多个变换系数来计算所述多个经重建构系数。
[0081]在步骤730中,解码器可将多个经重建构系数(例如,经重建构系数406)计算为所述多个经解码残差系数与所述多个变换系数的总和。在步骤740中,解码器可对所述多个经重建构系数进行解量化以产生多个经解量化系数(例如,经解量化系数422)。
[0082]在步骤750中,解码器可通过对所述多个经解量化系数进行反变换而产生多个经重建构像素(例如,经重建构像素432)。所述多个经重建构像素表示在视频编码器(例如,编码器300)中已通过变换矩阵变换的多个原始像素的经重建构版本。在一实施例中,变换所述多个预测像素使用与编码器中相同的变换矩阵。
[0083]在步骤760中,解码器可对所述多个经重建构像素进行滤波以产生多个经滤波像素(例如,经滤波像素452)。类似于图6,所属领域的技术人员将认识到,图7仅说明对帧中的视频帧或块进行解码的必需步骤的一部分,因此方法700可包含完成解码所必需的任何其它步骤。
[0084]上文所描述的方案可在网络组件上实施,所述网络组件例如是具有足够处理能力、存储器资源及处置置于其上的必需工作负荷的网络吞吐能力的计算机或网络组件。图8是适合于实施本文所揭示的视频编解码器或方法的一或多个实施例的网络组件或节点800的实施例的示意图,所述视频编解码器或方法例如编码器300、解码器400、视频编码方法600及视频解码方法700。网络节点800包含处理器802,所述处理器802与包含次要存储装置804、只读存储器(ROM) 806、随机存取存储器(RAM) 808的存储器装置、输入/输出(I/O)装置810及发射器/接收器(或收发器)812通信。I/O装置810和/或发射器/接收器812可为任选的,且如果不被包含,那么网络节点800变为计算装置,在此情况下,经编码位流或经解码视频流可存储在存储器中。处理器802可实施为一或多个中央处理单元(CPU)芯片、核心(例如,多核心处理器)、现场可编程门阵列(FPGA)、专用集成电路(ASIC),和/或数字信号处理器(DSP)。处理器802可使用硬件或硬件与软件的组合来实施。
[0085]次要存储装置804通常包括一或多个磁盘驱动器或磁带驱动器,且用于数据的非易失性存储,且在RAM 808对于保持所有工作数据来说不够大的情况下作为溢流数据存储装置。次要存储装置804可用于存储程序,当选择此些程序来执行时,将所述程序加载到RAM 808中。ROM 806用于存储在程序执行期间读取的指令以及可能的数据。ROM 806是非易失性存储器装置,其通常具有相对于次要存储装置804的较大存储器容量较小的存储器容量。RAM 808用于存储易失性数据且可能用于存储指令。对ROM 806和RAM 808两者的存取通常比对次要存储装置804的存取快。
[0086]发射器/接收器812可充当网络节点800的输出和/或输入装置。举例来说,如果发射器/接收器812正充当发射器,那么其可将数据传出网络节点800。如果发射器/接收器812正充当接收器,那么其可将数据接收到网络节点800中。发射器/接收器812可呈以下各者的形式:调制解调器,调制解调器组,以太网卡,通用串行总线(USB)接口卡,串行接口,令牌环卡,光纤分布式数据接口(FDDI)卡,无线局域网(WLAN)卡,例如码分多址(CDMA)、全球移动通信系统(GSM)、长期演化(LTE)、全球微波接入互操作性(WiMAX)等无线电收发器卡,和/或其它空中接口协议无线电收发器卡,及其它熟知的网络装置。发射器/接收器812可提供使处理器802与因特网或一或多个内网通信的通道。如果网络节点800正充当视频编码器,那么处理器802可对位流进行编码。处理器802还可包化(packetize)且囊封(即,格式化)所述位流以供发射,且将经格式化位流提供到发射器/接收器812。发射器/接收器812将接着发射所述经格式化位流。
[0087]I/O装置810可包含视频监视器、液晶显示器(IXD)、触摸屏显示器或用于显示视频的其它类型的视频显示器,和/或可包含用于俘获视频的视频记录装置。I/o装置810还可包含一或多个键盘、鼠标或轨迹球,或其它熟知的输入装置。如果网络节点800正充当视频编码器,那么待编码的视频流可由I/O装置810提供,或可以另一方式提供。类似地,如果网络节点800正充当视频解码器,那么待解码的视频流可经由发射器/接收器812接收,或可以另一方式提供。
[0088]应理解,通过对可执行指令进行编程和/或将可执行指令加载到网络节点800上,处理器802、次要存储装置804、RAM 808及ROM 806中的至少一者改变,从而将网络节点800部分地变换成特定机器或设备(例如,具有由本发明教示的功能性的视频编解码器)。可执行指令可存储在次要存储装置804、ROM 806和/或RAM 808上,且加载到处理器802中以用于执行。对于电力工程及软件工程技术来说基本的是,可通过将可执行软件加载到计算机中而实施的功能性可通过熟知设计规则而转换为硬件实施方案。在软件还是硬件中实施概念
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1