CN106165421B - 用于译码视频数据的设备、方法及计算机可读媒体 - Google Patents

用于译码视频数据的设备、方法及计算机可读媒体 Download PDF

Info

Publication number
CN106165421B
CN106165421B CN201580019553.4A CN201580019553A CN106165421B CN 106165421 B CN106165421 B CN 106165421B CN 201580019553 A CN201580019553 A CN 201580019553A CN 106165421 B CN106165421 B CN 106165421B
Authority
CN
China
Prior art keywords
lagrange
decoding mode
multiplier
parameter
decoding
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.)
Active
Application number
CN201580019553.4A
Other languages
English (en)
Other versions
CN106165421A (zh
Inventor
维贾伊拉加哈万·提鲁马莱
瑞珍·雷克斯曼·乔许
纳坦·海姆·雅各布森
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN106165421A publication Critical patent/CN106165421A/zh
Application granted granted Critical
Publication of CN106165421B publication Critical patent/CN106165421B/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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/146Data rate or code amount at the encoder output
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

根据某些方面,一种用于译码视频数据的设备包含用于存储视频数据的存储器和处理器。所述存储器包含缓冲器。所述处理器经配置以接收待译码的视频数据。所述处理器经进一步配置以至少部分地基于译码模式的位速率和所述缓冲器的充满度确定所述译码模式的拉格朗日参数。

Description

用于译码视频数据的设备、方法及计算机可读媒体
技术领域
本发明涉及视频译码和压缩的领域,且确切地说,涉及用于经由显示链路的传输的视频压缩,例如,显示流压缩(DSC)。
背景技术
相关技术的描述
可将数字视频能力并入到广泛范围的显示器中,包含数字电视、个人数字助理(PDA)、膝上型计算机、台式监视器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏机、蜂窝或卫星无线电电话、视频电话会议装置和类似者。显示链路用于将显示器连接到适当源装置。显示链路的带宽要求与显示器的分辨率成正比,且因此,高分辨率显示器需要大带宽显示链路。一些显示链路不具有支持高分辨率显示器的带宽。可使用视频压缩减少带宽要求,使得可使用较低带宽显示链路将数字视频提供到高分辨率显示器。
其他人已尝试利用对像素数据的图像压缩。然而,此类方案有时并不能视觉上无损,或可能在常规显示装置中实施起来困难且昂贵。
视频电子学标准协会(VESA)已开发了显示流压缩(DSC)作为用于显示链路视频压缩的标准。显示链路视频压缩技术(例如,DSC)应尤其提供视觉上无损的图片质量(即,足够好,以致用户不会知道使用了压缩)。显示链路视频压缩技术还应提供用常规硬件实时实施起来简单且廉价的方案。
发明内容
本发明的系统、方法及装置各自具有若干创新方面,其中没有单个方面单独负责本文所揭示的合乎需要的属性。
在一个方面中,一种用于译码视频数据的设备包含用于存储所述视频数据的存储器和处理器。所述存储器包含缓冲器。所述处理器经配置以接收待译码的所述视频数据。所述处理器经进一步配置以至少部分地基于译码模式的位速率和缓冲器的充满度确定译码模式的拉格朗日参数。
附图说明
图1A是说明可利用根据本发明中描述的方面的技术的实例视频编码和解码系统的框图。
图1B是说明可执行根据本发明中描述的方面的技术的另一实例视频编码和解码系统的框图。
图2A是说明可实施根据本发明中描述的方面的技术的视频编码器的实例的框图。
图2B是说明可实施根据本发明中描述的方面的技术的视频解码器的实例的框图。
图3是说明根据本发明中描述的方面的拉格朗日参数计算的方法的流程图。
具体实施方式
一般来说,本发明涉及用于在例如显示流压缩(DSC)的视频压缩技术的上下文中确定拉格朗日参数的技术。虽然本文中在DSC标准的上下文中描述某些实施例,但所属领域的技术人员将了解,本文中揭示的系统和方法可适用于任何合适的视频译码标准。举例来说,本文中揭示的实施例可适用于以下标准中的一或多者:国际电信联盟(ITU) 电信标准化部门(ITU-T)H.261、国际标准化组织/国际电工委员会(ISO/IEC)动画专家组-1 (MPEG-1)Visual、ITU-T H.262或ISO/IEC MPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual、ITU-T H.264(也称为ISO/IEC MPEG-4AVC)和高效率视频译码(HEVC),以及此类标准的扩展。此外,本发明中描述的技术可变为将来开发的标准的部分。换句话说,本发明中描述的技术可适用于先前开发的视频译码标准、当前正在开发的视频译码标准和即将出现的视频译码标准。
可通过考虑速率和失真两者来计算DSC中的每一模式的拉格朗日成本:成本=D+λR,其中D表示与特定译码模式相关联的失真,且R表示对应位速率。此处,λ可指平衡失真与速率的拉格朗日乘数。拉格朗日乘数(λ)可影响译码器(例如,解码器)处速率- 失真性能的确定。举例来说,λ的较小值往往会导致选择具有极小失真的译码模式,这可在选定译码模式的速率(例如)相对于其它可能译码模式极高的情况下导致缓冲器溢出。另一方面,λ的较高值往往会导致在译码模式当中选择具有最小速率的译码模式,这可影响经重建图像的质量。现有方法可不恰当地计算参数λ,这可导致次最优译码性能。举例来说,现有方法基于量化参数(QP)确定参数λ且不考虑位速率和/或缓冲器充满度。因此,可能需要计算参数λ以便实现最优译码性能。
为了解决这些和其它难题,所述技术基于位速率和/或缓冲器的充满程度(“缓冲器充满度”)而确定拉格朗日参数。举例来说,所述技术依据译码模式的位速率和缓冲器充满度计算拉格朗日正则化参数。DSC可具有数种译码模式,且每一译码模式具有与相应译码模式相关联的位速率。所述技术可基于译码模式的位速率和缓冲器充满度而确定每一译码模式的拉格朗日参数。在一个实施例中,基于位速率比计算第一拉格朗日参数或乘数,且基于缓冲器充满度计算第二拉格朗日参数或乘数。基于第一拉格朗日参数和第二拉格朗日参数(例如,通过相乘或相加)计算组合的拉格朗日参数。组合的拉格朗日参数值可用以确定译码模式的拉格朗日成本。所述技术可比较不同译码模式的拉格朗日成本且视需要基于相应拉格朗日成本选择适合译码模式。
以此方式,所述技术可确定反映位速率和/或缓冲器的状态(例如,缓冲器充满度)的拉格朗日参数,这可有助于选择适于给定情境的译码模式。考虑位速率和缓冲器的状态可提供用于确定译码模式的拉格朗日成本的更准确拉格朗日参数值。更准确拉格朗日成本可帮助选择最优译码模式,从而产生较好图像重建质量。
视频译码标准
例如视频图像、TV图像、静态图像或由录像机或计算机产生的图像等数字图像可包含布置成水平和垂直线的像素或样本。单个图像中的像素的数目通常有数万个。每一像素通常含有亮度和色度信息。在无压缩的情况下,将从图像编码器传达到图像解码器的信息的绝对量将使实时图像传输变得不可行。为了减少待传输的信息的量,已开发出例如JPEG、MPEG及H.263标准等数个不同压缩方法。
视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1Visual、ITU-T H.262或ISO/IECMPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual、ITU-T H.264(也称为ISO/IEC MPEG-4AVC),以及包含此类标准的扩展的HEVC。
另外,VESA已开发视频译码标准(即,DSC)。DSC标准为可压缩视频以供经由显示链路传输的视频压缩标准。随着显示器的分辨率增大,驱动显示器需要的视频数据的带宽相应地增大。针对此类分辨率,一些显示链路可能不具有带宽来将所有视频数据传输到显示器。因此,DSC标准指定用于显示链路上的可互操作、视觉无损压缩的压缩标准。
DSC标准不同于其它视频译码标准,例如,H.264和HEVC。DSC包含帧内压缩,但不包含帧间压缩,这意味着DSC标准在译码视频数据时不可使用时间信息。相比之下,其它视频译码标准可在其视频译码技术中使用帧间压缩。
视频译码系统
下文参考附图更充分地描述新颖系统、设备和方法的各个方面。然而,本发明可以许多不同形式来体现,且不应将其解释为限于贯穿本发明所呈现的任何特定结构或功能。而是,提供这些方面以使得本发明将透彻且完整,并且将向所属领域的技术人员充分传达本发明的范围。基于本文中的教示,所属领域的技术人员应了解,本发明的范围意在涵盖无论是独立于本发明的任何其它方面而实施还是与之组合而实施的本文中所揭示的新颖系统、设备及方法的任何方面。举例来说,可以使用本文中所阐述的任何数目个方面来实施设备或实践方法。另外,本发明的范围意在涵盖使用除本文中所阐述的本发明的各种方面之外的或不同于本文中所阐述的本发明的各种方面的其它结构、功能性或结构与功能性来实践的此设备或方法。应理解,可通过权利要求的一或多个要素来体现本文中所揭示的任何方面。
尽管在本文中描述了特定方面,但这些方面的许多变化及排列落在本发明的范围内。尽管述及优选方面的一些益处和优点,但本发明的范围不意在限于特定益处、用途或目标。而是,本发明的方面意在广泛地适用于不同无线技术、系统配置、网络和传输协议,其中的一些是借助于实例而在图中以及在优选方面的以下描述中说明。具体描述和图式仅说明本发明,而不是限制由所附权利要求书和其等效物界定的本发明的范围。
附图说明若干实例。由附图中的参考标号指示的元件对应于在以下描述中由相同参考标号指示的元件。在本发明中,具有以序数词(例如,“第一”、“第二”、“第三”等)开始的名称的元件不一定暗示所述元件具有特定次序。而是,此类序数词仅用于指代相同或类似类型的不同元件。
图1A是说明可利用根据本发明中所描述的方面的技术的实例视频译码系统10的框图。如本文中所描述地使用,术语“视频译码器”或“译码器”一般指视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码和视频解码。除了视频编码器和视频解码器外,本申请案中描述的方面可扩展到其它相关装置,例如转码器(例如,可解码位流且重新编码另一位流的装置)及中间体(例如,可修改、变换及/或以其它方式操纵位流的装置)。
如图1A中所展示,视频译码系统10包含产生稍后待由目的地装置14解码的经编码视频数据的源装置12。在图1A的实例中,源装置12与目的地装置14构成单独的装置。然而,应注意,源装置12和目的地装置14可在同一装置上或为同一装置的部分,如在图1B的实例中所展示。
再次参考图1A,源装置12和目的地装置14可分别包括广泛范围的装置中的任一者,包含台式计算机、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如,所谓的“智能”电话)、所谓的“智能”板、电视、相机、显示装置、数字媒体播放器、视频游戏机、视频流装置或类似者。在各种实施例中,源装置12和目的地装置14可经装备以用于无线通信。
目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在图1A 的实例中,链路16可包括使得源装置12能够实时将经编码视频数据传输到目的地装置 14的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码的视频数据,并将其传输到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成分组网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换机、基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
在图1A的实例中,源装置12包含视频源18、视频编码器20和输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。在源装置12中,视频源18可包含例如视频捕获装置(例如,摄像机)、含有先前所捕获视频的视频存档、从视频内容提供者接收视频的视频馈入接口和/或用于产生计算机图形数据作为源视频的计算机图形系统的来源,或此类来源的组合。作为一个实例,如果视频源18是摄像机,那么源装置12和目的地装置14可形成所谓的“相机电话”或“视频电话”,如图 1B的实例中所说明。然而,本发明中所描述的技术一般来说可适用于视频译码,且可应用于无线和/或有线应用。
可由视频编码器20对所捕获、预捕获或计算机产生的视频进行编码。经编码视频数据可经由源装置12的输出接口22传输到目的地装置14。经编码视频数据也可(或替代地)存储到存储装置31上以供稍后由目的地装置14或其它装置存取以用于解码和/或回放。图1A和1B中说明的视频编码器20可包括图2A中说明的视频编码器20或本文中所描述的任何其它视频编码器。
在图1A的实例中,目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些情况下,输入接口28可包含接收器和/或调制解调器。目的地装置14的输入接口 28可经由链路16和/或从存储装置31接收经编码视频数据。经由链路16传达或在存储装置31上提供的经编码视频数据可包含由视频编码器20产生的多种语法元素,以供由例如视频解码器30的视频解码器在解码视频数据时使用。此类语法元素可与在通信媒体上传输、存储于存储媒体上或存储于文件服务器上的经编码视频数据包含在一起。
显示装置32可与目的地装置14集成或者在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,并且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在相关方面中,图1B展示实例视频译码系统10′,其中源装置12和目的地装置 14在装置11上或为其部分。装置11可为电话手持机,例如“智能”电话或类似者。装置11可包含与源装置12和目的地装置14操作性通信的控制器/处理器装置13(视情况存在)。图1B的视频译码系统10'和其组件另外类似于图1A的视频译码系统10和其组件。
视频编码器20和视频解码器30可根据视频压缩标准(例如,DSC)操作。替代地,视频编码器20和视频解码器30可根据其它专属或行业标准(例如,ITU-T H.264标准,替代地被称为MPEG-4第10部分AVC、HEVC或此类标准的扩展)操作。但是,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含MPEG-2和ITU-T H.263。
尽管图1A和1B的实例中未展示,但视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当的多路复用器-多路分用器(MUX-DEMUX)单元或其它硬件和软件以处置共同数据流或单独数据流中的音频和视频两者的编码。在一些实例中,如果适用的话,那么MUX-DEMUX单元可以符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
视频编码器20和视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地用软件实施所述技术时,装置可将用于软件的指令存储在合适的非暂时性计算机可读媒体中且在硬件中使用一或多个处理器执行所述指令以执行本发明的技术。视频编码器20和视频解码器30 中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器的部分。
视频译码过程
如上文简要提及,视频编码器20编码视频数据。视频数据可包括一或多个图片。图片中的每一者为形成视频的部分的静态图像。在一些情况下,图片可被称作视频“帧”。当视频编码器20对视频数据进行编码时,视频编码器20可产生位流。位流可包含形成视频数据的经译码表示的位序列。位流可包含经译码图片和相关联数据。经译码图片是图片的经译码的表示。
为了产生位流,视频编码器20可对视频数据中的每一图片执行编码操作。当视频编码器20对图片执行编码操作时,视频编码器20可产生一系列经译码图片和相关联数据。相关联数据可包含例如QP的译码参数的集合。为了产生经译码图片,视频编码器 20可将图片分割成大小相等的视频块。视频块可为样本的二维阵列。译码参数可定义用于视频数据的每一块的译码选项(例如,译码模式)。可选择译码选项以便达成所要的速率-失真性能。
在一些实例中,视频编码器20可将图片分割成多个切片。切片中的每一者可包含图像(例如,帧)中的空间相异区域,所述区域可在无来自所述图像或帧中的其余区域的信息的情况下独立地解码。每一图像或视频帧可在单个切片中编码,或其可在若干切片中编码。在DSC中,被分派以编码每一切片的目标位可基本上恒定。作为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码操作。当视频编码器20 对切片执行编码操作时,视频编码器20可产生与切片相关联的经编码数据。与切片相关联的经编码数据可被称为“经译码切片”。
DSC视讯编码器
图2A是说明可实施根据本发明中描述的方面的技术的视频编码器20的实例的框图。视频编码器20可经配置以执行本发明技术中的一些或全部。在一些实例中,本发明中描述的技术可在视频编码器20的各种组件当中共享。在一些实例中,另外或替代地,处理器(未图示)可经配置以执行本发明中描述的技术中的一些或全部。
出于解释的目的,本发明在DSC译码的上下文中描述视频编码器20。然而,本发明的技术可以适用于其它译码标准或方法。
在图2A的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件包含色彩-空间转换器105、缓冲器110、平度检测器115、速率控制器120、预测器、量化器和重建器组件125、线缓冲器130、索引的色彩历史135、熵编码器140、子流多路复用器145和速率缓冲器150。在其它实例中,视频编码器20可包含更多、更少或不同功能组件。
色彩-空间转换器105可将输入的色彩-空间转换到在译码实施方案中使用的色彩-空间。举例来说,在一个示例性实施例中,输入视频数据的色彩-空间在红、绿和蓝(RGB)色彩-空间中,且以亮度Y、色度绿Cg和色度橙Co(YCgCo)色彩-空间实施译码。色彩- 空间转换可通过包含移位和添加到视频数据的方法执行。应注意,可处理其它色彩空间中的输入视频数据,且也可执行到其它色彩空间的转换。
在有关方面中,视频编码器20可包含缓冲器110、线缓冲器130和/或速率缓冲器150。举例来说,缓冲器110可在经色彩-空间转换的视频数据由视频编码器20的其它部分使用前将其保持。在另一实例中,视频数据可存储在RGB色彩-空间中,且可按需要执行色彩-空间转换,这是由于经色彩-空间转换的数据可能需要较多位。
速率缓冲器150可充当视频编码器20中的速率控制机构的部分,这将在下文结合速率控制器120更详细地描述。在编码每一块上花费的位可基本上基于块的性质而变化很大。速率缓冲器150可使经压缩视频的速率变化平稳。在一些实施例中,使用恒定位率(CBR)缓冲器模型,其中以恒定位率从缓冲器取出位。在CBR缓冲器模型中,如果视频编码器20将过多的位添加到位流,那么速率缓冲器150可溢出。另一方面,视频编码器20必须添加足够位以便防止速率缓冲器150的下溢。
在视频解码器侧上,可以恒定位率将位添加到视频解码器30的速率缓冲器155(见下文进一步详细描述的图2B),且视频解码器30可针对每一块去除不同数目个位。为了确保适当解码,视频解码器30的速率缓冲器155在经压缩位流的解码期间不应“下溢”或“溢出”。
在一些实施例中,可基于表示当前在缓冲器中的位的数目的值BufferCurrentSize和表示速率缓冲器150的大小(即,在任一时间点可存储在速率缓冲器150中的最大位数) 的BufferMaxSize来定义缓冲器充满度(BF)。BF可以计算为:
BF=((BufferCurrentSize*100)/BufferMaxSize)
平度检测器115可检测视频数据中的复杂(即,非平坦)区到视频数据中的平坦(即,简单或均匀)区的改变。术语“复杂”和“平坦”将在本文中用以大体指视频编码器20 编码视频数据的相应区域的难度。因此,如本文中使用的术语“复杂”将视频数据的区域大体描述为视频编码器20编码起来复杂或困难,且可(例如)包含纹理化的视频数据、高空间频率和/或编码起来复杂的其它特征。举例来说,当编码视频数据的区域需要的位数目大于阈值时,可将所述区域确定为复杂区域。如本文中使用的术语“平坦”将视频数据的区域大体描述为视频编码器20编码起来简单,且可(例如)包含视频数据中的平滑梯度、低空间频率和/或编码起来简单的其它特征。举例来说,当编码视频数据的区域需要的位数目小于阈值时,可将所述区域确定为平坦区域。
然而,取决于实施方案,给定区域复杂或平坦的确定也可基于所使用的编码标准、视频编码器20中包含的特定硬件、待编码的视频数据的类型等来确定。另外,视频数据区域的某些性质可影响需要多少位来编码区域,例如,高纹理和/或高空间频率区域与较低纹理和/或较低空间频率区域相比可需要更多的位来编码。类似地,与视频数据的更结构化区域相比,包括随机噪声的区域可需要大量位来编码。因此,在某些实施方案中,可通过将纹理和/或空间频率(例如,复杂性值)的测量值与复杂性阈值进行比较来将视频数据的区域识别为复杂和/或平坦区域。视频编码器20可使用复杂区域与平坦区域之间的过渡减少经编码视频数据中的量化伪影。具体来说,当识别到从复杂区域到平坦区域的过渡时,速率控制器120以及预测器、量化器和重建器组件125可减少此类量化伪影。
速率控制器120确定一组译码参数,例如QP。速率控制器120可基于速率缓冲器150的缓冲器充满度和视频数据的图像活动来调整QP,以便针对确保速率缓冲器150 不溢出或下溢的目标位率最大化图片质量。速率控制器120还选择用于视频数据的每一块的特定译码选项(例如,特定模式),以便达成最优速率-失真性能。速率控制器120使重建的图像的失真最小化,使得其满足位率约束,即,总实际译码速率在目标位率范围内。
预测器、量化器和重建器组件125可执行视频编码器20的至少三个编码操作。预测器、量化器和重建器组件125可以许多不同模式执行预测。一个实例预测模式为中值自适应预测的经修改版本。中值自适应预测可由无损JPEG标准(JPEG-LS)实施。可由预测器、量化器和重建器组件125执行的中值自适应预测的经修改版本可允许三个连续样本值的并行预测。另一实例预测模式为块预测。在块预测中,从左侧的先前重建的像素预测样本。视频编码器20和视频解码器30两者均可对重建的像素执行相同搜索以确定块预测使用,且因此,不需要在块预测模式中发送位。也可实施中点预测模式,其中使用组件范围的中点来预测样本。中点预测模式可在甚至最坏情况样本下实现对于经压缩视频需要的位数目的定界。
预测器、量化器和重建器组件125还执行量化。举例来说,可经由可使用移位器实施的2的幂次量化器执行量化。应注意,可实施其它量化技术,代替2的幂次量化器。由预测器、量化器和重建器组件125执行的量化可基于由速率控制器120确定的QP。最后,预测器、量化器和重建器组件125还执行重建,包含将经反量化的残差加到经预测值和确保结果不落在样本值的有效范围之外。
应注意,以上描述的由预测器、量化器和重建器组件125执行的预测、量化和重建的实例方法只是说明性的且可实施其它方法。还应注意,预测器、量化器和重建器组件 125可包含用于执行预测、量化和/或重建的一或多个子组件。应进一步注意,若干单独的编码器组件可代替预测器、量化器和重建器组件125执行预测、量化和/或重建。
线缓冲器130保持来自预测器、量化器和重建器组件125的输出,使得预测器、量化器和重建器组件125和索引的色彩历史135可使用经缓冲视频数据。索引的色彩历史 135存储最近使用的像素值。视频编码器20可经由专用语法直接引用这些最近使用的像素值。
熵编码器140基于索引的色彩历史135和由平度检测器115识别的平度过渡,编码从预测器、量化器和重建器组件125接收的预测残差。在一些实例中,熵编码器140可每子流编码器每时钟编码三个样本。子流多路复用器145可基于无标头分组多路复用方案多路复用位流。这允许视频解码器30并行地运行三个熵解码器,从而有助于每时钟解码三个像素。子流多路复用器145可优化分组次序,使得视频解码器30可有效地解码分组。应注意,可实施熵译码的不同方法,这可有助于每时钟解码2的幂个像素(例如, 2个像素/时钟或4个像素/时钟)。
DSC视讯解码器
图2B是说明可实施根据本发明中描述的方面的技术的视频解码器30的实例的框图。视频解码器30可经配置以执行本发明的技术中的一些或全部。在一些实例中,本发明中描述的技术可在视频编码器30的各种组件当中共享。在一些实例中,另外或替代地,处理器(未示出)可经配置以执行本发明中描述的技术中的一些或全部。
出于解释的目的,本发明在DSC译码的上下文中描述视频解码器30。然而,本发明的技术可以适用于其它译码标准或方法。
在图2B的实例中,视频解码器30包含多个功能组件。视频解码器30的功能组件包含速率缓冲器155、子流多路分用器160、熵解码器165、速率控制器170、预测器、量化器和重建器组件175、索引的色彩历史180、线缓冲器185和色彩-空间转换器190。视频解码器30的所说明的组件类似于上文结合图2A中的视频编码器20描述的对应组件。因而,视频解码器30的组件中的每一者可以类似于如上文所描述的视频编码器20 的对应组件的方式操作。
DSC中的切片
如上所述,切片大体是指图像或帧中的空间相异区域,所述区域可在不使用来自所述图像或帧中的其余区域的信息的情况下独立地解码。每一图像或视频帧可在单个切片中编码,或其可在若干切片中编码。在DSC中,被分派以编码每一切片的目标位可基本上恒定。
拉格朗日参数的计算
可通过拉格朗日成本函数提供拉格朗日成本。举例来说,拉格朗日成本函数可以不受约束的优化问题的形式且通常以f(x)+λg(x)的形式提供受约束的优化问题(例如,在g(x)=c的条件下最小化f(x))的替代性公式表示。可通过考虑速率和失真两者来计算DSC中的每一模式的成本:成本=D+λR,其中D表示与特定译码模式相关联的失真,且R 表示对应位速率。此处,λ可指平衡失真与速率的拉格朗日乘数。
拉格朗日乘数(λ)可影响译码器(例如,解码器)处速率-失真性能的确定。举例来说,λ的较小值往往会导致选择具有极小失真的译码模式,这可在选定模式的速率极高的情况下导致缓冲器溢出。另一方面,λ的较高值往往会导致在所述模式当中选择具有最小速率的模式,这可影响经重建影像的质量。现有方法可不恰当地计算参数λ,这可导致次最优译码性能。举例来说,现有方法基于QP确定参数λ且不考虑位速率和/或缓冲器充满度。因此,可能需要计算参数λ以便实现最优译码性能。
为了解决这些和其它难题,所述技术基于位速率和缓冲器充满度确定拉格朗日参数。举例来说,所述技术依据译码模式的位速率和缓冲器充满度计算拉格朗日正则化参数。DSC可具有数种可能(或可用)的译码模式。根据某些方面,译码模式的实例可包含:变换模式、块预测模式、差量脉码调制(DPCM)模式(基于中值自适应性预测)、型样模式、脉码调制(PCM)模式、平均值模式、中点预测模式。每一译码模式具有与相应译码模式相关联的位速率。举例来说,位速率可表示由模式使用来(例如)对块进行译码的位数目。所述技术可基于译码模式的位速率和缓冲器充满度而确定每一译码模式的拉格朗日参数。在一个实施例中,基于位速率比计算第一拉格朗日参数或乘数,且基于缓冲器充满度计算第二拉格朗日参数或乘数。基于第一拉格朗日参数和第二拉格朗日参数(例如,通过相乘或相加)计算组合的拉格朗日参数。组合的拉格朗日参数值可用以确定译码模式的拉格朗日成本。所述技术可比较不同译码模式的拉格朗日成本且视需要选择适合译码模式。在一个实施例中,选择具有最低拉格朗日成本的译码模式。
以此方式,所述技术可确定反映位速率和/或缓冲器的状态的拉格朗日参数,这可有助于选择适于给定情境的译码模式。举例来说,当缓冲器接近于溢出(例如,靠近溢出状态)时,选择具有较小位速率但具有较高失真的译码模式将为优选的以便避免缓冲器溢出,且当缓冲器处于下溢状态中时,选择具有较高位速率但具有较低失真的译码模式将产生较好结果。考虑位速率和缓冲器的状态可提供用于确定译码模式的拉格朗日成本的更准确拉格朗日参数值。举例来说,因为DSC具有严格的速率约束(例如,CBR),所以模式的位速率和缓冲器充满度可在维持CBR中发挥重要作用。更准确拉格朗日成本可帮助选择最优译码模式,从而产生较好图像重建质量。
在下文(例如)结合实例实施例解释与确定DSC中的拉格朗日参数有关的某些细节。可单独地或组合地实施本发明中描述的所有特征和/或实施例。贯穿本发明所使用的各种术语是具有它们的一般含义的广义术语。如本文中所描述地使用,术语“视频译码器”一般指代视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码和视频解码。除了视频编码器和视频解码器外,本申请案中描述的方面可扩展到其它相关装置,例如转码器(例如,可解码位流且重新编码另一位流的装置) 及中间体(例如,可修改、变换及/或以其它方式操纵位流的装置)。
实例实施例
在一个实施例中,提供用以基于位速率和缓冲器充满度计算λ的设备和方法。举例来说,可根据下文所描述的步骤计算λ。出于说明性目的在编码方面解释实例实施例,且所述技术还适用于解码。一般来说,译码可指编码和解码两者。在某些实施例中,术语拉格朗日乘数和拉格朗日参数可互换使用。
1.基于位速率比计算拉格朗日乘数
根据某些方面,所述技术可依据位速率比(标示为BR)计算λ,所述位速率比可定义为用于通过特定模式编码当前块的位数除以最大位数(标示为maxBits)的比:
BR=位数/maxBits。
此处,maxBits可对应于用于在无任何压缩的情况下编码视觉信息的位数且可计算如下:
maxBits=当前块中的像素的数目*位深度*色彩分量的数目。
位深度可指用于指示单个像素的每一色彩分量的位数,例如用于RGB 888图像格式的8位。
●单调递增函数可用以计算λ值。举例来说,λ的值随着位速率比增加而增加。
●在一个实例中,以下单调递增函数可用以计算λ:
-a*2(((BR*b)-c)/d)
-此处,a、b、c和d是可配置的实常数,且BR表示位速率比。
●在另一实例中,在计算maxBits时,除了在无任何压缩的情况下编码当前块所需要的位以外,也可考虑用信号表示模式信息所需要的额外位(此处表示为additionalBits)。所述额外位可用以用信号表示可包含模式信息或其它信息的标头。举例而言:
-maxBits=maxBits+additionalBits。
●在一个实例中,maxBits可设置成等于maxBits与切片内剩余的位数(例如,留在切片中以编码切片中的块或像素的其余部分的实际位)之间的最小值。
●在另一实例中,当位速率比BR严格地大于1时,λ值可设置为无穷大。
●在又另一实例中,用于切片中的第一线的λ值当与用于切片中的其余线的λ值相比时可不相同。举例来说,可使用下式计算用于切片中的第一线的λ值:
-m1*2(((BR*m2)-m3)/m4)
-此处,m1、m2、m3和m4是可配置的实常数,且BR表示位速率比。
2.基于缓冲器充满度计算拉格朗日乘数
可依据BF计算另一λ值。惩罚(例如,λ)可随着在缓冲器中占用的位数增长而增加,使得所述惩罚将在缓冲器即将溢出时为强和/或大,且在缓冲器即将下溢时为小。在一些实施例中,拉格朗日乘数或参数可被称为惩罚,这是因为拉格朗日乘数或参数可在缓冲器达到充满时充当针对在速率方面太昂贵的模式的惩罚。
●单调递增函数可用以计算λ值,例如λ的值随着BF增加而增加。
●在一个实例中,以下单调递增函数可用以计算λ:
-a1*2(((BF*b1)-c1)/d1)
-此处,a1、b1、c1和d1可为可配置的实常数。
●在另一个实例中,λ的值可以一值(例如,Λ)为下限;此确保惩罚无法极小,这可有助于防止缓冲器快速增长。更精确而言,所述惩罚可计算为:
-
●在一个实例中,可使用以下表达式将缓冲器充满度值四舍五入为最近整数:
-BF=((BufferCurrentSize*100)+(BufferMaxSize>>1))/BufferMaxSize。
-可以其它方式计算BF,且BF计算的选定方法可取决于上下文和应用而变化。
●在另一实例中,可通过将BF除以100来将BF归一化为0到1。归一化的BF值可用以计算λ值。
●在又另一实例中,用于切片中的第一线的λ值当与用于切片中的其余线的λ值相比时可不相同。举例来说,可使用下式计算用于切片中的第一线的λ值:
-n1*2(((BF*n2)-n3)/n4)
-此处,n1、n2、n3和n4是可配置的实常数,且BF表示缓冲器充满度。
3.计算组合的拉格朗日参
惩罚(例如,在上述步骤1和2中所计算)可用以依众多方式计算λ。在一个实施方案中,可将惩罚相乘以计算单个λ值,使得所计算的λ值取决于位速率和BF。
●举例来说,单个λ值可计算为(a*2(((BR*b)-c)/d))*(a1*2(((BF*b1)-c1)/d1))。
●在相关方面中,同一λ值可用于切片中的所有线。
●在进一步的相关方面中,与用于切片中的其余线的惩罚相比的不同λ值可用于切片中的第一线。
●在又进一步的相关方面中,可计算切片中的第一线的单个λ值为(m1* 2(((BR *m2)-m3)/m4))*(n1*2(((BF*n2)-n3)/n4))。
●在再进一步的相关方面中,可计算切片中的第一线的单个λ值为(m1* 2(((BR *m2)-m3)/m4))*(a1*2(((BF*b1)-c1)/d1))。
●在相关方面中,可计算切片中的第一线的单个λ值为(a*2(((BR*b)-c)/d))*(n1* 2(((BF*n2)-n3)/n4))。
在其它实施例中,可将惩罚(例如,根据上述步骤1和2所计算的)加在一起以计算单个λ值,使得所计算的λ值取决于位速率和BF。
●举例来说,单个λ值计算为(a*2(((BR*b)-c)/d))+(a1*2(((BF*b1)-c1)/d1))。
●在相关方面中,可计算切片中的第一线的单个λ值为(m1*2(((BR*m2)-m3)/m4))+(n1*2(((BF*n2)-n3)/n4))。
●在又一相关方面中,可计算切片中的第一线的单个λ值为(m1*2(((BR*m2)-m3)/m4))*(a1*2(((BF*b1)-c1)/d1))。
●在又进一步的相关方面中,可计算切片中的第一线的单个λ值为(a*2(((BR *b)-c)/d)) *(n1*2(((BF*n2)-n3)/n4))。
4.比较不同模式的拉格朗日成本并且选择模式
对于DSC中的每一模式,拉格朗日参数(例如,如在上述步骤3中所计算)可用以确定拉格朗日成本。如上文所解释,拉格朗日成本可计算为:成本=D+λR。所述技术可比较不同模式的拉格朗日成本且选择用于译码视频数据的适当模式。在一个实施例中,选择具有最低拉格朗日成本的模式。在一些实施例中,具有最低拉格朗日成本的模式可具有过高速率,这可致使缓冲器溢出。或者,使用具有最低拉格朗日成本的模式对块进行译码可占用如此多的位,以致于仅可留下极小数目个位来译码切片中的其余块。在所述情况下,可选择次佳模式(例如,具有次低拉格朗日成本、第三低拉格朗日成本等的模式)。举例来说,选择可防止缓冲器溢出或不占用太多位的次佳模式。
确定DSC中的拉格朗日参数的方法
图3是说明根据本发明的实施例的用于译码视频数据的过程300的流程图。所述方法涉及确定拉格朗日参数。过程300的块可由视频编码器(例如,图2A中的视频编码器 20)、视频解码器(例如,图2B中的视频解码器30)或其组件执行。出于说明性目的,将过程300描述为由视频译码器(也简单地被称作译码器)执行,所述视频译码器可为视频编码器20、视频解码器30或另一组件。关于图3所描述的所有实施例可单独地或彼此组合地实施。以上解释了与过程300有关的某些细节。
所处过程开始于框301。译码器可包含用于存储视频数据的存储器。存储器可包含缓冲器。
在框302处,译码器(例如)经由DSC接收待译码的视频数据。
在框303处,译码器至少部分地基于译码模式的位速率和所述缓冲器的充满度确定所述译码模式(例如,与DSC相关联)的拉格朗日参数。在一个实施例中,译码器基于当前块的位速率比确定第一拉格朗日乘数,其中位比为用于使用译码模式译码当前块的位的数目除以用于在无任何压缩的情况下译码当前块的位的数目的比;基于缓冲器的充满度确定第二拉格朗日乘数;且至少部分地基于第一拉格朗日乘数和第二拉格朗日乘数确定拉格朗日参数(例如,组合的拉格朗日参数)。译码器可经由将第一拉格朗日乘数和第二拉格朗日乘数相乘来确定拉格朗日参数。或者,译码器可经由将第一拉格朗日乘数和第二拉格朗日乘数相加来确定拉格朗日参数。
在另一实施例中,译码器基于当前块的位速率比确定第一拉格朗日乘数,其中位比为用于使用译码模式译码当前块的位的数目除以用于在无任何压缩的情况下译码当前块的位的数目与用于译码与译码模式相关联的信息的位的数目的总和的比;基于缓冲器的充满度确定第二拉格朗日乘数;且至少部分地基于第一拉格朗日乘数和第二拉格朗日乘数确定拉格朗日参数(例如,组合的拉格朗日参数)。
DSC可包含多个译码模式。在一些实施例中,译码器获得与多个译码模式有关(例如,与DSC相关联)的信息;确定多个译码模式中的每一者的相应拉格朗日参数;至少部分地基于相应拉格朗日参数选择多个译码模式的第一译码模式;且使用第一译码模式将当前块译码在位流中。在一个实施例中,对于多个译码模式中的每一者,译码器确定与每一译码模式相关联的拉格朗日成本,所述拉格朗日成本经确定为:每一译码模式的失真+每一译码模式的拉格朗日参数*每一译码模式的位速率。译码器可选择多个译码模式的具有最低拉格朗日成本的译码模式作为第一译码模式。
在某些实施例中,包含当前块的切片包含多个线,所述多个线包含第一线,且第一线的拉格朗日参数是以不同于所述多个线的其它线的方式经确定。在其它实施例中,包含当前块的切片包含多个线,所述多个线包含第一线,且第一线的拉格朗日参数是以与所述多个线的其它线相同的方式经确定。
过程300结束于框304处。取决于实施例,可在过程300中添加及/或省略框,且取决于实施例,过程300的框可以不同次序执行。
可分开或以其任何组合实施本发明中描述的任何特征和/或实施例。举例来说,结合图1到2和本发明的其它部分描述的任何特征和/或实施例可以与结合图3描述的任何特征和/或实施例的任何组合来实施,且反之亦然。本发明的实施例不限于图3中展示的实例或不受到图3中展示的实例限制,且可在不脱离本发明的精神的情况下实施其它变化形式。
其它考虑
可使用多种不同技术和技艺中的任一者来表示本文中所揭示的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
结合本文中揭示的实施例所描述的各种说明性逻辑块及算法步骤可实施为电子硬件、计算机软件,或两者的组合。为清楚说明硬件与软体的此可互换性,上文已大体上关于其功能性而描述了各种说明性组件、块和步骤。此功能性是实施为硬件还是软件取决于特定应用及施加于整个系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式实施所描述的功能性,但此类实施决策不应被解释为引起偏离本发明的范围。
本文中所描述的技术可在硬件、软件、固件或其任一组合中实施。所述技术可实施于多种装置中的任一者中,例如通用计算机、无线通信装置手持机或集成电路装置,其具有包含在无线通信装置手持机及其它装置中的应用的多种用途。被描述为装置或组件的任何特征可一起实施于集成逻辑装置中或分开实施为离散但可互操作的逻辑装置。如果在软件中实施,那么所述技术可至少部分地由包括程序代码的计算机可读数据存储媒体来实现,所述程序代码包含在被执行时实施上文所描述的方法中的一或多者的指令。计算机可读数据存储媒体可形成计算机程序产品的一部分,所述计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如随机存取存储器(RAM) (例如,同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存存储器、磁性或光学数据存储媒体等等。另外或作为替代,所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体携载或传达呈指令或数据结构形式且可由计算机存取、读取和 /或执行的程序代码(例如,传播的信号或波)。
程序代码可由处理器执行,所述处理器可包含一或多个处理器,例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA) 或其它等效集成或离散逻辑电路。此处理器可经配置以执行本发明中所描述的技术中的任一者。通用处理器可为微处理器;但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此类配置。因此,如本文中所使用的术语“处理器”可指前述结构中的任一者、上述结构的任何组合,或适合于实施本文中所描述的技术的任何其它结构或设备。另外,在某些方面中,可将本文中所描述的功能性提供于经配置以用于编码和解码的专用软件或硬件内或并入于组合的视频编码器-解码器(编解码器)中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件或单元是为了强调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可组合在编解码器硬件单元中,或者结合合适的软件和/或固件通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
虽然已经结合各种不同实施例描述了前文,但可在不脱离本发明的教示的情况下将来自一个实施例的特征或元件与其他实施例组合。然而,相应实施例之间的特征的组合不必限于此。已经描述本发明的各种实施例。这些和其它实施例在所附权利要求书的范围内。

