高性能变长编解码方法及装置制造方法

文档序号:7814316阅读:234来源:国知局
高性能变长编解码方法及装置制造方法
【专利摘要】本发明公开了一种高性能变长编解码方法及装置,其在编码端编码装置对像素点残差的映射值进行编码,具体编码方法为:首先采用Huffman编码方法编码像素点残差的映射值的Golomb系数Q,然后采用Golomb编码方法编码像素点残差的映射值的Golomb余数R,在解码端采用解码装置对比特流进行解码,具体解码方法为:在一个时钟周期内首先读取多个像素点的比特流,接着并行解码各像素点的Q和R,最后根据Q和R并行计算出各像素点的残差的映射值,通过本发明,可有效解决现有变长编码方法中编码效率低和解码装置时延长、面积大等的问题。
【专利说明】高性能变长编解码方法及装置

【技术领域】
[0001] 本发明关于一种编解码方法及装置,特别是涉及一种视频或图像处理领域的高性 能变长编解码方法及装置。

【背景技术】
[0002] 图像或视频是一种有效生动的信息表达方式,目前在电视、视频会议和DVD等领 域得到了广泛的使用。为了解决图像或视频存储成本高和传输带宽大等缺点,国际上相关 组织制定了视频压缩标准如MPEG-x系列和图像压缩标准JPEG系列等。图像或视频压缩标 准中的主要编码方法有Huffman编码、Golomb-Rice编码和算术编码,使得编码效率更高。
[0003] Huffman编码:Huffman编码是一种无损的熵编码方式,其主要的编码思想是:对 出现概率较高的信息分配以较少的码字,出现概率较小的信息分配以较多的码字。其缺点 是:当信息种类比较多(如256种)且概率分布均匀时,压缩效率将非常低,而且解码装置 需用多级的多路选择器,不仅产生巨大的延迟同时使得解码装置面积增大。
[0004] Golomb-Rice编码:Golomb-Rice编码是一种无损的熵编码方式,其主要编码方式 是:根据预先设定的K值,首先计算得出系数Q,编码Q个0 ;接着编码一位标志位M,此时M 值必为1 ;最后用K位编码余数R。其缺点是:当预先设定的K值不准确时,压缩效率将非常 低,而且解码装置需用多级的多路选择器,不仅产生巨大的延迟同时使得解码装置面积增 大。


【发明内容】

[0005] 为克服上述现有技术存在的不足,本发明之目的在于提供一种高性能变长编解码 方法及装置,其有效地解决了现有变长编码方法中编码效率低和解码装置时延长、面积大 等的问题,实现了高性能变长编解码。
[0006] 为达上述及其它目的,本发明提出一种高性能变长编码方法,包括如下步骤:
[0007] 步骤一,根据当前行像素值和已编码像素值,计算出预测值;
[0008] 步骤二,根据该预测值与当前像素值计算出残差值并映射为非负整数;
[0009] 步骤二,根据已编码像素值的彳目息计算出Golomb-Rice编码所需的K值;
[0010] 步骤四,米用Huffman编码方法编码像素点残差的映射值的Golomb系数Q,然后米 用Golomb编码方法编码像素点残差的映射值的Golomb余数R,对所有待编码残差映射值进 行编码;
[0011] 步骤五,对编码后产生的变长码字进行打包产生最终比特流。
[0012] 进一步地,步骤四进一步包括如下步骤:
[0013] 步骤2. 1,根据K值利用残差映射值计算公式计算出待编码的残差映射值的 Golomb系数Q和Golomb余数R;
[0014] 步骤2. 2,采用Huffman编码方式编码待编码的残差映射值的Golomb系数Q;
[0015] 步骤2. 3,米用Golomb编码方法并利用二进制编码待编码的残差映射值的Golomb 余数R;
[0016] 步骤2. 4,把该Golomb系数Q和该Golomb余数R聚合产生待编码的残差映射值的 变长码字;
[0017] 步骤2. 5,循环步骤2. 1?34编码所有的待编码的残差映射值。
[0018] 进一步地,步骤2. 1中的残差映射值计算公式为:
[0019] dm=QX2k+R
[0020] 其中,dm为待编码的残差映射值,Q为Golomb系数Q,R为Golomb余数R。
[0021] 进一步地,步骤2. 2中,该Huffman编码方式为根据预先制定的码表编码该Golomb 系数Q值。
[0022] 为达到上述目的,本发明还提供一种高性能变长解码方法,包括如下步骤:
[0023] 步骤一,对原比特流进行解包操作产生Golomb-TT解码装置所需的最长比特流;
[0024] 步骤二,根据当前行像素值和已编码像素值计算出预测值;
[0025] 步骤二,根据已编码像素值的彳目息计算出Golomb-Rice解码所需的K值;
[0026] 步骤四,利用该Golomb-TT解码装置并行解码多个像素点的Golomb系数Q和 Golomb余数R,并根据K值以及Golomb系数Q和Golomb余数R,利用残差映射值计算公式 计算出各像素点的残差映射值;
[0027] 步骤五,根据预测值与当前残差映射值进行反映射并计算出当前像素值。
[0028] 进一步地,于步骤四中,采用Huffman解码方式解码Golomb系数Q,从比特流中解 码出二进制的Golomb余数R值,并根据K、Q和R值,利用该残差映射值计算公式计算出各 像素点的残差映射值。
[0029] 进一步地,该残差映射值计算公式为:
[0030] dm=QX2k+R
[0031] 其中,dm为待解码的残差映射值,Q为Golomb系数Q,R为Golomb余数R。
[0032] 为达到上述目的,本发明还提供一种高性能变长解码装置,至少包括:
[0033] 解包模块,对原比特流进行解包操作产生Golomb-TT解码装置所需的最长比特 流;
[0034] 预测模块,根据当前行像素值和已编码像素值计算出预测值;
[0035] K值计算模块,根据该已编码像素值的信息计算出Golomb-Rice解码所需的K值;
[0036] Golomb-TT解码装置,于一个时钟周期内至少读取三个像素点的比特流,并行采用 Huffman解码方式解码各像素点的Golomb系数Q,从比特流中解码出二进制的各像素点的 Golomb余数R,并根据K值、Golomb系数Q和Golomb余数R并行计算出各像素点的残差的 映射值;
[0037] 反映射模块,根据预测值pix_pred与当前残差映射值进行反映射,计算出当前像 素值。
[0038] 进一步地,该Golomb-TT解码装置采用二分法解码Huffman解码方式中的Huffman 码表,以减少解码Golomb系数Q中的多路选择器的级数。
[0039] 进一步地,该Golomb-TT解码装置采用并行方式在一个时钟周期内解码多个像素 点分量,并在解码第n个像素点分量的Golomb系数Q时并行加法第n-1个像素点分量所消 耗的比特数。
[0040] 与现有技术相比,本发明一种高性能变长编解码方法及装置通过先采用Huffman 编码方法编码像素点残差的映射值的Golomb系数(Quotient,Q),然后米用Golomb编码方 法编码像素点残差的映射值的Golomb余数(Remainder,R),并在解码端解码时采用二分法 减少Huffman解码所需多路选择器的级数,同时采用并行的方式解决时延长的问题,有效 地解决了现有变长编码方法中编码效率低和解码装置时延长、面积大等的问题。

