CN103918273A - 确定用于变换系数的二进制码字的方法 - Google Patents

确定用于变换系数的二进制码字的方法 Download PDF

Info

Publication number
CN103918273A
CN103918273A CN201280054943.1A CN201280054943A CN103918273A CN 103918273 A CN103918273 A CN 103918273A CN 201280054943 A CN201280054943 A CN 201280054943A CN 103918273 A CN103918273 A CN 103918273A
Authority
CN
China
Prior art keywords
symbol
brachymemma
prefix
value
parametric variable
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
CN201280054943.1A
Other languages
English (en)
Other versions
CN103918273B (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 Technology Holdings LLC
Original Assignee
Motorola Mobility 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 Motorola Mobility LLC filed Critical Motorola Mobility LLC
Priority to CN201710962926.2A priority Critical patent/CN107995496B/zh
Publication of CN103918273A publication Critical patent/CN103918273A/zh
Application granted granted Critical
Publication of CN103918273B publication Critical patent/CN103918273B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods 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 set of transform coefficients
    • 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/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/21Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with binary alpha-plane coding for video objects, e.g. context-based arithmetic encoding [CAE]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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

Landscapes

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

Abstract

本发明提供了一种确定用于表示在高效视频编译(HEVC)系统中划分成多个编译单元(CU)的变换单元(TU)内的变换系数的符号的二进制码字的系统。该系统确定截短Rice前缀,并且当参数变量大于0时,确定用于该符号的截短Rice后缀。该系统仅根据截短Rice前缀或者根据截短Rice前缀和截短Rice后缀的组合,确定主前缀。当主前缀与比较字符串相同时,该系统也确定主后缀。该系统仅根据主前缀或者根据主前缀和主后缀的组合,确定用于该符号的最后二进制码字。

Description

确定用于变换系数的二进制码字的方法
相关申请的交叉引用
本申请根据35U.S.C.§119(e)要求以下优先权:在2011年11月8日提交的在先提交美国专利临时申请系列No.61/557,403,其全部内容通过引用合并于此。
技术领域
本公开涉及视频压缩领域,具体而言,涉及使用采用块处理的高效视频编译(HEVC)的视频压缩。
背景技术
图1描述包括可以用于发射和接收HEVC数据的编译系统110和解码系统140的内容分布系统100。在一些实施例中,编译系统110可以包括输入接口130、控制器111、计数器112、帧存储器113、编码单元114、发射器缓冲器115和输出接口135。解码系统140可以包括接收器缓冲器150、解码单元151、帧存储器152和控制器153。编译系统110和解码系统140经由可以承载压缩比特流105的传输路径,可以彼此被耦合。编译系统110的控制器111在接收器缓冲器150的容量的基础上可以控制将被发射的数据量,并且可以包括诸如每个时间单位的数目量的其他参数。控制器111可以控制编码单元114以防止解码系统140的接收信号解码操作的失败的发生。控制器111可以是处理器或者通过非限制性示例的方式包括具有处理器的微计算机、随机存取存储器和只读存储器。
通过非限制性示例,从内容提供商供应的源图片120可以包括含有视频序列中的源图片的帧的视频序列。源图片120可以未被压缩或被压缩。如果源图片120未被压缩,则编译系统110可以具有编码功能。如果源图片120被压缩,则编译系统110可以具有代码转换功能。利用控制器111可以从源图片推导出编译单元。帧存储器113可以具有第一区域和第二区域,第一区域可以用于存储来自源图片120的流入帧,第二区域可以用于读出这些帧并且将其输出到编码单元114。控制器111可以将区域切换控制信号123输出到帧存储器113。区域切换控制信号123可以指示将利用第一区域还是第二区域。
控制器111可以将编码控制信号124输出到编码单元114。编码控制信号124可以使得编码单元114开始编码操作,诸如基于源图片准备编译单元。响应于来自控制器111的编码控制信号124,编码单元114可以开始将被准备的编译单元读出到高效编码处理,诸如预测编译处理或变换编译处理,其基于与编译单元相关联的源图片处理生成视频压缩数据的准备编译单元。
编码单元114可以在包括视频分组的封装基本流(PES)中封装生成的视频压缩数据。编码单元114可以使用控制信息和程序时间戳(PTS)将视频分组映射到编码视频信号122,并且编码视频信号122可以被发射到发射器缓冲器115。
包括生成的视频压缩数据的编码视频信号122可以被存储在发射器缓冲器115中。信息量计数器112可以递增,以指示在发射器缓冲器115中的总数据量。因为数据被检索并且从缓冲器移除,所以计数器112可以递减以反映发射器缓冲器115中的数据量。可以将被占的区域信息信号126发射到计数器112,以指示来自编码单元114的数据是否已经被添加或从发射器的缓冲器115移除,所以计数器112可以递增或递减。控制器111在可以被通信的被占区域信息126的基础上可以控制由编码单元114产生的视频分组的生成,以便预见、避免、预防和/或检测在发射器缓冲器115中发生的上溢和下溢。
响应于由控制器111生成和输出的预置信号128,可以重置信息量计数器112。在重置信息计数器112之后,其能对由编码单元114输出的数据进行计数并且获得已经生成的视频压缩数据和/或视频分组的量。信息量计数器112可以给控制器111供应代表所获得的信息量的信息量信号129。控制器111可以控制编码单元114,使得在发射器缓冲器115处不存在上溢。
在一些实施例中,解码系统140可以包括输入接口170、接收器缓冲器150、控制器153、帧存储器152、解码单元151和输出接口175。解码系统140的接收器缓冲器150可以临时存储压缩比特流105,包括基于来自源图片120的源图片的接收到的视频压缩数据和视频分组。解码系统140可以读取控制信息和与接收到的数据中的视频分组相关联的呈现时间戳信息,并且输出可以应用到控制器153的帧数信号163。控制器153可以以预定间隔监督这些帧的计数数目。通过非限制示例,每次解码单元151完成解码操作,控制器153可以监督这些帧的计数数目。
在一些实施例中,当帧数信号163指示接收器缓冲器150处于预定容量时,控制器153可以将解码开始信号164输出到解码单元151。当帧数信号163指示接收器缓冲器150处于小于预定容量时,控制器153可以等待所计数数目的帧变得等于预定量的情形的发生。当该情形发生时,控制器153可以输出解码开始信号164。通过非限制性示例,当帧数信号163指示接收器缓冲器150处于预定容量时,控制器153可以输出解码开始信号164。基于与编码视频分组相关联的呈现时间戳,以单调顺序(即增加或减少)可以解码编码的视频分组和视频压缩数据。
响应于解码开始信号164,解码单元151将合计成与帧相关联的数据和与关联来自接收器缓冲器150的视频分组的图片相关联的压缩视频数据解码。解码单元151可以将解码视频信号162写入帧存储器152。帧存储器152可以具有该解码视频信号被写入的第一区域,和用于将解码图片160读出到输出接口175的第二区域。
在各种实施例中,编译系统110可以被合并或者以其他方式与在头端的转码器或编码装置相关联,并且解码系统140可以被合并或者以其他方式与诸如移动设备、机顶盒或转码器的下游设备相关联。
可以分别或一起利用编译系统110和解码系统140,以编码和解码根据各种编译格式的视频数据,包括高效视频编译(HEVC)。HEVC是基于块的混合空间和时间预测编译方案。在HEVC中,诸如视频帧的输入图像可以被划分成称为最大编译单元(LCU)200的方块,如图2中所示。LCU200每个可以是与128x128像素相同大,不同于将输入图像分成16x16像素的宏块的其他编译方案。如图3中所示,通过将LCU200分裂成四个编译单元(CU)202可以分割每个LCU200。CU202可以是每个为LCU200的四分之一大小的方块。每个CU200可以进一步分成每个为较大CU202的四分之一的四个较小CU202。通过非限制性示例,在图3中所描述的LCU200的右上角的CU202可以被划分成四个更小的CU202。在一些实施例中,可以将这些更小的CU202进一步分成甚至更小尺寸的四分之一,并且将CU202分成更小CU202的该处理可以完成多次。
利用越来越高的视频数据密度,所需要的是进一步改善编译CU的方式,使得可以快速地、有效率地和精确地编码和解码大输入图像和/或宏块。
发明内容
本发明提供了一种用于HEVC的改进的系统。在用于该系统的实施例中,提供了以有效方式确定用于变换系数的二进制码字的方法。在编码输入图像和/或宏块中,使用作为CU202的细分的变换单元(TU)内的变换系数的码字。
在一个实施例中,提供了一种产生用于变换系数的码字中使用的截短Rice BIN字符串的方法。在该实施例中的该方法包括提供符号;提供用于该符号的参数变量;提供与参数变量相关的最大符号值,确定用于该符号的截短Rice前缀,截短Rice前缀包括一个或多个BIN;当参数变量大于0时确定用于符号的截短Rice后缀,截短Rice后缀包括一个或多个BIN;通过当参数变量等于0时,将主前缀设置成截短Rice前缀来确定该符号的主前缀;或者当参数变量大于0时将截短Rice前缀的结尾与截短Rice后缀连接;当主前缀与比较字符串相同时,确定用于该符号的主后缀,主后缀包括一个或多个BIN;并且通过当主前缀与比较字符串不相同时,将二进制码字设置成主前缀来确定用于该符号的二进制码字;或者当主前缀与比较字符串相同时,将主前缀的结尾和主后缀相连接。
在另一实施例中,本发明包括视频编码器,其使用截短Rice前缀以产生用于识别变换系数的码字。视频编码器包括配置成存储符号、参数变量和最大值符号的存储器以及与该存储器耦合的处理器,其中该处理器被配置成确定用于该符号的二进制码字,通过确定用于该符号的截短Rice前缀,截短Rice前缀包括一个或多个BIN;当参数变量大于0时确定用于该符号的截短Rice后缀,截短Rice后缀包括一个或多个BIN;当参数变量等于0时,通过将主前缀设置成截短Rice前缀来确定用于该符号的主前缀;或者当参数变量大于0时,将截短Rice前缀的结尾和截短Rice后缀连接;当主前缀和比较字符串相同时,确定用于该符号的主后缀,主后缀包括一个或多个BIN;当主前缀不与比较字符串相同时,通过将二进制码字设置成主前缀来确定二进制码字;或者当主前缀与比较字符串相同时,将主前缀的结尾和主后缀连接。
附图说明
在附图的帮助下进一步解释本发明的细节,其中:
图1描述内容分布系统的实施例;
图2描述将输入图像划成大编译单元的实施例;
图3描述将大编译单元划分成编译单元的实施例;
图4描述被划分成编译单元的大编译单元的四叉树表示;
图5描述编译单元内的预测单元的可能示例性布置;
图6描述用于编码和/或解码预测单元的实施例的框图;
图7描述被划分成预测单元和变换单元的编译单元的示例性实施例;
图8描述被划分成变换单元的编译单元的四叉树表示的示例性实施例;
图9描述执行基于上下文的自适应二进制算术编译的方法的实施例;
图10描述重要图的示例性实施例;
图11描述变换单元内变换系数的逆之字形(zig-zag)扫描和变换系数的子集的实施例;
图12描述获取用于变换系数的系数级别和符号的方法的实施例;
图13描述子集中变换系数的扫描顺序的实施例;
图14描述基于符号和参数变量生成的二进制码字的表的示例性实施例;
图15描述用于更新参数变量的更新表的示例性实施例;
图16描述二进制码字的实施例;
图17A描述与参数变量的值相关联的示例性最大符号值的表;
图17B描述与参数变量的值相关联的示例性最大符号值的表;
图18描述使用不同的最大长度生成的图14的部分;
图19描述用于确定用于符号的二进制码字的方法的流程图的实施例;
图20描述通过一元二值化处理所确定的BIN字符串的表;以及
图21描述计算机硬件的示例性实施例。
具体实施方式
在HEVC中,诸如视频帧的输入图像被分解成CU,CU然后以代码的形式被识别。然后,CU进一步分解成被编译的子单元,如随后将描述的。
最初为了该编译,四叉树数据表示可以用于描述LCU200的分割。四叉树表示可以具有与LCU200和CU202相对应的节点。在四叉树表示的每个节点处,如果LCU200或CU202被分成四个CU202,则可以指配标识“1”。如果该节点未被分成多个CU202,则可以指配标识“0”。通过非限制性示例,图4中所示的四叉树表示可以描述图3中示出的LCU分割,其中将LCU200分成四个CU202,并且第二个CU202被分成四个更小的CU202。四叉树的二进制数据表示可以是CU分割标识,CU分割标识可以作为开销与诸如跳过模式标识、合并模式标识、和随后描述的PU编译模式一起被编译和发射。通过非限制性示例,图4中示出的CU分割标识四叉树表示可以被编译为二进制数据表示“10100”。
在四叉树的每个叶子处,最后的CU202可以被分解成称为预测单元(PU)204的一个或多个块。PU204是方形或矩形。具有2Nx2N尺寸的CU202可以具有图5中示出的PU204的四个示例性布置之一,PU204具有2Nx2N、2NxN、Nx2N或NxN的尺寸。
通过空间或时间预测可以获得PU。时间预测与帧间模式图片相关。空间预测与帧内模式图片相关。因此,每个CU202的PU204可以在帧内模式或帧间模式中被编译。将在下文段落中描述与帧内模式和帧间模式图片相关的编译的特征。
帧内模式编译在不需要参考其他图片的情形下可以使用来自当前输入图像的数据,以编译I图片。在帧内模式中,可以将PU204空间地预测编译。CU202的每个PU204可以具有它自己的空间预测方向。空间预测方向可以是水平的、垂直的、45度对角、135度对角、DC、平面、或任何其他方向。用于PU204的空间预测方向可以被编译为句法元素。在一些实施例中,可以单独地预测用于PU204的亮度信息(亮度)和色彩信息(色度)。在一些实施例中,用于4x4、8x8、16x16、32x32和64x64块的亮度帧内预测模式的数目可以分别是18、35、35、35和4。在替代实施例中,用于任何大小的块的亮度帧内预测模式的数目可以是35。附加模式可以用于色度帧内预测模式。在一些实施例中,色度预测模式可以被称为“IntraFromLuma”。
帧间模式编译可以使用来自当前输入图像和一个或多个参考图像的数据,以编译“P“图片和/或“B”图片。在一些情形和/或实施例中,帧间模式编译可以导致高于帧内模式编译的压缩。在帧间模式中,PU204可以是时间上预测编译,使得CU202的每个PU204可以具有一个或多个运动矢量和一个或多个关联的参考图像。通过在关联的参考图像上搜索用于PU204的最佳匹配预测的运动估计操作,可以执行时间预测。通过运动矢量和关联的参考图像可以描述最佳匹配预测。P图片使用来自当前输入图像和一个或多个先前参考图像的数据。B图片使用来自当前输入图像和先前和后续参考图像的数据,并且可以最多达到两个运动矢量。可以在HEVC比特流中编译运动矢量和参考图片。在一些实施例中,可以将运动矢量编译为句法元素“MV”,并且可以将参考图片编译为句法元素“refIdx”。在一些实施例中,帧间模式编译可以允许空间和时间预测编译。
图6描述怎样将PU204、x编码和/或解码的框图。在606,可以从当前PU204,x减去如上所述的诸如通过在602的帧内模式或在604的帧间模式所预测的预测PU206,x’,以获得残留PU208,e。在608,利用块变换可以将残留PU208,e变换成一个或多个变换单元(TU)210,E。每个TU210可以包括一个或多个变换系数212。在一些实施例中,块变换可以是方形。在替代实施例中,块变换可以是非方形。
如图7中所示,在HEVC中,在CU202上可以执行不同大小的块变换集合,使得可以将一些PU204划分成更小的TU210,并且其他PU204可以具有与PU204相同大小的TU210。通过四叉树表示可以示出CU202和PU204至TU210的划分。通过非限制示例,图8中示出的四叉树表示描述了图7中示出的CU202内的TU210的布置。
返回参考图6,在步骤610,可以将TU210,E的变换系数212量化成有限数的可能值之一。在一些实施例中,这是其中通过量化所丢失的数据不可恢复的有损操作。在已经量化变换系数212之后,在612,量化的变换系数212可以如下文所述被熵编译,以获得最终压缩比特214。
在614,可以将量化的变换系数212解量化为解量化的变换系数216E’。在616,然后将解量化的变换系数216E’逆变换,以重建残留PU218,e’。在618,然后能够将重建的残留PU218,e’与通过在602的空间预测或在604的时间预测所获得的相对应预测PU206,x’相加,以获得重建PU220,x’’。在620,在重建的PUs220,x’’可以使用解块滤波器,以减少块效应。在620,也提供了采样自适应偏移处理,能够有条件地执行该采样自适应偏移处理以补偿重建的像素和初始像素之间的像素值偏移。此外,在620,在重建的PU220,x’’可以有条件的使用自适应环路滤波器,以减少或最小化在输入图像和输出图像之间的编译失真。
如果重建的图像是在帧间模式编译中将用于未来时间预测的参考图像,则可以将重建的图像存储在参考缓冲器622中。帧内模式编译图像可以是其中在不需要额外的重建图像的情形下解码可以开始的可能点。
HEVC在步骤612期间可以使用熵编译方案,诸如基于上下文的自适应二进制算法编译(CABAC)。用于CABAC的编译处理在图9中示出。在902,变换单元210的最后有效变换系数的位置可以被编译。返回参考图6,通过量化TU210可以创建量化的变换系数。变换系数212可以是重要的或非重要的。图10示出变换系数212的重要图1002。非重要的变换系数212可以具有零的量化值,而重要的变换系数212可以具有一个或多个量化值。在一些实施例中,重要的变换系数212也可以已知为非零量化变换系数212。如果TU210包括一个或多个重要变换系数212,则如图10中所示,可以编译沿着从TU210的左上角至TU210的右下角的前向之字形编译扫描的最后重要变换系数212的坐标。在替代实施例中,沿着逆波阵扫描、逆水平扫描、逆垂直扫描或任何其他扫描顺序,可以扫描重要变换系数212。在一些实施例中,这些坐标可以被编译为句法元素“last_significant_coeff_y”和“last_significant_coeff_x”。通过非限制示例,图10描述在图9的框902中被编译的TU210内的最后重要变换212b的位置。
在图9中的框904,可以将重要图1002编译成指示TU210中的重要变换系数212的每个的位置。重要图1002可以包括用于TU210中的每个位置的二进制元素。可以将二进制元素编译为“0”,以指示在那个位置的变换系数212不重要。可以将二进制元素编译为“1”,以指示在那个位置的变换系数212是重要的。
图11图示了TU210的量化变换系数212如何被划分成组。在一些实施例中,这些组可以是子块。子块可以是16个量化的变换系数212的方块。在其他实施例中,这些组可以是子集1102。子集1102可以包括沿着向后之字形扫描的扫描顺序连续的16个量化变换系数212,如图11中所示。第一子集可以是包括最后重要变换系数212b的子集1102,无论在子集内最后重要变换系数212b在何处。通过非限制示例,最后重要变换系数212b在子集中可以是第14个变换系数212,之后有两个非重要变换系数。
在一些情形和/或实施例中,可以存在16个量化的变换系数212的一个或多个组,量化的变换系数212不包括在含有最后重要变换系数212b的组之前沿着逆向扫描顺序的重要变换系数。在这些情形和/或实施例中,第一子集可以是含有最后重要变换系数212b的子集1102,并且在第一子集1102之前的任何组不视为子集1102的部分。通过非限制示例,在图11中,第一子集1102“子集0”是沿着逆向之字形扫描顺序的16个变换系数212的第二组,而在TU210的右下角的16个变换系数212的组不是子集1102的部分,因为那些变换系数212都不是重要的。在一些实施例中,可以将第一子集1102表示为“子集0”,并且附加子集1102可以表示为“子集1”、“子集2”直至“子集N”。最后子集1102可以是在位置0具有DC变换系数212的子集1102,0在TU210的左上角。
重新参考图9,在最后框906中,可以将每个量化的变换系数212编译成二进制值,以获得图6中示出的最后压缩比特214,包括用于重要系数级别的编译。在编译期间,可以与量化的变换系数212的符号分离地编译每个量化的变换系数212的绝对值。图12图示涉及采取量化的变换系数的绝对值的编译步骤。如图12中所示,在1202,采取每个量化的变换系数212的绝对值,以使得能够获得用于框1204的量化的变换系数212的系数级别222。
在期望以更低频率发生的系数级别222之前,编译期望以更高频率发生的在框1204获得的系数级别。通过非限制示例,在一些实施例中,可以期望0、1或2的系数级别222最频繁地发生。在三个部分中编译系数级别222能够识别最频繁发生系数级别222,留下用于可能期望最少频率发生的系数级别222的更加复杂的计算。在一些实施例中,这可以通过在三个部分中编译系数级别222进行。首先,可以检查量化的变换系数212的系数级别222以确定其是否大于1。如果系数级别222大于1,则可以检查系数级别222以确定其是否大于2。
在图12中的1206,如果系数级别222大于2,则系数级别222减去3的阈值224以获得符号。通过非限制性示例,在一些实施例中,可以将系数级别222编译为三种变量:“coeff_abs_level_greater1_flag”、“coeff_abs_level_greater2_flag”和“coeff_abs_level_minus3”。对于具有2或更多的系数级别222的量化的变换系数212,可以将“coeff_abs_level_greater1_flag”设置成1。如果“coeff_abs_level_greater1_flag”被设置成1并且量化的变换系数212也具有3或更多的系数级别222,则可以将“coeff_abs_level_greater2_flag”设置成“1”。如果将“coeff_abs_level_greater2_flag”设置成“1”,则3的阈值224可以从系数级别222减去以获得量化的变换系数的符号226,编译为“coeff_abs_level_minus3”。在替代实施例中,在不同数目的部分中可以编译系数级别222,和/或阈值224可以是除了3的整数。
图14描述基于符号226和参数变量230生成的二进制码字228的示例性表。针对如图12的框中所确定的发生频率更少并且具有3或更多的系数级别222的量化的变换系数212,可以将量化的变换系数的符号226转换成二进制码字228,二进制码字228是如图6中所示生成的最终压缩比特214的部分。图14中示出的二进制码字228可以是包括一个或多个BIN的BIN字符串。每个BIN可以是一个比特二进制元素。通过每个子集1102或子块扫描和根据参数变量230的值按顺序转换子集1102的每个符号226或子块,并且随后移动到下一子集1102的符号226或子块,可以编译每个符号226。针对子集0和1,示出该编译进展的图和图11的之字形线一起在图13中示出。在一些实施例中,当前扫描位置可以由“n”表示。
返回参考图14,参数变量230能够是当每个符号226被编译时能够更新的全局变量。参数变量230可以控制码字分布的平坦度。在一些实施例中,参数变量230可以是0和N之间的任何整数。通过非限制性示例,在一些实施例中,N可以是3,使得参数变量230可以是0、1、2或3。在一些实施例中,参数变量230可以被表示为“cRiceParam”,如图14中所示。
图15提供图示在一些实施例中针对每个符号226如何随时间更新参数值230的表。为了确定更新,在一些实施例中,在每个子集1102或子块的开始可以将参数变量重置为0,并且然后在将每个符号226转换成二进制码字228之后被更新。基于参数变量230的最后值和最后被转换的符号226的值可以更新参数变量230。在替代实施例中,可以将参数变量230最初设置成0,并且然后基于参数变量230的最后值和最后被转换的符号226的值,在包括先前子集中的符号226的每个符号226被转换成二进制码字228之后被更新。在一些实施例中,基于诸如图15中示出的表1504的预测值的表,可以更新参数变量230。
在一些情形和/或实施例中,利用较低参数变量230转换符号226,比利用较高参数变量230转换同一符号226,可能导致具有更少比特的二进制码字228。通过非限制性示例,如通过图14中所描述的表中所示,使用0的参数变量230转换0的符号226,可以导致具有1比特的“0”的二进制码字228,而使用1的参数变量230转换0的符号226,可以导致具有2比特的“00”的二进制码字228。
在其他情形和/或实施例中,利用较高参数变量230转换符号226,比利用较低参数变量230转换同一符号226,可以导致具有更少比特的二进制码字228。通过非限制性示例,如图14中所描述的表中所示,使用0的参数变量230转换6的符号226可以导致具有7比特的“1111110”的二进制码字228,而使用2的参数变量230转换6的符号226可以导致具有4比特的“1010”的二进制码字228。
图16描述在二进制码字228中所包括的这些元素的实施例。二进制码字228可以具有含有一个或多个BIN的主前缀1602。在一些情形和/或实施例中,二进制码字228也具有包括一个或多个BIN的主后缀1604。主后缀1604可以与主前缀1602的结尾级联,以获得用于符号226的二进制码字228。在其他情形和/或实施例中,主后缀1604可以不存在,并且二进制码字228可以是主前缀1602。
通过将如图17A和17B中所示的符号226、参数变量230和最大符号值232采取为输入的截短Rice二值化处理,可以确定用于符号226的主前缀,并且输出作为主前缀1602的截短Rice BIN字符串1606。在诸如参考软件HM4.0的一些常规系统中,通过常量UIntg_auiGoRicePrefixLen[4]={8,10,11,8}来控制主前缀1602的最大长度。然而,通过这些值生成的码字228可以引进通过使用常量UIntg_auiGoRicePrefixLen[4]={8,10,10,8}可以部分地减少的冗余。通过非限制性示例,图18描述用于使用设置成2的参数变量230cRiceParam从40-43的范围的符号226的图14中所描述的表的一部分。该表的左侧使用具有UInt g_auiGoRicePrefixLen[4]={8,10,11,8}的HM4.0,并且生成具有比使用UInt g_auiGoRicePrefix Len[4]={8,10,10,8}生成的表的右侧上的码字更多的bit的码字228。图14中示出的表使用利用UInt g_auiGoRicePrefixLen[4]={8,10,10,8}生成的码字228。
参数变量230的每个可能值可以具有关联的最大符号值232。在一些实施例中,用于特定参数变量230的最大符号值232可以被表示为“cTRMax”。通过非限制性示例,图17A和17B描述用于参数变量230“cRiceParam”的最大符号值232“cTRMax”的示例性表。
截短Rice BIN字符串1606可以具有包括一个或多个BIN的截短Rice前缀1608。在一些情形和/或实施例中,截短Rice BIN字符串1606具有含有一个或多个BIN的截短Rice后缀1610。截短Rice后缀1610可以与截短Rice前缀1608的结尾级联,以获得用于符号226的截短Rice BIN字符串1606,其可以被用作主前缀1602。在其他情形和/或实施例中,截短Rice后缀1610可以不存在,并且截短Rice BIN字符串1606是截短Rice前缀1608。
图19描述用于确定用于每个符号226的二进制码字228的方法的流程图。在1902,符号226可以作为输入被接受。在1904,基于符号226的值可以确定二值化元素和一元最大值。为了确定二值化元素,可以将符号226的值和最大符号值232进行比较,以确定哪个更小,并且可以将两个值中的更小者算术右移等于参数变量230的值的二进制数字的数目。如果符号226的值和最大符号值232相等,则可以将它们共有的值算术右移等于参数变量230的值的二进制数字的数目,以获得二值化元素。在一些实施例中,可以将符号226的值表达为“synElVal”,并且用来确定二值化元素的右算术移位可以被表达为“min(synElVal,cTRMax)>>cRiceParam”。通过二进制数字的数目等于第二值的值来执行第一值的右算术移位,可以相当于第一值除以2^第二值,并且舍入负无限大的结果以获得整数。
一元最大值可以是二值化元素的最大可能值。通过二进制数字的数目等于参数变量230的值执行最大符号值232的右算术移位,可以确定一元最大值。在一些实施例中,确定一元最大值的右算术移位可以被表达为“cTRMax>>cRiceParam”。在一些实施例中,可以将一元最大值表示为“cMax”。
在图19中的1906,可以将二值化元素与一元最大值进行比较。如果二值化元素小于一元最大值,则可以将二值化元素转换成截短Rice前缀1608(图16),并且在1908使用一元值化处理提供到盒1912。如果二值化元素等于一元最大值时,则可以将二值化元素转换成截短Rice前缀1608,并且在1910使用截短一元二值化处理被提供到盒1912。
在1908的一元二值化处理中,截短Rice前缀1608可以是包括等于二值化元素加1的值的BIN的数目的BIN字符串。在BIN字符串中的BIN可以在位置0至N。针对少于二值化元素的值的位置,可以将BIN设置成“1”。针对最后位置,该位置等于二值化元素的值,可以将BIN设置成“0”。
图20描述用于具有从0至5的范围的值的二值化元素的BIN字符串的表2000,通过BIN位置(binIdx)索引。通过如图20中示出的非限制性示例,用于4的二值化元素的截短Rice前缀可以是11110的BIN字符串,并且用于2的二值化元素的截短Rice前缀1608可以是110的BIN字符串。
返回参考图19,在1910的截短二值化处理中,截短Rice前缀1608可以是具有等于一元最大值的BIN的数目的BIN字符串,其中所有BIN都被设置成“1”。通过非限制示例,针对8的一元最大值,用于8的二值化元素的截短Rice前缀1608可以具有8个BIN的长度,全部8个BIN都被设置成“1”,诸如11111111。应该注意的是,在一些常规系统中,利用参数变量“0”的7的最大符号值,使用图17A中示出的最大系统值232。然而,这可能在一些现有系统中引起错误,因为当该系统大于一元最大值时在这些现有系统中没有指定处理。例如,在一些常规系统中,当最大符号值是7时,该符号是8,并且参数变量是0,码字生成可能失败。反之,通过使用图17B中所示的最大符号值232,利用用于参数变量“0”的“8”的最大符号值,当符号是8时,该处理可以移动到步骤1910,并且如上所述确定11111111的截短Rice前缀。
在1912,通过在1908的一元二值化处理和在1910的截短一元二值化处理,可以输出截短Rice前缀1608的值。
在1914,可以检查参数变量230以确定参数变量230是否大于0。如果参数变量230的值是0,则在1920,可以将截短Rice前缀1608(图16)作为整个主前缀使用。如果参数变量230的值大于0,则在1916可以确定截短Rice后缀1610(图16)。截短Rice后缀1610可以是具有等于参数变量230的值的长度的BIN字符串。可以将符号226算术右移等于参数变量230的二进制数字的数目。可以将该结果算术左移等于参数变量230的二进制数字的数目。执行将第一值算术左移等于第二值的值的二进制数字的数目,可以相当于第一值乘以2^第二值。可以从符号226的值减去算术左移的结果,并且具有与参数变量230的值相同数目的BIN的该结果的二进制表示,可以是截短Rice后缀1610。在符号226的值被表达为“synElVal”的一些实施例中,在1916的操作可以表达为“synElVal–((synElVal>>cRiceParam)<<cRiceParam)”。在1918,可以将截短Rice后缀1610级联到截短Rice前缀1608的结尾,以确定完整的截短Rice BIN字符串1606,其可以用作主前缀1602。
在1922,将主前缀1602和比较字符串进行比较。比较字符串可以是所有被设置成“1”的一个或多个BIN的字符串,具有通过将最大符号值232算术右移等于参数变量230的二进制数字的数目,并且然后与参数变量230的值相加来确定在比较字符串中的BIN的数目。在一些实施例中,比较字符串的长度的确定可以被表达为“(cTRMax>>cRiceParam)+cRiceParam”。如果主前缀1602与比较字符串相同,则主后缀1604在1924可以被确定,并且在1926级联到主前缀1602的结尾,以在1928确定用于符号226的最终二进制码字228BIN字符串。主后缀1604可以是用于符号226减去最大符号值232减去1的值的第0阶指数哥伦布(Exp-Golomb)码。在一些实施例中,其中符号226的值可以被表达为“coeff_abs_level_minus3[n]”,在1824的操作可以被表达为用于“coeff_abs_level_minus3[n]–cTRMax–1”的第0阶Exp-Golomb码。如果主前缀1602与比较字符串不同,则主后缀1604可能不存在,并且主前缀1602可以被用作用于符号226的最后二进制码字228BIN字符串。然后在1928可以输出最后二进制码字。
实践这些实施例所需要的指令的序列的执行可以由计算机系统2100执行,如图21中所示。在实施例中,由单一计算机系统2100执行指令的序列的执行。根据其他实施例,由通信链路2115耦合的两个或多个计算机系统2100可以彼此协调地执行这些指令的序列。虽然在本文中可以存在仅一个计算机系统2100的描述,但是应该理解的是,可以采用任何数目的计算机系统2100。
现将参考图20描述根据实施例的计算机系统2100,其是计算机系统2100的功能组件的框图。如本文所使用,术语计算机系统2100广泛用于描述可以存储和独立地运行一个或多个程序的任何计算设备。
计算机系统2100可以包括耦合到总线212106的通信接口2114。通信接口2114在计算机系统2100之间提供双向通信。相应的计算机系统2100的通信接口2114发射和接收电的、电磁的或光信号,所述信号包括诸如指令、消息和数据的表示各种类型的信号信息的数据流。通信链路2115将一个计算机系统2100与另一计算机系统2100链接。例如,通信链路2115可以是LAN、综合业务数字网(ISDN)卡、调制解调器、或互联网。
计算机系统2100通过它相应的通信链路2115和通信接口2114,可以发射和接收消息、数据和指令,包括诸如应用、代码的程序。接收到的程序代码随着其被接收可以由相应处理器(这些处理器)212107执行,和/或存储在存储设备212110或其他关联非易失性介质中,以便以后执行。
在实施例中,计算机系统2100结合数据存储系统3331操作,例如包含由计算机系统2100易接入的数据库2132的数据存储系统2131。计算机系统2100通过数据接口2133与数据存储系统2131通信。
计算机系统2100可以包括总线2106和用于通信这些指令、消息和数据,统称为信息的其他通信机制,以及与用于处理信息的总线2106耦合的一个或多个处理器2107。计算机系统2100也包括耦合到总线2106的主存储器2108,诸如随机存取存储器(RAM)或其他动态存储设备,以用于存储由这些处理器2107执行的动态数据和指令。计算机系统2100可以进一步包括只读存储器(ROM)2109或者耦合到总线2106的其他静态存储器,以用于存储用于处理器(多个处理器)2107的静态数据和指令。诸如磁盘或光盘的存储设备2110也可以被提供并且耦合到总线2106,以用于存储用于处理器(这些处理器)2107的数据和指令。
计算机系统2100可以经由总线2106被耦合到显示器设备2111,诸如LCD屏。诸如字母或其他键的输入设备2112被耦合到总线2106,以用于将信息和命令选择通信到处理器(多个处理器)2107。
根据一个实施例,个人计算机系统2100通过它们相应的处理器2107执行具体操作,处理器2107执行包含在主存储器2108中的一个或多个指令的一个或多个序列。可以将这些指令从诸如ROM2109或存储设备2110的另一计算机可用介质读取到主存储器2108。包含在主存储器2108中的指令序列的执行,使得处理器(多个处理器)2107执行本文中描述的处理。在替代实施例中,硬线电路可以用于代替或与软件指令组合。因此,这些实施例不限于硬件电路和/或软件的任何特定组合。
虽然在上文已经具体描述本发明,但是仅教导本领域的技术人员如何制造和使用本发明。许多附加修改将落入本发明的范围内,如通过权利要求所定义的范围。

Claims (20)

1.一种确定用于符号的二进制码字的方法,包括:
提供编码器;
将符号提供给所述编码器;
将用于所述符号的参数变量提供给所述编码器;
将用于所述参数变量的最大符号值提供给所述编码器;
利用所述编码器来确定用于所述符号的截短Rice前缀;
当所述参数变量大于0时,利用所述编码器来确定用于所述符号的截短Rice后缀,并且将所述截短Rice前缀的结尾与所述截短Rice后缀级联来确定主前缀;以及
当所述主前缀与比较字符串相同时,通过采用所述编码器来确定用于所述符号的主后缀,并且将所述主前缀的结尾与所述主后缀级联,以确定用于所述符号的所述二进制码字。
2.根据权利要求1所述的方法,进一步包括:
当所述参数变量等于0时,通过将所述主前缀设置成所述截短Rice前缀来确定用于所述符号的主前缀。
3.根据权利要求1所述的方法,进一步包括:
当所述主前缀与所述比较字符串不同时,通过将所述二进制码字设置成所述主前缀来确定用于所述符号的所述二进制码字。
4.根据权利要求1所述的方法,其中,确定所述截短Rice前缀包括:
通过将所述符号的值和所述最大符号值中的较小者算术右移等于所述参数变量的值的二进制数字的数目,来利用所述编码器确定二值化元素;
通过将所述最大符号值算术右移等于所述参数变量的值的二进制数字的数目,来利用所述编码器确定一元最大值;以及
当所述二值化元素小于所述一元最大值时,通过一元二值化处理来利用所述编码器确定所述截短Rice前缀;以及
当所述二值化元素等于所述一元最大值时,通过截短一元二值化处理来确定所述截短Rice前缀。
5.根据权利要求1所述的方法,其中,通过以下来确定所述截短Rice后缀:
利用所述编码器将所述符号算术右移等于所述参数变量的值的二进制数字的数目,以获得第一结果;
利用所述编码器将所述第一结果算术左移等于所述参数变量的值的二进制数字的数目,以获得第二结果;以及
利用所述编码器从所述符号减去所述第二结果,以获得第三结果;以及
利用所述编码器二值化所述第三结果,以获得所述截短Rice后缀。
6.根据权利要求5所述的方法,其中所述截短Rice后缀的长度等于所述参数变量的值。
7.根据权利要求1所述的方法,其中,通过所述符号的值减去关联的最大符号值减去1的第0阶指数哥伦布码,来确定所述主后缀。
8.根据权利要求1所述的方法,其中,所述比较字符串是BIN字符串,每个BIN被设置成“1”并且具有通过将所述最大符号值算术右移等于所述参数变量的二进制数字的数目、并且然后与所述参数变量的值相加而确定的长度。
9.根据权利要求1所述的方法,其中,所述参数变量的值被配置成0、1、2或3。
10.根据权利要求9所述的方法,其中,当所述参数变量是0时,所述最大符号值是8;当所述参数变量是1时,所述最大符号值是20;当所述参数变量是2时,所述最大符号值是42,并且当所述参数变量是3时,所述最大符号值是70。
11.根据权利要求1所述的方法,其中,所述二进制码字是提供在变换单元(TU)内的变换系数的表示,所述变换单元是高效视频编译(HEVC)信号中的编译单元(CU)的细分。
12.一种视频编码器,包括:
存储器,所述存储器被配置成存储符号、参数变量和最大符号;以及
处理器,所述处理器与所述存储器耦合,其中,所述处理器被配置成通过以下来确定用于所述符号的二进制码字:
确定用于所述符号的截短Rice前缀;
当所述参数变量大于0时,确定用于所述符号的截短Rice后缀,并且通过将所述截短Rice前缀的结尾与所述截短Rice后缀级联来确定主前缀;以及
当所述主前缀与比较字符串相同时,确定用于所述符号的主后缀,并且通过将所述主前缀的结尾和所述主后缀级联来确定所述二进制码字。
13.根据权利要求12所述的视频编码器,其中,所述处理器进一步被配置成:
通过将所述符号的值和所述最大符号值中的较小者算术右移等于所述参数变量的值的二进制数字的数目,来确定二值化元素;
通过将所述最大符号值算术右移等于所述参数变量的值的二进制数字的数目,来确定一元最大值。
当所述二值化元素小于所述一元最大值时,通过一元二值化处理来确定所述截短Rice前缀;以及
当所述二值化元素等于所述一元最大值时,通过截短一元二值化处理来确定所述截短Rice前缀。
14.根据权利要求12所述的视频编码器,其中,所述处理器进一步被配置成:
将所述符号算术右移等于所述参数变量的值的二进制数字的数目,以获得第一结果;
将所述第一结果算术左移等于所述参数变量的值的二进制数字的数目,以获得第二结果;以及
从所述符号减去所述第二结果,以获得第三结果;以及
将所述第三结果二值化,以获得所述截短Rice后缀。
15.根据权利要求14所述的视频编码器,其中,所述截短Rice后缀的长度等于所述参数变量的值。
16.根据权利要求12所述的视频编码器,其中,所述处理器进一步被配置成:
确定具有所述符号的值减去关联的最大符号值减去1的第0阶指数哥伦布码的所述主后缀。
17.根据权利要求12所述的视频编码器,其中,所述比较字符串是BIN字符串,每个BIN被设置成“1”并且具有通过所述处理器将所述最大符号值算术右移等于所述参数变量的二进制数字的数目、并且然后与所述参数变量的值相加所确定的长度。
18.一种包括用于确定符号的二进制码字的程序指令的计算机可读介质,其中,通过计算机系统的一个或多个处理器对所述程序指令的执行使得所述一个或多个处理器执行以下步骤:
接收符号、参数变量、以及与所述参数变量相关联的最大符号值;
确定用于所述符号的截短Rice前缀;
当所述参数变量大于0时,确定用于所述符号的截短Rice后缀,并且通过将所述截短Rice前缀的结尾与所述截短Rice后缀级联来确定主前缀;以及
当所述主前缀与比较字符串相同时,确定用于所述符号的主后缀,并且通过将所述主前缀的结尾与所述主后缀级联来确定用于所述符号的所述二进制码字。
19.根据权利要求18所述的计算机可读介质,其中,通过计算机系统的一个或多个处理器对所述程序指令的执行使得所述一个或多个处理进一步执行以下步骤:
通过将所述符号的值和所述最大符号值中的较小者算术右移等于所述参数变量的值的二进制数字的数目,来确定二值化元素;
通过将所述最大符号值算术右移等于所述参数变量的值的二进制数字的数目,来确定一元最大值;
当所述二值化元素小于所述一元最大值时,通过一元二值化处理来确定所述截短Rice前缀;以及
当所述二值化元素等于所述一元最大值时,通过截短一元二值化处理来确定所述截短Rice前缀。
20.根据权利要求18所述的计算机可读介质,其中,通过计算机系统的一个或多个处理器对所述程序指令的执行使得所述一个或多个处理器进一步执行以下步骤:
将所述符号算术右移等于所述参数变量的值的二进制数字的数目,以获得第一结果;
将所述第一结果算术左移等于所述参数变量的值的二进制数字的数目,以获得第二结果;以及
从所述符号减去所述第二结果,以获得第三结果;以及
将所述第三结果二值化,以获得所述截短Rice后缀。
CN201280054943.1A 2011-11-08 2012-11-08 确定用于变换系数的二进制码字的方法 Active CN103918273B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710962926.2A CN107995496B (zh) 2011-11-08 2012-11-08 确定用于变换系数的二进制码字的方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161557403P 2011-11-08 2011-11-08
US61/557,403 2011-11-08
US13/672,103 2012-11-08
US13/672,103 US9641835B2 (en) 2011-11-08 2012-11-08 Method of determining binary codewords for transform coefficients
PCT/US2012/064236 WO2013070974A2 (en) 2011-11-08 2012-11-08 Method of determining binary codewords for transform coefficients

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710962926.2A Division CN107995496B (zh) 2011-11-08 2012-11-08 确定用于变换系数的二进制码字的方法

Publications (2)

Publication Number Publication Date
CN103918273A true CN103918273A (zh) 2014-07-09
CN103918273B CN103918273B (zh) 2017-11-17

Family

ID=47228059

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280054943.1A Active CN103918273B (zh) 2011-11-08 2012-11-08 确定用于变换系数的二进制码字的方法

Country Status (5)

Country Link
US (2) US9641835B2 (zh)
KR (1) KR101672107B1 (zh)
CN (1) CN103918273B (zh)
BR (1) BR112014011155B1 (zh)
WO (1) WO2013070974A2 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014533058A (ja) * 2011-11-08 2014-12-08 サムスン エレクトロニクス カンパニー リミテッド ビデオの算術符号化方法及びその装置、並びにビデオの算術復号化方法及びその装置
KR101660605B1 (ko) 2011-11-08 2016-09-27 구글 테크놀로지 홀딩스 엘엘씨 변환 계수들에 대한 이진 코드워드들을 결정하는 방법
US9172962B2 (en) * 2012-01-20 2015-10-27 Blackberry Limited Methods and systems for pipelining within binary arithmetic coding and decoding
WO2013109993A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients
WO2013109997A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients
US9479780B2 (en) 2012-02-01 2016-10-25 Google Technology Holdings LLC Simplification of significance map coding
US9565435B2 (en) 2012-02-04 2017-02-07 Google Technology Holdings LLC Devices and methods for context reduction in last significant coefficient position coding
US9167245B2 (en) 2012-02-05 2015-10-20 Google Technology Holdings LLC Method of determining binary codewords for transform coefficients
US9955163B2 (en) * 2013-06-17 2018-04-24 Google Llc Two pass quantization of video data
US9503760B2 (en) * 2013-08-15 2016-11-22 Mediatek Inc. Method and system for symbol binarization and de-binarization
US9930348B2 (en) * 2014-03-14 2018-03-27 Qualcomm Incorporated Coefficient level coding in a video coding process
KR102330740B1 (ko) 2014-09-30 2021-11-23 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 파면 병렬 프로세싱이 인에이블되는 경우의 인트라 픽쳐 예측 모드에 대한 규칙
US9781424B2 (en) 2015-01-19 2017-10-03 Google Inc. Efficient context handling in arithmetic coding
US10659783B2 (en) * 2015-06-09 2020-05-19 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
EP3264763A1 (en) * 2016-06-29 2018-01-03 Thomson Licensing Method and apparatus for improved significance flag coding using simple local predictor
US11309911B2 (en) 2019-08-16 2022-04-19 Advanced Micro Devices, Inc. Semi-sorting compression with encoding and decoding tables

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1535020A (zh) * 2003-11-04 2004-10-06 浙江大学 视频编解码中变换系数块的扫描方法和装置
US20050152451A1 (en) * 2004-01-13 2005-07-14 C And S Technology Co., Ltd Video coding system
US20070290898A1 (en) * 2006-06-19 2007-12-20 Berkeley Law And Technology Group Data compression
CN101427583A (zh) * 2006-04-18 2009-05-06 汤姆森特许公司 算术解码方法和设备
US20100238056A1 (en) * 2009-03-17 2010-09-23 Yukinaga Seki Code amount estimating device, image coding apparatus including the code amount estimating device, and code amount estimating method
CN102150369A (zh) * 2008-09-12 2011-08-10 汤姆森特许公司 无损压缩前缀后缀码的方法、解压缩在压缩的前缀后缀码中编码的表示整数或码元的比特序列的方法、和载有压缩的前缀后缀码的存储介质或信号

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2870515B2 (ja) 1996-12-27 1999-03-17 日本電気株式会社 可変長符号化装置
US7206448B2 (en) 2002-02-28 2007-04-17 At&T Corp. System and method for using pattern vectors for video and image coding and decoding
US7158684B2 (en) 2002-04-25 2007-01-02 Texas Instruments Incoporated Entropy coding scheme for video coding
US7379608B2 (en) 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
US7580585B2 (en) 2004-10-29 2009-08-25 Microsoft Corporation Lossless adaptive Golomb/Rice encoding and decoding of integer data using backward-adaptive rules
EP2765780A1 (en) 2005-12-05 2014-08-13 Huawei Technologies Co., Ltd. Binarizing method and device thereof
US8275045B2 (en) 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
US7813567B2 (en) 2007-04-26 2010-10-12 Texas Instruments Incorporated Method of CABAC significance MAP decoding suitable for use on VLIW data processors
US7885473B2 (en) 2007-04-26 2011-02-08 Texas Instruments Incorporated Method of CABAC coefficient magnitude and sign decoding suitable for use on VLIW data processors
KR101539240B1 (ko) 2007-06-14 2015-07-30 삼성전자주식회사 영상 데이터의 엔트로피 부호화, 복호화 방법 및 장치
US8891615B2 (en) 2008-01-08 2014-11-18 Qualcomm Incorporated Quantization based on rate-distortion modeling for CABAC coders
KR101375668B1 (ko) 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
US8588536B2 (en) 2010-02-22 2013-11-19 Texas Instruments Incorporated Guaranteed-rate tiled image data compression
US8965139B2 (en) 2010-09-29 2015-02-24 Panasonic Intellectual Property Corporation Of America Image decoding method, image coding method, image decoding apparatus, image coding apparatus and integrated circuit for generating a code stream with a hierarchical code structure
US8526495B2 (en) 2010-11-22 2013-09-03 Mediatek Singapore Pte. Ltd. Apparatus and method of constrained partition size for high efficiency video coding
EP3349360B1 (en) 2011-01-14 2019-09-04 GE Video Compression, LLC Entropy encoding and decoding scheme
US20130016789A1 (en) 2011-07-15 2013-01-17 General Instrument Corporation Context modeling techniques for transform coefficient level coding
US9253508B2 (en) * 2011-11-04 2016-02-02 Futurewei Technologies, Inc. Differential pulse code modulation intra prediction for high efficiency video coding
US20130114685A1 (en) * 2011-11-07 2013-05-09 Sharp Laboratories Of America, Inc. Video decoder with constrained dynamic range
KR101660605B1 (ko) 2011-11-08 2016-09-27 구글 테크놀로지 홀딩스 엘엘씨 변환 계수들에 대한 이진 코드워드들을 결정하는 방법
US9621894B2 (en) 2012-01-13 2017-04-11 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
US20130188729A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients
WO2013109997A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients
WO2013109993A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients
US9479780B2 (en) 2012-02-01 2016-10-25 Google Technology Holdings LLC Simplification of significance map coding
US9565435B2 (en) 2012-02-04 2017-02-07 Google Technology Holdings LLC Devices and methods for context reduction in last significant coefficient position coding
US9167245B2 (en) 2012-02-05 2015-10-20 Google Technology Holdings LLC Method of determining binary codewords for transform coefficients
US9363510B2 (en) 2012-03-02 2016-06-07 Qualcomm Incorporated Scan-based sliding window in context derivation for transform coefficient coding

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1535020A (zh) * 2003-11-04 2004-10-06 浙江大学 视频编解码中变换系数块的扫描方法和装置
US20050152451A1 (en) * 2004-01-13 2005-07-14 C And S Technology Co., Ltd Video coding system
CN101427583A (zh) * 2006-04-18 2009-05-06 汤姆森特许公司 算术解码方法和设备
US20070290898A1 (en) * 2006-06-19 2007-12-20 Berkeley Law And Technology Group Data compression
CN102150369A (zh) * 2008-09-12 2011-08-10 汤姆森特许公司 无损压缩前缀后缀码的方法、解压缩在压缩的前缀后缀码中编码的表示整数或码元的比特序列的方法、和载有压缩的前缀后缀码的存储介质或信号
US20100238056A1 (en) * 2009-03-17 2010-09-23 Yukinaga Seki Code amount estimating device, image coding apparatus including the code amount estimating device, and code amount estimating method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS等: "WD4: Working Draft 4 of High-Efficiency Video Coding", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 *
T. NGUYEN: "CE11: Coding of transform coefficient levels with Golomb-Rice codes", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 *
T. NGUYEN等: "Reduced-complexity entropy coding of transform coefficient levels using a combination of VLC and PIPE", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 *
TUNG NGUYEN等: "Reduced-complexity entropy coding of transform coefficient levels using truncated golomb-rice codes in video compression", 《2011 18TH IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING》 *

Also Published As

Publication number Publication date
US20170237995A1 (en) 2017-08-17
CN103918273B (zh) 2017-11-17
US9641835B2 (en) 2017-05-02
BR112014011155A2 (pt) 2017-05-16
BR112014011155B1 (pt) 2023-04-04
US9866850B2 (en) 2018-01-09
BR112014011155A8 (pt) 2022-11-01
WO2013070974A3 (en) 2014-01-03
US20130322547A1 (en) 2013-12-05
KR20140098110A (ko) 2014-08-07
KR101672107B1 (ko) 2016-11-02
WO2013070974A2 (en) 2013-05-16

Similar Documents

Publication Publication Date Title
CN103918273A (zh) 确定用于变换系数的二进制码字的方法
CN103931197A (zh) 确定用于变换系数的二进制码字的方法
JP5733590B2 (ja) 変換係数レベルを符号化するコンテキストモデリング技法
JP7325553B2 (ja) 符号化・復号化の方法、装置、および記憶媒体
ES2879573T3 (es) Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad
JP2023058526A (ja) 統一された有意性マップ符号化方法および装置
KR101461209B1 (ko) 2d 매트릭스들에 인코딩 파라미터들을 저장하는 이미지 압축을 위한 방법 및 장치
US10623742B2 (en) Method of determining binary codewords for transform coefficients
TW202029765A (zh) 用於編碼或解碼轉換塊的方法與裝置
ES2588154T3 (es) Método de generación automática de procedimientos de generación de valores de predicción de píxel, método de codificación de imágenes, método de descodificación de imágenes, dispositivos que usan estos métodos, programas para estos métodos y medio de grabación en el que estos programas están grabados
CN102783035B (zh) 并行熵编码方法和设备
CN103597838B (zh) 对末位有效系数的位置进行编码和解码的方法和设备
JP2010502102A (ja) 低減された解像度の分割の方法及び装置
CN107465916A (zh) 编码/解码帧内预测模式的方法及装置
CN104718758A (zh) 变换域帧内预测
CN102939719A (zh) 用于在二进制熵编码和解码中减少源的方法和设备
KR20180040515A (ko) 부호화 장치, 복호화 장치, 그 부호화 및 복호화 방법
EP1445957A1 (en) Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system
KR101673186B1 (ko) 매크로블록의 연관관계를 고려하여 영상 데이터의 부호화 및 복호화를 병렬 처리하는 장치 및 방법
RU2668390C9 (ru) Устройство декодирования изображения, способ декодирования изображения и долговременный считываемый компьютером носитель записи
KR100674937B1 (ko) 컨텍스트 적응형 이진 산술 복호화 장치
US11089326B2 (en) Moving image encoding device, moving image encoding method, moving image decoding device, and moving image decoding method
JP5307681B2 (ja) 画像符号化構造の自動生成方法,画像符号化構造の自動生成装置およびそのプログラム
JP2017073598A (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
CN107995496A (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160316

Address after: American California

Applicant after: Technology Holdings Co., Ltd of Google

Address before: Illinois State

Applicant before: Motorola Mobility, Inc.

GR01 Patent grant
GR01 Patent grant