CN105612744A - 视频数据编码和解码 - Google Patents

视频数据编码和解码 Download PDF

Info

Publication number
CN105612744A
CN105612744A CN201480054385.8A CN201480054385A CN105612744A CN 105612744 A CN105612744 A CN 105612744A CN 201480054385 A CN201480054385 A CN 201480054385A CN 105612744 A CN105612744 A CN 105612744A
Authority
CN
China
Prior art keywords
data
array
coding
dpcm
data 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
CN201480054385.8A
Other languages
English (en)
Other versions
CN105612744B (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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of CN105612744A publication Critical patent/CN105612744A/zh
Application granted granted Critical
Publication of CN105612744B publication Critical patent/CN105612744B/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image 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/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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
    • 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/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

可操作为编码输入视频数据值的阵列的视频数据编码装置,包括:差分脉冲编码调制(DPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;量化器,可操作为量化从DPCM数据值得出的数据;以及控制器,控制由量化器从两个或更多个候选取整运算中对取整运算的选择。

Description

视频数据编码和解码
相关申请的交叉引用
本申请分别要求于2013年10月1日、2013年10月8日、2013年10月21日以及2013年11月25日提交给英国知识产权局的GB1317406.5、GB1317803.3、GB1318593.9以及GB1320772.5的较早申请日的权益,通过引用将其全部内容结合于此。
技术领域
本公开涉及数据编码和解码。
背景技术
本发明中提供的“背景”描述用于整体呈现本公开的背景的目的。在此背景段落以及在申请时可能不被认定为现有技术的说明观点中所述范围内的目前所指名发明人的工作,并未被明确地或暗示地认可作为相对本公开的现有技术。
存在一些视频数据压缩和解压缩***,其涉及将视频数据变换成频域表示、量化频域系数并且然后向量化系数应用某种形式的熵编码。
在编码器侧变换成空间频率域对应于在解码器侧的逆变换。示例性变换包括所谓的离散余弦变换(DCT)和所谓的离散正弦变换(DST)。在一些实例中,通过将输入样本的阵列矩阵乘以变换系数的矩阵进行变换以生成频率变换数据。频率变换数据被转换回采样数据,通过使频率变换数据的阵列矩阵乘以逆变换系数的矩阵从该采样数据中能够得出输出视频数据。
诸如所谓的高效率视频编码(HEVC)标准的一些标准和暂行标准限定了实际上未使用空间频率变换的编码和解码模式。有时这些称为“变换跳过”或者“变换-量化跳过”(“变换-量化”是“变换和量化”的缩写)模式。
发明内容
本公开的一方面由权利要求1限定。
在所附权利要求中限定了进一步的各个方面及特征。
应当理解,前述一般性描述和以下具体实施方式是示例性的而不是对本公开的限制。
附图说明
当结合附图考虑时,通过参考以下实施方式的详细描述将很容易获得并且同样更好地理解本公开的更完整的认识及其许多所伴随的优点,其中:
图1示意性地示出了使用视频数据压缩和解压缩的音频/视频(A/V)数据发送和接收***;
图2示意性地示出了利用视频数据解压缩的视频显示***;
图3示意性地示出了利用视频数据压缩和解压缩的音频/视频存储***;
图4a示意性地示出使用视频数据压缩的摄影机;
图4b示意性地更详细地示出了示例性摄影机;
图4c示意性地示出另一示例性摄像机;
图4d和图4e示意性地示出数据载体;
图5提供视频数据压缩和解压缩装置的示意图;
图6示意性地示出了预测图像的生成;
图7示意性地示出了最大编码单元(LCU);
图8示意性地示出了四个编码单元(CU)的集合;
图9和图10示意性地示出了被子划分成更小编码单元的图8的编码单元;
图11示意性地示出了预测单元(PU)的阵列;
图12示意性地示出了变换单元(TU)的阵列;
图13示意性地示出了样本的阵列;
图14示意性地示出频率分离的系数的阵列;
图15示意性地示出了图14的阵列内的趋势;
图16示意性地示出了反向扫描;
图17a至图17c示意性地示出了取整技术(roundingtechnique);
图18示意性地示出了RDOQ装置;
图19a和图19b示意性地示出了图18的装置的操作;
图20示意性地示出了编码器的部分;
图21和图22示意性地示出了RDPCM操作;
图23a和图23b示意性地示出了RDPCM数据阵列中的趋势;
图24a和图24b示意性地示出了水平编码的RDPCM数据的扫描顺序的变化;
图25a和图25b示意性地示出了水平编码的RDPCM数据的扫描顺序的变化;
图26a和图26b示意性地示出了内部图像编码的RDPCM数据的扫描顺序的变化;
图27是示出了处理方法的示意性流程图;
图28示意性地示出了解码器的一部分;
图29至图31是指示编码器和/或解码器的操作的方面的示意性流程图;
图32示意性地示出了对于图像内编码块操作的编码器和/或解码器的一部分;
图33示意性地示出了对于图像间编码块操作的编码器和/或解码器的一部分;
图34示意性地示出了对于图像内编码块操作的编码器和/或解码器的一部分;
图35示意性地示出了对于图像间编码块操作的编码器和/或解码器的一部分;
图36示意性地示出dc值的块;
图37a示意性地示出了在水平DPCM处理之后图36的块;
图37b示意性地示出了在旋转操作之后图37a的块;
图38a示意性地示出了在垂直DPCM处理之后图36的块;
图38b示意性地示出了在旋转操作之后图38a的块;
图39示意性地示出编码器的操作的部分;
图40示意性地示出解码器的操作的一部分;以及
图41a和图41b示意性地示出处理顺序的变化。
具体实施方式
现在参考附图,图1至图4e被提供以给出利用压缩和/或解压缩装置的装置或***的示意图,以供配合实施方式而描述于下。
下面将要描述的所有数据压缩和/或解压缩装置可以以硬件、运行在诸如通用计算机、如专用集成电路(ASIC)或者现场可编程门阵列(FPGA)或者其组合的可编程硬件的通用数据处理装置上的软件实施。在由软件和/或固件实施实施方式的情况下,应当理解,这样的软件和/或固件以及通过其存储或以另外的方式提供的这样的软件和/或固件的非瞬时性机器可读数据存储介质被视为实施方式。
图1示意性地示出了利用视频数据压缩和解压缩的音频/视频数据发送和接收***。
输入音频/视频信号10被提供给视频数据压缩装置20,视频数据压缩装置压缩音频/视频信号10的至少视频分量以用于沿着诸如电缆、光纤、无线链路等传输路径30的传输。压缩信号被解压缩装置40处理以提供输出音频/视频信号50。对于返回路径,压缩装置60压缩音频/视频信号以沿着传输路径30传输到解压缩装置70。
压缩装置20和解压缩装置70由此能够形成传输链路的一个节点。解压缩装置40和解压缩装置60能够形成传输链路的另一节点。当然,在传输链路为单向的情况下,仅一个节点需要压缩装置并且另一节点仅需要解压缩装置。
图2示意性地示出了使用视频数据解压缩的视频显示***。具体地,压缩的音频/视频信号100被解压缩装置110处理以提供能够在显示器120上显示的解压缩信号。解压缩装置110可以实施为显示器120的组成部分,例如,与显示设备设置在同一壳体内。另一方面,解压缩装置110可被设置为(例如)所谓的机顶盒(STB),注意:用词“机顶”并非暗示机盒需设置相对于显示器120的任何特定方位或位置;其仅为用以指示可连接至显示以当作***设备的设备的本技术中所使用的术语。
图3示意性地示出了使用视频数据压缩和解压缩的音频/视频存储***。输入音频/视频信号130被提供给压缩装置140,压缩装置140生成用于被诸如磁盘设备、光盘设备、磁带设备、例如半导体存储器的固态存储设备或者其他存储设备等存储设备150存储的压缩信号。在重放时,从存储设备150读取压缩数据并且将其传送到用于解压缩的解压缩装置160以提供输出音频/视频信号170。
应当理解,压缩或者编码信号以及存储介质或者存储该信号的数据载体被视为实施方式。参考如下所述的图4d和图4e。
图4a示意性地示出使用视频数据解压缩的摄影机。图4a中,诸如电荷耦合设备(CCD)图像传感器及相关的控制和读出电子设备等的图像捕获设备180生成传送给压缩装置190的视频信号。麦克风(或者多个麦克风)200生成被传送给压缩装置190的音频信号。压缩装置190生成将被存储和/或传输(通常示出为示意性阶段220)的压缩的音频/视频信号210。
下面描述的技术主要涉及视频数据压缩。应当理解,许多现有技术可结合将要描述的视频数据压缩技术用于音频数据压缩以生成压缩音频/视频信号。因此,将不提供对音频数据压缩的单独讨论。还应理解,与视频数据相关联的数据速率,尤其是广播质量视频数据,通常比与(无论是压缩或者未压缩)音频数据相关联的数据速率高很多。因此,应当理解,未压缩的音频数据可伴随压缩的视频数据以形成压缩的音频/视频信号。应当进一步理解,尽管本实例(图1至图4e中示出)涉及音频/视频数据,然而,下面将要描述的技术中可以发现在只处理(即,压缩、解压缩、存储、显示和/或传输)视频数据的***中使用。即,实施方式能够应用于视频数据压缩,而不必具有任何相关的音频数据处理。
图4b示意性地更详细地示出了示例性摄影机装置183。将不会进一步描述编号与图4a相同的那些特征。图4b是图4a的照相机的实例(在图4a提供存储能力的单元220的情况下),其中压缩数据首先被缓冲器221缓冲并且然后存储在诸如磁盘、光盘、闪存、所谓的固态光盘驱动器(SSD)等的存储介质222中。应注意,图4b的布置可以实现为单个(物理)单元182。
图4c示意性地示出了另一示例性摄影机,其中,代替图4b的存储器布置,设置网络接口223以便允许压缩数据被传输到另一单元(未示出)。网络接口223也可以允许输入数据(诸如,控制数据)由摄像机接收。应注意,图4b的布置可以实现为单个(物理)单元183。
图4d和图4e示意性地示出数据载体,例如,用作存储介质222并且携带根据在本应用中描述的压缩技术压缩的压缩数据。图4d示出了被实现为诸如闪存的固态存储器的可移除非易失性存储介质225的示意性实例。图4e示出实现为诸如光盘的磁盘介质的可移除非易失性存储介质226的示意性实例。
图5提供视频数据压缩和解压缩装置的示意图。
输入视频信号300的连续图像被提供给加法器310和图像预测器320。下面将参考图6更为详细地描述图像预测器320。事实上,加法器310执行减法(负加法)操作,即,在“+”输入端接收输入视频信号300并且在“-”输入端接收图像预测器320的输出,这样使得从输入图像中减去预测图像。结果是生成表示实际图像与预测图像(projectedimage)之间差异的所谓残差图像信号330。
生成残差图像信号的原因之一如下。将要描述的数据编码技术,即将要应用于残差图像信号的技术在待编码的图像中存在较少“能量”时趋向于更有效地工作。此处,术语“有效地”指少量的编码数据的生成;对于特定的图像质量水平,期望(并且视为“有效地”)实际上生成尽可能少的数据。提及的残差图像中的“能量”指包含在残差图像中的信息量。如果预测图像与实际图像一致,两者之间差异(即,残差图像)将包含零信息(零能量)并且非常容易编码成少量的编码数据。通常,如果预测过程工作的相当好,则预期的是残差图像数据将包含比输入图像少的信息(更少能量)并且因此更容易编码成少量的编码数据。
残差图像数据330被提供给生成残差图像数据的离散余弦变换(DCT)表示的变换单元340。DCT技术本身是公知的并且此处将不作详细描述。然而,下面将更为详细描述在本装置中使用的技术的方面,具体地,涉及应用DCT操作的不同数据块的选择。下面将参考图7至图12进行讨论。
应注意,在一些实施方式中,使用离散正弦变换(DST)代替DCT。在其他实施方式中,没有可能使用的变换。这可有选择地进行,使得例如在“变换跳过”命令或模式的控制下实际上绕过变换阶段。
变换单元340的输出(亦即,针对图像数据的各变换区块的一组变换系数)被供应至量化器350。各种量化技术在从简单乘以量化比例因子至在量化参数控制下的复杂查找表的应用范围的视频数据压缩的领域中是公知的。总的目标是双重的。首先,量化过程减少了变换数据的可能值的数目。其次,量化过程能够增加变换数据的值为零的可能性。这两者可以使熵编码过程在生成少量压缩视频数据中更高效地工作。
根据下面进一步讨论的技术,控制器345控制变换单元340以及量化器350(以及它们相应的逆单元)的操作。应注意,控制器345还可以控制图5的装置的操作的其他方面。
通过扫描单元360应用数据扫描处理。扫描处理的目的是对量化变换数据重新排序,从而使尽可能多的非0量化变换系数聚集在一起,当然,由此使尽可能多的0值系数聚集在一起。这些特征能够允许所谓的游程长度编码或类似的技术被被有效地应用。因此,扫描处理涉及从量化变换数据选择系数,具体地,根据“扫描顺序”从对应于经变换和量化的图像数据的块的系数块中选择系数,使得(a)一次选择所有系数作为扫描的一部分;以及(b)扫描趋向于提供期望的重新排序。能够给出有用结果的一个示例扫描顺序是所谓的之字形扫描顺序。然后,扫描系数被传送给熵编码器(EE)370。再次,可使用各种类型的熵编码。两个实例是所谓的CABAC(上下文自适应二进制算数编码)***的变形和所谓的CAVLC(上下文自适应可变长度编码)***的变形。总体而言,CABAC被视为提供更佳的效率,在一些研究中已经示出,与CAVLC相比较,对于可比较的图像质量提供的编码输出数据的量减少10%-20%。然而,CAVLC被视为代表(在其实施方面)比CABAC更低的复杂度。应注意,扫描处理和熵编码处理示出为单独的处理,但事实上,可以进行组合或者一起处理。即,读入到熵编码器的数据可以以扫描顺序来进行。相应的考虑应用于相应逆过程。
熵编码器370的输出与例如限定其中预测器320产生预测图像的方式的额外数据一起提供压缩的输出视频信号380。
然而,因为预测器320自身的操作取决于压缩的输出数据的解压缩版本,所以还提供返回路径。
该特征的原因如下。在解压缩过程的合适阶段,生成残差数据的解压缩版本。此解压缩的残差数据被添加到预测图像中以生成输出图像(因为原始残差数据为输入图像与预测图像之间的差)。为了使作为压缩侧与解压缩侧之间的该过程具有可比较性,在压缩过程期间和在解压缩过程期间由预测器320生成的预测图像应相同。当然,在解压缩时,该装置并不访问原始输入图像,而仅访问解压缩图像。因此,在压缩时,预测器320基于对压缩图像的解压缩版本(至少,对图像间编码)的预测。
由熵编码器370执行的熵编码处理被视为“无损”,即,熵编码过程可以逆转以精确达到与最早提供给熵编码器370的数据相同。因此,在熵编码阶段之前可以实施返回路径。事实上,由扫描单元360执行的扫描处理也被视为无损,而在本实施方式中,返回路径390为从量化器350的输出至互补逆量化器420的输入。
总体而言,熵解码器410、反向扫描单元400、逆量化器420和逆变换单元430提供熵编码器370、扫描单元360、量化器350和变换单元340的相应逆功能。现在,将继续讨论压缩过程;解压缩输入压缩视频信号的过程对应于压缩过程的返回路径。
在压缩过程中,通过执行扫描单元360的逆操作的返回路径390将扫描系数从量化器350传送至逆量化器420。由单元420和430执行逆量化和逆变换过程以生成压缩-解压缩残差图像信号440。
在加法器450中,图像信号440与预测器320的输出相加以生成重构的输出图像460。这形成了至图像预测器320的一个输入。
现转向应用于接收的压缩视频信号470的过程,在由加法器450将其加到图像预测器320的输出之前,信号被提供给熵编码器410并且从此处到反向扫描单元400、逆量化器420以及逆变换单元430的链。简言之,加法器450的输出460形成输出解压缩视频信号480。实际上,在输出信号之前可进一步应用滤波。
图6示意性地示出了预测图像的生成,具体地,示出了图像预测器320的操作。
存在两种基本预测模式:所谓的图像内(intra-image)预测和所谓的图像间(inter-image)或者运动补偿(MC)预测。
图像内预测基于来自同一图像内数据预测图像的块的内容。这对应于其他视频压缩技术中的所谓I帧编码。相对于I帧编码(其中整个图像均被内编码),在本实施方式中,可以逐区块的方式来进行介于内-与间-编码之间的选择,虽然在其他实施例中仍以逐图像的方式进行选择。
运动补偿预测利用运动信息,运动信息尝试在另一相邻或附近的图像中定义在当前图像中要编码的图像细节的源。因此,在理想实例中,可以很简单地编码预测图像中的图像数据的块的内容作为指向相邻图像中的相同的或稍有不同的位置处的相应块的参考(运动矢量)。
返回图6,示出了两种图像预测布置(对应于图像内和图像间预测),其结果在模式信号510的控制下由复用器(multiplexer)500选择,以提供用于供给至加法器310和450的预测图像的块。根据哪个选项给出最低“能量”(如上所述,可被视为要求编码的信息内容)做出选择,并且将该选择作为编码输出数据流中的信号发送给编码器。例如,通过从输入图像中对两个版本的预测图像的区域(area)执行试验减法,平方差分图像的每个像素值,对平方值求和,以及识别两个版本中的哪一个产生了有关该图像区域的差分图像的较低均方值,来检测该背景下的图像能量。
内编码***中的实际预测基于作为信号460的一部分接收的图像块进行,即,预测基于编码-解码图像块,从而使得在解压缩装置中能够做出精确地相同预测。然而,通过模式内选择器520能够从输入视频信号300中得出数据以控制图像内预测器530的操作。
对于图像间预测,运动补偿(MC)预测器540使用诸如由运动估测器550从输入视频信号300得出的运动矢量等运动信息。运动矢量被运动补偿预测器540应用于重构图像460的处理版本以生成图像间预测的块。
现将描述应用于信号460的处理。首先,由滤波器单元560滤波信号。这涉及应用“解块”滤波器以去除或者至少趋向于减少由变换单元340及后续操作执行的基于块处理的效果。此外,使用通过处理重构信号460和输入视频信号300得到的系数应用自适应环路滤波器。自适应环路滤波器是使用已知技术将自适应滤波器系数应用到要被滤波的数据的滤波器类型。即,滤波器系数可根据各种因素而变化。定义哪个滤波器系数将要使用的数据作为编码输出数据流的一部分被包括。
事实上,来自滤波器单元560的滤波输出形成输出视频信号480。其还缓存在一个或者多个图像存储器570中;连续图像的存储是运动补偿预测处理的要求,并具体为运动矢量的生成。为了节省存储要求,图像存储器570中的存储图像可保持成压缩形式并且然后在用于生成运动矢量时解压缩。对于这个特定的目的,可使用任何已知的压缩/解压缩***。存储图像被传送给生成存储图像的分辨率更高版本的内插滤波器580;在本实例中,产生中间采样(samples)(子采样),从而使得由内插滤波器580输出的内插图像的分辨率(在每个维度)是存储在图像存储器570中的图像的分辨率的8倍。内插图像作为运动估测器550的输入被传送以及作为运动补偿预测器540的输入被传送。
在实施方式中,提供进一步可选阶段,即,使用乘法器600将输入视频信号的数据值乘以因子四(实际上仅将数据值向左移动两位),并且使用除法器或者右移位器610在装置的输出处应用相应的除法操作(右移两位)。因此,左移和右移仅改变用于装置的内部操作的数据。因为降低了任何数据取整误差的效果,所以该措施能够提供装置内更高的计算精度。
现将描述将图像分割以用于压缩处理的方式。在基本水平,将要压缩的图像被视为采样的块的阵列。出于本讨论之目的,考虑的最大的此类块为所谓的最大编码单元(LCU)700(图7),表示64×64采样的正方形阵列。此处,本讨论涉及亮度采样。根据色度模式,诸如,4:4:4、4:2:2、4:2:0或者4:4:4:4(GBR加密钥数据),存在对应于亮度块的相应的色度采样的不同数目。
将描述三种基本类型的块:编码单元、预测单元以及变换单元。总体而言,LCU递归子分允许以这样一种方式分割输入图片,即,根据将要编码的图像的具体特征能够设置块大小和块编码参数(诸如,预测或者残差编码模式)。
LCU可以被子分为所谓的编码单元(CU)。编码单元始终是正方形并且具有8×8采样与LCU700的整个大小之间的大小。编码单元能够布置为一种树结构,因此,如图8所示,可产生第一子分,给出32×32采样的编码单元710;在选择的基础上可接着产生后续子分,以给出16×16采样(图9)的某些编码单元720以及8×8采样(图10)的潜在某些编码单元730。总之,该过程能够提供CU块的内容自适应编码树结构,其每个结构可以是与LCU一样大或者与8×8采样一样小。基于编码单元结构对输出视频数据进行编码。
图11示意性地示出了预测单元(PU)的阵列。预测单元是用于携载有关图像预测过程的信息的基本单元,或者换言之,将附加数据添加到熵编码残差图像数据以从图5中的装置形成输出视频信号。总之,预测单元并不局限于正方形形状。只要编码单元大于最小(8×8)大小,预测单元可以是其他形状,具体地,形成正方形编码单元中一个的一半的矩形形状。目的是允许相邻预测单元的边界与图片中真实对象的边界(尽可能密切地)匹配,因此,不同的预测参数能够应用于不同真实对象。每个编码单元可包含一个或者多个预测单元。
图12示意性地示出了变换单元(TU)的阵列。变换单元是变换和量化过程的基本单元。变换单元始终是正方形并且可以采取从4×4到32×32采样的大小。每个编码单元可包含一个或者多个变换单元。图12中的缩写SDIP-P表示所谓的短距离帧内预测分区。在该布置中,仅使用一维变换,因此,利用输入至基于当前SDIP-P内的先前编码的相邻块和先前解码的相邻线的变换的输入数据,通过N个变换传送4×N块。
图13示意性地示出了样本的阵列。这些实际上表示如上讨论的残差图像330的样本,并且在它们合适的相对空间位置绘制,也就是说相对于图像内的那些样本的位置样本800位于4×4邻取样的阵列的左上角处,并且样本810位于这样的阵列的右下角处。
当然应当理解的是图13的4×4阵列只是个实例;在这里讨论的技术和特征可应用于各种不同尺寸的阵列,诸如,8×8、16×16、32×32等。
通过变换单元340处理图13的采样以生成频率分离的系数。图14示意性地示出这种频率分离的系数的阵列。在此,阵列内的系数的位置表示与该系数对应的空间频率。按照惯例,所谓的DC系数820占用左上阵列位置。向图14的阵列内右边移动表示增大的水平频率分量,并且朝向图14的阵列的底部移动表示增大的垂直频率分量。应注意,尽管这仅是以这种方式表示系数的阵列的公约(而不是,例如,在右下角具有DC系数),系数的排序与过程的其他部分技术相关。这样的原因由图14中的虚线箭头830示意性地示出,这表示在图14的阵列内从右下移动至左上位置对应于图像再现的系数通常越来越重要。即,为了重构图13的样品的阵列或块,根据通过下水平和垂直频率系数来看的重要性方面,图14的系数中最重要的一个是DC系数820。
一般地说,该重要性趋势也可以对应于在系数幅值方面的趋势,因为DC系数的幅值在从一块采样得出的一组系数内倾向于为最大的。图15示意性地示出了图14的阵列内这样的趋势,其中,较小的值倾向于朝向阵列的右下方并且较大的值倾向于朝向阵列的左上方。当然,系数的具体单独的阵列可能与该一般趋势不同。
以上讨论的趋势是技术相关的一种方法涉及图5中的熵编码器370执行的熵编码阶段。应用于这类熵编码的一般原理是通过在处理较大的幅度数据值之前处理块内较小的幅度数据值而更有效地操作。因此,在频率分离的系数经受熵编码(是否使用介入量化阶段)的情况下,所谓的“反向扫描”模式被用于选择合适顺序的数据进行熵编码。图16示意性地示出了反向扫描的实例。该实例涉及所谓的反向对角线扫描,根据示出的对角线扫描模式,反向对角线扫描以系数的阵列的右下角中的系数840开始并且前进到DC系数820。一般来说,这个模式意味著在较大的价值系数之前编码较小的价值系数。这是熵编码器在第二模式中能操作以应用始于对应于最高频率分量的位置的阵列位置并且终于对应于最低频率分量的位置的阵列位置的处理顺序的实例。
处理系数的顺序还与所谓的速率失真优化量化(RDOQ)处理有关。为了对此进行说明,首先将描述量化处理的某些方面,并且然后将描述RDOQ***。
在实施方式中,量化被应用为根据以下式由从可应用于该块Qp的量化参数得出的量化除数qStep除以变换单元(TU)中的系数幅值(分开保存系数符号):
qStep=baseQStep[Qp%6]<<int(Qp/6)
在此,百分比符号%表示模函数,因此A%B等于A除以B时的余数。<<符号表示向左比特移位<<符号之后给出的值,因此,例如,<<3表示向左移动三个位位置。变量baseQStep是指数的函数,在0和5之间变化,由Qp%6表示。因此,根据相关指数Qp%6应用(潜在)不同的baseQStep值。函数int表示整数值。
为了便于计算,在编码器的一些实施方式中预先计算baseQStep的倒数,并且向左移位很多位,诸如,14位,移至inverseQStep的给定值,该值然后乘以系数幅值。这样做的原因是在除了除运算以外的一些布置中乘法运算更容易实现。
这给出了如下的结合运算:
输出=((输入×inverseQStep)+取整)>>q位
其中q位=14+int(Qp/6)+transformShift
这里,transformShift表示通过DCT处理施加的任何附加移位的补偿。
在一些实施方式中,所谓的缩放列表用作进一步改变可适用于TU中不同的系数的量化的程度的机制。每个系数位置与缩放列表中的相应条目相关联。缩放列表值被用于改变量化除数。在一些实施方式中,小数16的缩放列表值对应于无变化,也就是说其使除数保持不变。在一些实施方式中,缩放列表值用于修改在以上等式中使用的值,使得:
inverseQStep=(inverseQStep<<4)/缩放列表值
以上引入了变量“取整”。在向右移位q位之前,增加值以取整最终结果。可通过很多方法应用取整。图17a至图17c示意性地示出了示例性取整技术。应注意,这些示图示出了典型的0.5取整点,但可以使用其他取整点。图17a示意性地示出了所谓的正取整,其中,在两个整数之间的值被取整为两个相邻整数中较大的一个。图17b示意性地示出了所谓的无穷取整,其中,在两个整数之间的值被取整为更高的幅值中最接近的整数。图17c示意性地示出了所谓的偶数取整,其中,在两个整数之间的值被取整为最接近的偶整数。应注意,在HEVC***的实施方式中不使用偶数取整。
这些都是传统取整的所有实例。作为备选方案,可以使用RDOQ。这是基于成本函数的估计选择取整定制的技术,从而目的是实现选择取整的最低成本,其中,成本随着使用该取整方式得出的误差以及对根据该取整方式取整的数据进行编码所需的比特的数目而定。
图18示意性地示出了包括执行如下描述的各种取整定制的测试的测试器850的RDOQ装置,以及选择提供最低成本函数的取整方式的选择器860。应注意,实际上,可以通过控制器345执行这些函数。图19a和图19b示意性地示出了图18的装置的操作并且将描述如下。
如前所述,可以使用RDOQ代替传统的取整,使得这里描述的RDOQ技术和装置可以实现为量化器350的一部分,可能在控制器345的控制下,以根据该量化器350的RDOQ提供操作。TU的步骤如下:
对于幅值X的每个量化系数,候选整数确定为如下:
如果(X%1)>0.5,X1=int(X)且X2=int(X)+1,
X1=int(X)-1且X2=int(X),否则
如果X2小于3,提供第三候选项X0。X0具有0的值。
如果X小于0.5,选择X0。否则,对于每个候选整数,计算X的真值中的绝对误差(误差(Xi)),估计对候选项进行编码所需的比特的数目,并且每个候选项Xi的成本函数计算为:
cost(Xi)=((error(Xi)<<q位)2×errorScale)+(bits(Xi)×lambda)
这里errorScale是应用为对均方误差的加权的比例因子,以及lambda是应用为对位数的估计的加权的比例因子。
选择具有最低成本的候选项。这提供了控制由量化器从两个或更多个候选项取整运算(roundingoperation)中选择取整运算的实例。
图19a和图19b示意性地示出了在X1=3并且X2=4的情况下(图19a)以及在X1=2并且X2=3的情况下(图19)的误差值的实例。在这些示例性图示中,仅从减少误差的角度看X2显然是更好的选择,但如果X1进行编码所需的比特X2所需的少,那么总的说来X1实际上是更好的选择。通过计算成本函数确定该选择。
对于TU中的每组系数,对所有系数被量化为0的情况计算成本。如果这低于编码群组的总成本,用0代替所有的16个系数。
用反向扫描顺序扫描TU,从而对应于如上讨论的熵编码的顺序。对于每个系数X,计算使X作为TU中的最后非零系数的成本C。选择具有最低成本C的系数XL为最后一个。包括检查使得XL不能在幅值大于1的任何系数之前(按扫描顺序)。
图20示意性地示出了编码器的部分并且表示图5的变换单元340的操作的修改。应注意,将为逆变换单元430提供相应的修改。
提供选择器900以在三个工作模式之间进行选择(使用示意性开关910),即,使用频率变换的模式(经由变换单元340路由数据),不采用变换的变换跳过模式,以及使用RDPCM单元342的所谓的RDPCM(残差差分脉冲编码调制)模式,选择器实际上可以实现为控制器345的功能的一部分。由输出复用器920合并已被三个路由中的任一个处理的数据。应注意,选择器900还可以控制熵编码器370的操作的部分;下面将进一步讨论该特征。还应注意在所谓的变换-量化旁路模式中可以省去变换操作,其中,既不应用变换也不应用量化操作。
图21和图22示意性地示出了RDPCM操作。该操作应用于残差数据330的块,在图21中示意性地示出它的实例。在图21中,使用4×4样本的示例性块,但该技术可适用于其他块大小。给出了块中的每个样本的从A到P的唯一的字面参考以便可以在图22中示出RDPCM处理的效果。
可以在水平(从左到右)意义或垂直(从上到下)意义上应用RDPCM。图22示意性地示出了水平RDPCM处理,但是将理解的是相同的技术可适用于垂直处理。
参考图22,通过编码处理样本的左侧栏(A、E、I、M)保持不变。在这之后,根据该样本与其左边的样本的重构版本之间的差异对沿着行的每个相继样本进行编码。这里,术语“重构”是指在已被编码并且然后解码之后的样本的值(因此编码和解码两者均相对于适用于解码器的数据工作)。星号(*)用于表示样本的重构版本使得例如B*表示样本B的重构版本。所以,通过值(B-A*)对样本B进行编码,通过值(K-J*)等对样本K进行编码。
RDPCM编码可以用于图像内编码或图像间编码。在HEVC***的实例中,在图像内编码中,在水平预测模式中使用水平RDPCM,进而确定扫描顺序为反向垂直扫描,并且在垂直预测模式中使用垂直RDPCM,进而再次确定扫描顺序为反向水平扫描。在图像间编码中,可以选择水平或垂直RDPCM(例如,响应于成本函数的计算通过在345中进行控制)并且扫描模式总是为反向对角线。
图23a和图23b示意性地示出了RDPCM编码数据阵列中的趋势。具体地,图23a涉及水平RDPCM编码,并且示意性地示出了数据的左侧栏930保持不变进行编码(因此可具有任意值),并且然后由于它们仅表示差值数量剩余的数据易于具有较低值的事实。图23b示意性地示出了垂直RDPCM编码的情况,其中,最上面的一行940数据值保持不变地编码,而剩余的数据值由趋向于在幅值上更低的差值来表示。
RDPCM数据的显著的方面涉及编码的数据项对先前编码数据项的依赖性。具体地,没有紧挨着的左侧栏的重构值不能够对水平RDPCM中的每列样本编码或解码,并且没有紧挨着以上行的样本的重构值不能够对垂直RDPCM中的每行样本编码或解码。因此,虽然不必对编码器或解码器的操作的许多方面进行限制,但应认识到在本实施方式中这种依赖性实际上能够防止成功使用以上讨论的RDOQ***。现在将描述这样的原因。
RDOQ依赖于使用与通过熵编码功能所应用的扫描顺序相同的扫描顺序遍及数据块的扫描操作。假定使用传统反向扫描方向,这将暗示RDOQ处理将需要访问还不可用的数据值,因为每个数据值在阵列中的向左方(在水平RDPCM的情况下)或朝上(在垂直RDPCM的情况下)具有相关性链标题。
这个问题的一个解决方案似乎可能就是逆转执行RDPCM操作的顺序,使得垂直RDPCM操作从底部行开始并且向上进行,并且水平RDPCM操作从最右栏开始并且向左工作。然而,这样的布置并不被认为是期望的,尤其在图像内预测数据的情况下,其中样本的左栏和首行被看做是最可靠的,因为它们代表最接近从其预测样本的那些参考样本的像位置的空间位置。因此,相反,提出了在熵编码顺序上的变化,进而提出了RDOQ的处理顺序。将在下面描述该变化。
图24a和图24b示意性地示出了在图像内编码的情况下垂直编码的RDPCM数据的扫描顺序的变化。具体地,图24a示意性地示出了反向水平扫描顺序,其中,按此顺序的数字1…16示出了从右底部扫描位置开始的逐行扫描位置。图24a的扫描顺序将正常应用于具有垂直预测方向的数据块。然而,如果使用RDPCM,使用从左上方的扫描位置开始的如在图24b中所示的正向水平扫描顺序。
图25a和图25b示意性地示出了水平编码的RDPCM数据的扫描顺序的变化。具体地,图25a示意性地示出了反向垂直扫描顺序,其中,按此顺序的数字1…16再次示出了从右底部扫描位置开始的逐行扫描位置。图25a的扫描顺序将正常应用于具有水平预测方向的数据块。然而,如果使用RDPCM,使用从左上方的扫描位置开始的如在图25b中所示的正向垂直扫描顺序。
图26a和图26b示意性地示出了在图像内编码的情况下图像内编码的RDPCM数据的扫描顺序的变化。具体地,图26a示意性地示出了反向对角扫描顺序,其中,按此顺序的数字1…16示出了从右底部扫描位置开始的逐行扫描位置。图26a的扫描顺序将正常应用于使用图像内编码的数据块。然而,如果使用RDPCM,使用从左上方的扫描位置开始的如在图26b中所示的正向对角扫描顺序。
在图24b、图25b以及图26b中示出的所有的扫描顺序的共同特征是对于在正向扫描顺序内的任何扫描位置,已被RDPCM***编码和解码的先前扫描数据值(由扫描顺序中较小的数字表示的)总是可用的。换言之,对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。因此,当使用RDPCM时通过使用正向扫描顺序而不是反向扫描顺序,即使使用RDPCM数据RDOQ仍然能够操作。
图27是示出了处理方法的示意性流程图,处理方法包括在步骤1000中编码数据块的测试步骤,该步骤包括使用如上所述的RDPCM码和正向扫描顺序,在步骤1010中应用RDOQ处理,以及在步骤1020中,使用由RDOQ处理选择的编码定制对块进行编码。换言之,与DPCM编码数据(诸如,RDPCM数据,或者在可替换的实施方式中可以使用其他类型的DPCM数据,即,其中DPCM被用于编码除了残差值以外的数据)一起使用RDOQ。在实施方式中,RDOQ可以用于帧内编码而非用于帧间编码(或者块内复制编码,参见下文)数据。因此,这提供了用于编码输入视频数据值的阵列的视频数据编码方法的实例,该方法包括:将差分脉冲编码调制(DPCM)操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;量化从DPCM数据值得出的数据;以及控制由量化器从两个或更多候选项取整运算中对取整运算的选择。
图28示意性地示出对应于在图20中示意性地示出的编码器的一部分的解码器的一部分(或者编码器的解码路径)。控制器345确定控制示意性开关1100从而将数据路由至RDPCM解码器1110、至旁路由1120或者至逆变换单元430。转发从这些路由中的任何一个得到的数据以用于由复用器1130进行进一步处理。
用虚线示出逆量化器420,因为在变换-量化旁路模式中可以从处理链(在控制器345的控制下)中省去该逆量化器。
应注意在图20和图28中,控制操作不仅应用于开关910、1100而且还应用于熵编码器和解码器操作。这是因为当选择RDPCM模式时,熵编码和解码使用的扫描顺序是与正常的反向扫描顺序相反的正向扫描顺序。
以上描述的技术涉及熵编码(和解码)扫描顺序与使用RDPCM编码之间的关系。技术可适用于RDPCM模式,包括(但不限于)所谓的变换跳过模式和变换-量化旁路(省去频率变换和量化)模式。
在一些实例中,可以在编码和解码过程中使用称为“旋转”或者重新排序的操作。
旋转是指数据值的方形阵列中的数据值绕该阵列的几何中心旋转180°的操作。因此,例如,在以上讨论的4×4阵列的类型的情况下,具有如下排序方案:从左上角处的数字1,进而沿着每行从左到右进行进一直到右下角处的16,180°旋转的轴将会在阵列的几何中心,也就是说最初编号为6、7、10和11的阵列元件之间的汇合处。180°旋转将会使每个阵列数据值与从该阵列元件旋转地转移180°的另一阵列数据值进行交换。例如,编号为1和16的阵列数据值互相交换;那些编号为2和15的数字互相交换;等等。因此应当理解的是旋转操作是无损的而且完全可逆。
已提出在一些之前提出的编码器和解码器中使用旋转。(应注意,如果在编码器侧使用旋转,还必须在解码器侧和编码器的解码器路径中使用;如果在编码器侧不使用旋转,则在解码器侧或在编码器的解码器路径不应当使用旋转)。具体地,可以选择旋转用在变换跳过块上。在一些先前提出的***中旋转可用于(尽管不是强制性的)变换跳过模块的原因如下。熵编码处理被布置为“向后”扫描,也就是说熵编码从块的右下区域向块的左上区域操作。这是基于如果从较小的数据值开始并朝向块内较大的数据值前进熵编码操作可能会更有效的原理。然而,在变换跳过模式中,这是通过熵编码处理编码的残差数据。一般来说,当使用帧内预测时,在最接近进行预测的参考样本的像位置的块位置处,残差数据值的幅值较小(表示相应像素的更好的或更接近的预测)。在图像内编码块中,参考样本位于左侧下方并且沿着待预测的块的顶部。因此,在图像内编码块的变换跳过处理中,残差值朝向左上块可能为较小的幅值并且朝向右下块为较大的幅值。因此,在这样的变换跳过图像内编码块上使用旋转布置使得首先对较小的幅值进行熵编码处理操作可能是有利的。例如,响应于测试比特的数量和在用和不用包括在过程中的旋转步骤产生的比特差错率,例如,可以通过控制器(诸如,控制器345)选择旋转。
其中,使用频率变换器,实施方式能够在使用RDPCM编码的第一模式(诸如,变换跳过)与频率变换器可操作以应用频率变换代替应用RDPCM操作的RDPCM编码器的第二模式下操作。
如果选择旋转,在输出数据流中可以标记出它的使用使得解码器可以响应检测这样的标记选择旋转。
在先前提出的***中,旋转不是必须的并且选择在编码和解码路径内旋转完全独立于在编码器处使用RDPCM的任何决定。在这些先前提出的***中,旋转仅用于图像内编码4×4块。对于比这个大的块,不使用旋转。
现在将讨论与本技术的实施方式有关的使用旋转以及其他特征时的变化。最初在图29至图31中总结了这些,这是指示编码器和/或解码器的操作的方面的示意性流程图,并且然后下面将更详细地进行描述。
图29涉及应用旋转的情况。如果在示意性步骤1200中,RDPCM或CDPCM(系数差分脉冲编码调制,参见下文)正处于在变换跳过块的使用中,那么在步骤1210中总是使用旋转。应注意,这与先前提出的布置相反,在先前提出的布置中,(a)旋转的使用完全是可选择的以及(b)旋转的选择与DPCM模式的选择无关。应注意,RDPCM和CDPCM布置是DPCM布置的实例。
图30涉及逆RDPCM或CDPCM操作的方面,即,在解码器处或在编码器的解码路径中执行的操作。其中,使用这样的操作(由示意性步骤1220指出的),还在示意性步骤1230中执行剪取操作从而从逆RDPCM或CDPCM操作中将输出数据剪取至表示通过操作1220生成的合适的或者可接受的有效数据的范围的数值范围(例如,多个位数),或者如果(例如)一个或多个输出RDPCM数据值在可接受的数值范围之外有选择地终止RDPCM解码操作。下面将描述可应用于本公开的实施方式的位数。
在一些实施方式中,不是从逆RDPCM操作中剪取输出数据,如果一个或多个RDPCM解码数据值在这样的数据的可接受数值范围之外,可以结束逆RDPCM操作。例如,可以逐块(逐个阵列)的方式应用该特征,例如,以逐个TU的方式,使得如果有的话,一个解码RDPCM值在这样的数据的可接受的数值范围之外,那么该块的逆RDPCM操作终止并且归零,***其他预定值或误差码代替解码数据。由于RDPCM/逆RDPCM操作如同在一个块与另一块之间独立,下一块可以重新开始解码。在其他实施方式中,如果至少阈值数(例如,2)解码数据值在可接受范围之外,可以应用终止操作。阈值可根据块的大小变化(例如,根据预定查询表)。
在该上下文中终止操作可指(例如)以下中的一个或多个:解码功能的停止操作、输出错误消息、丢弃TU、编码单位、图像片段、图像区域或者出现这样的错误的图像的解码值(即,解码的RDPCM数据超过可接受的数值范围),或者数据导致尝试解码除了可接受的数值范围之外的数据的的问题的事实的任何其他表示(诸如,上述那些)。
可以在数据流中限定可接受的数值范围或者,在一些实施方式中,可以根据与以下中的一个或多个的预定关系限定可接受的数值范围:视频数据和/或内部处理的块长度和位深度。
图31涉及可应用于图像内编码的RDPCM或CDPCMTU的扫描顺序(在熵编码和解码阶段)。在先前提出的布置中,根据反向对角线扫描顺序对图像内编码的TU进行熵编码。然而,在本技术的实施方式中,如果对(在示意性步骤1240中)图像内编码的RDPCM或CDPCMTU进行处理,那么在示意性步骤1250中,在熵编码和解码阶段使用水平或垂直扫描模式。下面将描述合适的扫描模式的更多细节。
如果旋转引入到编码器或者解码器,则在图32和图33中示出根据先前提出的布置的结果。现在将对此进行描述以便利用这些布置示出潜在的问题。其中这些图的部分或特征对应于先前描述的图的标识编号部分,将不会再详细地描述那些部分或特征。
图32示意性地示出了对于图像内编码块操作的先前提出的编码器和/或解码器的一部分。如前所述,该布置中的很多方面与图5中示出的相似。RDPCM编码器1300将编码数据提供至旋转(重排)单元1310。在此,对于4×4变换跳过和变换-量化旁路TU执行旋转操作(1310)。示出了变换340和量化350单元,但预期这些中的一个或多个在变换跳过模式(其中,不使用变换单元340)或不使用任何单元的变换-量化旁路模式中旁路掉。单个单元(标记为360、370、400、410)指示扫描以及熵编码和解码的操作。示出了可选择的逆量化逆变换单元,并且数据然后被传送至反向旋转单元1320,该反向旋转单元将原始顺序作为逆运算恢复到旋转单元1310提供的顺序。最后,逆RDPCM单元(解码器)1330对RDPCM编码器1300执行逆运算。应注意,如上所述,RDPCM编码器1300需要来自解码器1330的解码残差值以便对差值进行编码。
图33示意性地示出了对于图像间编码块操作的先前提出的编码器和/或解码器的一部分。在此,对于4×4变换跳过和变换-量化旁路TU再一次执行旋转操作(1310)。否则,单元以类似的方式操作但与图32相比排序稍有不同。
利用这些先前提出的布置存在很多观察到的问题。
第一个问题涉及图像内与图像间编码块的不同配置的使用。该先前提出的布置的能察觉的优势是图像间编码路径得益于提高准确性的不同排序。这还得益于缩短的编码器反馈路径。然而,路径间和路径内之间的差异是不受欢迎的:在编码器的RDPCM间之前使用旋转是异常的。确实,而不是RDPCM处理(对残差信号进行操作),实际上,由于在编码器中变换跳过之后应用帧间编码路径,帧间编码路径应当被认为是“系数DPCM”(CDPCM)过程(即使不使用变换)。
第二个问题涉及不能应用RDOQ。如上所述,在该先前提出的布置中-以正向扫描顺序应用差分编码,速率失真优化量化(RDOQ)算法不能够应用于图像间编码情况,而熵编码器(哪个RDOQ模型)将会以反向扫描顺序处理系数。但是只要使用旋转(并且然后因此只要4×4变换跳过TU),RDOQ实际上可以用于帧内情况。
第三个问题涉及在图像间或图像内编码中逆DPCM处理的数值限制。位流是受限制的因为其可能不包含大小大于‘MTDR+1’符号位(通常16位)。MTDR是表示变换处理的最大动态范围的***变量,但在该上下文中其表示数据的合适或允许数值范围的幅值。唯一另外的剪取是在逆量化器是输出处(又一次,剪取至非变换量化旁路TU的‘MTDR+1’符号位)以及当形成重构值时。在图32的帧内编码配置中,这意味着逆RDPCM的输入的大小可以是‘MTDR+1’符号位,即使实际上值应当为残差系数的顺序,或者大小为‘n+1’符号位。此外,逆RDPCM模块利用累加值,并且因此理论上,在样本中,输出(和累加值)的位数可以和输入RDPCM数据+log2(大小)位的位深度(其中,“大小”表示块大小的线性尺寸)一样多(因此4×4块将会具有4的大小)。对于32×32TU,这可以是比输入大5位,这可和21位(符号)差不多。
第四个问题涉及对平行化的限制。当所谓的样本自适应帧内预测技术最初被推荐为HEVC***中的工具时,由于处理仅应用于无损的块,平行化就简单了。编码器容易在源残差数据之间产生差异;与RDPCM的方向(即,水平RDPCM)相反,解码器容易一列一列的或者一行一行地产生积聚,数据可以一列一列地处理。然而,应注意直到对左上系数进行解码之前块不能开始解码,这是因为顺序是反向扫描,要最后对块进行解码。因此,需要暂时保持TU的缓冲器。要不是图32中示出的RDPCM***,能够实现的平行的量是受限的。再一次,对于水平RDPCM布置,编码器能够一列一列地处理数据列。然而,如前所述,解码器必须等到对左上系数进行解码;对于4×4块或者当停止旋转时这将会是TU中的最后一个。此外,对于帧间处理,扫描顺序总是是对角线的,并且因此不会以合适的顺序对系数进行解码。对于利用旋转的4×4帧内编码块,对于水平RDPCM,由熵解码器以合适的顺序对系数进行解码,一列一列地对系数进行解码,因为指示使用水平RDPCM的帧内预测方向还指示使用垂直扫描顺序。与旋转结合意味着解码的第一组值实际上是第一列,并且因此可以毫不延迟地一列一列地对RDPCM进行处理。
可以通过结合以上参考图29至图31描述的一个或多个技术,使用图34和图35的所谓统一的布置减轻这些问题。再一次,其中块或特征对应于较早讨论的那些,不会再次详细地对它们进行描述。
在一些实施方式中,可至少对帧内编码数据(表示使用一组编码模式(例如,组是帧内、帧间、以及块内复制编码)的子集而不是相对使用组中的不在子集中的编码模式编码的数据使用RDOQ)使用RDOQ,并且可选地对帧间编码数据使用RDOQ。在实施方式中,旋转用于或者可以用于采用RDOQ的布置中。在一些实施方式中,帧内编码数据而不是帧间编码数据能够进行旋转。因此,如下所述的布置能够提供能视频数据编码装置的实例,该视频数据编码装置操作以编码输入视频数据值的阵列,装置包括:差分脉冲编码调制(DPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;量化器,能操作以量化从DPCM数据值得出的数据;以及控制器,控制由量化器从两个或更多候选项取整运算中对取整运算的选择。控制器可以是速率失真优化量化控制器。如上所述,在提供使用数据重排单元的实例的情况下,也可以使用旋转,该数据重排单元被配置为将重排操作应用于输入到DPCM编码器或从DPCM编码器输出的数据的阵列。重排操作可以是例如数据阵列中的数据值绕阵列中的点在某一位置旋转的旋转操作。对于图像内编码视频数据值可以操作控制器但对于图像间编码数据值可以停止控制器。
在一些实施方式中,使用或者可以使用所谓的块内复制(IBC)编码。这表示帧间编码和帧内编码的混合,因此根据在某些方面可被认为与运动矢量相似的位移,通过在相同图像内从另一位置复制另一块产生块。在一些实施方式中,从是否使用旋转和RDOQ的观点来看,用和图像内编码一样的方式处理IBC模式。换言之,在一些实施方式中,IBC块不能旋转。因此,在一些实施方式中,RDOQ和旋转可用于采用可用组的预测类型的子集的DPCM,子集的一个实例是图像内编码(该组剩余的非子集成员可以是例如图像内编码和/或块内复制编码)。
图34示意性地示出了关于图像内编码块操作的编码器和/或解码器的一部分。
该布置的目的是统一帧间和帧内的情况,以总是为编码器提供对于变换跳过情况应用RDOQ以及改善系数的处理顺序的选择从而增大平行化并且减少缓冲器使用。如在图34和图35中描述的,这可用两个方式中的一种来实现(作为实例)。因此,在图34和图35中示出的布置均可以将RDOQ以及DPCM用在至少某些编码模式上。
在这些配置中,在DPCM模块允许使用RDOQ之后总是应用旋转,现在对系数进行编码的顺序有效地从左上部总是到右底部(水平、垂直或对角线扫描),这是RDPCM能够产生系数的顺序。
因此,提供视频数据编码装置(和相应的方法)的实例,该视频数据编码装置能操作为编码输入视频数据值的阵列,装置包括:差分脉冲编码调制(DPCM)编码器(诸如,编码器1300或1300’),被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列,诸如提供至图34的装置的残差数据,以生成DPCM数据值的阵列;量化器,诸如,量化器350,能操作为量化从DPCM数据值得出的数据;以及控制器(例如,通过量化器350和/或控制器345实现),控制从由量化器两个或更多候选项取整运算中对取整运算的选择,即,仅仅是举例来说,以RDOQ模式操作。因此,这样的布置提供了其中RDOQ用于DPCM编码的编码装置,并且实际上本公开的实施方式的特征有助于使编码器能够在这种情况下选择RDOQ。对输入至DPCM编码器或从DPCM编码器输出的数据的阵列的诸如旋转操作的重排操作(例如,数据的阵列中的数据值绕阵列中的点在适当的位置旋转)可按如以上讨论使用。这些技术可与这里描述的其他技术相结合。
此外,为了简化RDPCM内系数的处理,RDPCM内系数的编码不再被迫使用对角线扫描,但是改为对水平内部RDPCM使用的垂直扫描,以及对垂直内部RPCDM实用水平扫描(与内部行为相似)。
此外,为了防止逆RDPCM模块中的累加值过度大,使用剪取操作。
如果需要的话,将RDPCM应用于残差,那么如果应用RDPCM则旋转TU,或者如果SPS标记指示这样的变换跳过/变换-量化旁路TU应当旋转(SPS用于先前提出的***中作为指示是否应当应用旋转的标记;在先前提出的***中,只有对4×4变换跳过或者变换-量化旁路TU旋转才可用)。按这样看,变换(或者以变换跳过模式支路变换)并且量化TU。在逆RDPCM模块中的RDPCM值的累积期间可应用剪取(根据以上讨论的步骤1230),将累加值和下游值(逆RDPCM模块的输出)仅限制为n+1符号位。应注意,可在量化之后应用旋转,或者甚至可被认为是熵编码器中扫描顺序的变化,从而有效地以正向顺序而不是反向来扫描。
因此,图34提供了视频数据编码装置(及相应的方法)的实例,视频数据编码装置能操作为编码输入视频数据值的阵列,装置包括残差差分脉冲编码调制(RDPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以产生RDPCM数据值的阵列;以及熵编码器,相对于RDPCM数据值的阵列能操作为按处理顺序对RDPCM数据进行熵编码,使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。这些技术可应用于帧间编码数据(inter-encodeddata),其中:输入视频数据值的阵列包括作为在当前图像的相应视频样本与那些视频样本的预测版本之间的差异产生的残差值的阵列,预测版本源自除当前图像以外的一个或多个图像;对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序的任何RDPCM数据值,DPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。技术也可应用于输入视频数据值的阵列包括作为当前图像的相应视频样本与那些视频样本的预测版本之间的差异产生的残差值的阵列的帧内编码数据(intra-encodeddata),预测版本源自当前图像;并且对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。在帧内编码数据中,预测版本源自与相应视频样本的图像位置相邻的参考区域中的一个或多个参考像素。可替换地,有时称为块内复制,预测版本源自由一个或多个运动矢量相对于相应视频样本的图像位置限定的参考区域(在当前图像中)的一个或多个参考像素。
图35示意性地示出了在先应用变换的情况下关于图像内编码块操作的编码器和/或解码器操作的一部分。因此,操作称为CDPCM而不是RDPCM,但原理是一样的。具体地,在本应用中讨论的与RDPCM结合的技术可以与CDPCM结合使用,并且实际上对RDPCM和CDPCM的引用应当被认为是DPCM***的可互换的实例,不同之处不在于两个技术的技术特征,但这仅就处理顺序内应用RDPCM操作的位置而言。
首先变换TU(或者应用变换跳过),然后由CDPCM编码器1300’(如果需要的话)应用CDPCM,然后旋转TU(再一次,只要应用CDPCM,或者如果SPS标记表示这样的变换跳过/变换量化旁路TU应当旋转)并且量化。再次,在逆CDPCM模块1330’中的CDPCM值的累积期间可应用剪取,从而将累加值和下游值限制为仅MTDR+1符号位。应注意,可在量化之后应用旋转,或者甚至可被认为是熵编码器中扫描顺序的变化,从而有效地以正向顺序而不是反向来扫描。
在某个限制情况下,在一些以上布置中,在DPCM处理之后应用旋转过程会导致潜在的困难。这样的情况的实例是块通常是简单的,即块包括彼此相似的值(应注意在RDPCM中值是如上所讨论的残差数据的值)。另一种表示块中的这种“简单”的方式是说块通常包括DC值。在此,这个术语表示虽然块内可能存在某些变化,但块的大部分内容可用单个值(如果使用频率变换,则对应于DC系数)来表示,且仅微小的和低空间频率在该DC值左右变化。
图36示意性地示出这样的dc值的块。事实上,在图36中,所有的值都是相同的(值x)。在假设的块中具有完全相同的值对本讨论是有用的,但将理解的是类似的特性应用于彼此相似的块内的值的集合。
图37a示意性地示出了在水平DPCM处理之后图36的块。如上所述,对于每行值,发送第一值并且然后由该值与先前值的重构版本之间的差值表示剩余值。这产生了图37a中示出的x和0的模式。应注意,如果图36中块的初始值不相同,将会获得与图37a中示出的类似模式,但代替零是是,在那些块位置中将存在小的数。
图37b示意性地示出了在旋转操作之后图37a的块。不期望地,非零值(x)已旋转至块中的最靠右栏。从熵编码的观看点,这不是合适结果,如上所述,如果发现待编码的值数据朝向左顶块越高效率越高。如果块还没有旋转,将会满足该条件,但在DPCM操作之后执行旋转操作,这个条件中断。
图38a示意性地示出了在垂直DPCM处理之后图36的块。除了在从顶部开始的每一列总是向下进行编码使得在图38a的块的首行内发现非零值x的情况下以外,结果与图37a示出的类似。
图38b示意性地示出了在旋转操作之后图38a的块。再一次,旋转操作使非零值向着块的右下部分移动,从接下来的熵编码处理的效率的观点来看这是不好的结果。
应注意,经常适于编码这种类型的平块的编码类型是所谓的块内复制编码。这表示帧间编码和帧内编码的混合,因此根据在某些方面可被认为与运动矢量相似的位移,通过在相同图像内从另一位置复制另一块产生块。
还应注意在旋转标记的控制下先前讨论的旋转操作。旋转标记启用或禁用所有变换跳过(TS)和变换-量化旁路(TQB)块的旋转,与是否使用DPCM无关,并且与块是否是间块复制编码或块内复制编码无关。
现在将讨论各种选项以减轻这个问题。
一个可能性是改变旋转标记的性质使得多个标记设置为表示是否以各种不同的编码模式启用或禁用旋转。标记集合的一个实例在以下表中示意性地示出。
将理解的是标记的顺序以及特定极性是否表示启用或禁止旋转的问题是对基础技术来说不重要的细节。
例如,在顺序级别参数设置(SPS)中,或者在其他实施方式中,在图片级参数设置(PPS)、片标头设置(PPS)、片标头、编码单元标头或处理单元标头中可以发送标记。
标记的作用是设置启用旋转的一组参数以及不启用旋转的一组参数。然后,对于特定TU,控制器345可以将与该TU有关的实际参数与标记设置的参数相比较,以便确定旋转是否应当用于该TU。在解码器和编码器处进行类似的操作。应注意,编码器侧,可能不会产生实际的标记直至输出数据流会合,还是同样将那些标记所基于的参数用于在对于是否应当使用旋转的判定过程中。
图39示意性地示出编码器的操作的部分。在步骤1500中,控制器345检测(或者实际上设置)以上表中的标记将基于的参数的设置。对于特定TU,在步骤1510中,控制器345将参数的设置与该TU的参数进行比较,以便做出关于TU启用或停用旋转的决定(在步骤1520中)。
图40示意性地示出解码器的操作的一部分。在步骤1530中,控制器345例如从输入数据流中检测标记的设置。关于特定TU,在步骤1540中,控制器345将标记表示的参数与该特定TU的参数进行比较,以便做出关于TU启用或停用旋转的决定(在步骤1550中)。
应注意,不是需要使用所有的标记;可以采用子集。例如,标记5-8控制帧内编码的旋转,并且可以形成在具体实施方式中使用的标记的子集。子集的另一实例可以是在不使用DPCM时控制帧内编码的旋转的标记7和8。因此,标记的一些示例性子集包括:
·标记1-4;
·标记3-4;
·标记5-8;
·标记7-8;
·标记9-12;
·标记11-12。
此外,在某些方面可以假设默认值。例如,可以具体地控制标记中的某一个,这将会得到这样的推断,即,以特定的方式(根据预定参数)设置其他标记。例如,如果在SPS中发出标记7和8组合的信号,那么根据一组预先确定的规则可以推断另一标记是0或1。
还应注意这些标记中的多个标记可由除当前旋转标记以外的单个更复杂的标记来表示。例如,可以考虑到单个“旋转”标记可以有一个以上的以上标记的含义。单个标记(或者标记的小子集中的一个)的实例可以表示“除了IBC块以外,使用其中使用DPCM的所有的TS/TQB块的旋转”。
这些是(或者,在解码器处,检测)使两个或更多个标记与编码数据相关联的所有的实例,两个或更多个标记定义相对于编码(解码)参数的两个或更多个相应排列(permutation,置换)是否应当应用数据重排操作。在实施方式中,编码参数可以包括以下中的一些或全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用RDPCM操作;以及
是否使用变换跳过或者变换-量化旁路模式。
可以与以上技术结合或代替以上技术使用的另一个选项是采用改变在处理顺序内旋转操作的位置的标记。
图41a和图41b示意性地示出处理顺序的变化。这些涉及以上关于图32至图35讨论的布置,并且故意示出了只有两个方面的处理操作,即,旋转过程1600和一般的DPCM处理1610。在一些实施方式中,如上所述,这些模式(与RDOQ)一同用于帧内编码块而不是帧间编码或块内复制块。由表示(潜在至少)其他过程可以优先或在它们之后的虚线连接这些过程,并且其他过程可以布置两者之间。在编码器和解码器处预先确定两个选项。在图41a中,DPCM处理在旋转过程之前。在图41b中,DPCM处理遵循旋转过程。如在编码器与解码器之间,可以采用单个标记发信通知,应当使用这两个选项中的哪个:
标记=0 旋转在DPCM之前
标记=1 旋转在DPCM之后
可由控制器345根据测试编码结果和/或根据在编码器处预先确定的规则和/或根据用户设置对关于要使用这些标记中的哪个以及如何设置在先前的表中讨论的较大组的标记做出判定。这是(或者,在解码器处,检测)使表示数据重排操作应用于已进行RDPCM编码的数据还是要进行RDPCM编码的数据的标记与编码数据相关联的实例。
数据信号
应理解其由以上讨论的编码装置的变形所产生的数据信号以及携载此类信号的存储器或传输介质被视为代表本公开的实施方式。
在到目前为止已被描述为通过软件控制的数据处理装置实施(至少部分)的本公开的实施方式中,应当理解,诸如光盘、磁盘、半导体存储器等承载这样的软件的非瞬时性机器可读介质也被认为是表示本公开的实施方式。
显而易见的是,按照上述教导,本发明的大量修改和变化是可以的。因此应了解在所附权利要求的范围内,此技术可被实行以如文中所明确描述者之外的方式。
以上描述的全部技术应用于编码装置和方法,和/或解码装置和方法。所讨论的关于编码的技术在解码侧具有相应的特征。所讨论的关于解码的技术应用于编码器的解码路径。因此,将理解的是以上对技术和装置包括解码路径的编码技术和装置的说明作为解码技术和装置的实例也是相关的。
相应特征和/或本公开的实施方式由以下编号的项来定义:
1.一种视频数据编码装置,可操作为编码输入视频数据值的阵列,该装置包括:
残差差分脉冲编码调制(RDPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以产生RDPCM数据值的阵列;以及
熵编码器,可操作为相对于RDPCM数据值的阵列按处理顺序对RDPCM数据进行熵编码,使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
2.根据项1所述的装置,其中:
输入视频数据值的阵列包括作为在当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,预测版本源自除当前图像以外的一个或多个图像;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序的任何RDPCM数据值,DPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
3.根据项1或2所述的装置,其中:
输入视频数据值的阵列包括作为当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,预测版本源自当前图像;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
4.根据项3所述的装置,其中,预测版本源自与相应视频样本的图像位置相邻的参考区域中的一个或多个参考像素。
5.根据项3所述的装置,其中,预测版本源自由一个或多个运动矢量相对于相应视频样本的图像位置限定的参考区域的一个或多个参考像素。
6.根据前述项中任一项所述的装置,包括频率变换器,该装置可操作在使用RDPCM编码的第一模式以及频率变换器可操作为应用频率变换而不是应用RDPCM操作的RDPCM编码器的第二模式下。
7.根据项6所述的装置,其中:
频率变换器可操作在第二模式下以生成频率变换数据的阵列;以及
熵编码器可操作在第二模式下以应用始于对应于最高频率分量的位置的阵列位置并且终于对应于最低频率分量的位置的阵列位置的处理顺序。
8.根据项7所述的装置,包括数据重排单元,数据重排单元被配置为将重排操作应用于数据阵列。
9.根据项8所述的装置,其中,数据重排操作是块内的数据值绕块的中心旋转180°的旋转操作。
10.根据项8或项9所述的装置,其中:
第一模式是不使用频率变换的变换跳过模式;并且
数据重排单元被配置为使得总是在变换跳过模式下对RDPCM编码数据进行操作。
11.根据项8或项9所述的装置,该装置可操作为使两个或更多个标记与编码数据相关联,两个或更多个标记定义相对于编码参数的两个或更多个相应排列是否应当应用数据重排操作。
12.根据项11所述的装置,其中,编码参数包括以下中的一些或全部:
是否使用图像间模式、图像内模式或者块内复制模式;
是否使用RDPCM操作;以及
是否使用变换跳过模式或者变换-量化旁路模式。
13.根据项12所述的装置,其中,编码参数包括下列全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用RDPCM操作;以及
是否使用变换跳过模式或变换-量化旁路模式。
14.根据项8至项13中任一项所述的装置,该装置可操作为使表示数据重排操作应用于已经历RDPCM编码的数据还是待RDPCM编码的数据的标记与编码数据相关联。
15.根据前述项中任一项所述的装置,其中,对于RDPCM数据,处理顺序是水平扫描或垂直扫描处理顺序。
16.根据前述项中任一项所述的装置,该装置在解码路径中包括残差差分脉冲编码调制(RDPCM)解码器,其被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
17.根据项16所述的装置,其中RDPCM解码器可操作为将RDPCM解码数据剪取至这样的数据的可接受数值范围。
18.根据项16所述的装置,其中,如果一个或多个RDPCM解码数据值超过这样的数据的可接受数值范围,RDPCM解码器可操作为中止熵解码视频数据值的解码。
19.一种视频数据编码装置,可操作为编码图像间编码输入视频数据值的阵列,该装置包括:
残差差分脉冲编码调制(RDPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;以及
熵编码器,可操作为相对于RDPCM数据值的阵列按处理顺序对RDPCM数据进行熵编码,处理顺序是水平扫描或垂直扫描处理顺序。
20.一种视频数据编码装置,可操作为编码输入编码视频数据值的阵列,装置在解码路径中包括残差差分脉冲编码调制(RDPCM)解码器,其被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列,RDPCM解码器可操作为将RDPCM解码数据剪取至这样的数据的可接受数值范围。
21.一种视频数据编码装置,可操作为编码输入编码视频数据值的阵列,装置在解码路径中包括残差差分脉冲编码调制(RDPCM)解码器,其被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列,如果一个或多个RDPCM解码数据值在这样的数据的可接受数值范围之外,则RDPCM解码器可操作为中止输入编码数据值的阵列的解码。
22.一种视频数据编码装置,可操作为编码图像间编码输入视频数据值的阵列,该装置包括:
残差差分脉冲编码调制(RDPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;
熵编码器,可操作为对RDPCM数据进行熵编码;以及
数据重排单元,被配置为将数据重排操作应用于数据的阵列;
装置可操作为使指示数据重排操作应用于已经历RDPCM编码的数据还是待RDPCM编码的数据的标记与编码数据相关联。
23.一种视频数据编码装置,可操作为编码图像间编码输入视频数据值的阵列,该装置包括:
残差差分脉冲编码调制(RDPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;
熵编码器,能操作以对RDPCM数据进行熵编码;以及
数据重排单元,被配置为将数据重排操作应用于数据的阵列;
装置可操作为使两个或更多标记与编码数据相关联,两个或更多个标记定义相对于编码参数的两个或更多个相应排列是否应当应用数据重排操作。
24.根据前述项中任一项所述的装置,包括速率失真优化量化处理器,其可根据与由熵编码器应用的处理顺序相同的处理顺序相对于数据阵列进行操作。
25.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;
其中,熵解码器可操作为相对于RDPCM数据值的阵列按处理顺序对输入编码视频数据进行熵解码,使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
26.根据项25所述的装置,包括数据重排单元,其被配置为将重排操作应用于数据阵列。
27.根据项26所述的装置,其中,数据重排操作是块内的数据值绕块的中心旋转180°的旋转操作。
28.根据项25或项26所述的装置,装置可操作为利用编码数据检测两个或更多个标记,两个或更多个标记定义相对于编码参数的两个或更多个相应排列是否应当应用数据重排操作。
29.根据项28所述的装置,其中,编码参数包括以下中的一些或全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用RDPCM操作;以及
是否使用变换跳过或变换量化旁路模式。
30.根据项28所述的装置,其中,编码参数包括下列全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用RDPCM操作;以及
是否使用变换跳过或变换量化旁路模式。
31.根据项26至项30中任一项所述的装置,装置可操作为利用编码数据检测指示数据重排操作应用于已经历RDPCM编码的数据还是待RDPCM编码的数据的标记。
32.根据项25至31中任一项所述的装置,其中:
输入编码视频数据值的阵列包括图像间编码视频数据值的阵列;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
33.根据项25至31中任一项所述的装置,其中:
输入视频数据值的阵列包括图像内编码数据值的阵列;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
34.根据项32所述的装置,其中,处理顺序是水平扫描处理顺序或垂直扫描处理顺序。
35.根据项31所述的装置,其中RDPCM解码器可操作为将RDPCM解码数据剪取至这样的数据的可接受数值范围。
36.根据项31所述的装置,其中,如果一个或多个RDPCM解码数据值超过这样的数据的可接受数值范围,RDPCM解码器可操作为中止熵解码视频数据值的解码。
37.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列,RDPCM解码器可操作诶将RDPCM解码数据剪取至这样的数据的可接受数值范围。
38.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器,可操作为相对于输入编码视频数据值的阵列按照处理顺序对输入编码视频数据进行熵解码,处理顺序是水平扫描处理顺序或垂直扫描处理顺序;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
39.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列,如果一个或多个RDPCM解码数据值在这样的数据的可接受数值范围之外,则RDPCM解码器可操作为中止输入编码数据值的阵列的解码。
40.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;以及
数据重排单元,被配置为将重排操作应用于数据的阵列;
装置可操作为利用编码数据检测指示数据重排操作是应用于已经历RDPCM解码的数据还是待RDPCM解码的数据的标记。
41.一种视频数据解码装置,可操作为解码输入编码视频数据值的阵列,该装置包括:
熵解码器;以及
残差差分脉冲编码调制(RDPCM)解码器,被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;以及
数据重排单元,被配置为将重排操作应用于数据的阵列;
装置可操作为利用编码数据检测两个或更多个标记,两个或更多个标记限定相对于解码参数的两个或更多个相应排列是否应当应用数据重排操作。
42.一种包括根据前述项中任一项所述的装置的视频数据获取、存储、传输和/或记录装置。
43.一种用于编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将残差差分脉冲编码调制(RDPCM)操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;以及
相对于RDPCM数据值的阵列按处理顺序对RDPCM数据进行熵编码,使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性。
44.一种用于编码图像间编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将残差差分脉冲编码调制(RDPCM)操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;以及
相对于RDPCM数据值的阵列,按照处理顺序对RDPCM数据进行熵编码,处理顺序是水平扫描或垂直扫描处理顺序。
45.一种用于编码输入编码视频数据值的阵列的视频数据编码方法,所述方法包括:
在解码路径中,将残差差分脉冲编码调制(RDPCM)操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;以及
将RDPCM解码数据剪取至这样的数据的可接受数值范围。
46.一种用于编码图像间编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将残差差分脉冲编码调制(RDPCM)操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;以及
对RDPCM数据进行熵编码;以及
应用重排操作以对数据阵列进行重新排序;以及
使指示数据重排操作应用于已经历RDPCM编码的数据还是待RDPCM编码的数据的标记与编码数据相关联。
47.一种用于编码图像间编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将残差差分脉冲编码调制(RDPCM)操作应用于输入视频数据值的阵列以生成RDPCM数据值的阵列;以及
对RDPCM数据进行熵编码;以及
应用重排操作以对数据阵列进行重新排序;以及
使两个或更多个标记与编码数据相关联,两个或更多个标记限定相对于编码参数的两个或更多个相应排列是否应当应用数据重排操作。
48.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
相对于RDPCM数据值的阵列按照处理顺序对RDPCM数据进行熵解码,使得对于处理顺序中的任何RDPCM数据值,RDPCM数据值对随后在处理顺序中的RDPCM数据值没有依赖性;以及
将残差差分脉冲编码调制(RDPCM)操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
49.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
对输入编码视频数据值进行熵解码;
将残差差分脉冲编码调制(RDPCM)操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;以及
将RDPCM解码数据剪取至这样的数据的可接受数值范围。
50.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
相对于数据值的阵列,按照处理顺序对输入编码视频数据值进行熵解码,处理顺序是水平扫描处理顺序或垂直扫描处理顺序;以及
将残差差分脉冲编码调制(RDPCM)操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
51.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
对输入编码视频数据值进行熵解码;
将残差差分脉冲编码调制(RDPCM)操作应用于熵解码视频数据值以生成RDPCM数据值的阵列;以及
如果一个或多个RDPCM解码数据值在这样的数据的可接受数值范围之外,则中止输入编码数据值的阵列的解码。
52.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
对输入编码视频数据值进行熵解码;
应用残差差分脉冲编码调制(RDPCM)操作以生成RDPCM数据值的阵列;
对数据的阵列应用数据重排操作;以及
利用编码数据检测两个或更多个标记,两个或更多个标记定义相对于解码参数的两个或更多个相应排列是否应当应用数据重排操作。
53.一种用于解码输入编码视频数据值的阵列的视频数据解码方法,所述方法包括:
对输入编码视频数据值进行熵解码;
应用残差差分脉冲编码调制(RDPCM)操作以生成RDPCM数据值的阵列;
对数据阵列应用数据重排操作;以及
利用编码数据检测指示数据重排操作是应用于已经历RDPCM解码的数据还是待RDPCM解码的数据的标记。
54.一种计算机软件,其在由计算机执行时使计算机实施根据项43至53中任一项所述的方法。
55.一种非瞬时性机器可读存储介质,在所述非瞬时性机器可读存储介质上存储根据项54所述的计算机软件。
56.一种视频数据编码装置,可操作为编码输入视频数据值的阵列,所述装置包括:
差分脉冲编码调制(DPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;
量化器,可操作为量化从DPCM数据值得出的数据;以及
控制器,用于控制由量化器从两个或更多个候选取整运算中对取整运算的选择。
57.根据项56所述的装置,其中,控制器是速率失真优化量化控制器。
58.根据项56或项57所述的装置,包括数据重排单元,其被配置为将重排操作应用于输入到DPCM编码器或从DPCM编码器输出的数据的阵列。
59.根据项58所述的装置,其中,重排操作是数据阵列中的数据值绕阵列中的点在某一位置旋转的旋转操作。
60.根据权利要求56所述的装置,其中,控制器能够相对于使用一组可能的编码方式的子集来编码的数据进行操作而不能够相对于使用该组中的不在子集中的的编码方式编码的数据进行操作。
61.根据项60所述的装置,其中,子集包括图像内编码。
62.根据项60或61所述的装置,其中,组包括图像内编码、图像间编码以及块内复制编码。
63.一种包括根据项56至62中任一项所述的装置的视频数据获取、存储、传输和/或记录装置。
64.一种用于编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将差分脉冲编码调制(DPCM)操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;
量化从DPCM数据值得出的数据;以及
控制由量化器从两个或更多个候选取整运算中对取整运算的选择。
65.一种计算机软件,在由计算机执行时,使计算机实施根据项64所述的方法。
66.一种非瞬时性机器可读存储介质,在所述非瞬时性机器可读存储介质上存储根据项65所述的计算机软件。
进一步相应的特征和/或本公开的实施方式由以下编号的项来定义:
1.一种视频数据编码装置,可操作为编码输入视频数据值的阵列,所述装置包括:
差分脉冲编码调制(DPCM)编码器,被配置为将差分脉冲编码调制操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;
量化器,可操作为量化从DPCM数据值得出的数据;以及
控制器,用于控制由量化器从两个或更多个候选取整运算中对取整运算的选择。
2.根据项1所述的装置,其中,控制器是速率失真优化量化控制器。
3.根据项2所述的装置,包括数据重排单元,其被配置为将重排操作应用于输入到DPCM编码器或从DPCM编码器输出的数据的阵列。
4.根据项3所述的装置,其中,重排操作是数据阵列中的数据值绕阵列中的点在某一位置旋转的旋转操作。
5.根据前述项中任一项所述的装置,其中,控制器能够相对于使用一组可能的编码方式的子集来编码的数据进行操作而不能够相对于使用该组中的不在子集中的编码方式来编码的数据进行操作。
6.根据项5所述的装置,其中,子集包括图像内编码。
7.根据项5或项6所述的装置,其中,组包括图像内编码、图像间编码以及块内复制编码。
8.根据前述项中任一项所述的装置,包括:
熵编码器,可操作为相对于DPCM数据值的阵列按照处理顺序对DPCM数据进行熵编码,使得对于处理顺序中的任何DPCM数据值,DPCM数据值对随后在处理顺序中的DPCM数据值没有依赖性。
9.根据项8所述的装置,其中:
输入视频数据值的阵列包括作为在当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,预测版本源自除当前图像以外的一个或多个图像;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何DPCM数据值,DPCM数据值对随后在处理顺序中的DPCM数据值没有依赖性。
10.根据项8所述的装置,其中:
输入视频数据值的阵列包括作为当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,预测版本源自当前图像;并且
对于任何这样的输入视频数据值的阵列,处理顺序总是是使得对于处理顺序中的任何DPCM数据值,DPCM数据值对随后在处理顺序中的DPCM数据值没有依赖性。
11.根据项10所述的装置,其中,预测版本源自与相应视频样本的图像位置相邻的参考区域中的一个或多个参考像素。
12.根据项10所述的装置,其中,预测版本源自由一个或多个运动矢量相对于相应视频样本的图像位置限定的参考区域中的一个或多个参考像素。
13.根据项8至项12中任一项所述的装置,包括频率变换器,装置可操作在使用DPCM编码的第一模式下以及频率变换器可操作为应用频率变换而不是DPCM编码器应用DPCM操作的第二模式下。
14.根据项13所述的装置,其中:
频率变换器可操作在第二模式下以生成频率变换数据的阵列;以及
熵编码器可操作在第二模式下以应用始于对应于最高频率分量的位置的阵列位置并且终于对应于最低频率分量的位置的阵列位置的处理顺序。
15.根据项13或项14所述的装置,包括数据重排单元,其被配置为将重排操作应用于数据的阵列。
16.根据项15所述的装置,其中,数据重排操作是块内的数据值绕块的中心旋转180°的旋转操作。
17.根据项15或项16所述的装置,其中:
第一模式是不使用频率变换的变换跳过模式;并且
数据重排单元被配置为使得总是在变换跳过模式下对RDPCM编码数据进行操作。
18.根据项15或项17中任一项所述的装置,装置可操作为使两个或更多个标记与编码数据相关联,两个或更多个标记定义对于编码参数的两个或更多个相应排列是否应当应用数据重排操作。
19.根据项18所述的装置,其中,编码参数包括以下中的一些或全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用DPCM操作;以及
是否使用变换跳过或者变换-量化旁路模式。
20.根据项19所述的装置,其中,编码参数包括下列全部:
是否使用图像间模式、图像内模式或块内复制模式;
是否使用DPCM操作;以及
是否使用变换跳过或者变换-量化旁路模式。
21.根据项15至项20中任一项所述的装置,装置可操作为使指示数据重排操作是应用于已经历RDPCM编码的数据还是待RDPCM编码的数据的标记与编码数据相关联。
22.根据项8至项21中任一项所述的装置,其中,对于DPCM数据,处理顺序是水平扫描处理顺序或垂直扫描处理顺序。
23.根据项8至项22中任一项所述的装置,装置在解码路径中包括残差差分脉冲编码调制(RDPCM)解码器,其被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
24.根据项23所述的装置,其中DPCM解码器可操作为将DPCM解码数据剪取至这样的数据的可接受数值范围。
25.根据项23所述的装置,其中,如果一个或多个DPCM解码数据值超过这样的数据的可接受数值范围,则DPCM解码器可操作为中止熵解码视频数据值的解码。
26.一种包括根据前述项中任一项所述的装置的视频数据获取、存储、传输和/或记录装置。
27.一种用于编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将差分脉冲编码调制(DPCM)操作应用于输入视频数据值的阵列以生成DPCM数据值的阵列;
量化从DPCM数据值得出的数据;以及
控制由量化器从两个或更多个候选取整运算中对取整运算的选择。
28.一种计算机软件,在由计算机执行时,使计算机实施根据项27所述的方法。
29.一种非瞬时性机器可读存储介质,在所述非瞬时性机器可读存储介质上存储根据项28所述的计算机软件。

Claims (29)

1.一种视频数据编码装置,能够操作为编码输入视频数据值的阵列,所述装置包括:
差分脉冲编码调制(DPCM)编码器,被配置为将差分脉冲编码调制操作应用于所述输入视频数据值的阵列以生成DPCM数据值的阵列;
量化器,能够操作为量化从所述DPCM数据值得出的数据;以及
控制器,用于控制由所述量化器从两个或更多个候选取整运算中对取整运算的选择。
2.根据权利要求1所述的装置,其中,所述控制器是速率失真优化量化控制器。
3.根据权利要求2所述的装置,包括数据重排单元,所述数据重排单元被配置为将重排操作应用于输入至所述DPCM编码器或从所述DPCM编码器输出的数据阵列。
4.根据权利要求3所述的装置,其中,所述重排操作是数据阵列中的数据值绕阵列中的点在某一位置旋转的旋转操作。
5.根据权利要求1所述的装置,其中,所述控制器相对于使用一组可能的编码方式的子集来编码的数据是能够操作的而相对于不在所述子集中的编码方式是不能够操作的。
6.根据权利要求5所述的装置,其中,所述子集包括图像内编码。
7.根据权利要求6所述的装置,其中,所述组包括图像内编码、图像间编码以及块内复制编码。
8.根据权利要求1所述的装置,包括:
熵编码器,能够操作为相对于所述DPCM数据值的阵列按照处理顺序对所述DPCM数据值进行熵编码,使得对于所述处理顺序中的任何DPCM数据值,所述DPCM数据值对随后在所述处理顺序中的DPCM数据值没有依赖性。
9.根据权利要求8所述的装置,其中:
所述输入视频数据值的阵列包括作为当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,所述预测版本源自除所述当前图像以外的一个或多个图像;并且
对于任何这种输入视频数据值的阵列,所述处理顺序总是使得对于所述处理顺序中的任何DPCM数据值,所述DPCM数据值对随后在所述处理顺序中的DPCM数据值没有依赖性。
10.根据权利要求8所述的装置,其中:
所述输入视频数据值的阵列包括作为当前图像的相应视频样本与那些视频样本的预测版本之间的差异而产生的残差值的阵列,所述预测版本源自所述当前图像;并且
对于任何这种输入视频数据值的阵列,所述处理顺序总是使得对于所述处理顺序中的任何DPCM数据值,所述DPCM数据值对随后在所述处理顺序中的DPCM数据值没有依赖性。
11.根据权利要求10所述的装置,其中,所述预测版本源自与所述相应视频样本的图像位置相邻的参考区域中的一个或多个参考像素。
12.根据权利要求10所述的装置,其中,所述预测版本源自由一个或多个运动矢量相对于所述相应视频样本的图像位置限定的参考区域中的一个或多个参考像素。
13.根据权利要求8所述的装置,包括频率变换器,所述装置能够操作在使用DPCM编码的第一模式下以及所述频率变换器能够操作为应用频率变换代替DPCM编码器应用DPCM操作的第二模式下。
14.根据权利要求13所述的装置,其中:
所述频率变换器能够操作在第二模式下以生成频率变换数据的阵列;并且
所述熵编码器能够操作在第二模式下以应用始于与最高频率分量的阵列位置对应的阵列位置并且终于与最低频率分量的阵列位置对应的阵列位置的处理顺序。
15.根据权利要求14所述的装置,包括数据重排单元,所述数据重排单元被配置为将重排操作应用于数据阵列。
16.根据权利要求15所述的装置,其中,所述数据重排操作是块内的数据值绕块的中心旋转180o的旋转操作。
17.根据权利要求15所述的装置,其中:
所述第一模式是不使用频率变换的变换跳过模式;并且
所述数据重排单元被配置为使得总是在所述变换跳过模式下对所述DPCM编码数据进行操作。
18.根据权利要求15所述的装置,所述装置能够操作为使得两个或更多个标记与编码数据相关联,所述两个或更多个标记限定对于编码参数的两个或更多个相应排列是否应当应用所述数据重排操作。
19.根据权利要求18所述的装置,其中,所述编码参数包括以下中的一些或全部:
是否使用图像间模式、图像内模式或者块内复制模式;
是否使用DPCM操作;以及
是否使用变换跳过模式或者变换-量化旁路模式。
20.根据权利要求19所述的装置,其中,所述编码参数包括下列全部:
是否使用图像间模式、图像内模式或者块内复制模式;
是否使用DPCM操作;以及
是否使用变换跳过模式或者变换-量化旁路模式。
21.根据权利要求15所述的装置,所述装置能够操作为使得标记与编码数据相关联,所述标记指示所述数据重排操作是应用于已经历DPCM编码的数据还是待被DPCM编码的数据。
22.根据权利要求8所述的装置,其中,对于DPCM数据,所述处理顺序是水平扫描处理顺序或垂直扫描处理顺序。
23.根据权利要求8所述的装置,所述装置在解码路径中包括残差差分脉冲编码调制(RDPCM)解码器,所述残差差分脉冲编码调制解码器被配置为将差分脉冲编码调制操作应用于熵解码视频数据值以生成RDPCM数据值的阵列。
24.根据权利要求23所述的装置,其中,所述DPCM解码器能够操作为将DPCM解码数据剪取至这种数据的可接受数值范围。
25.根据权利要求23所述的装置,其中,如果一个或多个DPCM解码数据值超过这种数据的可接受数值范围,则所述DPCM解码器能够操作为中止所述熵解码视频数据值的解码。
26.一种包括根据权利要求1所述的装置的视频数据获取、存储、传输和/或记录装置。
27.一种用于编码输入视频数据值的阵列的视频数据编码方法,所述方法包括:
将差分脉冲编码调制(DPCM)操作应用于所述输入视频数据值的阵列以生成DPCM数据值的阵列;
量化从所述DPCM数据值得出的数据;以及
控制由所述量化器从两个或更多个候选取整运算中对取整运算的选择。
28.一种计算机软件,在由计算机执行时,使所述计算机实施根据权利要求27所述的方法。
29.一种非瞬时性机器可读存储介质,在所述非瞬时性机器可读存储介质上存储根据权利要求28所述的计算机软件。
CN201480054385.8A 2013-10-01 2014-09-26 视频数据编码和解码 Active CN105612744B (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
GB1317406.5 2013-10-01
GB1317406.5A GB2519070A (en) 2013-10-01 2013-10-01 Data encoding and decoding
GB1317803.3 2013-10-08
GB1317803.3A GB2519094A (en) 2013-10-01 2013-10-08 Data encoding and decoding
GBGB1318593.9A GB201318593D0 (en) 2013-10-01 2013-10-21 Data encoding and decoding
GB1318593.9 2013-10-21
GB1320772.5A GB2519177A (en) 2013-10-01 2013-11-25 Data encoding and decoding
GB1320772.5 2013-11-25
PCT/GB2014/052917 WO2015049491A1 (en) 2013-10-01 2014-09-26 Video data encoding and decoding

Publications (2)

Publication Number Publication Date
CN105612744A true CN105612744A (zh) 2016-05-25
CN105612744B CN105612744B (zh) 2018-12-21

Family

ID=49585155

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480054385.8A Active CN105612744B (zh) 2013-10-01 2014-09-26 视频数据编码和解码

Country Status (7)

Country Link
US (1) US10939103B2 (zh)
EP (1) EP3039867B1 (zh)
JP (1) JP6609753B2 (zh)
CN (1) CN105612744B (zh)
GB (4) GB2519070A (zh)
RU (1) RU2679991C2 (zh)
WO (1) WO2015049491A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018120019A1 (zh) * 2016-12-30 2018-07-05 上海寒武纪信息科技有限公司 用于神经网络数据的压缩/解压缩的装置和***
CN110149514A (zh) * 2019-05-31 2019-08-20 上海联影医疗科技有限公司 扫描数据的压缩方法、装置、采集***及医学成像***
CN111147866A (zh) * 2018-11-02 2020-05-12 Arm有限公司 对数据阵列进行编码
CN113706493A (zh) * 2021-08-20 2021-11-26 北京航空航天大学 基于dct频率自适应选择的数字病理全切片分割方法
CN114286095A (zh) * 2020-09-27 2022-04-05 腾讯科技(深圳)有限公司 视频解码方法、装置及设备

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2519070A (en) * 2013-10-01 2015-04-15 Sony Corp Data encoding and decoding
WO2015057438A1 (en) 2013-10-14 2015-04-23 Mediatek Singapore Pte. Ltd. Method of residue differential pulse-code modulation for hevc range extension
US10856009B2 (en) * 2014-09-04 2020-12-01 Mediatek Inc. Method of block vector clipping and coding for screen content coding and video coding
US10853502B1 (en) * 2015-03-04 2020-12-01 Micro Focus Llc Systems and methods for reducing computational difficulty of cryptographic operations
EP3564864A4 (en) * 2016-12-30 2020-04-15 Shanghai Cambricon Information Technology Co., Ltd DEVICES FOR COMPRESSION / DECOMPRESSION, SYSTEM, CHIP AND ELECTRONIC DEVICE
US10778971B2 (en) * 2018-06-01 2020-09-15 Tencent America LLC Method and apparatus for video coding
FR3081656A1 (fr) 2018-06-27 2019-11-29 Orange Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image.
US11265544B2 (en) * 2018-09-18 2022-03-01 Sony Corporation Apparatus and method for image compression based on optimal sequential encoding scheme
EP4307681A3 (en) * 2018-11-29 2024-04-03 Beijing Bytedance Network Technology Co., Ltd. Interaction between intra block copy mode and inter prediction tools
WO2020169103A1 (en) 2019-02-24 2020-08-27 Beijing Bytedance Network Technology Co., Ltd. Independent coding of palette mode usage indication
US20220182629A1 (en) * 2019-03-10 2022-06-09 Mediatek Inc. Method and Apparatus of the Quantization Matrix Computation and Representation for Video Coding
PL3910956T3 (pl) 2019-03-12 2023-09-25 Lg Electronics Inc. Sposób i urządzenie do kodowania obrazu opartego na transformacji
CN116896634A (zh) * 2019-04-23 2023-10-17 北京字节跳动网络技术有限公司 在视频编解码中有条件地使用多重变换矩阵
KR20220032520A (ko) 2019-07-20 2022-03-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 팔레트 모드 사용 지시의 조건 종속적인 코딩
CN117221536A (zh) 2019-07-23 2023-12-12 北京字节跳动网络技术有限公司 调色板模式编解码的模式确定
WO2021018167A1 (en) 2019-07-29 2021-02-04 Beijing Bytedance Network Technology Co., Ltd. Palette mode coding in prediction process
US11375196B2 (en) * 2019-09-19 2022-06-28 Tencent America LLC Method of context modeling for entropy coding of transform coefficient flags with transform skip, and coding method with the same
EP4085621A4 (en) * 2020-01-03 2024-02-14 Intel Corporation VIDEO CODING WITH MULTIPLE INTRABLOCK COPY MODES
US11418814B2 (en) * 2020-05-22 2022-08-16 Tencent America LLC Constraint on syntax elements for still picture profiles
US11722678B2 (en) * 2020-08-25 2023-08-08 Tencent America LLC Method and apparatus for transform skip coefficients coding

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050063462A1 (en) * 2003-09-18 2005-03-24 Samsung Electronics Co., Ltd. Visual scan method using scan table and discrete cosine transform device employing the same method
CN1890711A (zh) * 2003-10-10 2007-01-03 新加坡科技研究局 将数字信号编码成可扩缩比特流的方法和对可扩缩比特流解码的方法
CN101115200A (zh) * 2007-04-20 2008-01-30 西安交通大学 一种有效的运动矢量可伸缩编码方法
US20080279465A1 (en) * 2001-07-02 2008-11-13 Qualcomm Incorporated Apparatus and method for encoding digital image data in a lossless manner
CN101310291A (zh) * 2005-11-14 2008-11-19 Ess技术公司 用于视频帧缓冲压缩的***和方法
US20120307890A1 (en) * 2011-06-02 2012-12-06 Microsoft Corporation Techniques for adaptive rounding offset in video encoding
CN102907101A (zh) * 2010-05-27 2013-01-30 索尼公司 具有随机存取性能的图像压缩方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703283B1 (ko) * 2004-03-15 2007-04-03 삼성전자주식회사 회전 매칭을 통해 움직임을 예측하는 영상 부호화 장치 및방법
US8295342B2 (en) * 2007-11-14 2012-10-23 International Business Machines Corporation Method and system for efficient video compression with low-complexity encoder
US8295356B2 (en) * 2008-03-07 2012-10-23 International Business Machines Corporation Method and system for coding mode selection in video compression systems
TW201028018A (en) * 2009-01-07 2010-07-16 Ind Tech Res Inst Encoder, decoder, encoding method and decoding method
EP2430836B1 (en) 2009-05-16 2016-08-17 Thomson Licensing Methods and apparatus for improved quantization rounding offset adjustment for video encoding
CN102648627B (zh) 2009-09-10 2015-03-04 杜比实验室特许公司 率失真优化量化的加速技术
JP2012175615A (ja) 2011-02-24 2012-09-10 Sony Corp 画像処理装置及び画像処理方法
EP2774360B1 (en) * 2011-11-04 2017-08-02 Huawei Technologies Co., Ltd. Differential pulse code modulation intra prediction for high efficiency video coding
GB2496193A (en) 2011-11-07 2013-05-08 Sony Corp Context adaptive data encoding and decoding
CN103024383B (zh) * 2012-12-14 2016-02-10 北京工业大学 一种基于hevc框架的帧内无损压缩编码方法
GB2519070A (en) * 2013-10-01 2015-04-15 Sony Corp Data encoding and decoding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080279465A1 (en) * 2001-07-02 2008-11-13 Qualcomm Incorporated Apparatus and method for encoding digital image data in a lossless manner
US20050063462A1 (en) * 2003-09-18 2005-03-24 Samsung Electronics Co., Ltd. Visual scan method using scan table and discrete cosine transform device employing the same method
CN1890711A (zh) * 2003-10-10 2007-01-03 新加坡科技研究局 将数字信号编码成可扩缩比特流的方法和对可扩缩比特流解码的方法
CN101310291A (zh) * 2005-11-14 2008-11-19 Ess技术公司 用于视频帧缓冲压缩的***和方法
CN101115200A (zh) * 2007-04-20 2008-01-30 西安交通大学 一种有效的运动矢量可伸缩编码方法
CN102907101A (zh) * 2010-05-27 2013-01-30 索尼公司 具有随机存取性能的图像压缩方法
US20120307890A1 (en) * 2011-06-02 2012-12-06 Microsoft Corporation Techniques for adaptive rounding offset in video encoding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MATTEO NACCARI: "RCE2: Experimental results for Test C.1", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 JCTVC-N0074》 *
MATTEO NACCARI等: "Inter-Prediction Residual DPCM", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 JCTVC-M0442》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018120019A1 (zh) * 2016-12-30 2018-07-05 上海寒武纪信息科技有限公司 用于神经网络数据的压缩/解压缩的装置和***
CN111147866A (zh) * 2018-11-02 2020-05-12 Arm有限公司 对数据阵列进行编码
CN111147866B (zh) * 2018-11-02 2023-12-08 Arm有限公司 对数据阵列进行编码
CN110149514A (zh) * 2019-05-31 2019-08-20 上海联影医疗科技有限公司 扫描数据的压缩方法、装置、采集***及医学成像***
CN114286095A (zh) * 2020-09-27 2022-04-05 腾讯科技(深圳)有限公司 视频解码方法、装置及设备
CN113706493A (zh) * 2021-08-20 2021-11-26 北京航空航天大学 基于dct频率自适应选择的数字病理全切片分割方法
CN113706493B (zh) * 2021-08-20 2024-03-22 北京航空航天大学 基于dct频率自适应选择的数字病理全切片分割方法

Also Published As

Publication number Publication date
CN105612744B (zh) 2018-12-21
WO2015049491A1 (en) 2015-04-09
RU2016117252A3 (zh) 2018-07-19
GB201317406D0 (en) 2013-11-13
RU2016117252A (ru) 2017-11-13
EP3039867B1 (en) 2018-06-27
GB201320772D0 (en) 2014-01-08
US20160241852A1 (en) 2016-08-18
EP3039867A1 (en) 2016-07-06
RU2679991C2 (ru) 2019-02-14
US10939103B2 (en) 2021-03-02
GB2519094A (en) 2015-04-15
GB201318593D0 (en) 2013-12-04
GB201317803D0 (en) 2013-11-20
JP2016536848A (ja) 2016-11-24
JP6609753B2 (ja) 2019-11-27
GB2519177A (en) 2015-04-15
GB2519070A (en) 2015-04-15

Similar Documents

Publication Publication Date Title
CN105612744A (zh) 视频数据编码和解码
US11743487B2 (en) Method, device, and computer program for optimizing transmission of motion vector related information when transmitting a video stream from an encoder to a decoder
JP7219284B2 (ja) 従属量子化
CN107736023B (zh) 帧内预测及帧内模式译码
CN107736022B (zh) 帧内预测及帧内模式译码
CN107750455B (zh) 帧内预测及帧内模式译码
RU2697726C1 (ru) Способ и устройство предсказания изображений
CN112544084B (zh) 图像编码装置、编码流提取装置以及图像解码装置
CN103535033B (zh) 用于样本自适应偏移的偏移类型及系数信令方法
JP5646641B2 (ja) 画像のブロックを符号化する方法及び画像のブロックを再構成する方法
CN102474608B (zh) 解码代表图像序列的编码数据流的方法和编码图像序列的方法
CN108353167A (zh) 译码视频数据的正负号信息
US11259052B2 (en) Transform variations of multiple separable transform selection
CN103096075A (zh) 视频数据编码和解码
CN103891293A (zh) 用于色度分量的自适应环路滤波
CN111684810A (zh) 数据编码和解码
CN103096074A (zh) 视频数据编码和解码
CN112673636B (zh) 将运动向量取整以自适应运动向量差分辨率及提高视频译码中的运动向量存储精度
CN112514386A (zh) 网格编解码量化系数编解码
CN105075269A (zh) 图像解码装置以及图像编码装置
CN113728629A (zh) 视频译码中的运动向量推导
CN105580367A (zh) 数据编码和解码
CN114868387B (zh) 在进行视频译码时对块的色度变换跳过和联合色度译码启用
US11394987B2 (en) Chroma samples from luma samples prediction for video coding
CN116508321A (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
GR01 Patent grant
GR01 Patent grant