Claims (30)

1.一种用于译码视频数据的设备,其包括:
存储器,其用于存储所述视频数据,所述存储器包含缓冲器;和
硬件处理器,其操作性地耦合到所述存储器且经配置以:
接收待译码的所述视频数据;和
至少部分地基于当前块的位速率比和所述缓冲器的充满度确定译码模式的拉格朗日参数,
其中所述位速率比基于用于使用所述译码模式译码所述当前块的位的数目除以用于在无任何压缩应用的情况下译码所述当前块的位的数目。
2.根据权利要求1所述的设备,其中所述处理器进一步经配置以:
基于所述当前块的位速率比确定第一拉格朗日乘数;
基于所述缓冲器的所述充满度确定第二拉格朗日乘数;和
至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数。
3.根据权利要求2所述的设备,其中所述处理器经配置以将所述第一拉格朗日乘数和所述第二拉格朗日乘数相乘。
4.根据权利要求2所述的设备,其中所述处理器经配置以将所述第一拉格朗日乘数和所述第二拉格朗日乘数相加。
5.根据权利要求1所述的设备,其中所述处理器进一步经配置以:
基于所述当前块的位速率比确定第一拉格朗日乘数;
基于所述缓冲器的所述充满度确定第二拉格朗日乘数;和
至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数。
6.根据权利要求1所述的设备,其中所述处理器经进一步配置以:
获得与多个译码模式有关的信息;
确定所述多个译码模式中的每一者的相应拉格朗日参数;
至少部分地基于所述相应拉格朗日参数选择所述多个译码模式的第一译码模式;和
使用所述第一译码模式将所述当前块译码在位流中。
7.根据权利要求6所述的设备,其中所述处理器经进一步配置以:
对于所述多个译码模式中的每一者,确定与每一译码模式相关联的拉格朗日成本,所述拉格朗日成本经确定为:每一译码模式的失真+每一译码模式的所述拉格朗日参数*每一译码模式的所述位速率。
8.根据权利要求7所述的设备,其中所述处理器经进一步配置以选择所述多个译码模式的具有最低拉格朗日成本的译码模式作为所述第一译码模式。
9.根据权利要求1所述的设备,其中包含当前块的切片包含多个线,所述多个线包含第一线,且其中所述第一线的所述拉格朗日参数是以不同于所述多个线的其它线的方式经确定。
10.根据权利要求1所述的设备,其中包含当前块的切片包含多个线,所述多个线包含第一线,且其中所述第一线的所述拉格朗日参数是以与所述多个线的其它线相同的方式经确定。
11.一种译码视频数据的方法,其包括:
将所述视频数据存储于存储器中,所述存储器包含缓冲器;
接收待译码的所述视频数据;和
至少部分地基于当前块的位速率比和所述缓冲器的充满度确定译码模式的拉格朗日参数,
其中所述位速率比基于用于使用所述译码模式译码所述当前块的位的数目除以用于在无任何压缩应用的情况下译码所述当前块的位的数目。
12.根据权利要求11所述的方法,其进一步包括:
基于所述当前块的位速率比确定第一拉格朗日乘数;
基于所述缓冲器的所述充满度确定第二拉格朗日乘数;和
至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数。
13.根据权利要求12所述的方法,其进一步包括将所述第一拉格朗日乘数和所述第二拉格朗日乘数相乘。
14.根据权利要求12所述的方法,其进一步包括将所述第一拉格朗日乘数和所述第二拉格朗日乘数相加。
15.根据权利要求11所述的方法,其进一步包括:
基于所述当前块的位速率比确定第一拉格朗日乘数;
基于所述缓冲器的所述充满度确定第二拉格朗日乘数;和
至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数。
16.根据权利要求11所述的方法,其进一步包括∶
获得与多个译码模式有关的信息;
确定所述多个译码模式中的每一者的相应拉格朗日参数;
至少部分地基于所述相应拉格朗日参数选择所述多个译码模式的第一译码模式;和
使用所述第一译码模式将所述当前块译码在位流中。
17.根据权利要求16所述的方法,其进一步包括:
对于所述多个译码模式中的每一者,确定与每一译码模式相关联的拉格朗日成本,所述拉格朗日成本经确定为:每一译码模式的失真+每一译码模式的所述拉格朗日参数*每一译码模式的所述位速率。
18.根据权利要求17所述的方法,其中选择所述多个译码模式的具有最低拉格朗日成本的译码模式作为所述第一译码模式。
19.根据权利要求11所述的方法,其中包含当前块的切片包含多个线,所述多个线包含第一线,且其中所述第一线的所述拉格朗日参数是以不同于所述多个线的其它线的方式经确定。
20.根据权利要求11所述的方法,其中包含当前块的切片包含多个线,所述多个线包含第一线,且其中所述第一线的所述拉格朗日参数是以与所述多个线的其它线相同的方式经确定。
21.一种包括指令的非暂时性计算机可读媒体,所述指令在包括计算机硬件的处理器上执行时致使所述处理器:
将视频数据存储于存储器中,所述存储器包含缓冲器;
接收待译码的所述视频数据;和
至少部分地基于当前块的位速率比和所述缓冲器的充满度确定译码模式的拉格朗日参数,
其中所述位速率比基于用于使用所述译码模式译码所述当前块的位的数目除以用于在无任何压缩应用的情况下译码所述当前块的位的数目。
22.根据权利要求21所述的计算机可读媒体,其中所述指令进一步致使所述处理器:
基于所述当前块的位速率比确定第一拉格朗日乘数;
基于所述缓冲器的所述充满度确定第二拉格朗日乘数;和
至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数。
23.根据权利要求21所述的计算机可读媒体,其中所述指令进一步致使所述处理器:
获得与多个译码模式有关的信息;
确定所述多个译码模式中的每一者的相应拉格朗日参数;
至少部分地基于所述相应拉格朗日参数选择所述多个译码模式的第一译码模式;和
使用所述第一译码模式将所述当前块译码在位流中。
24.根据权利要求23所述的计算机可读媒体,其中所述指令进一步致使所述处理器:
对于所述多个译码模式中的每一者,确定与每一译码模式相关联的拉格朗日成本,所述拉格朗日成本经确定为:每一译码模式的失真+每一译码模式的所述拉格朗日参数*每一译码模式的所述位速率。
25.根据权利要求24所述的计算机可读媒体,其中所述指令进一步致使所述处理器选择所述多个译码模式的具有最低拉格朗日成本的译码模式作为所述第一译码模式。
26.一种用于译码视频信息的设备,其包括:
用于将视频数据存储于存储器中的装置,所述存储器包含缓冲器;
用于接收待译码的所述视频数据的装置;和
用于至少部分地基于当前块的位速率比和所述缓冲器的充满度确定译码模式的拉格朗日参数的装置,
其中所述位速率比基于用于使用所述译码模式译码所述当前块的位的数目除以用于在无任何压缩应用的情况下译码所述当前块的位的数目。
27.根据权利要求26所述的设备,其进一步包括:
用于基于所述当前块的位速率比确定第一拉格朗日乘数的装置;
用于基于所述缓冲器的所述充满度确定第二拉格朗日乘数的装置;和
用于至少部分地基于所述第一拉格朗日乘数和所述第二拉格朗日乘数确定所述拉格朗日参数的装置。
28.根据权利要求26所述的设备,其进一步包括:
用于获得与多个译码模式有关的信息的装置;
用于确定所述多个译码模式中的每一者的相应拉格朗日参数的装置;
用于至少部分地基于所述相应拉格朗日参数选择所述多个译码模式的第一译码模式的装置;和
用于使用所述第一译码模式将所述当前块译码在位流中的装置。
29.根据权利要求28所述的设备,其进一步包括:
用于对于所述多个译码模式中的每一者,确定与每一译码模式相关联的拉格朗日成本的装置,所述拉格朗日成本经确定为:每一译码模式的失真+每一译码模式的所述拉格朗日参数*每一译码模式的所述位速率。
30.根据权利要求29所述的设备,其进一步包括用于选择所述多个译码模式的具有最低拉格朗日成本的译码模式作为所述第一译码模式的装置。
CN201580019553.4A 2014-04-15 2015-04-14 用于译码视频数据的设备、方法及计算机可读媒体 Active CN106165421B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201461979985P 2014-04-15 2014-04-15
US61/979,985 2014-04-15
US201462034080P 2014-08-06 2014-08-06
US62/034,080 2014-08-06
US14/685,453 2015-04-13
US14/685,453 US9866853B2 (en) 2014-04-15 2015-04-13 System and method for lagrangian parameter calculation for display stream compression (DSC)
PCT/US2015/025782 WO2015160826A2 (en) 2014-04-15 2015-04-14 System and method for lagrangian parameter calculation for display stream compression (dsc)

