CN106031173A - 视频译码中的闪烁检测及缓解 - Google Patents

视频译码中的闪烁检测及缓解 Download PDF

Info

Publication number
CN106031173A
CN106031173A CN201580009982.3A CN201580009982A CN106031173A CN 106031173 A CN106031173 A CN 106031173A CN 201580009982 A CN201580009982 A CN 201580009982A CN 106031173 A CN106031173 A CN 106031173A
Authority
CN
China
Prior art keywords
photo current
flicker
piece
block
video
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.)
Pending
Application number
CN201580009982.3A
Other languages
English (en)
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 CN106031173A publication Critical patent/CN106031173A/zh
Pending legal-status Critical Current

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/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/172Methods 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 picture, frame or field
    • 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/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/27Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving both synthetic and natural picture components, e.g. synthetic natural hybrid coding [SNHC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission

Landscapes

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

Abstract

经配置以对视频数据进行译码的装置包含:存储器,其经配置以存储视频数据;及至少一个处理器。所述至少一个处理器经配置以:对指示来自当前图片的块是否将闪烁的信息进行译码。来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的所述块及来自下一图片的按所述所显示次序的并置块。

Description

视频译码中的闪烁检测及缓解
本申请案要求2014年3月5日提交的第61/948,469号美国临时专利申请案的优先权,其全部内容以引用的方式并入本文中。
技术领域
本发明涉及视频译码及/或视频处理,例如视频数据的编码及解码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播***、无线广播***、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似物。数字视频装置实施视频压缩技术,例如通过MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分、高级视频译码(AVC)、目前正在开发的高效率视频译码(HEVC)标准及此类标准的扩展部分定义的标准中描述的技术,以便更有效地发射、接收及存储数字视频信息。
视频压缩技术包含空间预测及/或时间预测,以减少或移除视频序列中固有的冗余。对于基于块的视频译码,一视频帧或切片可分割成多个块。每一块可被进一步分割。使用相对于相同帧或切片中的相邻块中的参考样本的空间预测对经帧内译码(I)帧或切片中的块进行编码。经帧间译码(P或B)帧或切片中的块可使用相对于相同帧或切片中的相邻块中的参考样本的空间预测,或相对于其它参考帧中的参考样本的时间预测。空间或时间预测产生待译码块的预测性块。残余数据表示待译码原始块与预测性块之间的像素差。
经帧间译码块根据指向形成预测性块的参考样本块的运动向量及指示经译码块与预测性块之间的差的残余数据进行编码。根据帧内译码模式及残余数据来编码经帧内译码块。为了进一步压缩,可将残余数据从像素域变换到变换域,从而产生残余变换系数,可接着量化所述残余变换系数。可用特定次序扫描最初布置成二维阵列的经量化变换系数以产生变换系数的一维向量用于熵译码。
发明内容
一般来说,本发明描述用于检测及缓解视频数据中的闪烁的技术。闪烁是视觉伪影,这可由于译码模式的选择及时间特征而在视频译码中产生。举例来说,通常在仅使用I切片以低比特率(例如,在帧内预测模式中)对视频序列进行译码时观察到闪烁。根据本发明的技术配置的视频译码器(即,视频编码器或视频解码器)可使用不同度量值,所述度量值将当前帧的块与前一帧的块相比较以确定块是否将在由视频解码器进行解码之后闪烁。
可通过视频译码器执行本发明的技术以缓解闪烁。视频译码器可尝试通过约束视频译码器确定将闪烁的视频数据块的译码工具(例如,译码模式)来缓解闪烁。举例来说,视频编码器或解码器可将闪烁块约束为帧内预测模式,或可针对所述块禁止帧内块译码(帧内BC)的使用。在一些情况下,本发明的技术仅识别闪烁(或潜在地闪烁块),因此在必要时可采取额外的视频处理步骤。
本发明的额外技术涉及用于对指示图片的特定区域将闪烁的信息进行译码(即,编码或解码)的技术。经译码信息可包括(举例来说)指示所述闪烁区域的闪烁旗标。视频编码器可对闪烁旗标进行编码及/或解码器可推断各种实例中的闪烁旗标的值。另外,本发明描述用于改进闪烁旗标的译码效率的技术。
在一个实例中,对视频数据进行译码的方法包含:对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块。
在另一实例中,经配置以对视频数据进行译码的装置包含:存储器,其经配置以存储视频数据;及至少一个处理器,其经配置以对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块。
在另一实例中,经配置以对视频数据进行译码的装置包含:用于对指示来自当前图片的块是否将闪烁的信息进行译码的装置;及用于基于所述当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块而确定来自所述当前图片的所述快是否将闪烁的装置。
在另一实例中,非暂时性计算机可读存储媒体包含当执行时致使至少一个处理器执行以下操作的指令:对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自当前图片的块是否将闪烁的确定是基于所述当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块。
在附图及以下描述中阐述本发明的一或多个方面的细节。本发明中所描述的技术的其它特征、目标及优点将从描述及图式且从权利要求书而显而易见。
附图说明
图1是说明可利用本发明中描述的技术的实例视频编码及解码***的框图。
图2是说明可实施本发明中描述的技术的实例视频编码器的框图。
图3是说明可实施本发明中描述的技术的实例视频解码器的框图。
图4是说明根据本发明的技术的用于执行闪烁检测的过程的流程图。
图5是说明根据本发明的技术的用于执行闪烁检测的过程的流程图。
具体实施方式
视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1视觉、ITU-T H.262或ISO/IECMPEG-2视觉、ITU-T H.263、ISO/IEC MPEG-4视觉及ITU-T H.264(也被称为ISO/IECMPEG-4AVC),包含其可缩放视频译码(SVC)及多视图视频译码(MVC)扩展。MVC的最新联合草案描述于2010年3月的“用于通用视听服务的高级视频译码(Advanced videocoding for generic audiovisual services)”(ITU-T建议H.264)中。
此外,存在一种新开发的视频译码标准,即高效率视频译码(HEVC),其由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合合作小组(JCT-VC)进行开发。布洛斯(Bross)等人的文献JCTVC-L1003v34“高效视频译码(HEVC)文本规范草案10(针对FDIS及最后调用)(High efficiency video coding(HEVC)textspecification draft 10(for FDIS&Last Call)”(ITU-T SG16WP3及ISO/IECJTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第12届会议:瑞士日内瓦,2013年1月14日到23日)中描述了HEVC标准的最近的草案,被称作“HEVC工作草案10”或“WD10”,其可从下处获得:http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip。
本发明的技术涉及视频译码并且可减少向视频的观察者呈现为“闪烁”的视觉伪影或视觉偏差。闪烁伪影不适当地向经译码视频数据的观察者呈现并且应被减少或消除,以便改进到观察者的视频的主观质量。
如下文更详细地论述,本发明的技术可使视频译码器能够减少或消除闪烁伪影。根据本发明的技术配置的视频编码器可尝试识别视频数据的图片中将闪烁的区域。视频编码器可基于当前图片的块与另一图片的并置块之间的差而识别潜在闪烁的区域。
如果视频编码器确定特定区域可闪烁,则视频编码器可对指示闪烁区域的信息(例如,语法元素)进行编码。如下文将更详细地描述,经编码信息可指示经配置以执行一般互逆的解码过程的视频解码器应对当前块施加某些约束以便减少闪烁。
图1是说明根据本发明的实例的可经配置以利用闪烁检测及闪烁缓解的技术的实例视频编码及解码***10的框图。如图1中所示,***10包含经由通信信道16将经编码视频发射到目的地装置14的源装置12。经编码视频数据还可存储在存储媒体34或文件服务器36上且可由目的地装置14在需要时存取。当存储到存储媒体或文件服务器时,视频编码器20可将经译码视频数据提供到另一装置,例如网络接口、压缩光盘(CD)、蓝光或数字视频光盘(DVD)刻录机或烫印设施装置,或用于将经译码视频数据存储到存储媒体的其它装置。同样,与视频解码器30分开的装置(例如,网络接口、CD或DVD读取器等)可从存储媒体检索经译码视频数据且将所检索的数据提供给视频解码器30。
源装置12及目的地装置14可包括各种装置中的任一者,包含桌上型计算机、笔记本(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如,所谓的“智能”电话)、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台等。在许多情况下,此些装置可经配备用于无线通信。因此,通信信道16可包括无线信道、有线信道,或适合于发射经编码视频数据的无线及有线信道的组合。类似地,文件服务器36可由目的地装置14通过任何标准数据连接(包含因特网连接)进行存取。这可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。
根据本发明的实例的技术可应用于视频译码中以支持多种多媒体应用中的任一者,例如空中电视广播、有线电视发射、***发射、流式视频传输(例如经由因特网)、对数字视频进行编码以供存储在数据存储媒体上、对存储在数据存储媒体上的数字视频进行解码,或其它应用。在一些实例中,***10可经配置以支持单向或双向视频发射,以支持例如视频流式传输、视频重放、视频广播及/或视频电话等应用。
在一些实例中,本发明中描述的技术可具体来说对根据HEVC的视频译码有用。然而,本发明中描述的技术不应被视为限于任何特定的视频译码标准。本发明中描述的技术也可适用于非基于标准的视频译码。
在图1的实例中,源装置12包含视频源18、视频编码器20、调制器/解调器22及发射器24。在源装置12中,视频源18可包含例如视频俘获装置(例如,摄像机、含有先前俘获的视频的视频存档、用于从视频内容提供者接收视频的视频馈送接口)的源,及/或用于产生计算机图形数据以作为源视频的计算机图形***的源,或此些源的组合。作为一个实例,如果视频源18为摄像机,则源装置12与目的地装置14可形成可例如在智能电话或平板计算机内提供的所谓的相机电话或视频电话。然而,本发明中描述的技术可大体适用于视频译码,且可应用于无线及/或有线应用或其中经编码的视频数据存储在本地磁盘上的应用。
可由视频编码器20编码所俘获视频、预俘获视频或计算机产生的视频。经编码视频信息可由调制解调器22根据通信标准(例如,有线或无线通信协议)来调制,且经由发射器24发射到目的地装置14。调制解调器22可包含各种混合器、滤波器、放大器或经设计以用于信号调制的其它组件。发射器24可包含经设计以用于发射数据的电路,包含放大器、滤波器及(在无线通信的情况下)一或多个天线。
由视频编码器20编码的所俘获的、预俘获的或计算机产生的视频还可存储于存储媒体34或文件服务器36上,以供以后消耗。存储媒体34可包含蓝光光盘、DVD、CD-ROM、快闪存储器,或用于存储经编码视频的任何其它合适的数字存储媒体。存储在存储媒体34上的经编码视频随后可由目的地装置14存取以进行解码及回放。虽然在图1中未展示,但在一些实例中,存储媒体34及/或文件服务器36可存储发射器24的输出。
此外,尽管存储媒体34及文件服务器36被说明为从视频编码器20接收视频数据,但在一些实例中,存储媒体34及文件服务器36可从发射器24或某个其它单元而不是视频编码器20接收视频数据。同样地,尽管存储媒体34及文件服务器36被说明为将视频数据输出到视频解码器30,但在一些实例中,存储媒体34及文件服务器36可将视频数据输出到接收器26或某个其它单元而不是视频解码器30。在这些实例中,视频解码器30可从接收器26或某个其它单元接收视频数据。
文件服务器36可为能够存储经编码视频并将所述经编码视频发射到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置、本机磁盘驱动器或能够存储经编码视频数据并将经编码视频数据发射到目的地装置的任何其它类型的装置。经编码视频数据从文件服务器36的发射可能是流式发射、下载发射或两者的组合。文件服务器36可由目的地装置14通过任何标准数据连接(包含因特网连接)进行存取。这可包含适用于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器、以太网、USB等)或两者的组合。
在图1的实例中,目的地装置14包含接收器26、调制解调器28、视频解码器30及显示装置32。目的地装置14的接收器26经由信道16接收信息,并且调制解调器28对所述信息进行解调以产生用于视频解码器30的经解调位流。在信道16上传送的信息可包含由视频编码器20产生的多种语法信息,以供视频解码器30在解码视频数据时使用。此类语法还可包含在存储于存储媒体34或文件服务器36上的经编码视频数据中。视频编码器20及视频解码器30中的每一者可形成能够对视频数据进行编码或解码的相应编码器-解码器(编解码器)的一部分。
显示装置32可与目的地装置14一起集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,通信信道16可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理发射线,或无线与有线媒体的任何组合。通信信道16可形成基于数据包的网络(例如,局域网、广域网或例如因特网的全球网络)的一部分。通信信道16大体上表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包含有线或无线媒体的任何合适的组合。通信信道16可包含路由器、交换器、基站或可用于促进从源装置12到目的地装置14的通信的任何其它装备。
视频编码器20及视频解码器30可根据视频压缩标准(例如,由ITU-T视频译码专家组(VCEG)及ISO/IEC运动图片专家组(MPEG)的视频译码联合合作小组(JCT-VC)开发的高效视频译码(HEVC)或HEVC标准的扩展部分)来操作。HEVC范围扩展目前在发展中。布洛斯(Bross)等人的文献JCTVC-L1003v34“高效视频译码(HEVC)文本规范草案10(针对FDIS及最后调用)(High efficiency video coding(HEVC)text specification draft 10(for FDIS&Last Call)”(ITU-T SG16WP3及ISO/IEC JTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第12届会议:瑞士日内瓦,2013年1月14日到23日)中描述了HEVC标准的最近的草案,被称作“HEVC工作草案10”或“WD10”,其可从下处下载:http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip。HEVC WD10的全部内容在此以引用的方式并入本文中。
尽管图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当的MUX-DEMUX单元或其它硬件及软件,以处理对共同数据流或单独数据流中的音频及视频两者的编码。如果适用,在一些实例中,MUX-DEMUX单元可符合多路复用器协议。实例包含ITU H.223多路复用器协议或例如用户数据报协议(UDP)的其它协议。
视频编码器20及视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地在软件中实施所述技术时,装置可将用于所述软件的指令存储在合适的非暂时性计算机可读媒体中且使用一或多个处理器在硬件中执行所述指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(编解码器)的一部分。
包含视频解码器30的装置的实例包含无线通信装置、集成电路(IC)及微处理器。类似地,包含视频编码器20的装置的实例包含无线通信装置、集成电路(IC)及微处理器。
在一些实例中,视频编码器20及视频解码器30可各自包含经配置以实施本发明中描述的技术的一或多个处理器。包含视频编码器20或视频解码器30的装置还可包含存储器,所述存储器存储视频编码器20及视频解码器30利用的视频数据。在包含视频编码器20及视频解码器30的装置是IC芯片或微处理器的实例中,存储器可为IC芯片或微处理器的局部存储器,或可为包含IC芯片或微处理器的设备(例如,智能电话或平板计算机等的无线通信装置)的***存储器或局部及***存储器的组合。在包含视频编码器20及视频解码器30的装置是无线通信装置(或其它此种装置)的实例中,存储器可为视频编码器20或视频解码器30的局部存储器,包含视频编码器20或视频解码器30的装置的***存储器或局部及***存储器的组合。
视频编码器20可实施用于闪烁检测及缓解的本发明的技术中的任一者或全部。同样地,视频解码器30可实施用于闪烁检测及缓解的这些技术中的任一者或全部。如本发明中所描述,视频译码器可指视频编码器或视频解码器。类似地,视频译码单元可指视频编码器或视频解码器。同样地,视频译码可指视频编码或视频解码。
数字视频装置实施视频压缩技术以更高效地对数字视频信息进行编码及解码。视频压缩可应用空间(帧内)预测及/或时间(帧间)预测技术来减少或移除视频序列中固有的冗余。
JCT-VC已开发HEVC标准,例如,如在上述HEVC WD10中所描述。HEVC标准化努力是基于被称作HEVC测试模型(HM)的视频译码装置的模型。HM根据例如ITU-TH.264/AVC假设视频译码装置相对于现有装置的若干额外能力。举例来说,虽然H.264提供了九种帧内预测编码模式,但HEVC HM可提供多达三十三种帧内预测编码模式。以下部分将更详细地论述HM的某些方面。
对于根据HEVC标准的视频译码,可将视频帧分割成译码单元。译码单元(CU)大体上是指充当对其应用各种译码工具以进行视频压缩的基本单元的图像区域。CU通常具有表示为Y的一个明度分量及表示为U及V的两个色度分量。取决于视频采样格式,就样本数目而言的U及V分量的大小可与Y分量的大小相同或不同。
CU通常为正方形的,且可被视为类似于例如在其它视频译码标准(例如,ITU-TH.264)下的所谓的宏块。在本申请案中出于说明的目的将描述根据HEVC标准的目前所提议的方面中的一些的译码。然而,本发明中描述的技术可适用于其它视频译码过程,例如,根据HEVC、H.264的范围扩展定义的过程或其它标准或专用视频译码过程。
根据HM,CU可包含一或多个预测单元(PU)及/或一或多个变换单元(TU)。位流内的语法数据可界定最大译码单元(LCU),其为在像素数目方面的最大CU。一般来说,除了CU并不具有大小区别以外,CU具有类似于H.264的宏块的目的。因此,CU可***成数个子CU。一般来说,本发明中提到CU可指图片的最大译码单元或LCU的子CU。LCU可***成数个子CU,且每一子CU可进一步***成数个子CU。位流的语法数据可界定LCU可***的最大次数,其被称作CU深度。因此,位流还可界定最小译码单元(SCU)。本发明还使用术语“块”或“部分”来指CU、PU或TU中的任一者。一般来说,“部分”可指视频帧的任何子集。
LCU可与四叉树数据结构相关联。一般来说,四叉树数据结构包含每个CU一个节点,其中一个根节点对应于所述LCU。如果一个CU***成四个子CU,那么对应于CU的节点包含四个叶节点,其中的每一者对应于所述子CU中的一者。四叉树数据结构的每一节点可提供用于对应CU的语法数据。举例来说,四叉树中的节点可包含***旗标,其指示对应于所述节点的所述CU是否***成子CU。用于CU的语法元素可递归地定义,且可取决于CU是否***成子CU。如果CU未进一步***,那么将其称作叶CU。在本发明中,叶CU的4个子CU也将被称作叶CU,虽然不存在对原始叶CU的明确***。举例来说,如果16×16大小的CU不进一步***,那么四个8×8子CU也将被称作叶CU,尽管16×16CU从未***。
叶CU可包含一或多个预测单元(PU)。一般来说,PU表示对应CU的全部或一部分,且可包含用于检索PU的参考样本的数据。举例来说,在对PU进行帧间模式编码时,PU可包含界定PU的运动向量的数据。举例来说,定义运动向量的数据可描述运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考帧及/或运动向量的参考列表(例如,列表0或列表1)。还可描述界定PU的叶CU的数据,例如,将CU分割为一或多个PU。分割模式可取决于CU是未被译码、被帧内预测模式编码还是被帧间预测模式编码而不同。对于帧内译码,可将PU视为与下文所描述的叶变换单元相同。
HEVC标准允许根据变换单元(TU)的变换,其对于不同的CU可不同。TU的大小通常是基于针对经分割LCU定义的给定CU内的PU的大小而确定,但是情况可能并不总是如此。TU通常与PU大小相同或小于PU。在一些实例中,对应于CU的残余样本可使用一种被称为“残余四叉树”(RQT)的四叉树结构细分成较小单元。RQT的叶节点可被称为变换单元(TU)。可变换与TU相关联的像素差值以产生变换系数,所述变换系数可经量化。TU包含一亮度变换块及两个色度变换块。因此,应用于TU的下文所论述的任何译码过程可实际上应用于亮度及色度变换块。
一般来说,PU是指与预测过程相关的数据。举例来说,当PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含界定PU的运动向量的数据。
一般来说,TU用于变换及量化过程。具有一或多个PU的给定CU还可包含一或多个变换单元(TU)。在预测后,视频编码器20可根据PU从由译码节点所识别的视频块计算残余值。接着更新译码节点以参考除原始视频块之外的残余值。残余值包括像素差值,所述像素差值可使用TU中所指定的变换及其它变换信息被变换为变换系数、经量化且经扫描以产生串行化变换系数以用于熵译码。可再次更新译码节点,以参考这些串行化变换係数。本发明通常使用术语“视频块”来指代CU的译码节点。在一些特定情况下,本发明还可使用术语“视频块”来指包含译码节点及PU及TU的树块,即,LCU或CU。
视频序列通常包含一系列视频帧或图片。图片群组(GOP)一般包括一系列一或多个视频图片。GOP可包含GOP的标头、一或多个图片的标头或其它地方中的语法数据,其描述GOP中包含的多个图片。图片的每一切片可包含描述用于相应的切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块进行操作以便对视频数据进行编码。视频块可与CU内的译码节点相对应。视频块可具有固定或变化的大小,并且根据指定译码标准可在大小上有所不同。
为了对块(例如,视频数据的预测单元)进行译码,首先导出块的预测值。可通过帧内(I)预测(即,空间预测)或帧间(P或B)预测(即,时间预测)来导出也被称作预测性块的预测值。因此,一些预测单元可使用相对于相同帧(或切片)中的相邻参考块中的参考样本的空间预测进行帧内译码(I),并且其它预测单元可相对于其它先前经译码帧(或切片)中的参考样本块进行单向帧间译码(P)或双向帧间译码(B)。在每一种情况下,参考样本均可用于形成用于待译码块的预测性块。
在识别预测性块之后,确定原始视频数据块中的像素与其预测性块中的像素之间的差。此差可被称为预测残余数据,且指示待译码的块中的像素值与经选择以表示经译码块的预测性块中的像素值之间的像素差。为了实现更好的压缩,可例如使用离散余弦变换(DCT)、整数变换、卡洛南-洛伊(K-L)变换或另一变换来变换预测残余数据以产生变换系数。
变换块(例如TU)中的残余数据可布置在驻存在空间像素域中的像素差值的二维(2D)阵列中。变换将残余像素值转换成变换域(例如频域)中的变换系数的二维阵列。
为了进一步压缩,可在熵译码之前对变换系数进行量化。熵译码器接着对经量化变换系数应用熵译码,例如上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、概率区间分割熵译码(PIPE)等。在一些实例中,视频编码器20可利用预定义扫描次序来扫描经量化的变换系数以产生可被熵编码的串行化向量。在其它实例中,视频编码器20可执行自适应扫描。在扫描经量化变换系数以形成一维向量之后,视频编码器20可对所述一维向量进行熵编码,视频编码器20还可对与经编码视频数据相关联的语法元素进行熵编码以供视频解码器30在对视频数据进行解码时使用。
算术译码是具有高译码效率的许多压缩算法中所使用的熵译码的形式,因为其能够将符号映射到非整数长度码字。CABAC译码可应用于某些信息且针对其它信息被绕过。
如上所述,当视频编码器20或视频解码器30执行运动估计时,可产生闪烁伪影。现将论述可检测闪烁伪影的过程。在HEVC中,当对I切片进行译码时,视频译码器基于来自当前切片的经先前重构的样本执行预测。对于P或B切片的帧间预测,视频译码器可基于经先前译码的图片(过去或未来按所显示次序)执行预测。尽管假定所有切片是I切片来描述本发明的技术,但是当视频序列是I、P及B切片的混合时本发明的技术可适用。
与用于P及B切片的量化及预测残余相比,从当前切片的预测与基于经先前译码的图片的预测的差对用于I切片的预测残余及量化特征具有非常不同的影响。类似地,由于缺乏时间预测,两个连续I切片之间的预测残余及量化特征也可非常不同。两个连续I切片之间的预测残余及量化特征不同可引起I切片的视觉伪影,称为“闪烁”。
本发明提出用于解决上述问题的若干技术。根据本发明的技术配置的视频译码器(例如,视频编码器20)可执行闪烁检测以及闪烁缓解来解决闪烁伪影。现将论述本发明的一般闪烁检测技术。
视频编码器20可根据本发明的技术配置以基于来自经先前译码图片的按所显示次序的并置块而检测来自当前图片(即,当前被译码的视频数据的图片)的块的闪烁。
视频编码器20可确定必须约束或改变来自先前图片的并置块中的所确定闪烁块的视频译码模式以缓解与当前图片的闪烁块相关联的闪烁伪影。这在视频编码器中通常非常难以实现。代替改变经先前译码的并置块的视频译码模式,本发明的技术可配置视频编码器20以使用来自当前图片的原始块及来自下一图片的按视频数据的所显示次序的并置原始块来确定及缓解闪烁。本发明分别将按所显示次序的当前块及下一块称为Bcurrent及Bnext
视频编码器20可确定当前帧的块与下一帧中按所显示次序的并置块之间的差。基于块Bcurrent与并置块Bnext之间的差,视频编码器20可确定当前帧的块Bcurrent将闪烁。视频编码器20可确定块Bcurrent与并置块Bnext的度量值(例如,计算块Bcurrent与并置块Bnext之间的差)。视频编码器20可比较的度量值的实例包含:梯度、绝对差总和(SAD)及均方误差(MSE)。基于度量值且如下文将更详细地论述,视频编码器20可确定应执行闪烁缓解及指示当前图片的块Bcurrent将闪烁的代码信息。
在一些实例中,经编码信息可包括语法元素,例如指示闪烁区域的旗标。在产生或设定语法元素之后,视频编码器20或视频解码器30可基于设定的语法元素执行任何类型的额外视频处理。额外视频处理的实例可包含各种类型的滤波、抗混叠、去块、伪影去除及/或本文中未明确描述的任何其它类型的视频处理。
在一些实例中,区域可包含来自当前图片的块Bcurrent。指示块将闪烁的信息可指示例如LCU、CTU(译码树单元)、CU、PU或块的特定区域是闪烁区域。在此类区域中,视频编码器20及视频解码器30可约束一些译码模式及/或工具,例如空间帧内预测及块内复制(帧内BC),以便减少闪烁伪影。现将论述根据本发明的闪烁缓解技术的额外实例。
在一个实例中,视频编码器20及视频解码器30可在闪烁区域中停用空间帧内预测。视频编码器20可指示通过将闪烁区域的空间相邻块标记为不可用于帧内预测而停用空间帧内预测。在另一实例中,视频编码器20及视频解码器30可将闪烁区域内部的块标记为不可用于帧内预测,使得进一步缓解由不同变换大小及所得预测引起的闪烁伪影。
在视频编码器20将块标记为不可用于帧内预测的情况下,视频编码器20及视频解码器30可(举例来说)根据HEVC的章节8.4.4.2.2针对帧内样本预测使用HEVC参考样本替换过程来填充不可用的样本。填补不可用样本可以位流复杂性为代价缓解闪烁。在一些其它实例中,视频编码器20可仅将非闪烁区域中的块标记为可用于帧内预测。
现将论述与对用于识别闪烁区域的信息进行译码有关的各种技术。如上所述,视频译码数据包括多个不同层级。位流的实例层级可包括:LCU、CU、PU或TU。视频编码器20及视频解码器30可对指示位流的任何层级中的闪烁区域(例如,闪烁旗标)的信息进行译码。
在本发明的一些实例中,视频编码器20及视频解码器30针对标记为闪烁的块可不执行预测。在此种情况下,使用变换或变换跳过模式对原始样本进行译码。在这种情况下并且如果在CU层级处对闪烁旗标进行译码,视频编码器20及视频解码器30可在CU层级处对闪烁旗标进行译码并且视频编码器20可不发信号通知用于所述CU的帧内预测模式。
另外,如果CU处于闪烁区域中,则视频编码器20及视频解码器30可施加进一步约束,举例来说使得如果CU处于闪烁区域中,则CU无法被译码为特定模式或通过某些工具译码(例如,块内复制、调色板模式及颜色变换)。如果施加此类约束,则视频编码器20及视频解码器30相应地调整相关CU/PU模式/信息及信令。另外,在各种实例中,视频解码器30可应用额外的后端处理后解码以进一步消除识别闪烁的区域中的闪烁。
此外如上所述,视频编码器20及视频解码器30可经配置以分别使用CABAC编码及CABAC解码对指示闪烁区域的信息(例如,语法元素)进行译码。在根据本发明的技术的实例中,视频编码器20及视频解码器30可对闪烁旗标进行CABAC译码。视频编码器20及视频解码器30可将空间相邻块的闪烁旗标的值用作闪烁旗标的CABAC译码的上下文。
视频编码器20及视频解码器30可包含线缓冲器,其可包括存储器,所述存储器经配置以存储与当前CU上方的CU相关联的信息,例如语法元素。为了减小线缓冲器的存储器中的大小,视频编码器20可标记且视频解码器30可确定当前LCU(或CTU)外部的空间相邻块不可用作上下文。
在一些实例中,本发明中描述的技术还可用于其它应用,举例来说以增加抗误码。作为一个实例,本发明中描述的技术可减少或消除复合预测误差。在此类情况下,可改变旗标语法元素的名称。然而,仍应用本发明的一般技术。
图2是说明可使用如本发明中描述的用于闪烁检测及缓解的技术的视频编码器20的实例的框图。出于说明的目的将在HEVC译码的上下文中描述视频编码器20,但本发明关于可能需要闪烁检测及缓解的其它译码标准或方法不受限制。视频编码器20可对视频帧内的CU执行帧内及帧间译码。帧内译码依赖于空间预测来减少或移除给定视频帧内的视频数据中的空间冗余。帧间译码依赖于时间预测来减少或移除当前帧与视频序列的经先前译码帧之间的时间冗余。帧内模式(I模式)可指若干基于空间的视频压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等的帧间模式可指若干基于时间的视频压缩模式中的任一者。
如图2中所示,视频数据存储器39接收用于对视频帧内的当前视频块进行编码的视频数据。视频数据存储器39可存储待由视频编码器20的组件编码的视频数据(例如,经配置以存储视频数据)。可(举例来说)从视频源18获得存储在视频数据存储器39中的视频数据。参考帧缓冲器64(也被称为参考图片缓冲器64)是解码图片缓冲器(DPB)的一个实例,其存储由视频编码器20在编码视频数据时(例如,以帧内译码模式或帧间译码模式,也被称为帧内预测译码模式或帧间预测译码模式)使用的参考视频数据。视频数据存储器39及参考帧缓冲器64可由各种存储器装置(例如,包含同步DRAM(SDRAM)的动态随机存取存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置)中的任一者形成。视频数据存储器39及参考帧缓冲器64可由相同存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器39可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
在图2的实例中,视频编码器20包含运动补偿单元44、运动估计单元42、闪烁检测单元43、帧内预测处理单元46、参考帧缓冲器64、求和器62、变换处理单元52、量化单元54及熵编码单元56。图2中说明的变换处理单元52是对残余数据块应用实际变换或变换组合的单元,并且不应与变换系数块混淆,变换系数块也可被称为CU的变换单元(TU)。为进行视频块重构,视频编码器20还包含逆量化单元58、逆变换处理单元60及求和器62。还可包含去块滤波器(图2中未展示)以便对块边界进行滤波,以从经重构视频消除成块伪影。必要时,去块滤波器通常将对求和器62的输出进行滤波。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。帧或切片可分成多个视频块,例如,最大译码单元(LCU)。运动估计单元42及运动补偿单元44可相对于一或多个参考帧中的一或多个块执行所接收视频块的帧间预测性译码以提供时间压缩。帧内预测处理单元46可相对于在与待译码的块相同的帧或切片中的一或多个相邻块执行对所接收视频块的帧内预测性译码,以提供空间压缩。
模式选择单元40可基于每个模式的误差(即,失真)结果选择译码模式中的一者,即帧内或帧间,并且将所得帧内或帧间预测块(例如,预测单元(PU))提供到求和器50以产生残余块数据且提供到求和器62以重构经编码块以供参考帧使用。求和器62将预测块与来自逆变换处理单元60的用于所述块的经逆量化、逆变换的数据进行组合,以重构经编码块,如下文更详细地描述。一些视频帧可被指定为I帧,其中I帧中的所有块都在帧内预测模式下进行编码。在一些情况下,帧内预测处理单元46可在例如运动估计单元42执行的运动搜索未产生对块的足够预测的情况下执行P或B帧中的块的帧内预测编码。
运动估计单元42及运动补偿单元44可高度集成,但出于概念的目的分别加以说明。运动估计(或运动搜索)为产生运动向量的过程,其估计视频块的运动。举例来说,运动向量可指示当前帧中的预测单元相对于参考帧的参考样本的位移。运动估计单元42通过比较经帧间译码帧的预测单元与参考帧缓冲器64中存储的参考帧的参考样本来计算用于所述预测单元的运动向量。参考样本可为发现接近匹配CU中的包含PU的部分的块(其依据像素差进行译码),像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异量度来确定。参考样本可出现在参考帧或参考切片内的任何地方,而未必出现在参考帧或切片的块(例如,译码单元)边界处。在一些实例中,参考样本可出现在分数像素位置处。
运动估计单元42将计算出的运动向量发送到熵编码单元56及运动补偿单元44。通过运动向量识别的参考帧的部分可被称为参考样本。运动补偿单元44可例如通过检索通过用于PU的运动向量识别的参考样本来计算用于当前CU的预测单元的预测值。
作为运动估计单元42及运动补偿单元44执行的帧间预测的替代方案,帧内预测处理单元46可对接收到的块进行帧内预测。帧内预测处理单元46可相对于相邻的经先前译码块(例如,当前块的上方、右上方、左上方,或左边的块(假设块的从左到右、从上到下的编码次序))来预测所接收的块。可用多种不同帧内预测模式来配置帧内预测处理单元46。举例来说,帧内预测处理单元46可基于经编码的CU的大小配置有特定数目个方向预测模式,例如,三十三个方向预测模式。
帧内预测处理单元46可通过(例如)计算各种帧内预测模式的误差值且选择产生最低误差值的模式来选择帧内预测模式。方向预测模式可包含用于组合空间相邻像素的值及向PU中的一或多个像素位置应用所述组合值的功能。一旦已计算PU中的所有像素位置的值,帧内预测处理单元46可基于PU与待编码的所接收块之间的像素差来计算预测模式的误差值。帧内预测处理单元46可继续测试帧内预测模式,直到发现产生可接受的误差值的帧内预测模式为止。帧内预测处理单元46可接着将PU发送到求和器50。
视频编码器20通过从正被译码的原始视频块减去运动补偿单元44或帧内预测处理单元46计算的预测数据来形成残余块。求和器50表示执行此减法运算的一或多个组件。残余块可对应于像素差值的二维矩阵,其中残余块中的值的数目与对应于所述残余块的PU中的像素的数目相同。残余块中的值可对应于PU中及待译码的原始块中的共置像素的值之间的差(即,误差)。取决于经译码的块的类型,所述差可为色度或亮度差。
变换处理单元52可从残余块形成一或多个变换单元(TU)。变换处理单元52从多个变换中选择变换。所述变换可基于例如块大小、译码模式或其类似者等一或多个译码特性来加以选择。变换处理单元52接着对TU应用选定变换,从而产生包括变换系数的二维阵列的视频块。
变换处理单元52可将所得变换系数发送到量化单元54。量化单元54可接着将变换系数量化。熵编码单元56可接着根据扫描模式对矩阵中的经量化变换系数执行扫描。本发明将熵编码单元56描述为执行所述扫描。然而,应理解,在其它实例中,其它处理单元(例如,量化单元54)可执行所述扫描。
一旦将变换系数扫描为一维阵列,熵编码单元56可对系数应用熵译码,例如CABAC、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE),或另一熵译码方法。熵编码单元56可经配置以对变换系数进行译码。为执行CABAC,熵编码单元56可选择适用于用以对待发射的符号进行编码的特定上下文的上下文模型。在熵编码单元56的熵译码之后,可将所得经编码视频发射到另一装置,例如视频解码器30,或可将经编码视频存档以用于日后发射或检索。
在一些情况下,熵编码单元56或视频编码器20的另一单元可经配置以执行除了熵译码之外的其它译码功能。举例来说,熵编码单元56可经配置以确定CU及PU的经译码块图案(CBP)值。并且,在一些情况下,熵编码单元56可执行系数的行程长度译码。
逆量化单元58及逆变换处理单元60分别应用逆量化及逆变换以在像素域中重构残余块,例如以供稍后用作参考块。运动补偿单元44可通过将残余块加到参考帧缓冲器64的帧中的一者的预测性块来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用于经重构残余块以计算子整数像素值用于运动估计。求和器62将经重构残余块添加到由运动补偿单元44产生的运动补偿预测块,以产生经重构视频块以用于存储于参考帧缓冲器64中。经重构视频块可由运动估计单元42及运动补偿单元44用作参考块以对后续视频帧中的块进行帧间译码。
闪烁检测单元43经配置以根据本发明的技术中的任一者执行闪烁检测及/或缓解技术。闪烁检测单元43可从参考帧缓冲器64或从视频数据存储器39按所显示次序存取当前图片及下一图片。闪烁检测单元43还可经配置以通过用信号表示模式选择单元40来指示或限制特定视频译码模式或译码工具。
闪烁检测单元43还可经配置以发信号通知熵编码单元56将例如语法元素等的信息CABAC编码至熵编码单元56。作为一些实例,此种信息可包含指示特定区域是否将闪烁的旗标语法元素。在其它实例中,闪烁检测单元43可发信号通知用于将语法元素CABAC编码至熵编码单元45的上下文信息。
如上所述,闪烁检测单元43可使用不同度量值来确定块Bcurrent可闪烁。现将更详细地描述视频编码器20可使用的闪烁检测技术的实例。
在一些实例中,为了检测闪烁伪影,闪烁检测单元43可计算用于Bcurrent的每个明度样本的梯度(边缘信息)。如果当前图片的样本具有RGB(红、绿、蓝)格式,则闪烁检测单元43可将图片转换成YCbCr格式且将所述图片存储于视频数据存储器39中。或者,闪烁检测单元43可将G分量用作明度分量的代理。在一些实例中,闪烁检测单元43可使用索贝尔边缘检测器来确定梯度。然而,闪烁检测单元43可使用任何其它梯度计算器来确定梯度。基于梯度量值,闪烁检测单元43可计算梯度量值的平均值(avgGradMag)及块的梯度量值的标准差(stdDevGradMag)。
另外,闪烁检测单元43可计算块中的样本的百分比,其中梯度量值大于给定阈值(EDGE_THRESHOLD)。在这些实例中,大于阈值的样本的百分比表示为edgePixelPercentage。闪烁检测单元43接着可基于大于或小于阈值的样本的百分比将块分类为边缘块或纹理块。
如果edgePixelPercentage大于阈值(EDGE_PERCENT_THRESHOLD),则闪烁检测单元43将块分类为边缘块。如果avgGradMag大于阈值(TEXTURE_LOW_THRESHOLD),stdDevGradMag小于阈值(TEXTURE_HIGH_THRESHOLD)且stdDevGradMag与avgGradMag之间的比率小于阈值(RATIO_TEXTURE_THRESHOLD),则闪烁检测单元43将块分类为纹理块。
闪烁检测单元43还根据本发明的技术确定块的调色板大小且将调色板大小用作闪烁确定过程的一部分。块的调色板大小被定义为块中的不同像素值的数目。当确定像素值是否不同时,闪烁检测单元43可考虑像素的所有分量(例如,RGB或YUV)。从调色板中的像素值的某个偏差是可能的。举例来说,如果两个像素使得个别分量相差小于阈值,或总体绝对差总和相差小于另一阈值,则闪烁检测单元43可认为那些像素相同且对应于调色板中的单一条目。标准包含关于个别分量差的阈值以及关于总体绝对差总和的阈值。
现将描述用于基于绝对差总和及调色板大小对闪烁旗标进行编码的过程。作为第一步骤,闪烁检测单元43可计算原始块Bcurrent与Bnext之间的SAD。如果SAD大于阈值(SAD_THRESHOLD),则闪烁检测单元43将所述块标记为非闪烁。
如果用于直到当前块的当前图片的累积SAD小于阈值(CUM_SAD_THRESHOLD),则闪烁检测单元43将所述块标记为非闪烁。如果SAD小于SAD_THRESHOLD并且(1)调色板大小大于阈值调色板大小(PALETTE_THRESHOLD)且所述块为边缘块或(2)所述块为纹理块,则闪烁检测单元43将所述块标记为闪烁块。否则,即如果不符合上述条件,则运动估计单元42将所述块标记为非闪烁块。
在上述实例中,闪烁检测单元43可使用失真的其它测量,例如MSE而不是SAD。举例来说,在一些情况下,运动估计单元42可将SAD或失真的其它测量应用于像素值,例如,亮度或色度值、RGB或YUV值。即使用于闪烁检测的技术上述技术基于调色板大小及测量使用标准来确定块是否为边缘块及纹理块,也可仅使用以上标准中的一些。闪烁检测单元43还可使用其它测量来基于梯度或其它标准确定块是纹理块还是边缘块。
此外,闪烁检测单元43可施加额外约束以缓解闪烁。在一个实例中,视频编码器20及具体而言闪烁检测单元43可针对闪烁区域停用RDOQ(速率失真优化量化)。
在闪烁缓解的其它实例中,闪烁检测单元43可发信号通知熵编码单元56以执行绕过闪烁区域的编码并且可对先前I帧中的相同区域的信息(例如,块模式、变换大小及系数层级)进行编码,使得当前帧中的闪烁区域的重构与先前I帧中的闪烁区域的重构完全相同。
闪烁检测单元43还可经配置以修改CABAC编码过程以执行闪烁缓解。举例来说,闪烁检测单元43可发信号通知熵编码单元56以重置用于闪烁区域的某些CABAC上下文模型的状态,例如,与系数译码有关的上下文。图3中说明的视频解码器30的闪烁检测单元73及熵解码单元70可经配置以在CABAC解码期间执行重设CABAC上下文模型的一般互逆过程。
在涉及CABAC的闪烁缓解的一些实例中,闪烁检测单元43可发信号通知熵编码单元56,可将相对于当前图片的块的左空间相邻块的闪烁旗标仅用作CABAC译码的上下文。视频解码器30的闪烁检测单元73及熵解码单元70可执行CABAC解码的一般互逆过程。在一些替代方案中,用于闪烁旗标的上下文可包括在位流中发信号通知的其它信息。用作CABAC上下文的其它信息的实例可包括例如CU深度、块类型、变换大小或QP(量化参数)等的值。
根据本发明的技术,视频编码器20及视频解码器30可经配置以:对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块。
图3是说明对经编码视频序列进行解码的视频解码器30的实例的框图。视频解码器30表示经配置以执行用于闪烁检测及缓解的方法的装置的实例。在图3的实例中,视频数据存储器69接收经编码视频。视频数据存储器69可存储待由视频解码器30的组件解码的视频数据(例如,经配置以存储视频数据),例如经编码视频位流。存储在视频数据存储器69中的视频数据可从例如相机的本地视频源、经由视频数据的有线或无线网络通信或通过存取物理数据存储媒体而获得。视频数据存储器69可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。
参考帧缓冲器82(还被称为参考图片存储器82)是存储参考视频数据以用于通过视频解码器30对视频数据进行解码(例如,在帧内或帧间译码模式中)的经解码图片缓冲器(DPB)的一个实例。视频数据存储器69及参考图片存储器82可由多种存储器装置中的任一者形成,例如,包含同步DRAM(SDRAM)的动态随机存取存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器69及参考图片存储器82可由相同存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器69可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
视频解码器30包含熵解码单元70、运动补偿单元72、闪烁检测单元73、帧内预测处理单元74、逆量化单元76、逆变换处理单元78、参考帧缓冲器82及求和器80。在一些实例中,图3的视频解码器30可执行总体上与相对于视频编码器20(参见图2)描述的编码遍次互逆的解码遍次。
熵解码单元70对经编码位流执行熵解码过程以检索变换系数的一维阵列。所使用的熵解码过程取决于视频编码器20所使用的熵译码(例如,CABAC)。编码器所使用的熵译码过程可在经编码位流中发信号通知或可为预定过程。熵解码单元70可经配置以对变换系数进行译码。
在一些实例中,熵解码单元70(或逆量化单元76)可使用与视频编码器20的熵编码单元56(或量化单元54)所使用的扫描模式成镜像的扫描来扫描所接收的值。尽管可在逆量化单元76中执行系数的扫描,但是出于说明的目的将扫描描述成由熵解码单元70执行。另外,尽管为了便于说明展示为单独的功能单元,但是视频解码器30的熵解码单元70、逆量化单元76及其它单元的结构及功能性可彼此高度集成。
逆量化单元76将在位流中提供且由熵解码单元70解码的经量化变换系数逆量化,即去量化。逆量化过程可包含常规过程,例如,类似于针对HEVC所提出的过程或H.264解码标准所定义的过程。所述逆量化过程可包含使用视频编码器20针对CU计算以确定量化程度及同样应应用的逆量化程度的量化参数QP。逆量化单元76可在将变换系数从一维阵列转换为二维阵列之前或之后逆量化所述变换系数。
逆变换处理单元78将逆变换应用于经逆量化变换系数。在一些实例中,逆变换处理单元78可基于来自视频编码器20的信令或通过从一或多个译码特性(例如,块大小、译码模式等)推断变换来确定逆变换。在一些实例中,逆变换处理单元78可基于在包含当前块的LCU的四叉树的根节点处的发信号通知的变换来确定要应用于当前块的变换。或者,变换可在用于LCU四叉树中的叶节点CU的TU四叉树的根处发信号通知。在一些实例中,逆变换处理单元78可应用级联逆变换,其中逆变换处理单元78将两个或两个以上逆变换应用于正被解码的当前块的变换系数。帧内预测处理单元74可基于发信号通知的帧内预测模式及来自当前帧的经先前解码块的数据来产生当前帧的当前块的预测数据。
运动补偿单元72可从经编码位流检索运动向量、运动预测方向及参考索引。参考预测方向指示帧间预测模式是单向(例如,P帧)还是双向(B帧)。参考索引指示候选运动向量是基于哪一参考帧。
基于所检索的运动预测方向、参考帧索引及运动向量,运动补偿单元产生当前部分的经运动补偿块。这些经运动补偿块基本上重新产生用于产生残余数据的预测性块。
运动补偿单元72可产生经运动补偿块,从而可能基于内插滤波器执行内插。用于将用于以子像素精确度进行运动估计的内插滤波器的标识符可包含在语法元素中。运动补偿单元72可使用由视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元72可根据接收到的语法信息而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。
另外,在HEVC实例中,运动补偿单元72及帧内预测处理单元74可使用一些语法信息(例如,由四叉树提供)来确定用于对经编码视频序列的帧进行编码的LCU的大小。运动补偿单元72及帧内预测处理单元74还可使用语法信息来确定***信息,所述***信息描述经编码视频序列的帧的每一CU如何***(且同样地,子CU如何***)。语法信息还可包含指示每一***如何经编码的模式(例如,帧内或帧间预测,且对于帧内预测为帧内预测编码模式),用于每一经帧间编码的PU的一或多个参考帧(及/或包含用于参考帧的标识符的参考列表)及用于对经编码视频序列进行解码的其它信息。
求和器80将残余块与由运动补偿单元72或帧内预测处理单元74产生的对应预测块进行组合以形成经解码块。视需要,还可应用去块滤波器以对经解码块进行滤波,以便消除成块伪影。经解码视频块随后被存储在参考帧缓冲器82(还被称为经解码图片缓冲器)中,所述参考帧缓冲器提供用于后续运动补偿的参考块且还产生经解码视频以用于在显示装置(例如,图1的显示装置32)上呈现。
闪烁检测单元73经配置以根据本发明的技术执行闪烁检测及/或闪烁缓解技术的任何组合。闪烁检测单元73可从参考帧缓冲器82或从视频数据存储器69按所显示次序存取当前图片及下一图片。闪烁检测单元73还可经配置以通过用信号表示运动补偿单元72及/或帧内预测处理单元74来指示或限制特定视频译码模式或译码工具。
闪烁检测单元73还可经配置以发信号通知熵解码单元70将例如语法元素等的信息CABAC解码至熵解码单元70。作为一些实例,此种信息可包含指示特定区域是否将闪烁的旗标语法元素。在其它实例中,闪烁检测单元73可发信号通知用于将语法元素CABAC解码至熵解码单元70的上下文信息。
如上所述,视频解码器30可应用各种闪烁缓解技术。举例来说,闪烁检测单元73可仅对用于CU的具有指定最小大小(例如,16×16或以上)的闪烁旗标进行解码。在这种情况下,对于小于16×16的CU(例如,具有大小8×8的CU),闪烁检测单元73可不对闪烁旗标进行解码。对于小于最小大小的CU,视频解码器30及具体而言闪烁检测单元73及熵解码单元70可推断闪烁旗标是错误的(即,等于0)。在一些情况下,推断而不是用信号表示闪烁旗标的值会减小位流复杂性及/或节约位。另外,视频编码器20可对高层次控制旗标进行编码,可处于序列、图片或切片层级处以指示是否针对视频数据的所述特定层级启用闪烁缓解,例如,是否针对图片、切片或序列启用闪烁缓解。在这种情况下,闪烁检测单元73可类似地推断闪烁旗标CU、PU、TU、块或位流的其它元素的值。
上文相对于图2描述的实例描述视频编码器20可确定闪烁旗标的值并且对所述值进行编码。然而,视频解码器30还可确定闪烁旗标的值。举例来说,闪烁检测单元73可执行闪烁检测的过程以确定在某些条件下块是否将针对每一块大小闪烁。举例来说,如果视频编码器20发信号通知CU层级处的闪烁旗标,则闪烁检测单元73可在从64×64至8×8的每个CU大小上执行闪烁检测以确定用于CU的每个块的闪烁旗标的值。
在再其它实例中,闪烁检测单元73还可确定每个16×16块是否在闪烁。对于例如32×32及64×64块大小的较大块大小,如果较大块内的16×16块中的任一者由视频编码器20或视频解码器30标记为闪烁,则闪烁检测单元73可认为较大包围块也在闪烁。在又另一实例中,仅当正闪烁的较大包围块内的多个16×16块大于阈值时,闪烁检测单元73可将32×32或64×64块标记为闪烁。
如其它地方所描述且根据本发明的技术,视频解码器30的闪烁检测单元73可经配置以:对指示来自当前图片的块是否将闪烁的信息进行译码。来自当前图片的块是否将闪烁的确定可基于当前图片中按所显示次序的块及来自下一图片的按所显示次序的并置块。
图4是说明根据本发明的技术的用于执行闪烁检测的过程的流程图。出于实例的目的应理解,例如视频编码器20的闪烁检测单元43或视频解码器30的闪烁检测单元73的视频编码器或解码器可执行本文中描述的技术中的任一者。
在图4的实例中,视频编码器20的闪烁检测单元43可确定当前图片的块与下一图片中按所显示次序的并置块之间的SAD(或另一不同度量值)(200)。如果闪烁检测单元43确定SAD大于阈值(决策框204的是分支),则闪烁检测单元43将当前块标记为非闪烁(202)。
如果闪烁检测单元43确定SAD小于或等于阈值(决策框204的否分支),则闪烁检测单元43确定直到当前块的当前图片的累积SAD(206)。如果累积SAD小于或等于阈值累积SAD(208的否分支),则运动估计单元将所述块标记为非闪烁(202)。
如果累积SAD大于阈值(208的是分支),则闪烁检测单元43确定块的调色板大小及所述块是否为边缘块(210)。闪烁检测单元43还确定所述块是否为纹理块(216)。如果当前图片的块的调色板大小小于或等于阈值调色板大小或所述块为边缘块(212的否分支),则闪烁检测单元43将所述块标记为非闪烁(220)。如果调色板大小大于调色板大小阈值且所述块不是边缘块(212的是分支),则闪烁检测单元43将所述块标记为闪烁(214)。
如果闪烁检测单元43确定所述块为纹理块(218的是分支),则闪烁检测单元43将所述块标记为闪烁(214)。如果闪烁检测单元43确定所述块不是纹理块(218的否分支),则闪烁检测单元43将所述块标记为非闪烁(202)。
图5是说明根据本发明的技术的用于执行闪烁检测及闪烁缓解的过程的流程图。出于实例的目的应理解,例如视频编码器20或视频解码器30的视频编码器或解码器可执行本文中描述的技术中的任一者。
在图5的实例中,视频编码器20的闪烁检测单元43及熵编码单元56或视频解码器30的熵解码单元70及闪烁检测单元73可对指示来自当前图片的块是否将闪烁的信息(例如,闪烁旗标)进行译码(240)。闪烁检测单元43或闪烁检测单元73可基于当前图片中按所显示次序的块及来自下一图片的按所述显示次序的并置块而对指示来自所述当前图片的所述块是否将闪烁的信息进行译码。在一些实例中,为了对指示块是否将闪烁的信息进行译码,视频编码器20或视频解码器30可对位流中指示当前图片的特定区域是闪烁区域的语法元素进行译码(242)。
视频编码器20及视频解码器30可将按所显示次序的当前图片及下一图片存储于视频数据存储器39、视频数据存储器69、参考帧缓冲器69及/或参考帧缓冲器82中。在一些实例中,闪烁检测单元43或闪烁检测单元73可进一步经配置以基于指示块将闪烁的信息对所述块进行译码。
举例来说,闪烁检测单元43可确定来自当前图片的块是否将闪烁。闪烁检测单元43可基于当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块而产生指示来自所述当前图片的所述块是否将闪烁的信息,并且熵编码单元56可基于当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块而对所述信息进行编码。闪烁检测单元43及熵编码单元56可基于指示块是否将闪烁的信息而对所述块进行编码。为了对指示来自当前图片的块是否将闪烁的信息进行编码,熵编码单元56可响应于闪烁检测单元43产生所述信息而执行CABAC编码。
作为另一实例,熵解码单元70可接收指示来自当前图片的块是否将闪烁的信息。熵解码单元70可响应于接收信息而对接收到的信息执行CABAC解码。闪烁检测单元73可基于当前图片中按所显示次序的块及来自下一图片的按所述所显示次序的并置块而进一步确定所述块是否将闪烁。闪烁检测单元73及视频解码器30可基于指示块是否将闪烁的信息而对所述块进行解码。
在各种实例中,视频编码器20及/或视频解码器30可基于指示来自当前图片的块是否将闪烁的信息而执行各种类型的处理。在一些实例中,视频解码器30可执行各种后解码处理技术。
在一些实例中,为了对指示块是否将闪烁的信息进行译码,视频编码器20或视频解码器30可对位流中指示当前图片的特定区域是闪烁区域的语法元素进行译码。在一些实例中,所述块还可处于闪烁区域中。
在另一实例中,为了对块进行译码,闪烁检测单元43或闪烁检测单元73可基于对用于指示为闪烁区域的特定区域的译码工具的约束而对所述块进行译码。所述约束可包括通过将相对于当前块的及闪烁区域中的空间相邻块标记为不可用于帧内预测而停用闪烁区域中的空间帧内预测。在各种实例中,所述约束还可包括例如通过闪烁检测单元43或闪烁检测单元73将块标记为不可用于帧内预测。
在一些实例中,熵编码单元56或熵解码单元70可重设用于闪烁区域的CABAC上下文建模的状态,并且基于CABAC上下文建模的重设状态对当前图片的块进行译码(即,编码或解码)。为了对指示图片将闪烁的信息进行译码,在各种实施例中熵编码单元56或熵解码单元70可相应地对闪烁旗标进行编码或解码。
在一些实例中,闪烁检测单元43可基于以下各者中的一项对指示块将闪烁的信息进行译码:当前图片的块与下一图片的块之间的SAD或当前块与下一块之间的MSE。在再另外的实例中,为了对指示当前块将闪烁的信息进行译码,当SAD或MSE中的至少一者小于阈值时,闪烁检测单元43可基于块的调色板大小是否超过阈值调色板大小而对指示块是否将闪烁的信息进行译码。
在各种实例中,为了对闪烁旗标进行CABAC译码,熵编码单元56或熵解码单元70可通过将相对于当前图片的块的空间相邻块的闪烁旗标的值用作用于CABAC译码的上下文而对闪烁旗标进行CABAC译码。
在各种实例中,仅当区域的CU具有最小大小时,闪烁检测单元43才可对指示来自当前图片的块是否将闪烁的信息进行译码。在各种实例中,当以下各项中的至少一者时:块的调色板大小大于阈值调色板大小,块为边缘块或块为纹理块,闪烁检测单元43可对指示来自当前图片的块是否将闪烁的信息进行译码。
在一或多个实例中,所描述功能可在硬件、软件、固件或其任何组合中实施。如果在软件中实施,则所述功能可作为一或多个指令或代码在计算机可读媒体上存储或发射,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包含促进将计算机程序从一处传送到另一处的任何媒体(例如,根据一种通信协议)的通信媒体。以此方式,计算机可读媒体一般可对应于(1)有形计算机可读存储媒体,其是非暂时形的,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
借助于实例而非限制性地,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储指令或数据结构形式的期望程序代码并且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源发射指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电及微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体及数据存储媒体并不包含连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可在经配置用于编码及解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
应认识到,取决于实例,本文中所描述的方法中的任一者的某些动作或事件可用不同顺序执行、可添加、合并或全部省略(例如,实践所述方法并不需要所有的所描述动作或事件)。此外,在某些实施例中,可(例如)经由多线程处理、中断处理或多个处理器同时而非依序执行动作或事件。
所属领域的技术人员将认识到,结合本文揭示的方法、***及设备描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、由处理器执行的计算机软件,或两者的组合。为清晰地说明硬件与软件的此可互换性,以上已大体就其功能性来描述了各种说明性组件、块、模块、电路及步骤。此功能性是实施为硬件还是软件取决于特定应用及施加于整个***的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但这样的实施方案决策不应被解释为会引起脱离本发明的范围。
此外,本文所揭示的实例可通过例如通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件、或其经设计以执行本文中描述的功能的任何组合等的电子装置或电路实施或执行。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规的理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此种配置。
结合本文所揭示的实施例而描述的方法或算法的步骤可直接体现在硬件、由处理器执行的软件模块或所述两者的组合中。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可装卸磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息及将信息写入到存储媒体。在替代方案中,存储媒体可集成到处理器。处理器及存储媒体可驻留在ASIC中。ASIC可驻留在用户终端中。在替代实施方案中,处理器及存储媒体可作为离散组件驻留在用户终端中。
本发明的技术可在各种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件及/或固件组合在编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。

Claims (30)

1.一种对视频数据进行译码的方法,所述方法包括:
对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的所述块及来自下一图片的按所述所显示次序的并置块。
2.根据权利要求1所述的方法,其进一步包括:
产生指示来自所述当前图片的所述块是否将闪烁的所述信息,
其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码包括响应于产生所述信息而对所述信息进行上下文自适应二进制算术译码CABAC编码。
3.根据权利要求1所述的方法,其进一步包括:
接收指示来自所述当前图片的所述块是否将闪烁的所述信息,
其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码包括响应于接收所述信息而对所述信息进行上下文自适应二进制算术译码CABAC解码。
4.根据权利要求1所述的方法,其中对所述信息进行译码包括对闪烁旗标进行译码。
5.根据权利要求4所述的方法,其进一步包括:
通过将相对于来自所述当前图片的所述块的空间相邻块的闪烁旗标的值用作用于所述CABAC译码的上下文而对所述闪烁旗标进行上下文自适应二进制译码CABAC译码。
6.根据权利要求1所述的方法,其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码包括基于以下各项中的至少一者对所述信息进行译码:来自所述当前图片的所述块与来自所述下一图片的所述块之间的绝对差总和SAD或来自所述当前图片的所述块与来自所述下一图片的所述块之间的均方误差MSE。
7.根据权利要求6所述的方法,其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码进一步包括:当所述SAD或所述MSE中的所述至少一者小于阈值时,
基于来自所述当前图片的所述块的调色板大小是否超过阈值调色板大小而对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码。
8.根据权利要求1所述的方法,其中仅当区域的译码单元CU具有最小大小时才对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码。
9.根据权利要求1所述的方法,其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码包括:
当以下各项中的至少一者时:所述块的调色板大小大于阈值调色板大小,来自所述当前图片的所述块是边缘块或来自所述当前图片的所述块是纹理块,对所述信息进行译码。
10.根据权利要求1所述的方法,其中对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码包括:
基于所述并置块是否被标记为闪烁而对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码。
11.根据权利要求1所述的方法,其进一步包括:
基于指示所述块是否将闪烁的所述信息而对来自所述当前图片的所述块进行译码。
12.根据权利要求1所述的方法,其中对所述信息进行译码包括对位流中指示所述当前图片的特定区域是闪烁区域的语法元素进行译码,
其中所述块处于所述闪烁区域内。
13.根据权利要求12所述的方法,其中对来自所述当前图片的所述块进行译码进一步包括:
重设用于所述闪烁区域的CABAC上下文建模的状态;及
基于所述CABAC上下文建模的所述重设状态而对来自所述当前图片的所述块进行译码。
14.根据权利要求12所述的方法,其进一步包括:
基于对用于指示为所述闪烁区域的所述特定区域的译码工具的约束而对来自所述当前图片的块进行译码。
15.根据权利要求14所述的方法,其中所述约束包括通过将相对于来自所述当前图片的所述块的及所述闪烁区域中的空间相邻块标记为不可用于帧内预测而停用所述闪烁区域中的空间帧内预测。
16.根据权利要求12所述的方法,其中所述约束包括将所述闪烁区域内部的块标记为不可用于帧内预测。
17.一种用于对视频数据进行译码的装置,其包括:
存储器,其经配置以存储视频数据;及
至少一个处理器,其经配置以:
对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的所述块及来自下一图片的按所述所显示次序的并置块。
18.根据权利要求17所述的装置,其中为了对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码,所述至少一个处理器进一步经配置以:
对位流中指示所述当前图片的特定区域是闪烁区域的语法元素进行译码,
其中所述块处于所述闪烁区域内。
19.根据权利要求18所述的装置,其中所述至少一个处理器进一步经配置以:
基于对用于指示为所述闪烁区域的所述特定区域的译码工具的约束而对来自所述当前图片的所述块进行译码。
20.根据权利要求18所述的装置,其中为了对来自所述当前图片的所述块进行译码,
所述至少一个处理器进一步经配置以:
重设用于所述闪烁区域的CABAC上下文建模的状态;及
基于所述CABAC上下文建模的所述重设状态而对来自所述当前图片的块进行译码。
21.根据权利要求17所述的装置,其中为了对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码,所述至少一个处理器进一步经配置以基于以下各项中的至少一者对所述信息进行译码:来自所述当前图片的所述块与来自所述下一图片的所述块之间的绝对差总和SAD或来自所述当前图片的所述块与来自所述下一图片的所述块之间的均方误差MSE。
22.根据权利要求17所述的装置,其中仅当区域的译码单元CU具有最小大小时才对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码。
23.根据权利要求17所述的装置,其中所述至少一个处理器进一步经配置以:
基于指示所述块是否将闪烁的所述信息而对来自所述当前图片的所述块进行译码。
24.根据权利要求17所述的装置,其中为了对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码,所述至少一个处理器进一步经配置以:
当以下各项中的至少一者时:所述块的调色板大小大于阈值调色板大小,来自所述当前图片的所述块是边缘块或来自所述当前图片的所述块是纹理块,对所述信息进行译码。
25.一种用于对视频数据进行译码的装置,所述装置包括:
用于对指示来自当前图片的块是否将闪烁的信息进行译码的装置;及
用于基于所述当前图片中按所显示次序的所述块及来自下一图片的按所述所显示次序的并置块而确定来自所述当前图片的所述块是否将闪烁的装置。
26.根据权利要求25所述的装置,其中用于对指示来自所述当前图片的所述块是否将闪烁的所述信息进行译码的所述装置进一步包括:用于对位流中指示所述当前图片的特定区域是闪烁区域的语法元素进行译码的装置,
其中所述块处于所述闪烁区域内。
27.根据权利要求26所述的装置,其进一步包括:
用于基于对用于指示为所述闪烁区域的所述特定区域的译码工具的约束而对来自所述当前图片的所述块进行译码的装置。
28.根据权利要求26所述的装置,其进一步包括:
用于重设用于所述闪烁区域的CABAC上下文建模的状态的装置;及
用于基于所述CABAC上下文建模的所述重设状态而对来自所述当前图片的所述块进行译码的装置。
29.根据权利要求26所述的装置,其进一步包括:用于基于指示所述块是否将闪烁的所述信息而对来自所述当前图片的所述块进行译码的装置。
30.一种非暂时性计算机可读存储媒体,其包括存储于其上的指令,所述指令在被执行时使得至少一个处理器:
对指示来自当前图片的块是否将闪烁的信息进行译码,其中来自所述当前图片的所述块是否将闪烁的确定是基于所述当前图片中按所显示次序的所述块及来自下一图片的按所述所显示次序的并置块。
CN201580009982.3A 2014-03-05 2015-03-05 视频译码中的闪烁检测及缓解 Pending CN106031173A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461948469P 2014-03-05 2014-03-05
US61/948,469 2014-03-05
US14/638,965 2015-03-04
US14/638,965 US10009632B2 (en) 2014-03-05 2015-03-04 Flicker detection and mitigation in video coding
PCT/US2015/018966 WO2015134748A1 (en) 2014-03-05 2015-03-05 Flicker detection and mitigation in video coding

Publications (1)

Publication Number Publication Date
CN106031173A true CN106031173A (zh) 2016-10-12

Family

ID=54018739

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580009982.3A Pending CN106031173A (zh) 2014-03-05 2015-03-05 视频译码中的闪烁检测及缓解

Country Status (6)

Country Link
US (1) US10009632B2 (zh)
EP (1) EP3114837B1 (zh)
JP (1) JP2017512025A (zh)
KR (1) KR20160129026A (zh)
CN (1) CN106031173A (zh)
WO (1) WO2015134748A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9596479B2 (en) * 2014-10-07 2017-03-14 Hfi Innovation Inc. Method of pulse-code modulation and palette coding for video coding
US11146788B2 (en) 2015-06-12 2021-10-12 Qualcomm Incorporated Grouping palette bypass bins for video coding
US11051035B2 (en) * 2019-02-08 2021-06-29 Qualcomm Incorporated Processing of illegal motion vectors for intra block copy mode in video coding
US11310475B2 (en) * 2019-08-05 2022-04-19 City University Of Hong Kong Video quality determination system and method
US11856204B2 (en) * 2020-05-04 2023-12-26 Ssimwave Inc. Macroblocking artifact detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080025397A1 (en) * 2006-07-27 2008-01-31 Jie Zhao Intra-Frame Flicker Reduction in Video Coding
CN102217315A (zh) * 2008-11-12 2011-10-12 汤姆森特许公司 用于画面组的并行多线程视频编码的i帧去闪烁
WO2013086530A2 (en) * 2011-12-09 2013-06-13 Qualcomm Incorporated Method and apparatus for processing partial video frame data
US20140016703A1 (en) * 2012-07-11 2014-01-16 Canon Kabushiki Kaisha Methods and devices for controlling spatial access granularity in compressed video streams

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4528694B2 (ja) * 2005-08-12 2010-08-18 株式会社東芝 動画像符号化装置
US7884742B2 (en) * 2006-06-08 2011-02-08 Nvidia Corporation System and method for efficient compression of digital data
WO2010009770A1 (en) * 2008-07-25 2010-01-28 Telefonaktiebolaget Lm Ericsson (Publ) A method for the estimation of spatio-temporal homogeneity in video sequences
US8582645B2 (en) * 2009-06-11 2013-11-12 Texas Instruments Incorporated Reducing flicker in the display of video streams
US10499059B2 (en) * 2011-03-08 2019-12-03 Velos Media, Llc Coding of transform coefficients for video coding
EP2775710A4 (en) * 2011-11-01 2015-06-10 Nec Corp VIDEO CODING DEVICE, VIDEO ENCODING DEVICE, VIDEO CODING METHOD, VIDEO ENCODING METHOD AND PROGRAM THEREFOR
CN102740073B (zh) * 2012-05-30 2015-06-17 华为技术有限公司 一种编码方法及装置
US20140192862A1 (en) * 2013-01-07 2014-07-10 Research In Motion Limited Methods and systems for prediction filtering in video coding
BR122020018850B1 (pt) * 2013-07-30 2023-01-31 Dolby Laboratories Licensing Corporation Método para usar metadados estáveis de cena em um codificador de vídeo e método para usar metadados estáveis de cena em um decodificador de vídeo
BR112016006670A2 (pt) * 2013-09-27 2017-08-01 Qualcomm Inc codificação residual para modos de intra previsão de profundidade
US9596479B2 (en) * 2014-10-07 2017-03-14 Hfi Innovation Inc. Method of pulse-code modulation and palette coding for video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080025397A1 (en) * 2006-07-27 2008-01-31 Jie Zhao Intra-Frame Flicker Reduction in Video Coding
CN102217315A (zh) * 2008-11-12 2011-10-12 汤姆森特许公司 用于画面组的并行多线程视频编码的i帧去闪烁
WO2013086530A2 (en) * 2011-12-09 2013-06-13 Qualcomm Incorporated Method and apparatus for processing partial video frame data
US20140016703A1 (en) * 2012-07-11 2014-01-16 Canon Kabushiki Kaisha Methods and devices for controlling spatial access granularity in compressed video streams

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BECKER A等: "Flicker reduction in intraframe codecs", 《DATA COMPRESSION CONFERENCE, 2004. PROCEEDINGS. DCC. IEEE》 *
YAIR KUSZPET等: "Post-processing for flicker reduction in H. 264/AVC", 《PICTURE CODING SYMPOSIUM》 *
YANG H等: "Effective flicker removal from periodic intra frames and accurate flicker measurement", 《15TH IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING》 *

Also Published As

Publication number Publication date
EP3114837B1 (en) 2020-07-29
WO2015134748A1 (en) 2015-09-11
US10009632B2 (en) 2018-06-26
US20150256857A1 (en) 2015-09-10
EP3114837A1 (en) 2017-01-11
JP2017512025A (ja) 2017-04-27
KR20160129026A (ko) 2016-11-08

Similar Documents

Publication Publication Date Title
CN106797479B (zh) 对于并行处理的帧内块复制预测限制
CN107211124B (zh) 用于译码视频数据的方法、装置和计算机可读存储媒体
CN103891293B (zh) 用于色度分量的自适应环路滤波的方法及设备
CN106576171B (zh) 一种对视频数据进行编码、解码的方法以及装置
CN105723707B (zh) 用于视频译码的色彩残差预测
CN106797466B (zh) 一种处理视频数据的方法及装置
CN106797477B (zh) 用于解码及编码视频数据的方法和设备
CN105493507B (zh) 用于帧内块复制的残余预测
CN105075259B (zh) 用于视频译码预测的存储器减少
CN104255035B (zh) 视讯译码中的量化参数(qp)译码
CN103339936B (zh) 用于视频译码的单一参考图片列表建构
CN105393536B (zh) 使用位移向量从预测性块的帧内预测
CN104205829B (zh) 合并信令及环路滤波器开/关信令
CN103609123B (zh) 统一合并模式和自适应运动向量预测模式候选者选择
CN104685875B (zh) 用于视频译码的方法、设备、计算机可读存储媒体
CN104396247B (zh) 用于视频译码的基于lcu的自适应环路滤波的方法和装置
CN103636223B (zh) 用于视频译码的多区扫描次序
CN104756499B (zh) 用于视频译码的方法、设备及计算机可读存储媒体
CN107660341A (zh) 切片级帧内块复制及其它视频译码改进
CN109716771A (zh) 用于视频译码的线性模型色度帧内预测
CN109716774A (zh) 用于视频译码的可变数目的帧内模式
KR20180043830A (ko) 이미지 예측 방법 및 장치
CN104221380A (zh) 用于并行运动估计的共同空间候选块
CN106664425A (zh) 视频译码中的跨分量预测
CN107592972A (zh) 用于视频数据中特定图片内的帧间译码的搜索区域确定

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20161012