CN104704826B - 两步量化和编码方法和装置 - Google Patents

两步量化和编码方法和装置 Download PDF

Info

Publication number
CN104704826B
CN104704826B CN201380052322.4A CN201380052322A CN104704826B CN 104704826 B CN104704826 B CN 104704826B CN 201380052322 A CN201380052322 A CN 201380052322A CN 104704826 B CN104704826 B CN 104704826B
Authority
CN
China
Prior art keywords
block
data block
encoded
decoded
quantization
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
CN201380052322.4A
Other languages
English (en)
Other versions
CN104704826A (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.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN104704826A publication Critical patent/CN104704826A/zh
Application granted granted Critical
Publication of CN104704826B publication Critical patent/CN104704826B/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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
    • 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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Landscapes

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

Abstract

公开了使用两步量化和编码过程对具有多个帧的视频图像进行编码和解码。通过如下方式对帧的块进行编码:标识具有某些空间特性的像素,在用诸如其余原始像素的平均值之类的单个像素值替换标识的像素的同时从该块形成第二块。第二块诸如通过变换和量化而被编码,并且被放入比特流。第二块被解码,并且从原始块减去以生成差值块。差值块诸如通过量化而被编码,并且被放入比特流。在解码器处,两个块都被解码并且组合以重构原始块。

Description

两步量化和编码方法和装置
技术领域
本公开总体上涉及使用量化的视频编码和解码。
背景技术
如今越来越多的应用使用数字视频用于各种目的,包括例如经由视频会议的远程商务会议、高清视频娱乐、视频广告和用户生成的视频共享。随着技术的发展,用户对视频质量具有更高的预期,并且预期流畅播放的高分辨率视频。
数字视频流通常使用帧序列来表示视频。每个帧可以包括若干块,块转而可以包含描述颜色、明度或像素的其它属性的值的信息。典型视频流中的数据量较大,并且视频的传输和存储会使用显著的计算或通信资源。各种技术已经被提出以减少视频流中的数据量,包括压缩和其它编码技术。在一些情况下,这些技术使用针对帧内块的不同区段变化的参数或值来对视频流进行编码。
发明内容
本文中公开的是用于使用两步量化过程对视频信号进行编码的***、方法和装置的实施方式。公开实施方式的一个方面是用于利用计算设备对视频流中的帧进行编码的方法,帧具有多个块。方法包括:标识多个块中的第一块;从第一块生成第二块,使得第二块具有比第一块更低的熵;使用第一编码技术对第二块进行编码,其中第一编码技术是有损的;对经编码的第二块进行解码;基于在经解码的第二块和第一块之间的差值生成第三块;以及使用与第一编码技术不同的第二编码技术对第三块进行编码。公开的方面还包括使用经编码的第二数据块和第三数据块生成经编码的视频比特流。
公开实施方式的另一方面是用于对包括多个经编码的块的经编码的视频比特流的帧进行解码的方法,并且帧具有多个块。方法包括:接收多个经编码的块的第一经编码的块和第二经编码的块;使用第一解码技术对第一经编码的块进行解码以生成第一经解码的块;使用与第一解码技术不同的第二解码技术对第二经编码的块进行解码以生成第二经解码的块,第二经解码的块具有比第一经解码的块更低的熵;以及组合第一经解码的块与第二经解码的块以形成包含多个块的块。
公开实施方式的另一方面是用于对视频流中的帧进行编码的装置,帧具有多个块。装置包括存储器和处理器,处理器被配置为执行存储在存储器中的指令以:标识多个块中的第一块;从第一块生成第二块,使得第二块具有比第一块更低的熵;使用第一编码技术对第二块进行编码,其中第一编码技术是有损的;对经编码的第二块进行解码;基于在经解码的第二块和第一块之间的差值,生成第三块;以及使用与第一编码技术不同的第二编码技术对第三块进行编码。
下面另外详细描述这些方面的变化和其它实施方式。
附图说明
本文中的描述参照附图,其中贯穿若干视图相同的附图标记指的是相同部分,并且其中:
图1是视频编码和解码***的示意图;
图2是待编码和解码的典型视频流的图;
图3是根据公开实施方式的视频压缩***的框图;
图4是根据另一公开实施方式的视频解压缩***的框图;
图5是根据公开实施方式的使用两步过程的用于对视频流进行编码的过程的流程图;
图6是用于对根据图5编码的块进行解码的过程的流程图;
图7是示出使用离散余弦变换(下文中“DCT变换”)将空间域中的像素的8x8块变换成变换系数的二维矩阵的图;
图8是使用DCT变换将空间域中的像素的8x8块变换成变换系数的二维矩阵的另一示例的图;
图9是示出使用DCT变换将空间域中的像素的8x8块变换成变换系数的二维矩阵的图,其中矩阵进一步被量化;
图10是使用DCT变换将空间域中的像素的8x8块变换成变换系数的二维矩阵的另一示例的图,其中矩阵进一步被量化;以及
图11A和图11B是图示图5的过程的图。
具体实施方式
为了在限制带宽消耗的同时允许数字视频流的传输,视频编码和解码实施方式并入各种压缩方案。这些压缩方案通常将图像打碎成块,并且使用一种或多种技术限制在产生的用于传输的数字视频比特流中包括的信息量。一旦被接收,比特流然后被解码以从有限的信息重新创建块和源图像。
根据一个示例,由于变换域中的能量紧凑系数分布,基于块的变换域量化和编码可用于压缩。这种紧凑基于如下假定:空间域中的数据大多是缓慢改变的DC值。然而,这可能不是真实的,尤其是在运动预测或帧内方向预测之后,下面更加详细地讨论。空间精细细节、小物体和/或孤立特征的频谱会散布到频谱的宽区域中。由于量化,这些精细特征会被严重扭曲或甚至破坏。因而变换到频域中的数据块可能不是用于表示和编码的最佳形式。作为代替,空间域常常可以适合于小且孤立的物体以及精细特征的表示和编码。
本文中的教导可以组合数据块的变换域和空间域表示,以提供改善的压缩编码。例如,输入块可以被重新形成为两个分离块:一个块主要包含低频分量并且一个块包含高频分量。高频分量可以由超过块的平均值预定量的尖峰或孤立像素来表示。孤立像素在块中可以由平均值来替换。可以从原始块中减去这种重新形成的块,以形成差值块。重新形成的块可以使用第一编码技术进行编码,而差值块可以使用第二编码技术进行编码。然后两个经编码的块都被输入比特流。
对以这种方式编码的编码视频比特流进行解码可以通过反转编码过程的一些步骤来执行。通过用设置在帧、片段或块报头中的比特修改比特流语法,可以向解码器指示两步编码,如下面另外详细描述的。当接收到使用两步过程编码的视频流的块时,解码器使用适于每个块的解码处理对块进行解码。然后块可以被加在一起以形成原始块的表示。
下面描述这些实施方式的附加细节,首先参照它们可以被并入在其中的***。
图1是视频编码和解码***10的示意图。示例性发射站12可以是例如具有包括诸如中央处理单元(CPU)14之类的处理器和存储器16的硬件的内部配置的计算机。CPU 14是用于控制发射站12的操作的控制器。CPU 14可以通过例如存储器总线与存储器16连接。存储器16可以是只读存储器(ROM)、随机存取存储器(RAM)或者任何其它适合的存储器设备。存储器16可以存储由CPU 14使用的数据和程序指令。发射站12的其它适合的实施方式是可能的。例如,发射站12的处理可以分布在多个设备之中。
网络28连接发射站12和接收站30,以用于视频流的编码和解码。具体地,视频流可以在发射站12中被编码,并且编码视频流可以在接收站30中被解码。网络28可以是例如因特网。网络28还可以是局域网(LAN)、广域网(WAN)、虚拟私人网络(VPN)、蜂窝电话网络、或者从发射站12向这个示例中的接收站30传递视频流的任何其它装置。
在一个示例中,接收站30可以是具有包括诸如CPU 32之类的处理器和存储器34的硬件的内容配置的计算机。CPU 32是用于控制接收站30的操作的控制器。CPU 32可以通过例如存储器总线与存储器34连接。存储器34可以是ROM、RAM或任何其它适合的存储器设备。存储器34可以存储由CPU 32使用的数据和程序指令。接收站30的其它适合的实施方式是可能的。例如,接收站30的处理可以分布在多个设备之中。
被配置为显示视频流的显示器36可以连接到接收站30。显示器36可以以各种方式来实现,包括通过液晶显示器(LCD)或阴极射线管(CRT)或诸如OLED显示器之类的发光二极管显示器(LED)来实现。显示器36连接到CPU 32,并且可以被配置为显示由接收站30中的解码器解码的视频流的渲染38。
编码器和解码器***10的其它实施方式是可能的。在所描述的实施方式中,例如,编码器处于发射站12中并且解码器处于接收站30中,作为存储器中的指令或者与存储器分离的部件。然而,编码器或解码器可以连接到相应站12、30,而不是处于其中。进一步地,一个实施方式可以省略网络28和/或显示器36。在另一实施方式中,视频流可以被编码并且然后被存储,以用于在以后的时间向接收站30或具有存储器的任何其它设备的传输。在一个实施方式中,视频流由接收站30(例如,经由网络28、计算机总线、和/或某个通信路径)接收并且被存储,以用于以后的解码。在另一实施方式中,附加部件可以被添加到编码器和解码器***10。例如,显示器或摄像机可以附接至发射站12,以捕获待编码的视频流。在示例性实施方式中,实时传送协议(RTP)用于传输。在另一实施方式中,可以使用除RTP外的传送协议,例如基于HTTP的视频流协议。
图2是待编码和解码的典型视频流50的图。视频流50包括视频序列52。在下一级处,视频序列52包括若干相邻帧54。虽然图示了三个帧作为相邻帧54,但是视频序列52可以包括任何数量的相邻帧。然后相邻帧54可以进一步细分成个体帧,例如单个帧56。在下一级处,单个帧56可以分成一系列块58,一系列块58可以包含与例如帧56中的16x16像素对应的数据。每个块可以包含对应像素的亮度和色度数据。块58还可以具有诸如16x8像素组或8x16像素组之类的任何其它适合的大小,并且根据应用可以进一步细分成更小的块。除非另有说明,术语块和宏块在本文中可互换使用。
图3是依照一个实施方式的编码器70的框图。如上面描述的,编码器70可以诸如例如通过提供存储在存储器16中的计算机软件程序而被实现在发射站12中。计算机软件程序可以包括机器指令,该机器指令在由CPU 14执行时,使得发射站12以图3中描述的方式对视频数据进行编码。编码器70还可以实现为例如在发射站12中包括的专用硬件。编码器70对输入视频流50进行编码。编码器70具有以下阶段以执行正向路径(由实连接线示出的)中的各种功能,以产生编码或压缩比特流88:内/间预测阶段72、变换阶段74、量化阶段76和熵编码阶段78。编码器70还可以包括重构路径(由虚连接线示出的),以重构用于未来块的预测和编码的帧。在图3中,编码器70具有以下阶段以执行重构路径中的各种功能:解量化阶段80、逆变换阶段82、重构阶段84和回路滤波阶段86。编码器70的其它结构变化可以用于对视频流50进行编码。如本文中使用的,术语压缩比特流与术语编码视频流同义,并且术语将可互换使用。
在给出视频流50用于编码时,视频流50内的每个帧56以块为单位来处理。在内/间预测阶段72处,可以使用帧内预测(还称为内预测)或帧间预测(还称为间预测)对每个块进行编码。在任一情况下,可以形成预测块。在内预测的情况下,预测块可以从当前帧中的样本形成,该样本已被先前编码和重构并且被组合和/或重新产生以形成预测块。在间预测的情况下,预测块可以从一个或多个先前构造的参考帧中的样本形成,并且关联于向覆盖待编码的当前块的位置移动预测块的运动矢量。
接下来,仍然参照图3,在内/间预测阶段72处可以从当前块减去预测块,以产生残差块(还称为残差)。变换阶段74将残差变换成例如频域中的变换系数。基于块的变换的示例包括Karhunen-Loève变换(KLT)、离散余弦变换(DCT)、Walsh-Hadamard变换(WHT)、奇异值分解变换(SVD)和不对称离散正弦变换(ADST)。在一个示例中,DCT将块变换到频域中。在DCT的情况下,变换系数值基于空间频率,其中最低频率(DC)系数在矩阵的左上角并且最高频率系数在矩阵的右下角。变换阶段74还可以执行其中不改变输入数据的空变换,或者执行脉码调制,脉码调制不将数据变换成变换系数,但是可以通过使像素按照秩顺序重新排序并且减去连续像素以便降低将在压缩比特流中包括的比特数量来对输入残差块进行编码。
量化阶段76将变换系数转换成离散的量子值,该量子值称为量化变换系数。然后量化变换系数由熵编码阶段78进行熵编码。熵编码系数与诸如所使用的预测类型、用于间预测的运动矢量和量化因子值之类的用于解码块的其它信息一起然后被输出到压缩比特流88。压缩比特流88可使用诸如可变长度编码(VLC)和算术编码之类的各种技术进行格式化。
图3中的重构路径(由虚连接线示出的)可以用于确保编码器70和解码器100(下面描述)二者都使用相同参考帧来解码压缩比特流88。重构路径执行与在下面更详细讨论的解码过程期间发生的功能相似的功能,从而包括在解量化阶段80处使量化变换系数解量化并且在逆变换阶段82逆变换解量化变换系数以产生导出残差块(还称为导出残差)。在重构阶段84处,在内/间预测阶段72处可以使预测的预测块与导出残差加起来,以创建重构块。回路滤波阶段86可被应用于重构块,以降低诸如块效应之类的失真。
编码器70的其它变化可以用于编码压缩比特流88。例如,非基于变换的编码器70可以在没有变换阶段74的情况下直接量化残差信号。在另一实施方式中,编码器70可以具有组合成单个阶段的量化阶段76和解量化阶段80。
图4是依照本公开的另一实施方式的解码器100的框图。解码器100可以通过例如提供存储在存储器34中的计算机软件程序而实现在接收站30中。计算机软件程序可以包括机器指令,机器指令在由CPU 32执行时,使得接收站30以图4中描述的方式对视频数据进行解码。解码器100还可以实现为例如在发射站12或接收站30中包括的专用硬件。类似于上面讨论的编码器70的重构路径,在一个示例中解码器100包括以下阶段以执行各种功能,以从压缩比特流88产生输出视频流116:熵解码阶段102、解量化阶段104、逆变换阶段106、内/间预测阶段108、重构阶段110、回路滤波阶段112和解块滤波阶段114。解码器100的其它结构变化可以用于解码压缩比特流88。
在给出压缩比特流88用于解码时,压缩比特流88内的数据元素可以由熵解码阶段102进行解码,以产生量化变换系数集。解量化阶段104使量化变换系数解量化,并且逆变换阶段106逆变换解量化变换系数,以产生可以与由编码器70中的重构阶段84创建的导出残差完全相同的导出残差。通过使用从压缩比特流88解码的报头信息,解码器100可以使用内/间预测阶段108创建与编码器70中创建的预测块相同的预测块。在重构阶段110处,可以使预测块与导出残差加起来以创建重构块。回路滤波阶段112可被应用于重构块以降低块效应。解块滤波阶段114可被应用于重构块以降低块失真,并且结果作为输出视频流116被输出。
解码器100的其它变化可以用于解码压缩比特流88。例如,解码器100可以在没有解块滤波阶段114的情况下产生输出视频流116。
图5是根据实施方式的用于使用两步过程对视频流进行编码的过程500的流程图。为了解释简单起见,过程500被描绘和描述为一系列步骤。然而,依照本公开的步骤可以按照各种顺序和/或同时发生。例如,虽然在图5中,在步骤516处在比特流中包括第二块之前在步骤508处在比特流中包括第一块,但是应该理解的是,可以按照其它顺序在比特流中包括块,并且保持在本公开的范围内。另外,依照本公开的步骤可以在具有本文中未给出和描述的其它步骤的情况下发生。此外,并非所有图示的步骤可以被要求以实现依照所公开的主题的方法。
过程500可以由诸如发射站12之类的计算设备实现为软件程序。例如,软件程序可以包括存储在存储器16中的机器可读指令,机器可读指令在由诸如CPU 14之类的处理器执行时,可以使得计算设备对存储在存储器14中的数据进行操作并且执行过程500。过程500还可以使用硬件来实现。如上面解释的,一些计算设备可以具有多个存储器和多个处理器,并且在这样的情况下过程500的步骤可以通过使用不同的处理器和存储器而是分布式的。本文中使用单数的术语“处理器”和“存储器”包含在执行一些但不一定所有记载的步骤中可以使用的仅具有一个处理器或一个存储器的计算设备以及具有多个处理器和存储器的设备。
在步骤502处,标识待编码的视频流的块。如本公开中使用的,“标识”意指选择、构造、确定、指定或以无论任何方式另外标识。可以按照光栅扫描顺序或任何其它顺序来标识或选择视频流的帧或片段的块。在步骤504处,通过从数据块提取特殊特征和值并且用可以使变换域系数更简单的其它数据值替换这些数据值,从第一块生成第二块。如本文中使用的,术语“生成”可以意指创建、构造、形成、产生或以无论任何方式生成。公开实施方式使用块中非提取的像素的平均值替换提取的像素;然而,可以使用其它算法以替换提取的像素。这还可以被称为数据重新成形,并且还描述为使块重新成形或重新形成。
特殊特征可以包括例如线或纹理,并且可以通过检测空间域中的脉冲(尖峰)或阶跃(边缘)函数来提取。例如,实施方式可以检测不同于块中像素的平均值超过预定范围的孤立像素或像素组。检测特殊特征的其它方式是可能的,从而包括例如检测不同于它们的邻近像素预定量的像素或像素组。这些检测的像素可以从块中移除,并且由例如具有等于其余像素的平均值的值的像素替换。其它值可以用于替换移除的像素,例如基于邻近像素的值的计算。检测特殊特征并且用其它值替换检测的像素生成第二块。这还可以称为特征提取。
在某些实施方式中,用于比较的像素值可以是例如强度或Y'CbCr颜色空间(还称为YUV颜色空间)中的亮度值。在一种这样的实施方式中,在移除和替换像素时,移除像素的亮度值可以由块的其余像素的平均亮度值替换,并且每个移除像素的色度值Cb和Cr可以由块的其余像素的相应平均色度值Cb和Cr替换。这一技术可以在色度子采样(例如,4:2:0Y'CbCr色度子采样)之前或之后来实现,这通常产生每个像素的亮度值Y',但是只有不止一个图像像素的色度值Cb、Cr的一个集。实际的颜色格式不是关键的或者是不受限制的,并且可以是任何颜色格式或颜色空间。可以进行像素值的其它比较,例如诸如通过比较每个值Y'、Cb和Cr与值范围,以检测特殊特征是否可以存在。
在步骤504中生成的第二块可以具有比原始第一块更低的熵。在步骤506处,例如由编码器70使用第一编码技术对第二块进行编码,第一编码技术在这种情况下可以包括DCT变换。如上面描述的,可以使用其它变换。跟随DCT变换之后,经变换的块可被量化,以降低经变换的数据中出现的唯一状态的数量。然后经变换和量化的块数据可以被熵编码。例如,通过从第二块移除特殊特征并且用平均值替换像素,可以降低经编码的块中的比特的数量,从而降低在步骤508处将在经编码的视频比特流中包括的针对第二块的比特的数量。下面给出这一情况的示例。
在步骤510处,在编码器处对第二块的副本进行解码。在这种实施方式中,期望第二块的经解码的版本而不是原始第二块被用于进一步的处理。这是由于如下事实:变换和量化原始数据的过程是有损的,从而意指经解码的第二块数据可能不等于原始第二块的数据。解码器将使用第二块的经解码的版本,因此在以下步骤中使用第二块的经解码的版本以生成第三块可以保持经编码的块的准确性而无漂移。
在步骤512处,可以从原始第一块减去经解码的第二块,以产生表示在第二和第一块之间的残值或差值的第三块。下面给出这种减法的示例。在其它实施方式中,原始第二块可用于步骤512处的减法。在步骤514处,对第三或残值块进行编码。由于第三或残值块包含孤立像素,诸如脉码调制(PCM)之类的空间域变换或者完全没有变换可以导致跟随量化和熵编码之后将在比特流中包括很少的比特。在步骤516处,在经编码的视频比特流中包括第三块。
通过在图片层、区段/片段层、宏块层或块层(其中块小于宏块)中指定若干量化和编码模式之一,这种过程可以实现成比特流语法。一种模式可以指示只有变换域量化和编码,第二模式可以指示只有空间域量化和编码,以及第三模式可以指示跟随变换域量化和编码之后有空间域量化和编码。例如,模式将由报头中的比特表示。
图6是用于对根据图5编码的块进行解码的过程600的流程图。为了解释简单起见,过程600被描绘和描述为一系列步骤。然而,依照本公开的步骤可以按照各种顺序和/或同时发生。例如,虽然在图6中,在步骤606处对第二块进行解码之前在步骤604处对第一块进行解码,但是应该理解的是,可以按照其它顺序在比特流中包括块,并且保持在本公开的范围内。例如,可以在解码第一块之前或者与解码第一块同时地对第二块进行解码。另外,依照本公开的步骤可以在具有本文中未给出和描述的其它步骤的情况下发生。此外,并非所有图示的步骤可以被要求以实现依照所公开的主题的方法。
过程600可以由诸如接收站30之类的计算设备实现为软件程序。例如,软件程序可以包括存储在存储器34中的机器可读指令,机器可读指令在由诸如CPU 32之类的处理器执行时,可以使得计算设备对存储在存储器34中的数据进行操作并且执行过程600。过程600还可以全部或部分使用诸如现场可编程门阵列等之类的硬件部件来实现。如上面解释的,一些计算设备可以具有多个存储器和多个处理器,并且在这样的情况下过程600的步骤可以通过使用不同的处理器和存储器而是分布式的。
在步骤602处,由诸如解码器100之类的解码器接收经编码的视频比特流。可以以任何数量的方式接收经编码的视频比特流,诸如通过网络、通过线缆接收视频数据,或者通过从主存储器或其它存储设备(包括磁盘驱动器或诸如CF卡、SD卡等之类的可移除介质)读取视频数据。在步骤604处,过程600对第一块进行解码。第一块对应于在上面的过程500的步骤506和508中被编码和包括在视频流中的第二块。这一块可以被熵解码和解量化。然后逆变换解量化系数,以将块恢复到空间域。
在步骤606处,对第二块进行解码,该第二块对应于在过程500的步骤514和516中被编码和包括在编码视频流中的第三块。第二块可以被熵解码、解量化并且然后被解码。由于第二块中的数据已经在空间域中,变换数据可能是不必要的。如果第二数据块已被脉码调制,则通过加上连续条目可以反转PCM。在步骤608处,通过在逐个像素的基础上使块加起来,可以组合经解码的第二块和经解码的第一块。以这种方式组合块可以在由编码和解码算法引入的误差限制内在空间域中重新产生原始块。
空间域和变换域中的数据的不同块的表示对于示出不同域中的数据性质和图示上述技术的有用性是有用的。这样的表示通过示例的方式示出在图7至图10中。
图7是示出使用DCT变换将空间域中的像素的8x8块702变换成变换系数的二维矩阵704的图。具有诸如脉冲或阶跃函数之类的空间域中的非常简单的表示的块可以变成DCT变换域中的非常复杂的系数集。图8是使用DCT变换将空间域中的像素的8x8块802变换成变换系数的二维矩阵804的另一示例的图。空间域中的形状是相当简单的,但它变换成变换系数的复杂块。这两个示例说明了如下情况:其中相对简单、紧凑和易于编码的空间域被变换成变换域中的复杂、难以编码的图案。在这种情况下,空间域中的编码可以导致比将由于变换域中的编码所要求的更少的比特被包括在经编码的视频比特流中。
某些情况可以涉及复杂的空间域表示但简单的变换域表示。图9是使用DCT变换将空间域中的像素的8x8块902变换成变换系数的二维矩阵904的图,其中矩阵904进一步被量化。这说明,具有复杂表示的空间域数据块可以在变换域中被高效地表示,其中数据具有低频分量。跟随将经变换的系数矩阵904量化成经量化的变换系数的二维矩阵906之后,可以使经变换的系数矩阵904的简单性更清楚。在这一示例中量化因子或量化级是10,使得通过使经变换的系数除以10并且切断任何小数值来计算经量化的变换系数。在具有许多零分量的情况下,这一矩阵906相对易于编码。
在一些情况下,在空间域或变换域中均不能以简单的方式表示数据的块。图10是使用DCT变换将空间域中的像素的8x8块1002变换成变换系数的二维矩阵1004的另一示例的图,其中矩阵1004进一步被量化。块1002和矩阵1004二者都是复杂的表示。通过使用例如为32的量化因子来量化矩阵1004,以生成经量化的变换系数的二维矩阵1006。矩阵1006是复杂的,并且因此难以编码,即使它已经被严重量化并且在解量化和重构之后很可能导致大量误差。
图11A和图11B是图示图5的过程的图。如上面解释的,空间域中的孤立高值首先用从块的像素值的其余像素值预测的值替换。孤立低值也可以通过这种技术来替换。这被称为使数据块重新成形,因为它形成具有比原始块相对更好的能量分布的数据块或矩阵,使得可以更高效地表示和编码经变换的系数。
图11A示出表示图10的块1002、根据步骤504移除孤立数据点而重新成形的第二块1102。在这一示例中,块1002的平均像素值已经被计算为(mean2x 8)=35,其中mean2是块1002中的像素值的二维平均值。70或更小的值被选择作为预定范围以标识将从块中被移除的像素。在这种情况下,具有大于预定范围的值的像素被标识并且用平均值35替换以形成块1102。在其它情况下,预定范围可以包括最小和最大值,其中具有在范围之外的值的像素被标识并且用另一值替换。通过首先应用DCT变换以形成变换系数的矩阵1104并且然后使用为25的量化因子或量化值将矩阵1104量化成矩阵1106,在步骤506中对块1102进行编码。尽管使用更小的量化值(25对32),在重新成形情况下的块或矩阵1106比在没有重新成形情况下的原来变换的矩阵1006明显更简单。此时在过程中(诸如步骤508中示出的),或者以后在过程中,块1106行进通过任何其余编码步骤(例如熵编码),并且根据已知技术与压缩比特流88相加。
接下来,可以针对块1106执行逆量化(即,解量化)和逆变换。图11B示出块1108,例如块1108是步骤510中的经解码的第二块。更具体地,块1108是通过使用为25的量化值解量化块1106的量化变换系数并且然后针对所得的变换系数执行逆DCT变换而对块1102进行重构的结果。注意,经重构的第二块1108的像素值不完全与第二块1102匹配。如上面提到的,这是由于有损压缩。在步骤512中,从原始块1002逐个像素减去重构块1108,以形成差值块1110,差值块1110对应于第三块。然后通过首先经历使用量化因子(这里通过示例的方式为10)的量化以形成量化系数的矩阵或块1112,在步骤514中对块1110进行编码。块1112在空间域中是紧凑、易于编码的矩阵。根据已知技术,块1112可以被熵编码并且然后被包括在压缩比特流88中。用于对第二块1106和第三块1112进行编码的比特之和少于用于对第一块1002进行编码所要求的比特数量,从而节省了经编码的视频比特流中的比特。
在上面描述的实施方式中,可以在两步过程中对视频流进行编码,该两步过程标识块中的具有选择空间性质的像素,例如具有超过邻近像素的值多于一定量的值的孤立像素。标识的像素在块中用例如设定为块的平均值的像素替换。然后使用有损变换对块进行变换,并且对经变换的块的副本进行逆变换。公开实施方式所使用的变换是可以将块的像素变换到变换域中的可逆变换,其中块的经变换的像素可以被逆变换以重新形成原始像素。有损变换是这样的可逆变换:当变换/逆变换时,产生具有其值接近于但可能不完全匹配原始像素值的像素的块。
从原始块的像素减去块的经逆变换的副本的像素,以形成包含被标识为具有预选空间性质的像素的残值或残差块。可以从原始数据减去经逆变换的块,而不是使用重新成形的块,因为这可以更加密切地反映在对块进行解码时解码器可用的像素值,并且从而产生更准确的结果。
通过量化像素数据以降低用于表示数据的离散状态的数量,可以进一步对残值块和经变换的块进行编码。块可以被熵编码以减少冗余数据,并且然后被包括在经编码的视频比特流中,以用于传输或存储。在这种两步方式下的编码视频数据可以允许两个经编码的块在比特流中由比使用单步过程编码的块更少的比特来表示,从而节省传输带宽或存储空间,同时保持等效的视频质量。
上面描述的编码和解码的实施方式图示一些示例性编码和解码技术。然而,要理解的是,如权利要求中使用的那些术语,编码和解码可以意指压缩、解压缩、变换、或者任何其它的数据处理或改变。
词语“示例”或“示例性”在本文中用于意指用作示例、实例或说明。本文中描述为“示例”或“示例性”的任何方面或设计并不一定要被解释为优于或胜过其它方面或设计。更确切地说,使用词语“示例”或“示例性”旨在于以具体方式给出概念。如本申请中使用的,术语“或”旨在于意指包括性“或”而不是排它性“或”。也就是说,除非另有指定,或从上下文清楚可见,“X包括A或B”旨在于意指任何自然包括性排列。也就是说,如果X包括A;X包括B;或X包括A和B二者,则在任何前述情况下满足“X包括A或B”。此外,如本申请和所附权利要求中使用的冠词“一”和“一个”一般应被解释为意指“一个或多个”,除非另有指定或从上下文清楚可见指向单数形式。而且,贯穿使用术语“实施例”或“一个实施例”或“实施方式”或“一种实施方式”并不旨在于意指相同的实施例或实施方式,除非如此描述。
发射站12和/或接收站30(以及存储在其上和/或由此执行的算法、方法、指令等)的实施方式可以实现在硬件、软件、或它们的任意组合中。例如,硬件可以包括计算机、智能性质(IP)核、专用集成电路(ASIC)、可编程逻辑阵列、光学处理器、可编程逻辑控制器、微码、微控制器、服务器、微处理器、数字信号处理器或任何其它适合的电路。在权利要求中,术语“处理器”应被理解为单独或组合式地包含任意前述硬件。术语“信号”和“数据”可互换使用。进一步地,发射站12和接收站30的部分不一定必须以相同的方式来实现。
进一步地,在一种实施方式中,例如,发射站12或接收站30可以使用具有计算机程序的通用计算机/处理器来实现,计算机程序在被执行时执行本文中描述的任何相应方法、算法和/或指令。此外或备选地,例如,可以利用专用计算机/处理器,专用计算机/处理器可以包含用于执行本文中描述的任何方法、算法或指令的其它硬件。
例如,发射站12和接收站30可以在视频会议***中的计算机上实现。备选地,发射站12可以在服务器上实现,而接收站30可以在诸如手持式通信设备(例如蜂窝电话)之类的与服务器分离的设备上实现。在这一实例中,发射站12可以使用编码器将内容编码成编码视频信号,并且向通信设备发射编码视频信号。反过来,通信设备然后可以使用解码器对编码视频信号进行解码。备选地,通信设备可以对本地存储在通信设备上的内容(例如,不是由发射站12发射的内容)进行解码。其它适合的发射站12和接收站30实施方式方案是可用的。例如,接收站30可以是通常静止的个人计算机而不是便携式通信设备,和/或包括编码器的设备还可以包括解码器。
进一步地,本发明的所有或部分实施方式可以采取从例如有形的计算机可用或计算机可读介质可访问的计算机程序产品的形式。计算机可用或计算机可读介质可以是任何设备,其可以例如有形地包含、存储、传达或传送程序,以用于由任何处理器使用或结合任何处理器使用。例如,介质可以是电子的、磁的、光学的、电磁的或半导体设备。其它适合的介质也是可用的。
上述实施方式已被描述,以便允许容易地理解本发明并且不限制本发明。相反,本发明旨在于涵盖包括在所附权利要求的范围内的各种修改和等效布置,该范围将被赋予最宽的解释,以便于如根据法律所允许的包含所有这些修改和等效结构。