Publications (2)

Publication Number Publication Date
CN106165421A CN106165421A (zh) 2016-11-23
CN106165421B true CN106165421B (zh) 2019-07-19

Family

ID=54266173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580019553.4A Active CN106165421B (zh) 2014-04-15 2015-04-14 用于译码视频数据的设备、方法及计算机可读媒体

Country Status (10)

Country Link
US (1) US9866853B2 (zh)
EP (1) EP3132605B1 (zh)
JP (1) JP6453360B2 (zh)
KR (1) KR101975093B1 (zh)
CN (1) CN106165421B (zh)
BR (1) BR112016023955B1 (zh)
ES (1) ES2702940T3 (zh)
HU (1) HUE041490T2 (zh)
MX (1) MX358179B (zh)
WO (1) WO2015160826A2 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI538480B (zh) * 2014-05-27 2016-06-11 敦泰電子股份有限公司 藉由偵測鄰近像素複雜度來動態調整壓縮參數的影像壓縮系統
US10432952B2 (en) * 2015-11-19 2019-10-01 Qualcomm Incorporated System and methods for fixed-point approximations in display stream compression (DSC)
US10368073B2 (en) * 2015-12-07 2019-07-30 Qualcomm Incorporated Multi-region search range for block prediction mode for display stream compression (DSC)
TWI593273B (zh) * 2016-04-07 2017-07-21 晨星半導體股份有限公司 位元率控制方法及視訊編碼裝置
US10855989B2 (en) * 2016-06-09 2020-12-01 Qualcomm Incorporated Substream multiplexing for display stream compression
US10904531B2 (en) * 2017-03-23 2021-01-26 Qualcomm Incorporated Adaptive parameters for coding of 360-degree video
US10743032B2 (en) * 2017-05-24 2020-08-11 Qualcomm Incorporated Substream multiplexing for display stream compression
CN114760473A (zh) 2021-01-08 2022-07-15 三星显示有限公司 用于执行速率失真优化的系统和方法
US11343512B1 (en) 2021-01-08 2022-05-24 Samsung Display Co., Ltd. Systems and methods for compression with constraint on maximum absolute error
KR20220113028A (ko) * 2021-02-05 2022-08-12 한국전자기술연구원 디스플레이 스트림 압축(dsc)을 위한 인코딩 시스템 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103703781A (zh) * 2011-07-01 2014-04-02 高通股份有限公司 使用自适应运动向量分辨率的视频译码

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909513A (en) * 1995-11-09 1999-06-01 Utah State University Bit allocation for sequence image compression
WO1997042766A1 (en) * 1996-05-06 1997-11-13 Philips Electronics N.V. Segmented video coding and decoding method and system
US7042943B2 (en) * 2002-11-08 2006-05-09 Apple Computer, Inc. Method and apparatus for control of rate-distortion tradeoff by mode selection in video encoders
US7280597B2 (en) 2003-06-24 2007-10-09 Mitsubishi Electric Research Laboratories, Inc. System and method for determining coding modes, DCT types and quantizers for video coding
JP4624321B2 (ja) * 2006-08-04 2011-02-02 株式会社メガチップス トランスコーダおよび符号化画像変換方法
US8135063B2 (en) * 2006-09-08 2012-03-13 Mediatek Inc. Rate control method with frame-layer bit allocation and video encoder
CN102067603B (zh) * 2008-06-20 2012-11-14 杜比实验室特许公司 在多个失真约束下的视频压缩
WO2010033565A1 (en) * 2008-09-16 2010-03-25 Dolby Laboratories Licensing Corporation Adaptive video encoder control
JP2013126185A (ja) * 2011-12-15 2013-06-24 Fujitsu Ltd 情報処理装置、画像送信方法及び画像送信プログラム
US10812829B2 (en) 2012-10-03 2020-10-20 Avago Technologies International Sales Pte. Limited 2D block image encoding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103703781A (zh) * 2011-07-01 2014-04-02 高通股份有限公司 使用自适应运动向量分辨率的视频译码

