CN107431812A - 用于显示流压缩的复杂区域检测 - Google Patents

用于显示流压缩的复杂区域检测 Download PDF

Info

Publication number
CN107431812A
CN107431812A CN201680018987.7A CN201680018987A CN107431812A CN 107431812 A CN107431812 A CN 107431812A CN 201680018987 A CN201680018987 A CN 201680018987A CN 107431812 A CN107431812 A CN 107431812A
Authority
CN
China
Prior art keywords
piece
transition
current block
previous
complexity value
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
CN201680018987.7A
Other languages
English (en)
Other versions
CN107431812B (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 CN107431812A publication Critical patent/CN107431812A/zh
Application granted granted Critical
Publication of CN107431812B publication Critical patent/CN107431812B/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/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
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/124Quantisation
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

本发明公开一种用于检测图像的复杂区域的方法及设备。在一个实例中,所述方法可涉及计算当前块、下一块及前一块的复杂度值。所述方法可涉及:(i)检测到所述前一复杂度值小于第一阈值且所述下一复杂度值大于第二阈值;和(ii)确定到所述当前块的过渡及到所述前一块的过渡均不是平坦到复杂区域过渡。所述方法可涉及响应于(i)和(ii)而在过渡到所述下一块时检测平坦到复杂区域过渡。

Description

用于显示流压缩的复杂区域检测
技术领域
本发明涉及视频译码及压缩的领域,且具体而言,涉及用于显示链接上的发射的视频压缩,例如显示流压缩(DSC)。
背景技术
数字视频性能可并入到广泛范围的显示器中,包含数字电视、个人数字助理(PDA)、膝上型计算机、台式监视器、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似者。显示链接用于将显示器连接到适合的源装置。显示链接的带宽要求与显示的分辨率成正比,且因此,高分辨率显示器需要大带宽显示链接。一些显示链接不具有支持高分辨率显示器的带宽。视频压缩可用于减小带宽要求以使得更低带宽显示链接可用于将数字视频提供到高分辨率显示器。
其他人已经尝试利用对像素数据的图像压缩。然而,此类方案有时在视觉上无损或在常规的显示装置中实施可能困难并且昂贵。
视频电子标准协会(VESA)已经开发显示流压缩(DSC)作为显示链接视频压缩的标准。此外,显示链接视频压缩技术(例如DSC)应提供视觉上无损的图片质量(即,具有使得用户无法区分压缩在运行中的质量水平的图片)。显示链接视频压缩技术还应提供用常规的硬件实时实施起来简易并便宜的方案。
发明内容
本发明的系统、方法及装置各具有若干创新方面,其中无单一者单独负责本文中所公开的合乎需要的属性。
在一个方面中,提供用于检测图像的复杂区域的方法,其中图像的切片包含当前块、下一块及前一块。所述方法可涉及计算当前块的当前复杂度值、下一块的下一复杂度值及前一块之前一复杂度值。所述方法可涉及:检测前一复杂度值小于第一阈值且下一复杂度值大于第二阈值,其中第二阈值大于第一阈值;及确定到当前块的过渡及到前一块的过渡均不是平坦到复杂区域过渡。所述方法可涉及响应于(i)检测到前一复杂度值小于第一阈值且下一复杂度值大于第二阈值,及(ii)确定到当前块的过渡及到前一块的过渡均不是平坦到复杂区域过渡,在过渡到下一块时检测平坦到复杂区域过渡。
在另一方面中,计算当前块的当前复杂度值、下一块的下一复杂度值及前一块之前一复杂度值可涉及针对当前块、下一块及前一块中的每一块(i)应用变换(例如,离散余弦变换(DCT)或哈达玛(Hadamard)变换)以确定变换系数及(ii)确定变换系数的所定义的绝对值总和。在又一方面中,所述方法可进一步涉及响应于检测到平坦到复杂区域过渡而调整量化参数(QP)。
在再一方面中,提供一种用于检测图像的复杂区域的装置,其中图像的切片包含当前块、下一块及前一块。所述装置可包含经配置以存储与图像相关的视频信息的存储器。所述装置可包含耦合到存储器且经配置以进行以下的至少一个处理器(例如,集成电路(IC)及/或图形处理单元(GPU)的一部分):计算当前块的当前复杂度值、下一块的下一复杂度值及前一块之前一复杂度值;检测到前一复杂度值小于第一阈值且下一复杂度值大于第二阈值,其中第二阈值大于第一阈值;确定到当前块的过渡及到前一块的过渡均不是平坦到复杂区域过渡;及响应于(i)检测到前一复杂度值小于第一阈值且下一复杂度值大于第二阈值及(ii)确定到当前块的过渡及到前一块的过渡均不是平坦到复杂区域过渡,在过渡到下一块时检测平坦到复杂区域过渡。
附图说明
图1A为说明可利用根据本发明中描述的方面的技术的实例视频编码及解码系统的框图。
图1B为说明可执行根据本发明中描述的方面的技术的另一实例视频编码及解码系统的框图。
图2A为说明可实施根据本发明中描述的方面的技术的视频编码器的实例的框图。
图2B为说明可实施根据本发明中描述的方面的技术的视频解码器的实例的框图。
图3展示确定量化参数(QP)调整值的实例方法。
图4说明从平坦区域到图像内的复杂区域的实例过渡。
图5展示用于检测平坦到复杂区域过渡的实例系统。
图6说明平坦到复杂区域检测的存储单元。
图7为说明根据本发明中描述的方面的用于检测图像中的复杂区域的实例方法的流程图。
具体实施方式
大体而言,本发明涉及改进视频压缩技术(例如,显示流压缩(DSC))的技术。更具体来说,本发明涉及用于检测从平坦或平滑区域到待译码图像的复杂区域的过渡的系统及方法。本文描述在视频压缩技术(例如DSC)的上下文中用于视频数据的复杂区域检测的技术。本发明的方面涉及确保避免在译码期间速率缓冲器的下溢或上溢。
尽管本文在DSC标准的上下文中描述某些实施例,但所属领域的一般技术人员将理解,本文所公开的系统及方法可适用于任何合适的视频译码标准。举例来说,本文所公开的实施例可适用于以下标准中的一或多者:国际电信联盟(ITU)电信标准化部门(ITU-T)H.261、国际标准化组织/国际电工委员会(ISO/IEC)动画专家群-1(MPEG-1)Visual、ITU-TH.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、ITU-T H.264(也称为ISO/IEC MPEG-4 AVC)、高效率视频译码(HEVC)及此类标准的任何扩展。本文所描述的技术可特别适用于并入固定比特率(CBR)缓冲器模型的标准。而且,本发明中描述的技术可成为将来开发的标准的一部分。换句话说,本发明中描述的技术可适用于先前开发的视频译码标准、当前正在开发的视频译码标准及即将出现的视频译码标准。
本发明的概念可集成于包含针对编码/解码具有大致视觉上无损性能的各种类型的内容的若干元件及/或模式的编解码器(例如,DSC)中或成为所述编解码器的一部分。本发明提供检测从平滑/平坦区域(例如,易于译码的区域)到复杂区域(例如,相对难以译码或需要更高数目个位来译码的区域)的过渡的复杂区域检测算法。当检测到此过渡时,用于编解码器中的量化参数(QP)增大到高值以便减小所预期的译码当前块所需要的速率。这是合乎需要的,因为复杂区域中的视觉信息的复杂度可遮蔽比将出现在平滑/平坦区域中更多的伪影。另外,低速率是合乎需要的,以防止译码器花费过多位(例如,远超过目标比特率)在复杂块上。
视频译码标准
例如视频图像、TV图像、静态图像或由录像机或计算机产生的图像的数字图像可包含按水平线及垂直线排列的像素或样本。单个图像中的像素的数目通常有数万个。每个像素通常含有明度及色度信息。在不压缩的情况下,待从图像编码器传送到图像解码器的信息的绝对数量将致使实时图像发射不切实际。为了减少待发射的信息的量,已开发许多不同压缩方法,例如,JPEG、MPEG及H.263标准。
视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、ITU-T H 264(也称为ISO/IECMPEG-4 AVC),及包含此类标准的扩展的HEVC。
另外,视频译码标准(即DSC)已由VESA开发。DSC标准为可压缩用于在显示链接上发射的视频的视频压缩标准。随着显示器的分辨率增大,视频数据驱动显示器所需要的带宽相应地增大。一些显示链接可不具有将所有视频数据发射到这类分辨率的显示器的带宽。因此,DSC标准指定压缩标准为显示链接上的可互操作的、视觉上无损的压缩。
DSC标准与其它视频译码标准(例如,H.264及HEVC)不同。DSC包含帧内压缩,但不包含帧间压缩,意谓时间信息可不由DSC标准用于译码视频数据。对比而言,其它视频译码标准可采用其视频译码技术中的帧间压缩。
视频译码系统
在下文中参考随附图式更完整地描述新颖系统、设备及方法的各种方面。然而,本发明可以许多不同形式来体现,且不应将其解释为限于贯穿本发明所呈现的任何具体结构或功能。实情为,提供这些方面,使得本发明将为透彻且完整的,且将向所属领域的技术人员充分传达本发明的范围。基于本文中的教示,所属领域的技术人员应了解,本发明的范围打算涵盖本文所公开的新颖系统、设备及方法的任何方面,不管是独立于本发明的任何其它方面还是与本发明的任何其它方面组合地实施。举例来说,可使用本文中所阐明的任何数目个方面来实施设备或实践方法。另外,本发明的范围打算涵盖使用其它结构、功能性或除本文中所阐明的本发明的各种方面之外或不同于本文中所阐明的本发明的各种方面的结构与功能性来实践的这类设备或方法。应理解,可通过权利要求书的一或多个要素来体现本文所公开的任何方面。
虽然本文中描述特定方面,但这些方面的许多变化及排列属于本发明的范围内。尽管提及了优选方面的一些益处及优点,但本发明的范围不打算限于特定益处、用途或目标。相反地,本发明的方面打算广泛适用于不同无线技术、系统布置、网络及发射协议,其中一些以实例的方式在诸图中及对优选方面的以下描述中加以说明。详细描述及图式仅说明本发明而非限制本发明,本发明的范围由所附权利要求书及其等效物来定义。
附图说明实例。由附图中的参考数字指示的元件对应于在以下描述中由相同参考数字指示的元件。在本发明中,名称以序数词(例如,“第一”、“第二”、“第三”等等)开始的元件未必暗示所述元件具有特定次序。相反,这些序数词仅用来指代相同或类似类型的不同元件。
图1A为说明可利用根据本发明中描述的方面的技术的实例视频译码系统10的框图。如本文所使用,术语“视频译码器”或“译码器”一般是指视频编码器及视频解码器。在本发明中,术语“视频译码”或“译码”一般可指代视频编码及视频解码。除了视频编码器及视频解码器外,本申请案中描述的方面可扩展到其它相关装置,例如,编解码器(例如,可解码位流且重新编码另一位流的装置)及中间框(例如,可修改、变换及/或另外操纵位流的装置)。
如图1A中所展示,视频译码系统10包含源装置12,其产生在稍后时间由目的地装置14解码的经编码视频数据。在图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的视频解码器在解码视频数据过程中使用。这些语法元素可与在通信媒体上发射、存储于存储媒体上或存储于文件服务器上的经编码视频数据包含在一起。图1A及图1B中说明的视频解码器30可包括图2B中说明的视频解码器30或本文所描述的任何其它视频解码器。
显示装置32可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。大体而言,显示装置32向用户显示经解码视频数据,且可包括多种显示装置中的任一者,例如,液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在相关方面中,图1B展示实例视频译码系统10',其中源装置12及目的地装置14在装置11上或为装置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(YCoCg)色彩空间中。色彩空间转化可由包含移位并添加到视频数据的方法执行。应注意,其它色彩空间中的输入视频数据可经处理,且还可执行对其它色彩空间的转化。
在相关方面中,视频编码器20可包含缓冲器110、线缓冲器130及/或速率缓冲器150。举例来说,缓冲器110可在其由视频编码器20的其它部分使用之前保持经色彩空间转化的视频数据。在另一实例中,视频数据可存储于RGB色彩空间中,且色彩空间转化可按需要执行,因为经色彩空间转化的数据可需要更多位。
速率缓冲器150可充当视频编码器20中的速率控制机构的一部分,其在下文将结合速率控制器120得以更详细地描述。编码每一块所花费的位可大体上基于块的性质而极大地变化。速率缓冲器150可平缓经压缩视频中的速率变化。在一些实施例中,采用其中以固定比特率从缓冲器获得位的CBR缓冲器模型。在CBR缓冲器模型中,如果视频编码器20添加过多位到位流,那么速率缓冲器150可上溢。另一方面,视频编码器20必须添加足够位以便防止速率缓冲器150的下溢。
在视频解码器侧,可以固定比特率将位添加到视频解码器30的速率缓冲器155(见下文更详细地描述的图2B),且视频解码器30可去除用于每一块的可变量数目个位。为了确保恰当的解码,视频解码器30的速率缓冲器155不应在经压缩位流的解码期间“下溢”或“上溢”。
在一些实施例中,缓冲器满度(BF)可基于表示当前在缓冲器中的位计数的值BufferCurrentSize及表示速率缓冲器150的大小的BufferMaxSize(即,可在任何时间点存储于速率缓冲器150中的最大位计数)来定义。BF可计算为:
BF=((BufferCurrentSize*100)/BufferMaxSize)
应注意,上文计算BF的方法仅为示范性的,且可取决于特定实施或上下文以任何数目个不同方式来计算BF。
平度检测器115可检测从视频数据中的复杂(即,非平坦)区域到视频数据中的平坦(即,简单或均匀)区域的变化,及/或反之亦然。术语“复杂”及“平坦”将在本文中用以大体上指代视频编码器20编码视频数据的各别区域的难度。因此,如本文所使用的术语“复杂”大体上将视频数据区域描述为视频编码器20难以对其进行编码,且可(例如)包含纹理化视频数据、高空间频率及/或难以编码的其它特征。如本文所使用的术语“平坦”大体上将视频数据区域描述为视频编码器20容易对其进行编码,且可(例如)包含视频数据中的平滑梯度、低空间频率及/或容易编码的其它特征。从复杂区域到平坦区域的过渡可由视频编码器20使用以减小经编码视频数据中的量化伪影。具体来说,速率控制器120及预测器、量化器及重构器组件125可减小当识别到从复杂区域到平坦区域的过渡时的此类量化伪影。类似地,从平坦到复杂区域的过渡可由视频编码器20使用以增加QP以便减小所预期的译码当前块所需要的速率。
速率控制器120确定译码参数(例如QP)的集合。可由速率控制器120基于速率缓冲器150的缓冲器满度及视频数据的图像活动(例如,从复杂区域到平坦区域的过渡或平坦区域到复杂区域的过渡)来调整QP,以便将确保速率缓冲器150不上溢或下溢的目标比特率的图片质量。速率控制器120还针对视频数据的每一块选择特定译码选项(例如,特定模式)以便实现最佳速率失真性能。速率控制器120将经重构图像的失真最小化以使得其满足比特率约束条件(即,整体实际译码速率适应目标比特率)。因此,速率控制器120的一个目的是确定译码参数(例如,QP、译码模式等)的集合以满足对速率的瞬时及平均约束,同时最大化速率失真性能。
预测器、量化器及重构器组件125可执行视频编码器20的至少三个编码操作。预测器、量化器及重构器组件125可在多个不同模式中执行预测。一个实例预测模式为中值自适应预测的经修改版本。中值自适应预测可由无损JPEG标准(JPEG-LS)实施。可由预测器、量化器及重构器组件125执行的中值自适应预测的经修改版本可允许三个连续样本值的平行预测。另一实例预测模式为块预测。在块预测中,根据线中的经先前重构像素预测在同一线上方或左边的样本。在一些实施例中,视频编码器20及视频解码器30可均对经重构像素执行相同的搜索以确定块预测使用,且因此不需要在块预测模式中发送位。在其它实施例中,视频编码器20可在位流中执行搜索及信号块预测向量,使得视频解码器30不必执行独立搜索。还可实施中点预测模式,其中使用组件范围的中点来预测样本。中点预测模式可使得能够限定甚至是最坏样本中的经压缩视频所需要的位计数。
预测器、量化器及重构器组件125还执行量化。举例来说,可通过可使用移位器实施的2幂量化器执行量化。应注意,可实施其它量化技术以代替2幂量化器。由预测器、量化器及重构器组件125执行的量化可基于由速率控制器120确定的QP。最终,预测器、量化器及重构器组件125还执行包含将经反量化的残余添加到经预测值及确保结果不超出样本值的有效范围的重构。
应注意,上文所描述的由预测器、量化器及重构器组件125执行的预测、量化及重构的实例方法仅为说明性的且可实施其它方法。还应注意,预测器、量化器及重构器组件125可包含用于执行预测、量化及/或重构的子组件。应进一步注意,可由若干独立编码器组件代替预测器、量化器及重构器组件125执行预测、量化及/或重构。
线缓冲器130保持来自预测器、量化器及重构器组件125的输出以使得预测器、量化器及重构器组件125及索引色彩历史135可使用经缓冲的视频数据。索引色彩历史135存储最近使用的像素值。这些最近使用的像素值可直接由视频编码器20通过专用语法参考。
熵编码器140基于索引色彩历史135及由平度检测器115识别的平度过渡编码预测残余及从预测器、量化器及重构器组件125接收的任何其它数据(例如,由预测器、量化器及重构器组件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的对应组件类似的方式操作。
QP计算
在一种方法中,可基于以下方程式导出或计算当前块的QP(表示为currQP):
currQP=prevQ+QpAdj*(diffBits>0?1:-1),
其中prevQP为与前一块相关联的QP,diffBits表示previousBlockBits与targetBits之间的差,QpAdj为基于diffBits的量值所计算的QP偏移值(例如,QP调整值),previousBlockBits表示用于译码前一块的位计数,且targetBits表示译码当前块的目标位计数。当previousBlockBits>targetBits时,diffBits为正,且可通过将偏移值QpAdj添加到prevQP值而导出当前块QP。换句话说,当diffBits为正时,QP值在值方面不从prevQP值减小。当previousBlockBits≤targetBits时,diffBits为负或零,且currQP不从prevQP值增大。应注意,可(例如)以QpAdj随着diffBits的量值增大而单调增大的方式计算作为diffBits的函数的偏移值QpAdj。
在本文中被称作默认技术的用于计算QP调整值QpAdj的一个技术现将参考图3来描述。图3提供包含其上绘制以零开始的diffBits的值的轴线的曲线图300。在默认技术中,当diffBits>0时,diffBits可使用K阈值分级到K+1范围。这些阈值由标记阈值1、阈值2、阈值3、…及阈值K说明,且范围由标记范围1、范围2、范围3、…及范围K+1说明。在图3的默认技术中,展示使用K阈值将diffBits分段成K+1范围的一个方法。每一范围可与特定QpAdj值相关联,其中QpAdj值随着范围索引的增大而增大。当diffBits≤0时,可使用J阈值(未说明)将diffBits的绝对值分级成J+1范围,且可存在为J+1范围中的每一者指定的特定QpAdj值。
在其它方面中,可基于缓冲器的满度(其可以缓冲器满度BF表示)调整currQP值,以便防止缓冲器的下溢及/或上溢。特定而言,当BF超出某一阈值(例如,P1)时,currQP可按固定偏移值(例如,p1)递增。举例来说,currQP可调整如下:currQP+=p1。此外,当BF下降到低于某一阈值(例如,Q1)时,currQP可按q1递减,例如,currQP-=q1。在某些方面中,可采用多个阈值,且对于每一阈值,可存在相对应的偏移值以调整currQP。
当识别复杂区域到平坦区域的过渡时或当识别平坦区域时,currQP可设定成低值(例如,低于所定义的currQP值的值),如下文进一步详细描述。
检测从平坦区域到复杂区域的过渡
参看图4,可利用一或多个技术以检测从平坦/平滑区域到复杂区域的过渡。图4说明可为帧或其部分(例如,帧的切片)的所关注的实例区域400。区域400可包含三个连续块405、410及415。在这个实例中,块405对应于区域400的平坦区域/部分,块410对应于区域400的过渡区域/部分,且块415对应于区域400的复杂区域/部分。如图所示,块405的内容为平坦的、平滑的或均匀的。块415的内容经纹理花且展现并非全部均匀的图案。块410包含从均匀内容到不均匀内容的过渡。如下文所描述,针对块405、410及415中的每一者执行复杂度计算。
如本文所使用,平坦块可指代具有低于复杂度阈值的复杂度值的块。块经确定为平坦的阈值可基于各种设计准则(例如,译码块所需要的位计数)来设定。类似地,非平坦或复杂块可指代并不平坦的块,例如,具有大于或等于复杂度阈值的复杂度值。可基于相关联的块复杂度采用块的各种其它分类,且这类分类可为由块的复杂度值中的阈值定义的范围。
术语“平坦”及“复杂”也可适用于除块外的区域。在这种情形下,虽然区域可不与块的大小相同,例如,区域可不为离散编码/解码的大小,区域也可基于区域的复杂度而分类为平坦的或复杂的。举例来说,如果区域内的每一块为平坦块,那么区域可被称为平坦区域。然而,平坦区域可不具有与其中所含的块相同的边界,且可在整个区域上计算区域的复杂度。可类似地定义复杂区域。因此,可通过将区域的复杂度值与可与块的复杂度阈值不同的复杂度阈值相比较而将区域分类为平坦的或复杂的。此外,因为可将区域划分成块以用于译码,可在概念上于本文中使用术语“区域”以促进理解本发明的各种方面。
如上文所描述,为了将块分类为平坦的或复杂的,可确定块的复杂度值。只要复杂度值表示编码块的难度(例如,译码块而不引入可见伪影可能需要的位计数),可根据各种技术确定块的复杂度值。
所提出的平度检测技术的框架在图5的实例复杂度检测系统500中展示。系统500可接收图4的块405、410及415或关于这类块的信息作为输入。在一个实施中,系统500可针对块405、410及415中的每一者执行复杂度计算以计算表示为Ccur、Cnext及Cprev的每块复杂度值。举例来说,系统500可包含分别对应于块405、410及415中的每一者的复杂度计算单元505、510及515,且可分别将计算复杂度值Cprev、Ccur及Cnext输出到检测器520。在另一实施中,可针对每一块计算少于三个复杂度值。举例来说,编码器可缓冲或存储给定时间块处的“当前”及“下一”块复杂度值,所述复杂度值将在下一块时间分别变为“前一”及“当前”复杂度值。以这种方式,下一时间块将仅需要计算“下一”块复杂度值。换句话说,编码器可在第一时间块缓冲或存储“当前”及“下一”块复杂度值,所述复杂度值将在第二块时间分别变为“前一”及“当前”复杂度值,以使得在第二时间块仅计算“下一”块复杂度值。
在相关方面中,复杂度计算单元505、510及515及/或检测器520可为编解码器的独立组件、相同组件或处理器的一部分或由一或多个处理器执行的软件模块。系统500的特征可以硬件、软件、固件或其任何组合来实施。在其它相关方面中,系统500可接收关于或关联于图像或所关注的区域的任何数目个连续块(例如,切片中的四个连续块)的信息且可针对连续块中的每一者执行复杂度计算。
在一个方面中,可通过进行块中的像素的频率变换(例如,离散余弦变换(DCT)、哈达玛(Hadamard)变换等)计算块的复杂度。频率变换可产生多个频率系数,所述频率系数可经求和以产生复杂度值。在另一方面中,直流电(DC或零频率)系数及/或一或多个低频系数可不包含于总和中。还可实施用于确定复杂度值(例如,在频率变换之前应用色彩变换)的各种其它技术。
在相关方面中,变换系数的绝对值或绝对平方值可经求和以计算块的复杂度值。在其它相关方面中,明度信道可用于计算复杂度值,或两个明度/色度信道可用于计算复杂度值。
在又一相关方面中,当计算绝对总和或绝对平方总和时可考虑变换系数的子集,即,可在一些实例方法中考虑块中不到全部的变换系数。
在再一方面中,每一转变系数可乘以权重,其中应用于每一系数的权重可变化或固定。随后,可计算经加权系数的绝对值或绝对平方值。
再一次参考图5的实例,检测器500可基于Cprev、Ccur及Cnext确定块405、410及415是否包含从平坦区域到复杂区域的过渡。举例来说,检测器500的输出可为二进制结果,例如,0指示不存在平坦到复杂区域过渡,且1指示存在平坦到复杂区域过渡。
是否存在从平坦区域到复杂区域的过渡的确定可通过基于所关注的区域(例如,区域400)中的连续块(例如,块405、410及415)的复杂度值而检查一或多个条件来执行。在一个实施例中,通过检查以下条件1及条件2来执行是否存在平坦到复杂区域过渡的确定。
条件1:(Cprev<T0)&&(Cnext>T1)
关于条件1,可基于编解码器的参数调谐阈值T0及T1。优选地,应遵循定序T0<T1。在相关方面中,检测存在从平坦区域到复杂区域的过渡可包含确定(i)前一块405的复杂度值小于(或小于等于)第一阈值(例如,T0),其指示前一块405对应于平坦区域,及(ii)下一块415的复杂度值大于(或大于等于)第二阈值(例如,T1),其指示下一块415对应于复杂区域。在此,前一块对应于平坦区域且下一块415对应于复杂区域的指示进一步指示当前块410中存在从平坦区域到复杂区域的过渡,即,当前块410为过渡块。
条件2:C0=假,C1=假
关于条件2,条件2中的值C0及C1实际上为布尔(Boolean)且表示平坦到复杂区域检测之前一历史,如图6中所展示。举例来说,先前块时间的值C0及C1,以及当前块时间的C2可存储于存储器存储单元600中。在一个方面中,在每一块时间,复杂度值左移一个值。在另一方面中,平坦到复杂区域检测的先前历史(即,先前块时间的值C0及C1)用于检查上文的条件2。在又一方面中,如果满足条件1的两个部分,那么图6中的值C2将设定为真。即使当检测到平坦到复杂区域过渡时,所使用QP可在过渡块或过渡块后的下一块处增大(相较于前一平坦块)以便减小所预期的译码当前/下一块所需要的速率。然而,应注意,过渡块处的QP值不可过高(例如,超出所定义QP值),因为过渡块含有部分平坦信息及部分复杂信息两者。举例来说,当过渡块的QP值超出所定义QP值时,可在块的平坦部分中产生伪影,所述伪影可在从过渡块重构的图像内显而易见。
由此,可能需要延迟增大QP直到过渡块之后。举例来说,可针对紧随检测到的过渡块的块(例如,针对块410后的块415)增加QP。如果对于第一完全复杂块(例如,块415)QP为高,那么复杂度可遮蔽伪影的存在。
因此,QP是否应针对当前块而调整的下一决策取决于布尔值C1。如果C1为真,那么当前块的QP应增加到高值。
在编码器侧,在处理每一新块的开始时,更新检测结果的历史。即,C1→C0,C2→C1,C2=假。这在计算当前块的检测结果之前完成。基本上,这在检测平坦到复杂过渡与调整QP之间添加一个块的偏移。如上文所论述,这确保QP将保持用于过渡块的低值。另外,这确保无法将成一行的多个块检测为平坦到复杂过渡。
在另一实例中,可用不同比较运算符替换条件1中的比较运算符。举例来说,代替Cprev<T0的,实际上可使用相反的Cprev≤T0
以上实施例的一个优势为平坦到复杂区域过渡的检测允许编码器增加复杂区域的QP。这将减小所预期的译码块所需要的速率,且产生的伪影将由所述区域的复杂度遮蔽。而且,可在经编码位流中使用一个位/块明确地将平坦到复杂过渡检测的结果传信到解码器。这允许解码器调整QP而不必按编码器中进行的一样来计算复杂度值。此外,还可利用本发明技术中所利用的用于检测平坦到复杂区域过渡的复杂度计算及预看数据来检测复杂到平坦区域过渡,借此实现固定速率编解码器(例如,DSC或其类似者)的效率。在一个实施例中,提供可涉及使用一个位传信平坦到复杂过渡的技术。在相关方面中,平坦到复杂为可分组在一起的可能的平度检测或分类的集合中的一者。举例来说,如果存在四个类别的平度(例如,平坦到复杂、复杂到平坦、略平坦及非常平坦),那么可使用一组2位码中的一者来传信所述结果。
在一个实施例中,当识别平坦到复杂过渡时,块的QP值可设定成预定义值(例如,固定高值)或QP可增加预定义增量或值(例如,固定调整值)。
用于检测图像的复杂区域的实例流程图
参考图7,将描述用于检测从图像的平坦区域到复杂区域的过渡的实例程序。图像的切片可包含当前块、下一块及前一块。
图7为说明根据本发明的实施例的用于译码视频数据的方法700的流程图。图7中说明的步骤可由以下各者执行:视频编码器(例如,图2A中的视频编码器20)、视频解码器(例如,图2B中的视频解码器30)或其组件,例如(例如)平度检测器115、速率控制器120、预测器、量化器及重构器组件125、熵编码器140及速率缓冲器150。为方便起见,方法700经描述由视频译码器(也简称为译码器)执行,所述视频译码器可为视频编码器20、视频解码器30或另一组件。
译码器或其组件可实施于包含由包含缓冲器的多个可编程计算单元共享的集成式全局存储器的装置上,其中所述缓冲器可包含先进先出(FIFO)缓冲器。装置可进一步包含集成电路(IC),其可包含至少一个处理器或处理器电路(例如,中央处理单元(CPU))及/或图形处理单元(GPU),其中所述GPU可包含一或多个可编程计算单元。
方法700开始于块710。在块710处,译码器计算当前块的当前复杂度值、下一块的下一复杂度值及前一块之前一复杂度值。块710可涉及针对当前块、下一块及前一块中的每一块,译码器(i)应用变换以确定变换系数及(ii)确定变换系数的所定义的绝对总和。应用变换可涉及应用DCT及哈达玛变换中的一者。确定所定义的绝对总和可涉及确定变换系数的绝对总和及绝对平方总和中的一者。
在块720处,译码器检测到前一复杂度值小于第一阈值且下一复杂度值大于第二阈值,其中第二阈值大于第一阈值。
在块730处,译码器确定到当前块的过渡及到前一块的过渡均不为平坦到复杂区域过渡。其中,译码器基于当前块时间处的当前块、下一块及前一块的复杂度值及/或一或多个先前块时间处的当前块、下一块及前一块的复杂度值执行块730。
在块740处,响应于(i)检测到前一复杂度值小于第一阈值且下一复杂度值大于第二阈值,及(ii)确定到当前块的过渡及到前一块的过渡均不为平坦到复杂区域过渡,当过渡到下一块时译码器检测平坦到复杂区域过渡。
在块750处,译码器可任选地响应于检测到平坦到复杂区域过渡而调整QP,及/或响应于当过渡到下一块时检测到平坦到复杂区域过渡而将过渡的指示从编解码器的编码器传信到解码器。方法700可在块740或块750处结束。
其它考虑因素
应注意,已经从编码器(例如,图2A中的视频编码器20)的视角描述了本发明的方面。然而,所属领域的技术人员将了解,与上文所描述的那些操作相反的操作可应用于解码由(例如)图2B中的视频解码器30产生的位流。
可使用多种不同技术及技艺中的任何者来表示本文中公开的信息及信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合表示贯穿以上描述可能参考的数据、指令、命令、信息、信号、位、符号及码片。
结合本文中所公开的实施例而描述的各种说明性逻辑块及算法步骤可被实施为电子硬件、计算机软件或两个的组合。为了清楚地说明硬件与软件的这种可互换性,上文已大体在其功能性方面描述了各种说明性组件、块及步骤。这种功能性被实施为硬件还是软件取决于特定应用及强加于总体系统的设计约束。所属领域的技术人员可针对每一特定应用而以不同方式来实施所描述功能性,但这些实施决策不应被解释为导致脱离本发明的范围。
因此,本文中描述的技术可以硬件、软件、固件或其任何组合实施。这类技术可以多种装置中的任一者实施,例如,通用计算机、无线通信装置手持机、或集成电路装置,所述集成电路装置具有包含无线通信装置手持机、汽车、电气设备、可穿戴装置及/或其它装置中的应用的多个用途。可将描述为装置或组件的任何特征一起实施于集成式逻辑装置中或分开来实施为离散但可互操作的逻辑装置。如果以软件实施,那么所述技术可至少部分地由包括包含当经执行时执行以上描述的方法中的一或多者的指令的程序代码的计算机可读数据存储媒体实现。计算机可读数据存储媒体可形成计算机程序产品的部分,所述计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如,随机存取存储器(RAM),例如,同步动态随机存取存储器(SDRAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁性或光学数据存储媒体及其类似者。另外或替代地,所述技术可至少部分地由计算机可读通信媒体实现,所述计算机可读通信媒体载送或传达呈指令或数据结构的形式且可由计算机存取、读取及/或执行的程序代码,例如,传播的信号或波。
程序代码可由可包含一或多个处理器的处理器执行,例如,一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成式或离散逻辑电路。这种处理器可经配置以执行本发明中所描述的技术中的任何技术。通用处理器可为微处理器;但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器也可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心或任何其它这类配置。因此,如本文中所使用的术语“处理器”可指代前述结构、前述结构的任何组合或适合于实施本文中描述的技术的任何其它结构或设备中的任一者。此外,在一些方面中,本文中描述的功能性可提供于经配置用于编码及解码的专用软件或硬件内,或并入于组合式视频编码器-解码器(编解码器)中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可实施于各种装置或设备中,包含无线手持机、IC或IC的集合(例如,芯片集合)。在本发明中描述各种组件或单元以强调经配置以执行所公开技术的装置的功能方面,但未必需要通过不同硬件单元实现。实情为,如上文所描述,各种单元可组合于编解码器硬件单元中,或结合合适软件及/或固件通过互操作性硬件单元(包含如上所述的一或多个处理器)的集合来提供。
虽然已经结合各种不同实施例描述了前文,但可在不脱离本发明的教示的情况下将来自一个实施例的特征或元件与其它实施例组合。然而,各别实施例之间的特征的组合未必限于此。已描述了本发明的各种实施例。这些及其它实施例在以下权利要求书的范围内。

Claims (30)

1.一种用于检测图像的复杂区域的方法,所述图像的切片包括当前块、下一块及前一块,所述方法包括:
计算所述当前块的当前复杂度值、所述下一块的下一复杂度值及所述前一块的前一复杂度值;
检测到所述前一复杂度值小于第一阈值且所述下一复杂度值大于第二阈值,其中所述第二阈值大于所述第一阈值;
确定到所述当前块的过渡及到所述前一块的过渡均不是平坦到复杂区域过渡;及
响应于(i)检测到所述前一复杂度值小于所述第一阈值且所述下一复杂度值大于所述第二阈值,及(ii)确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡,在过渡到所述下一块时检测平坦到复杂区域过渡。
2.根据权利要求1所述的方法,其中计算所述当前块的所述当前复杂度值、所述下一块的所述下一复杂度值及所述前一块的所述前一复杂度值包括针对所述当前块、所述下一块及所述前一块中的每一块(i)应用变换以确定变换系数以及(ii)确定所述变换系数的所定义的绝对总和。
3.根据权利要求2所述的方法,其中应用所述变换包括应用离散余弦变换DCT及哈达玛变换中的一者。
4.根据权利要求3所述的方法,其进一步包括在应用所述DCT变换及所述哈达玛变换中的一者之前将色彩变换应用到所述当前块、所述下一块及所述前一块中的每一者。
5.根据权利要求2所述的方法,其中确定所述所定义的绝对总和包括确定所述变换系数的至少一个子集的绝对总和及绝对平方总和中的一者。
6.根据权利要求5所述的方法,其中确定绝对总和及绝对平方总和中的一者包括计算所述变换系数的子集的绝对总和及绝对平方总和中的一者,所述子集不包含关于直流电DC系数的第一变换系数及关于低频系数的第二变换系数中的至少一者。
7.根据权利要求1所述的方法,其进一步包括响应于检测到平坦到复杂区域过渡而调整量化参数QP。
8.根据权利要求7所述的方法,其中调整所述QP包括响应于检测到平坦到复杂区域过渡而使所述QP增大QP调整值。
9.根据权利要求1所述的方法,其中所述确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡是基于当前块时间处的所述当前块、所述下一块及所述前一块的所述复杂度值。
10.根据权利要求1所述的方法,其中所述确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡是基于一或多个前一块时间处的所述当前块、所述下一块及所述前一块的所述复杂度值。
11.根据权利要求1所述的方法,其进一步包括响应于在过渡到所述下一块时检测到平坦到复杂区域过渡,将所述过渡的指示从编解码器的编码器传信到解码器。
12.根据权利要求1所述的方法,其进一步包括基于固定速率编解码器的参数调谐所述第一阈值及所述第二阈值中的至少一者。
13.一种用于检测图像的复杂区域的装置,所述装置包括:
存储器,其经配置以存储与所述图像相关的视频信息,所述图像的切片包括当前块、下一块及前一块;及
至少一个处理器电路,其经耦合到所述存储器且经配置以:
计算所述当前块的当前复杂度值、所述下一块的下一复杂度值及所述前一块的前一复杂度值;
检测到所述前一复杂度值小于第一阈值且所述下一复杂度值大于第二阈值,其中所述第二阈值大于所述第一阈值;
确定到所述当前块的过渡及到所述前一块的过渡均不是平坦到复杂区域过渡;及
响应于(i)检测到所述前一复杂度值小于所述第一阈值且所述下一复杂度值大于所述第二阈值,及(ii)确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡,在过渡到所述下一块时检测平坦到复杂区域过渡。
14.根据权利要求13所述的装置,其中所述至少一个处理器电路经进一步配置以计算所述当前块的所述当前复杂度值、所述下一块的所述下一复杂度值及所述前一块的所述前一复杂度值包括针对所述当前块、所述下一块及所述前一块中的每一块通过(i)应用变换以确定变换系数及(ii)确定所述变换系数的所定义的绝对总和。
15.根据权利要求14所述的装置,其中所述至少一个处理器电路经进一步配置以通过应用离散余弦变换DCT及哈达玛变换中的一者而应用所述变换。
16.根据权利要求15所述的装置,其中所述至少一个处理器电路经进一步配置以在应用所述DCT变换及所述哈达玛变换中的一者之前将色彩变换应用到所述当前块、所述下一块及所述前一块中的每一者。
17.根据权利要求14所述的装置,其中所述至少一个处理器电路经进一步配置以通过确定所述变换系数的至少一个子集的绝对总和及绝对平方总和中的一者来确定所述所定义的绝对总和。
18.根据权利要求17所述的装置,其中所述至少一个处理器电路经进一步配置以通过计算所述变换系数的子集的绝对总和及绝对平方总和中的一者而确定绝对总和及绝对平方总和中的一者,所述子集不包含关于直流电DC系数的第一变换系数及关于低频系数的第二变换系数中的至少一者。
19.根据权利要求13所述的装置,其中所述至少一个处理器电路经进一步配置以响应于检测到平坦到复杂区域过渡而调整量化参数QP。
20.根据权利要求19所述的装置,其中所述至少一个处理器电路经进一步配置以响应于检测到平坦到复杂区域过渡而通过将所述QP增大QP调整值来调整所述QP。
21.根据权利要求13所述的装置,其中所述至少一个处理器电路经进一步配置以基于当前块时间处的所述当前块、所述下一块及所述前一块的所述复杂度值确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡。
22.根据权利要求13所述的装置,其中所述至少一个处理器电路经进一步配置以基于一或多个前一块时间处的所述当前块、所述下一块及所述前一块的所述复杂度值确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡。
23.一种用于检测图像的复杂区域的设备,所述图像的切片包括当前块、下一块及前一块,所述设备包括:
用于计算所述当前块的当前复杂度值、所述下一块的下一复杂度值及所述前一块的前一复杂度值的装置;
用于检测到所述前一复杂度值小于第一阈值且所述下一复杂度值大于第二阈值的装置,其中所述第二阈值大于所述第一阈值;
用于确定到所述当前块的过渡及到所述前一块的过渡均不是平坦到复杂区域过渡的装置;及
用于响应于(i)检测到所述前一复杂度值小于所述第一阈值且所述下一复杂度值大于所述第二阈值,及(ii)确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡而在过渡到所述下一块时检测平坦到复杂区域过渡的装置。
24.根据权利要求23所述的设备,其中用于计算所述当前块的所述当前复杂度值、所述下一块的所述下一复杂度值及所述前一块的所述前一复杂度值的所述装置包括针对所述当前块、所述下一块及所述前一块中的每一块,用于应用变换以确定变换系数的装置,及用于确定所述变换系数的所定义的绝对总和的装置。
25.根据权利要求24所述的设备,其中用于应用所述变换的所述装置包括用于应用离散余弦变换DCT及哈达玛变换的装置,及用于将色彩变换应用到所述当前块、所述下一块及所述前一块中的每一者的装置。
26.根据权利要求23所述的设备,其进一步包括用于响应于检测到平坦到复杂区域过渡而调整量化参数QP的装置。
27.一种其上存储有与图像相关的视频信息的非暂时性计算机可读存储媒体,其中所述图像的切片包括当前块、下一块及前一块,其中所述存储媒体进一步在其上存储有在经执行时使得装置的处理器进行以下的指令:
计算所述当前块的当前复杂度值、所述下一块的下一复杂度值及所述前一块的前一复杂度值;
检测到所述前一复杂度值小于第一阈值且所述下一复杂度值大于第二阈值,其中所述第二阈值大于所述第一阈值;
确定到所述当前块的过渡及到所述前一块的过渡均不是平坦到复杂区域过渡;及响应于(i)检测到所述前一复杂度值小于所述第一阈值且所述下一复杂度值大于所述第二阈值,及(ii)确定到所述当前块的所述过渡及到所述前一块的所述过渡均不是平坦到复杂区域过渡,在过渡到所述下一块时检测平坦到复杂区域过渡。
28.根据权利要求27所述的非暂时性计算机可读存储媒体,其进一步在其上存储有指令,所述指令在经执行时使得所述处理器通过针对所述当前块、所述下一块及所述前一块中的每一块应用变换以确定变换系数及确定所述变换系数的所定义的绝对总和而计算所述当前块的所述当前复杂度值、所述下一块的所述下一复杂度值及所述前一块的所述前一复杂度值。
29.根据权利要求28所述的非暂时性计算机可读存储媒体,其进一步在其上存储有指令,所述指令在经执行时使得所述处理器通过应用离散余弦变换DCT及哈达玛变换中的一者,及将色彩变换应用到所述当前块、所述下一块及所述前一块中的每一者而应用所述变换。
30.根据权利要求27所述的非暂时性计算机可读存储媒体,其进一步在其上存储有指令,所述指令在经执行时使得所述处理器响应于检测到平坦到复杂区域过渡而调整量化参数QP。
CN201680018987.7A 2015-04-13 2016-03-24 用于显示流压缩的复杂区域检测 Active CN107431812B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562146913P 2015-04-13 2015-04-13
US62/146,913 2015-04-13
US15/078,797 US9936203B2 (en) 2015-04-13 2016-03-23 Complex region detection for display stream compression
US15/078,797 2016-03-23
PCT/US2016/024016 WO2016167936A1 (en) 2015-04-13 2016-03-24 Complex region detection for display stream compression

Publications (2)

Publication Number Publication Date
CN107431812A true CN107431812A (zh) 2017-12-01
CN107431812B CN107431812B (zh) 2019-11-29

Family

ID=57112429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680018987.7A Active CN107431812B (zh) 2015-04-13 2016-03-24 用于显示流压缩的复杂区域检测

Country Status (7)

Country Link
US (1) US9936203B2 (zh)
EP (1) EP3284256A1 (zh)
JP (1) JP2018515016A (zh)
KR (1) KR20170136526A (zh)
CN (1) CN107431812B (zh)
TW (1) TWI634778B (zh)
WO (1) WO2016167936A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI538480B (zh) * 2014-05-27 2016-06-11 敦泰電子股份有限公司 藉由偵測鄰近像素複雜度來動態調整壓縮參數的影像壓縮系統
US10356428B2 (en) 2015-04-13 2019-07-16 Qualcomm Incorporated Quantization parameter (QP) update classification for display stream compression (DSC)
US10284849B2 (en) 2015-04-13 2019-05-07 Qualcomm Incorporated Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure
US10244255B2 (en) 2015-04-13 2019-03-26 Qualcomm Incorporated Rate-constrained fallback mode for display stream compression
JP6537396B2 (ja) * 2015-08-03 2019-07-03 キヤノン株式会社 画像処理装置、撮像装置および画像処理方法
US10368073B2 (en) * 2015-12-07 2019-07-30 Qualcomm Incorporated Multi-region search range for block prediction mode for display stream compression (DSC)
US10542267B2 (en) * 2016-01-21 2020-01-21 Samsung Display Co., Ltd. Classification preserving image transform compression
US11575896B2 (en) * 2019-12-16 2023-02-07 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020009146A1 (en) * 1998-03-20 2002-01-24 Barbara A. Hall Adaptively encoding a picture of contrasted complexity having normal video and noisy video portions
US20040252758A1 (en) * 2002-08-14 2004-12-16 Ioannis Katsavounidis Systems and methods for adaptively filtering discrete cosine transform (DCT) coefficients in a video encoder
CN102724510A (zh) * 2012-06-21 2012-10-10 中科开元信息技术(北京)有限公司 一种基于虚拟编码缓冲区充盈度的码率控制算法
JP2013138361A (ja) * 2011-12-28 2013-07-11 Canon Inc 画像符号化装置、画像符号化方法及びプログラム
US20140301460A1 (en) * 2013-04-08 2014-10-09 Qualcomm Incorporated Intra rate control for video encoding based on sum of absolute transformed difference

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2507215B2 (ja) * 1991-09-02 1996-06-12 松下電器産業株式会社 画像符号化装置
JP3152765B2 (ja) * 1991-10-31 2001-04-03 株式会社東芝 画像符号化装置
JPH06245199A (ja) 1993-02-19 1994-09-02 Sharp Corp 画像符号化装置
US5933451A (en) * 1994-04-22 1999-08-03 Thomson Consumer Electronics, Inc. Complexity determining apparatus
US6160846A (en) 1995-10-25 2000-12-12 Sarnoff Corporation Apparatus and method for optimizing the rate control in a coding system
DE10048735A1 (de) * 2000-09-29 2002-04-11 Bosch Gmbh Robert Verfahren zur Codierung und Decodierung von Bildsequenzen sowie Einrichtungen hierzu
US8054880B2 (en) 2004-12-10 2011-11-08 Tut Systems, Inc. Parallel rate control for digital video encoder with multi-processor architecture and picture-based look-ahead window
US8363717B2 (en) * 2005-05-17 2013-01-29 Canon Kabushiki Kaisha Image processing apparatus
US20060280242A1 (en) 2005-06-13 2006-12-14 Nokia Corporation System and method for providing one-pass rate control for encoders
US8879857B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
US8787445B2 (en) * 2007-03-15 2014-07-22 Nvidia Corporation Allocation of available bits to represent different portions of video frames captured in a sequence
KR101172430B1 (ko) 2007-08-17 2012-08-08 삼성전자주식회사 비트율 제어 방법 및 그 장치
WO2009045683A1 (en) * 2007-09-28 2009-04-09 Athanasios Leontaris Video compression and tranmission techniques
US8363719B2 (en) * 2007-10-29 2013-01-29 Canon Kabushiki Kaisha Encoding apparatus, method of controlling thereof, and computer program
JP5111128B2 (ja) * 2008-01-22 2012-12-26 キヤノン株式会社 符号化装置、符号化装置の制御方法及びコンピュータプログラム
KR100952340B1 (ko) * 2008-01-24 2010-04-09 에스케이 텔레콤주식회사 시공간적 복잡도를 이용한 부호화 모드 결정 방법 및 장치
WO2010005691A1 (en) * 2008-06-16 2010-01-14 Dolby Laboratories Licensing Corporation Rate control model adaptation based on slice dependencies for video coding
WO2010036772A2 (en) * 2008-09-26 2010-04-01 Dolby Laboratories Licensing Corporation Complexity allocation for video and image coding applications
KR20110091000A (ko) 2008-11-07 2011-08-10 미쓰비시덴키 가부시키가이샤 화상 부호화 장치 및 화상 복호 장치
US8897365B2 (en) * 2008-11-19 2014-11-25 Nvidia Corporation Video rate control processor for a video encoding process
US8867613B2 (en) * 2008-12-29 2014-10-21 Thomson Licensing Method and apparatus for rate control for compression of video frames
US9473792B2 (en) * 2009-11-06 2016-10-18 Texas Instruments Incorporated Method and system to improve the performance of a video encoder
KR101282193B1 (ko) * 2009-11-10 2013-07-04 한국전자통신연구원 칼만 필터와 fir 필터를 사용한 동영상 인코더에서의 비트율 제어 방법
KR20110060181A (ko) 2009-11-30 2011-06-08 한국전자통신연구원 무손실/준무손실 영상 압축 장치 및 방법
KR101464423B1 (ko) * 2010-01-08 2014-11-25 노키아 코포레이션 비디오 프로세싱을 위한 장치, 방법 및 컴퓨터 프로그램
PL2661892T3 (pl) * 2011-01-07 2022-08-16 Nokia Technologies Oy Przewidywanie ruchu w kodowaniu wideo
WO2012170910A1 (en) 2011-06-10 2012-12-13 Bytemobile, Inc. Macroblock-level adaptive quantization in quality-aware video optimization
RU2607998C9 (ru) 2012-03-28 2017-07-07 ДжейВиСи КЕНВУД КОРПОРЕЙШН Устройство кодирования изображения, способ кодирования изображения и программа кодирования изображения, а также устройство декодирования изображения, способ декодирования изображения и программа декодирования изображения
US9299166B2 (en) 2012-12-13 2016-03-29 Qualcomm Incorporated Image compression method and apparatus for bandwidth saving
US9565440B2 (en) * 2013-06-25 2017-02-07 Vixs Systems Inc. Quantization parameter adjustment based on sum of variance and estimated picture encoding cost
US9661329B2 (en) * 2014-04-30 2017-05-23 Intel Corporation Constant quality video coding
US10244255B2 (en) 2015-04-13 2019-03-26 Qualcomm Incorporated Rate-constrained fallback mode for display stream compression
US10356428B2 (en) 2015-04-13 2019-07-16 Qualcomm Incorporated Quantization parameter (QP) update classification for display stream compression (DSC)
US10284849B2 (en) 2015-04-13 2019-05-07 Qualcomm Incorporated Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020009146A1 (en) * 1998-03-20 2002-01-24 Barbara A. Hall Adaptively encoding a picture of contrasted complexity having normal video and noisy video portions
US20040252758A1 (en) * 2002-08-14 2004-12-16 Ioannis Katsavounidis Systems and methods for adaptively filtering discrete cosine transform (DCT) coefficients in a video encoder
JP2013138361A (ja) * 2011-12-28 2013-07-11 Canon Inc 画像符号化装置、画像符号化方法及びプログラム
CN102724510A (zh) * 2012-06-21 2012-10-10 中科开元信息技术(北京)有限公司 一种基于虚拟编码缓冲区充盈度的码率控制算法
US20140301460A1 (en) * 2013-04-08 2014-10-09 Qualcomm Incorporated Intra rate control for video encoding based on sum of absolute transformed difference

Also Published As

Publication number Publication date
US9936203B2 (en) 2018-04-03
WO2016167936A1 (en) 2016-10-20
US20160301933A1 (en) 2016-10-13
TW201703524A (zh) 2017-01-16
TWI634778B (zh) 2018-09-01
JP2018515016A (ja) 2018-06-07
EP3284256A1 (en) 2018-02-21
CN107431812B (zh) 2019-11-29
KR20170136526A (ko) 2017-12-11

Similar Documents

Publication Publication Date Title
CN107431812B (zh) 用于显示流压缩的复杂区域检测
CN106416248B (zh) 用于对视频数据进行熵编码和熵解码的方法和装置
CN107409219A (zh) 用于显示流压缩的速率受限回退模式
CN104704828B (zh) 有界率近无损和无损图像压缩的方法和系统
CN106165418B (zh) 译码视频数据的设备、方法及计算机可读媒体
CN110024398A (zh) 针对屏幕远程处理场景的局部的基于散列的运动估计
CN108353177A (zh) 在显示流压缩dsc中用于降低切片边界视觉假象的系统及方法
CN109842803B (zh) 一种图像压缩的方法及装置
CN107534771A (zh) 用于基于复杂性量度的显示流压缩dsc的量化参数qp计算
CN106165421B (zh) 用于译码视频数据的设备、方法及计算机可读媒体
JP6464192B2 (ja) ディスプレイストリーム圧縮(dsc)のための平坦度検出のためのシステムおよび方法
US10848787B2 (en) Lossy image compression using palettization of locally mixed colors
CN108141591A (zh) 用于非4:4:4色度子采样的显示流压缩(dsc)的熵译码技术
CN107431811A (zh) 用于显示流压缩的量化参数更新分类
TWI705693B (zh) 用於顯示串流壓縮之基於向量之熵寫碼的裝置及方法
CN104144279B (zh) 处理图像/视频数据的方法及装置
CN108432249A (zh) 用于在显示流压缩(dsc)中计算失真的系统和方法
WO2021136110A1 (zh) 编码方法及编码器
CN106233731B (zh) 用于针对显示流压缩(dsc)在图案模式中译码的系统和方法
US10123045B2 (en) Modification to block size for transform mode in display stream compression
US11695919B2 (en) Lossy image compression using palettization of locally mixed colors
Chu et al. Evaluation and extension of SGI Vizserver

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