Claims (14)

1.一种对视频流中的帧进行编码的方法,所述帧具有多个块,所述方法包括:
标识所述多个块中的第一数据块;
通过从所述第一数据块向第二数据块复制像素、同时用处于定义值范围内的像素值替换第二数据块内的在所述定义值范围之外的每个像素值,从所述第一数据块生成第二数据块,使得所述第二数据块具有比所述第一数据块更低的熵;
使用第一编码技术对所述第二数据块进行编码,其中所述第一编码技术是有损的;
使用处理器对经编码的第二数据块进行解码;
基于在经解码的第二数据块和第一数据块之间的差值,生成第三数据块;以及
使用与所述第一编码技术不同的第二编码技术对所述第三数据块进行编码,其中所述第一编码技术包括变换域的量化,而第二编码技术包括空间域的量化。
2.根据权利要求1所述的方法,其中使用所述第一编码技术对所述第二数据块进行编码包括:
变换所述第二数据块;以及
在变换所述第二数据块之后量化所述第二数据块。
3.根据权利要求1或权利要求2所述的方法,其中使用所述第二编码技术对第三数据块进行编码包括:
在未变换所述第三数据块的情况下量化所述第三数据块。
4.根据权利要求3所述的方法,其中对所述第二数据块进行编码包括在量化所述第二数据块之后对所述第二数据块进行熵编码,并且对所述第三数据块进行编码包括在量化所述第三数据块之后对所述第三数据块进行编码。
5.根据权利要求1或权利要求2所述的方法,其中生成所述第二数据块包括:
确定处于所述定义值范围内的像素值。
6.根据权利要求5所述的方法,其中确定处于所述定义值范围内的像素值包括:
计算从所述第一数据块向所述第二数据块复制的所述像素的像素值的平均值。
7.一种用于对包括多个经编码的块的经编码的视频比特流的帧进行解码的方法,并且所述帧具有多个块,所述方法包括:
接收所述多个经编码的块的第一经编码的块和第二经编码的块,所述第一经编码的块对应于被编码的包括具有第一像素值的多个像素的第一数据块,并且第二经编码的块对应于包括具有第一像素值的多个像素的第二数据块,只是在该第二数据块中第一像素值当中的在定义值范围之外的第一像素值被定义值范围内的像素值替换;
使用第一解码技术对所述第一经编码的块进行解码以生成第一经解码的块;
使用与所述第一解码技术不同的第二解码技术对所述第二经编码的块进行解码以生成第二经解码的块,所述第二经解码的块具有比所述第一经解码的块更低的熵,并且所述第一解码技术包括变换域的解量化,而第二解码技术包括空间域的解量化;以及
使用处理器组合所述第一经解码的块与所述第二经解码的块,以形成所述多个块中的块。
8.根据权利要求7所述的方法,其中使用所述第一解码技术对所述第一经编码的块进行解码包括:
解量化所述第一经编码的块;以及
在解量化第一经编码的块之后逆变换所述第一经编码的块。
9.根据权利要求7或权利要求8所述的方法,其中使用所述第一解码技术对所述第一经编码的块进行解码包括:
在解量化所述第一经编码的块之前对所述第一经编码的块进行熵解码。
10.根据权利要求7或权利要求8所述的方法,其中使用所述第二解码技术对所述第二经编码的块进行解码包括:
在未逆变换所述第二经编码的块的情况下解量化所述第二经编码的块;以及
在解量化所述第二经编码的块之后逆变换所述第二经编码的块。
11.根据权利要求7或权利要求8所述的方法,其中组合所述第一经解码的块与所述第二经解码的块包括:
执行所述第一经解码的块的像素值和所述第二经解码的块的像素值的逐个像素加法。
12.一种用于对视频流中的帧进行编码的装置,所述帧具有多个块,所述装置包括:
存储器;以及
处理器,被配置为执行存储在所述存储器中的指令以:
标识所述多个块中的第一数据块;
通过从所述第一数据块向第二数据块复制像素、同时用低于定义值的单个像素值替换所述第二数据块内的高于所述定义值的每个像素值,从所述第一数据块生成第二数据块,使得所述第二数据块具有比所述第一数据块更低的熵;
使用第一编码技术对所述第二数据块进行编码,其中所述第一编码技术是有损的;
对经编码的第二数据块进行解码;
基于在经解码的第二数据块和第一数据块之间的差值,生成第三数据块;以及
使用与所述第一编码技术不同的第二编码技术对所述第三数据块进行编码,其中所述第一编码技术包括变换域的量化,而第二编码技术包括空间域的量化。
13.根据权利要求12所述的装置,其中所述处理器被配置为:
生成包括所述经编码的第二数据块和经编码的第三数据块的经编码的视频比特流,所述经编码的视频比特流包括指示所述第一编码技术和所述第二编码技术的编码模式。
14.根据权利要求12或权利要求13所述的装置,其中所述处理器被配置为通过以下方式对所述第二数据块进行编码:
变换所述第二数据块;
在变换所述第二数据块之后量化所述第二数据块;以及
在量化所述第二数据块之后对所述第二数据块进行熵编码;并且其中所述处理器被配置为通过以下方式对所述第三数据块进行编码:
量化所述第三数据块;以及
在量化所述第三数据块之后对所述第三数据块进行熵编码。
CN201380052322.4A 2012-08-09 2013-08-09 两步量化和编码方法和装置 Active CN104704826B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/570,492 US9510019B2 (en) 2012-08-09 2012-08-09 Two-step quantization and coding method and apparatus
US13/570,492 2012-08-09
PCT/US2013/054311 WO2014026097A1 (en) 2012-08-09 2013-08-09 Two-step quantization and coding method and apparatus