【专利附图】

【附图说明】
[0041] 图1为本发明一种高性能变长编码方法的步骤流程图;
[0042] 图2为本发明一种高性能变长编码方法的一个应用场景示意图;
[0043] 图3为本发明一种高性能变长编码方法中步骤104的细部流程图;
[0044] 图4为本发明一种高性能变长解码方法的步骤流程图;
[0045] 图5为本发明一种高性能变长解码装置的系统架构图;
[0046] 图6为本发明中每个时钟解码3个分量的dm值的波形示意图;
[0047] 图7为采用传统方法解码Golomb-TT解码装置中的Q值时最长路径示意图;
[0048] 图8为本发明Golomb-TT解码装置中解码Q值时最长路径示意图
[0049] 图9为本发明所提出的Golomb-TT解码装置的并行解码过程示意图 图10为本发明采用并行方式解决时延问题的示意图。
[0050] 以下通过特定的具体实例并结合【专利附图】
附图
【附图说明】本发明的实施方式,本领域技术人员可 由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同 的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离 本发明的精神下进行各种修饰与变更。
[0051] 在说明本发明之前,先对本发明所涉及的几个名词进行定义说明:
[0052] (1)映射:设A、B是两个非空集合,如果存在一个法则F,使得对A中的每个元素 a,按法则F,在B中有唯一确定的元素b与之对应,则称F为从A到B的映射;
[0053](2)残差值:预测值与当前值的差值;
[0054] (3)多路选择器:在多路数据传送过程中,能够根据需要将其中任意一路选出来 的电路;
[0055] (4)二分法:一分为二的方法;
[0056] 图1为本发明一种高性能变长编码方法的步骤流程图,图2为本发明一种高性能 变长编码方法的一个应用场景示意图。如图1及图2所示,本发明一种高性能变长编码方 法,包括如下步骤:
[0057] 步骤101,根据当前行像素值和上一行等已编码像素值(f(x-1,x-2,… y-l,y-2…))计算出预测值(pix_pred)。
[0058] 步骤102,根据pix_pred与当前像素值(pix_cur)计算出残差值并映射为非负整 数(diffmap,dm),例如残差值为-255?255的dm值为0?510。
[0059] 步骤103,根据上一行等已编码像素值f(x_l,x_2,…y-1,y_2…)/[目息计算出 Golomb-Rice编码所需的K值。
[0060]步骤104,采用Huffman编码方法编码像素点残差的映射值dm的Golomb系数 (Quotient,Q),然后采用Golomb编码方法编码像素点残差的映射值dm的Golomb余数 (Remainder,R),对所有待编码dm值进行编码;为叙述方便,步骤104称之为Golomb-TT编 码方法。
[0061] 步骤105,对编码后产生的变长码字(codeword,cw)进行打包产生最终比特流 (bitstream,bs) 〇
[0062] 表1为现有的定长编码方法和传统Golomb-Rice(K= = 2)编码方法与本发明所 提出的Golomb-TT(K== 2)编码方法对dm值编码后产生的码字及所需比特数的对比表, 其中"x"表示取值可为0或1,{y}表示该码字长度,y可取值所有非负整数。表1中具体 含义为:
[0063] 第一列:四个数为一组的dm值的索引;
[0064] 第二列:残差值为-255?255时dm值的所有可能取值,其中前127行为4个数一 组,最后一行即128行为2个数一组;
[0065] 第三列:定长编码的码字和码字长度;
[0066] 第四列:Golomb-Rice编码的码字和码字长度;
[0067] 第五列:Golomb-TT编码的码字和码字长度;
[0068] 表1本发明所提出的Golomb-TT编码方法与现有编码方法对比

【权利要求】
1. 一种高性能变长编码方法,包括如下步骤: 步骤一,根据当前行像素值和已编码像素值,计算出预测值; 步骤二,根据该预测值与当前像素值计算出残差值并映射为非负整数; 步骤三,根据已编码像素值的信息计算出Golomb-Rice编码所需的K值; 步骤四,采用Huffman编码方法编码像素点残差的映射值的Golomb系数Q,然后采用 Golomb编码方法编码像素点残差的映射值的Golomb余数R,对所有待编码残差映射值进行 编码; 步骤五,对编码后产生的变长码字进行打包产生最终比特流。
2. 如权利要求1所述的一种高性能变长编码方法,其特征在于,步骤四进一步包括如 下步骤: 步骤2. 1,根据K值利用残差映射值计算公式计算出待编码的残差映射值的Golomb系 数Q和Golomb余数R ; 步骤2. 2,采用Huffman编码方式编码待编码的残差映射值的Golomb系数Q ; 步骤2. 3,采用Golomb编码方法并利用二进制编码待编码的残差映射值的Golomb余数 R; 步骤2. 4,把该Golomb系数Q和该Golomb余数R聚合产生待编码的残差映射值的变长 码字; 步骤2. 5,循环步骤2. 1?34编码所有的待编码的残差映射值。
3. 如权利要求2所述的一种高性能变长编码方法,其特征在于,步骤2. 1中的残差映射 值计算公式为: dm = QX2k+R 其中,dm为待编码的残差映射值,Q为Golomb系数Q,R为Golomb余数R。
4. 如权利要求2所述的一种高性能变长编码方法,其特征在于:步骤2. 2中,该 Huffman编码方式为根据预先制定的码表编码该Golomb系数Q值。
5. -种高性能变长解码方法,包括如下步骤: 步骤一,对原比特流进行解包操作产生Golomb-TT解码装置所需的最长比特流; 步骤二,根据当前行像素值和已编码像素值计算出预测值; 步骤三,根据已编码像素值的信息计算出Golomb-Rice解码所需的K值; 步骤四,利用该Golomb-TT解码装置并行解码多个像素点的Golomb系数Q和Golomb 余数R,并根据K值以及Golomb系数Q和Golomb余数R,利用残差映射值计算公式计算出 各像素点的残差映射值; 步骤五,根据预测值与当前残差映射值进行反映射并计算出当前像素值。
6. 如权利要求5所述的一种高性能变长解码方法,其特征在于:于步骤四中,采用 Huffman解码方式解码Golomb系数Q,从比特流中解码出二进制的Golomb余数R值,并根 据K、Q和R值,利用该残差映射值计算公式计算出各像素点的残差映射值。
7. 如权利要求6所述的一种高性能变长解码方法,其特征在于:该残差映射值计算公 式为: dm = QX2k+R 其中,dm为待解码的残差映射值,Q为Golomb系数Q,R为Golomb余数R。
8. -种高性能变长解码装置,至少包括: 解包模块,对原比特流进行解包操作产生Golomb-TT解码装置所需的最长比特流; 预测模块,根据当前行像素值和已编码像素值计算出预测值; K值计算模块,根据该已编码像素值的信息计算出Golomb-Rice解码所需的K值; Golomb-TT解码装置,于一个时钟周期内至少读取三个像素点的比特流,并行采用 Huffman解码方式解码各像素点的Golomb系数Q,从比特流中解码出二进制的各像素点的 Golomb余数R,并根据K值、Golomb系数Q和Golomb余数R并行计算出各像素点的残差的 映射值; 反映射模块,根据预测值pix_pred与当前残差映射值进行反映射,计算出当前像素 值。
9. 如权利要求8所述的一种高性能变长解码装置,其特征在于:该Golomb-TT解码装 置采用二分法解码Huffman解码方式中的Huffman码表,以减少解码Golomb系数Q中的多 路选择器的级数。
10. 如权利要求9所述的一种高性能变长解码装置,其特征在于:该Golomb-TT解码 装置采用并行方式在一个时钟周期内解码多个像素点分量,并在解码第n个像素点分量的 Golomb系数Q时并行加法第n-1个像素点分量所消耗的比特数。
【文档编号】H04N19/503GK104349165SQ201410469348
【公开日】2015年2月11日 申请日期:2014年9月16日 优先权日:2014年9月16日
【发明者】王洪剑, 林江, 田磊磊 申请人:上海通途半导体科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1