Also Published As

Publication number Publication date
KR20160145050A (ko) 2016-12-19
WO2015160826A2 (en) 2015-10-22
BR112016023955B1 (pt) 2023-11-21
EP3132605B1 (en) 2018-09-26
EP3132605A2 (en) 2017-02-22
US20150296210A1 (en) 2015-10-15
ES2702940T3 (es) 2019-03-06
JP2017515377A (ja) 2017-06-08
KR101975093B1 (ko) 2019-05-03
BR112016023955A2 (pt) 2017-08-15
HUE041490T2 (hu) 2019-05-28
MX2016013404A (es) 2017-02-15
CN106165421A (zh) 2016-11-23
MX358179B (es) 2018-08-08
JP6453360B2 (ja) 2019-01-16
US9866853B2 (en) 2018-01-09
BR112016023955A8 (pt) 2021-07-13
WO2015160826A3 (en) 2016-05-06

Similar Documents

Publication Publication Date Title
CN106165421B (zh) 用于译码视频数据的设备、方法及计算机可读媒体
CN106165418B (zh) 译码视频数据的设备、方法及计算机可读媒体
CN106416248B (zh) 用于对视频数据进行熵编码和熵解码的方法和装置
CN106256127B (zh) 用于针对显示流压缩(dsc)在块预测模式中译码的系统和方法
US10362310B2 (en) Entropy coding techniques for display stream compression (DSC) of non-4:4:4 chroma sub-sampling
CN107409219A (zh) 用于显示流压缩的速率受限回退模式
CN108353177A (zh) 在显示流压缩dsc中用于降低切片边界视觉假象的系统及方法
CN106576173B (zh) 对视频数据进行译码的方法和设备及计算机可读存储介质
KR101993966B1 (ko) 디스플레이 스트림 압축 (dsc) 을 위한 평탄도 검출을 위한 시스템 및 방법
CN107534771A (zh) 用于基于复杂性量度的显示流压缩dsc的量化参数qp计算
CN107431812B (zh) 用于显示流压缩的复杂区域检测
JP2019522413A (ja) ディスプレイストリーム圧縮のためのサブストリーム多重化
CN108353170A (zh) 用于在显示流压缩(dsc)中固定点近似的系统和方法
CN107431811A (zh) 用于显示流压缩的量化参数更新分类
CN106664406A (zh) 用于确定用于显示流压缩的缓冲器满度的系统和方法
CN108432249A (zh) 用于在显示流压缩(dsc)中计算失真的系统和方法
CN106233731B (zh) 用于针对显示流压缩(dsc)在图案模式中译码的系统和方法
KR20180030021A (ko) 서브픽셀 패킹을 이용한 디스플레이 스트림 압축 픽셀 포맷 확장
US10123045B2 (en) Modification to block size for transform mode in display stream compression

Legal Events

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