Publications (2)

Publication Number Publication Date
CN104704826A CN104704826A (zh) 2015-06-10
CN104704826B true CN104704826B (zh) 2018-01-05

Family

ID=49035936

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380052322.4A Active CN104704826B (zh) 2012-08-09 2013-08-09 两步量化和编码方法和装置

Country Status (4)

Country Link
US (1) US9510019B2 (zh)
EP (1) EP2883356A1 (zh)
CN (1) CN104704826B (zh)
WO (1) WO2014026097A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9253483B2 (en) 2012-09-25 2016-02-02 Google Technology Holdings LLC Signaling of scaling list
US9721561B2 (en) * 2013-12-05 2017-08-01 Nuance Communications, Inc. Method and apparatus for speech recognition using neural networks with speaker adaptation
CN103974076B (zh) * 2014-05-19 2018-01-12 华为技术有限公司 图像编解码方法和设备、***
US10142647B2 (en) 2014-11-13 2018-11-27 Google Llc Alternating block constrained decision mode coding
US10003821B2 (en) * 2015-10-27 2018-06-19 Canon Kabushiki Kaisha Image encoding apparatus and method of controlling same
US10645418B2 (en) * 2018-04-13 2020-05-05 Google Llc Morphological anti-ringing filter for lossy image compression
US10491897B2 (en) 2018-04-13 2019-11-26 Google Llc Spatially adaptive quantization-aware deblocking filter
US11412260B2 (en) 2018-10-29 2022-08-09 Google Llc Geometric transforms for image compression

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1605403A1 (en) * 2004-06-08 2005-12-14 STMicroelectronics S.r.l. Filtering of noisy images
EP2048887A1 (en) * 2007-10-12 2009-04-15 Thomson Licensing Encoding method and device for cartoonizing natural video, corresponding video signal comprising cartoonized natural video and decoding method and device therefore
CN100512447C (zh) * 2001-09-14 2009-07-08 夏普株式会社 用于为图像编码的编码器以及用于为图像解码的解码器

Family Cites Families (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339368A (en) 1991-11-21 1994-08-16 Unisys Corporation Document image compression system and method
US5590329A (en) 1994-02-04 1996-12-31 Lucent Technologies Inc. Method and apparatus for detecting memory access errors
US5644709A (en) 1994-04-21 1997-07-01 Wisconsin Alumni Research Foundation Method for detecting computer memory access errors
US5581696A (en) 1995-05-09 1996-12-03 Parasoft Corporation Method using a computer for automatically instrumenting a computer program for dynamic debugging
US5754742A (en) 1995-05-12 1998-05-19 Intel Corporation Setting quantization level to match DCT coefficients
KR100324609B1 (ko) 1996-05-28 2002-02-27 모리시타 요이찌 화상예측 복호화장치 및 방법
US5912676A (en) 1996-06-14 1999-06-15 Lsi Logic Corporation MPEG decoder frame memory interface which is reconfigurable for different frame store architectures
US5946486A (en) 1996-12-10 1999-08-31 International Business Machines Corporation Apparatus and method for tracing entries to or exits from a dynamic link library
JPH10257488A (ja) 1997-03-12 1998-09-25 Oki Data:Kk 画像符号化装置および画像復号化装置
KR100281099B1 (ko) 1997-07-30 2001-04-02 구자홍 동영상의부호화에따른블록화현상제거방법
US6263114B1 (en) 1997-07-31 2001-07-17 Sony Corporation Apparatus and method for compressing image data by determining a quantization factor which provides more efficient use of an available bit rate
JP3132456B2 (ja) 1998-03-05 2001-02-05 日本電気株式会社 階層的画像符号化方式、及び階層的画像復号方式
US6128346A (en) 1998-04-14 2000-10-03 Motorola, Inc. Method and apparatus for quantizing a signal in a digital system
US6434197B1 (en) 1999-01-07 2002-08-13 General Instrument Corporation Multi-functional transcoder for compressed bit streams
US6658157B1 (en) 1999-06-29 2003-12-02 Sony Corporation Method and apparatus for converting image information
JP3922844B2 (ja) 1999-09-02 2007-05-30 富士通株式会社 キャッシュtag制御方法及びこの制御方法を用いた情報処理装置
US6473460B1 (en) 2000-03-31 2002-10-29 Matsushita Electric Industrial Co., Ltd. Method and apparatus for calculating motion vectors
US6687304B1 (en) 2000-04-19 2004-02-03 Koninklijke Philips Electronics N.V. Efficient video data data access using fixed ratio compression
US6970206B1 (en) 2000-04-20 2005-11-29 Ati International Srl Method for deinterlacing interlaced video by a graphics processor
US6408383B1 (en) 2000-05-04 2002-06-18 Sun Microsystems, Inc. Array access boundary check by executing BNDCHK instruction with comparison specifiers
US6944226B1 (en) 2000-10-03 2005-09-13 Matsushita Electric Corporation Of America System and associated method for transcoding discrete cosine transform coded signals
WO2003021969A2 (en) 2001-08-30 2003-03-13 Faroudja Cognition Systems, Inc. Multi-layer video compression system with synthetic high frequencies
US6891889B2 (en) 2001-09-05 2005-05-10 Intel Corporation Signal to noise ratio optimization for video compression bit-rate control
US7313705B2 (en) 2002-01-22 2007-12-25 Texas Instrument Incorporated Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory
US6700809B1 (en) 2002-02-01 2004-03-02 Netlogic Microsystems, Inc. Entry relocation in a content addressable memory device
US7216135B2 (en) 2002-02-15 2007-05-08 International Business Machines Corporation File system for providing access to a snapshot dataset where disk address in the inode is equal to a ditto address for indicating that the disk address is invalid disk address
AU2003285850A1 (en) 2002-04-23 2004-04-30 Nokia Corporation Method and device for indicating quantizer parameters in a video coding system
JP2003324743A (ja) 2002-05-08 2003-11-14 Canon Inc 動きベクトル探索装置及び動きベクトル探索方法
US7450642B2 (en) 2002-11-13 2008-11-11 Sony Corporation Fast motion vector prediction method
US8018935B2 (en) 2002-12-12 2011-09-13 Intel Corporation Address search
FR2849228A1 (fr) 2002-12-23 2004-06-25 St Microelectronics Sa Dispositif de transfert de donnees entre deux sous-systemes asynchrones disposant d'une memoire tampon
US7114104B1 (en) 2003-02-11 2006-09-26 Compuware Corporation System and method of fault detection in a Unix environment
JP4224778B2 (ja) 2003-05-14 2009-02-18 ソニー株式会社 ストリーム変換装置および方法、符号化装置および方法、記録媒体、並びに、プログラム
JP4262014B2 (ja) 2003-07-31 2009-05-13 キヤノン株式会社 画像撮影装置および画像処理方法
US7535959B2 (en) 2003-10-16 2009-05-19 Nvidia Corporation Apparatus, system, and method for video encoder rate control
US7457362B2 (en) 2003-10-24 2008-11-25 Texas Instruments Incorporated Loop deblock filtering of block coded video in a very long instruction word processor
TWI225363B (en) 2003-11-10 2004-12-11 Mediatek Inc Method and apparatus for controlling quantization level of a video encoding bit stream
US7836434B1 (en) 2004-05-04 2010-11-16 Oracle America, Inc. Method and system for analyzing array access to a pointer that is referenced as an array
JP3846489B2 (ja) 2004-05-10 2006-11-15 セイコーエプソン株式会社 画像データ圧縮装置、エンコーダ、電子機器及び画像データ圧縮方法
KR20050112445A (ko) 2004-05-25 2005-11-30 경희대학교 산학협력단 예측 부호화/복호화 장치, 예측 부호화/복호화 방법 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체
US20050283770A1 (en) 2004-06-18 2005-12-22 Karp Alan H Detecting memory address bounds violations
US7277999B1 (en) 2004-08-12 2007-10-02 Vmware, Inc. Restricting memory access to protect data when sharing a common address space
US7933328B2 (en) 2005-02-02 2011-04-26 Broadcom Corporation Rate control for digital video compression processing
JPWO2006098226A1 (ja) 2005-03-14 2008-08-21 松下電器産業株式会社 符号化装置および符号化装置を備えた動画像記録システム
US20060277371A1 (en) 2005-06-01 2006-12-07 Intel Corporation System and method to instrument references to shared memory
KR100813963B1 (ko) 2005-09-16 2008-03-14 세종대학교산학협력단 동영상의 무손실 부호화, 복호화 방법 및 장치
US7864999B2 (en) 2005-10-19 2011-01-04 Siemens Medical Solutions Usa, Inc. Devices systems and methods for processing images
KR100977101B1 (ko) 2005-11-30 2010-08-23 가부시끼가이샤 도시바 화상 부호화/화상 복호화 방법 및 화상 부호화/화상 복호화장치
US7856538B2 (en) 2005-12-12 2010-12-21 Systex, Inc. Methods, systems and computer readable medium for detecting memory overflow conditions
US7506121B2 (en) 2005-12-30 2009-03-17 Intel Corporation Method and apparatus for a guest to access a memory mapped device
CN103974065B (zh) 2006-01-09 2017-12-29 马蒂亚斯·纳罗施克 编码方法和解码方法、编码器和解码器
JP4978008B2 (ja) 2006-01-11 2012-07-18 株式会社日立製作所 仮想計算機上でのページテーブルアドレスの変更を高速化する方法
US7924925B2 (en) 2006-02-24 2011-04-12 Freescale Semiconductor, Inc. Flexible macroblock ordering with reduced data traffic and power consumption
US8724702B1 (en) 2006-03-29 2014-05-13 Nvidia Corporation Methods and systems for motion estimation used in video coding
US20070268964A1 (en) 2006-05-22 2007-11-22 Microsoft Corporation Unit co-location-based motion estimation
TWI311443B (en) 2006-07-12 2009-06-21 Novatek Microelectronics Corp Method of block coding of an image
US7681077B1 (en) 2006-11-03 2010-03-16 Nvidia Corporation Graphics system with reduced shadowed state memory requirements
US7768515B1 (en) 2006-11-03 2010-08-03 Nvidia Corporation Apparatus, system, and method for reducing shadowed state memory requirements for identifying driver command exceptions in a graphics system
US20080170793A1 (en) 2007-01-12 2008-07-17 Mitsubishi Electric Corporation Image encoding device and image encoding method
JP4875007B2 (ja) 2007-02-09 2012-02-15 パナソニック株式会社 動画像符号化装置、動画像符号化方法、及び、動画像復号化装置
US20080225947A1 (en) 2007-03-13 2008-09-18 Matthias Narroschke Quantization for hybrid video coding
JPWO2008120577A1 (ja) 2007-03-29 2010-07-15 株式会社東芝 画像符号化及び復号化の方法及び装置
US8243797B2 (en) 2007-03-30 2012-08-14 Microsoft Corporation Regions of interest for quality adjustments
KR20090115176A (ko) 2007-04-16 2009-11-04 가부시끼가이샤 도시바 화상 부호화와 화상 복호화의 방법 및 장치
KR100890546B1 (ko) 2007-04-30 2009-03-27 슈어소프트테크주식회사 메모리 오류 검출 방법
JP2010528555A (ja) 2007-05-29 2010-08-19 エルジー エレクトロニクス インコーポレイティド ビデオ信号の処理方法および装置
US8055864B2 (en) 2007-08-06 2011-11-08 International Business Machines Corporation Efficient hierarchical storage management of a file system with snapshots
KR102313863B1 (ko) 2007-10-16 2021-10-15 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
WO2009050897A1 (ja) 2007-10-19 2009-04-23 Panasonic Corporation 符号化レート変換装置、符号化レート変換方法および集積回路
US8468500B2 (en) 2007-12-12 2013-06-18 Nec Corporation Program debugging method and program transformation method, program debugging device and program transformation device using the same, and storage medium
US8311111B2 (en) 2008-09-11 2012-11-13 Google Inc. System and method for decoding using parallel processing
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
KR101306834B1 (ko) 2008-09-22 2013-09-10 에스케이텔레콤 주식회사 인트라 예측 모드의 예측 가능성을 이용한 영상 부호화/복호화 장치 및 방법
US8687702B2 (en) 2008-10-27 2014-04-01 Advanced Micro Devices, Inc. Remote transmission and display of video data using standard H.264-based video codecs
US8605791B2 (en) 2008-11-21 2013-12-10 Nvidia Corporation Video processor using an optimized slicemap representation
US8666181B2 (en) 2008-12-10 2014-03-04 Nvidia Corporation Adaptive multiple engine image motion detection system and method
EP2420068A4 (en) 2009-04-13 2012-08-08 Reald Inc ENCRYPTION, DECOMPOSITION AND DISTRIBUTION OF STEREOSCOPIC VIDEO CONTENT WITH REINFORCED RESOLUTION
CN101931805B (zh) 2009-06-19 2013-10-23 香港科技大学 采用比特挪移方法的标量量化及其在视频编码中的应用
US20110026591A1 (en) 2009-07-29 2011-02-03 Judit Martinez Bauza System and method of compressing video content
US8271450B2 (en) 2009-10-01 2012-09-18 Vmware, Inc. Monitoring a data structure in a virtual machine and determining if memory pages containing the data structure are swapped into or out of guest physical memory
US20110235706A1 (en) 2010-03-25 2011-09-29 Texas Instruments Incorporated Region of interest (roi) video encoding
US8798146B2 (en) 2010-05-25 2014-08-05 Lg Electronics Inc. Planar prediction mode
US8803892B2 (en) 2010-06-10 2014-08-12 Otoy, Inc. Allocation of GPU resources across multiple clients
US8428384B2 (en) * 2010-08-19 2013-04-23 Sony Corporation Method and apparatus for performing an in-painting process on an image
US20120114034A1 (en) 2010-11-08 2012-05-10 Mediatek Inc. Method and Apparatus of Delta Quantization Parameter Processing for High Efficiency Video Coding
US9167252B2 (en) 2010-12-01 2015-10-20 Texas Instruments Incorporated Quantization matrix compression in video coding
JP5741076B2 (ja) 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
US9571849B2 (en) 2011-01-04 2017-02-14 Blackberry Limited Coding of residual data in predictive compression
US20120189052A1 (en) 2011-01-24 2012-07-26 Qualcomm Incorporated Signaling quantization parameter changes for coded units in high efficiency video coding (hevc)
WO2012148841A1 (en) 2011-04-29 2012-11-01 Google Inc. Method and apparatus for detecting memory access faults
CA2780711A1 (en) 2011-06-10 2012-12-10 Research In Motion Limited Method and system to reduce modelling overhead for data compression
US9854275B2 (en) 2011-06-25 2017-12-26 Qualcomm Incorporated Quantization in video coding
US20130022108A1 (en) 2011-06-30 2013-01-24 General Instrument Corporation Quantization parameter derivation from qp predictor
WO2013032576A2 (en) 2011-06-30 2013-03-07 General Instrument Corporation Quantization parameter derivation from qp predictor
US8891616B1 (en) 2011-07-27 2014-11-18 Google Inc. Method and apparatus for entropy encoding based on encoding cost
EP3855744A1 (en) 2012-01-20 2021-07-28 Electronics and Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100512447C (zh) * 2001-09-14 2009-07-08 夏普株式会社 用于为图像编码的编码器以及用于为图像解码的解码器
EP1605403A1 (en) * 2004-06-08 2005-12-14 STMicroelectronics S.r.l. Filtering of noisy images
EP2048887A1 (en) * 2007-10-12 2009-04-15 Thomson Licensing Encoding method and device for cartoonizing natural video, corresponding video signal comprising cartoonized natural video and decoding method and device therefore

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Advanced Television Systems for Terrestrial Broadcasting: Some Problems and Some Proposed Solution;WILLIAM F. SCHREIBER;《PROCEEDINGS OF THE IEEE》;19950601;第83卷(第6期);全文 *
Muscle and Liver Carbohydrates:Response to Military Task Performance by Women and Men;Thomas B Price;《DEFENSE TECHNICAL INFORMATION CENTER》;19971001;全文 *
Transform image coding with edge compensation;Tetsuo Shimono, et al.;《Electronics and Communications in Japan (Part I: Communications)》;19911031;第74卷(第10期);全文 *

Also Published As

Publication number Publication date
CN104704826A (zh) 2015-06-10
US9510019B2 (en) 2016-11-29
WO2014026097A1 (en) 2014-02-13
EP2883356A1 (en) 2015-06-17
US20140044164A1 (en) 2014-02-13

Similar Documents

Publication Publication Date Title
CN104704826B (zh) 两步量化和编码方法和装置
CN103797800B (zh) 推导参考模式值以及编码和解码表示预测模式的信息
JP7047119B2 (ja) 変換領域における残差符号予測のための方法および装置
CN104041035B (zh) 用于复合视频的无损编码及相关信号表示方法
CN104885471B (zh) 用于下一代视频的编码/未编码的数据的内容自适应熵编码
CN106170092A (zh) 用于无损编码的快速编码方法
JP6749922B2 (ja) 高効率ビデオ符号化(hevc)画面コンテンツ符号化(scc)における改善されたパレットモード
CN109547801B (zh) 视频流编解码方法和装置
KR101868247B1 (ko) 영상 부호화, 복호화 방법 및 장치
CN107925763A (zh) 等级分割中的块级别变换选择和隐式信令的编码变换方法和设备
CN104581177B (zh) 一种结合块匹配和串匹配的图像压缩方法和装置
CN107231557B (zh) 用于在视频编码中的高级帧内预测的递归块分区中的智能重排的编、解码方法及装置
CN104041039A (zh) 用于编码和解码图像的方法、编码和解码设备、以及相应的计算机程序
CN108881913B (zh) 图像编码的方法和装置
CN116648906A (zh) 通过指示特征图数据进行编码
CN107071440A (zh) 使用先前帧残差的运动矢量预测
CN111837140A (zh) 视频代码化的感受野一致卷积模型
CN105723709A (zh) 用于编码和解码图像的方法、用于编码和解码图像的装置及对应计算机程序
CN107318015A (zh) 用于视频编码的混合预测模式
CN105794208B (zh) 编码解码图像方法、编码解码图像设备及相应计算机可读介质
CN110352599A (zh) 用于视频处理的方法和设备
CN115604485A (zh) 视频图像的解码方法及装置
WO2022100173A1 (zh) 一种视频帧的压缩和视频帧的解压缩方法及装置
CN111385555A (zh) 原始和/或残差数据用分量间预测的数据压缩方法和装置
EP4388743A1 (en) Generalized difference coder for residual coding in video 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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.