影像译码装置及方法

文档序号:6459693阅读:152来源:国知局
专利名称:影像译码装置及方法
影像译码装置及方法
技术领域
本发明有关于影像译码,特别是有关于一种影像译码器及其译码方法,用以于 低显示分辨率时进行高速处理。
背景技术
联合照相专家群(joint photographic expert group, JPEG)格式为一种常用 的影像压缩格式。联合照相专家群格式有助于处理多媒体通讯,像是具有大量像素的 影像,在使用联合照相专家群格式压縮后,即可兼容于数字相机、移动电话或计算机。 虽然联合照相专家群格式的好处在于能够减少影像储存设备的需求,但于译码及编码 时,特别是对高通量(high throughput demands)而言,往往需要大量的计算与时 间。
对联合照相专家群的压縮比特流进行解压縮时,通常译码程序包括标头剖析 (header parsing)、霍夫曼角牟码(Huffman decoding)、反量化(de_quantization)、 反离散余弓玄变换(inverse discrete cosine transform, IDCT)、缩小(downscal ing) 与颜色空间转换(color space converting)。 一般而言,数字相机所撷取与预存影 像的分辨率会远大于显示装置的分辨率,例如电视或打印机。当由高分辨率转换或译 码至低解度时,将略过该原始影像所不需要的详细信息。举例而言,于美国专利H1684、 6,067, 384与7,050,656中,是揭露一些技术,用以改善反离散余弦变换与縮小过程 的解码效率。
除此之外,于霍夫曼解码过程中,亦有各种技术被提出,像是美国专利 RE039,925、 6, 798, 365与5, 825, 312,用以改善解码的效率。然而,于一原始影像的 -单位区块中,全部的编码数据,例如 一个8 x 8区块的离散余弦变换(discrete cosine transform, DCT)系数,于霍夫曼译码程序进行时,仍然需要完全地导出或 解出。
图1显示一现有霍夫曼译码程序10流程图,用以说明一个8 x 8区块的解码操作。于一原始影像中,每一个8 x 8区块通常会被变换为64个频率系数,称为离散 余弦变换系数,包括一直流系数(DC coefficient)与随后的63个交流系数(AC coefficients)。于一比特流中,当取得对应于该区块的一特定单元时,首先对该特 定单元执行一直流译码程序,以得到该区块的一直流系数(步骤S102)。接着,执
行一交流译码程序,对该特定单元的剩余部份执行译码,用以产生该区块的交流参数 (歩骤S104)。同时,提供一判断程序,用以判断是否巳解出该区块的全部交流系 数(步骤S106)。也就是说,只有在该区块的63个交流系数产生时,该己知霍夫曼 译码程序10才全部完成。对于低显示分辨率的使用情况而言,冗长且耗时的交流解 码操作变得相当不切实际,其中,因为仅需要有限数目的交流系数,对该特定单元进 行部份译码,即可产生足够交流系数,用以维持可接受的传真度(fidelity)。
因此,需要一种改进的译码方法及装置,于霍夫曼译码程序中,能够实时略过 一区块所不需要的交流系数,从而改善整体的解码效率。

发明内容
因此,本发明提供一影像译码装置及方法,于低显示分辨率时,不需额外的处 理成本,通过有效地略过不需要的交流系数来改善区块的解码效能。
一方面,本发明揭露一种影像译码装置,用以于霍夫曼译码程序中,能够快速 地略过一区块所不需要的交流系数。该影像译码装置包括 一剖析器与一交流译码器。 该剖析器剖析一比特流,用以取得一第一单元。该第一单元包括 一直流码与复数的 交流码,分别对应于该影像的一第一区块的一直流系数与交流系数。该交流译码器对 该第一单元的该等交流码进行译码,用以产生该第一区块的复数的第一交流系数,并
判断该等第一交流系数的个数是否超过一既定参数。若超过,该交流译码器对该第一 单元执行一交流系数略过程序,用以取得该比特流的一第二单元,对应于一第二区块, 其中,每一交流码包括一霍夫曼码与一可变长度整数码。
另一方面,本发明提供一影像译码方法,用以于霍夫曼译码程序中,略过一区 块所不需要的交流系数。该影像译码方法首先取得一比特流的一第一单元。该第一单
元包括 一直流码与复数的交流码,分别对应于该影像的一第一区块的一直流系数与
交流系数。然后,对该第一单元执行一影像译码程序的一第一阶段,依据该等交流码, 产生该第一区块的复数的第一交流系数。接着,判断该等第一交流系数的个数是否超 过一既定参数。若超过,对该第一单元执行该影像译码程序的一第二阶段,用以取得
9该比特流的一第二单元,对应于一第二区块。该交流码包括 一霍夫曼码与一可变长 度整数码。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合 所附图示,详细说明如下。


图l显示一现有霍夫曼译码程序流程图,用以说明一区块的解码操作;
图2显示依据本发明实施例的一译码程序流程图,用以说明一区块的解码操作;
图3显示依据本发明实施例的一影像译码装置方块图4是依本发明实施例的一交流系数略过程序示意图,用以说明将一比特流的 一编码单元数据译码为离散余弦系数;
图5是依第3及4图实施例的一单一步骤略过程序流程图6是依本发明另一实施例的一交流系数略过程序示意图,用说明将一比特流 的一编码单元数据译码为离散余弦变换系数;
图7显示依据图6实施例的一多重步骤略过程序流程图8是依图6及7实施例的一程序示范流程图,用以说明于一比特流的一编码 单元数据中,对一N位数据进行译码;以及
图9是依本发明另一实施例的一程序,用以说明建立一N位预先译码表的示范 流程图。
具体实施方式
下文说明本发明的较佳实施方式,用以更容易了解本发明,并非用以限制本发 明。本发明的保护范围当视后附的申请专利范围所界定者为准。
图2显示依据本发明实施例的一译码程序20流程图,用以说明一个8 x 8区块 (例如 一第一区块)的解码操作。该译码程序20大体上类似于图1的现有霍夫曼 译码程序IO。具体地,图2与图l最大不同的处在于一交流系数略过程序。
于一实施例中,取得一比特流的一第一单元,作为译码使用。如前所述,该第 一单元包括 一直流码(DC code)与复数的交流码(AC codes),分别对应于一影 像的该第一区块的一直流码(DC coefficient)与交流码(AC coefficients)。
参考图2,利用一直流译码程序(步骤S202)产生该第一区块的一直流系数。依据该等交流码,执行一交流译码程序,用以产生该第一区块的复数的第一交流系数(步骤S204)。再者,利用一既定参数AC^u判断是否执行该交流系数略过程序(步骤S208)。该既定参数AC,^t相关于一显示分辨率及对该第一区块执行该交流译码程序所产生的交流系数。
于本发明的一实施例中,该既定参数AC^u的一范例方程式,但非限定,定义
如下
,64、—丄
2
VW 乂
其中, 64表示一个8 x 8区块的所有离散余弦变换系数的个数总和,意即,1个直流系数与63个交流系数,而n表示一原始分辨率与一显示分辨率的縮放比率,取决于该影像的一水平分辨率或一垂直分辨率。
举例来说,若该影像具有一原始分辨率为2560 x 1920,而该影像的一显示分
2560 ^ 1920
w =
=2 =-= 2
辨率为1280 x 960。由于 1280 或 960 ,该原始分辨率与该显示
-1 = 15
分辨率的縮放比率为2,。因此,该既定参数ACnw^、2 y
于此实施例中,针对该第一区块,当已产生至少15个交流系数时,由于已到达该既定参数AClimit,接着便决定执行该交流系数略过程序(步骤S210)。
于本发明的一实施例中,于该交流系数略过程序中,对于该第一区块而言,将剩余交流系数直接设定为0,而不需进一步解码,从而减少交流系数的解码时间。继续执行该交流系数略过程序,直到该第一区块所有63个直流系数均被解出或设为零值(歩骤S206)。于该交流系数略过程序完成后,取得该比特流的一第二单元,对应于该第一区块后面的一第二区块。依据本发明的该交流系数略过程序将参考第4与5图说明如下。
值得注意的是,当该影像的该显示分辨率(例如1280 x 960)大于该原始分
辨率(例如2560 x 1920)时,也就是,当縮放比率W〈1时,则定义该既定参数ACi^为该区块的交流系数的总数(意即,AC,imit=63),用以表示该区块的所有交流系数均需要被解出。
另外,值得注意的是,若该原始分辨率显著地大于该显示分辨率,例如,当縮放比率为"^8时,则设定该既定参数ACn^的值为0,用以略过该区块所有交流系数。就此而言,针对该显示分辨率,仅该直流系数为必须的。
图3显示依据本发明实施例的一影像译码装置30方块图。参考图3,该影像译码装置30包括 一剖析器310、 一直流(DC)译码器314与一交流译码器312。该剖析器310剖析一比特流302,用以取得欲进行译码的一编码单元数据304,例如,一第一单元。该第一单元包括 一直流码与复数的交流码,且对应于该影像的一第一区块的一直流系数与交流系数。举例来说,该第一区块为一个8x8区块,且包括一个直流系数与随后的63个交流系数。该比特流302为一霍夫曼编码比特流。该直流译码器314耦接于该剖析器310,用以接收该第一单元的直流码,且重新产生该第一区块的一直流系数330。该交流译码器312耦接于该直流译码器314。该交流译码器312对该第一单元的该等交流码进行译码,以产生该第一区块的复数的第一交流系数332与334。产生该第一区块的该等第一交流系数332与334的程序将于底下做详细说明。更进一步,该直流译码器312判断该等第一交流系数332与334的个数是否超过一既定参数AC^t。若超过,该交流译码器312对该第一单元执行一交流系数略过程序,以便取得下一个编码单元数据304,像是该比特流302的一第二单元,对应于该第一区块后面的一第二区块。值得注意的是,于该编码单元数据304中,每一交流码包括一霍夫曼码(Huffman code)与一可变长度整数码(VLI code)。
更具体地,该交流译码器312进一步包括 一霍夫曼译码单元340、 一可变长度整数(VLI)译码单元342、 一计数器344与一决策单元346。该霍夫曼译码单元340依据每一交流码的霍夫曼码,用以撷取出具有一零值长度与一非零值长度的长度信息306。因此,依据该零值长度,该等第一交流系数332会被设定为0。然后,该可变长度整数译码单元342接收该非零值长度,且依据每一交流码的该可变长度整数码与霍夫曼译码单元340的该非零值长度,用以产生一既定交流系数334。该计数器344累加该霍夫曼译码单元340所产生交流系数的个数。如此一来,该决策单元346,则依据该既定参数AC^u、该长度信息306与该计算器344累加的数目,用以判断是否对该第一单元执行该交流系数略过程序。值得注意的是,该交流系数略过程序,用以略过该第一区块内不需要的交流系数,将配合第4与5图详细说明如下。
图4是依本发明实施例的一交流系数略过程序示意图,用以说明将一比特流的一编码单元数据译码为离散余弦系数404。于此实施例中,该编码单元数据为一比特流302,如图3所示的一第一单元402。除此之外,该交流系数略过程序为一单一
12步骤略过程序428。
参考图4,该第一单元402包括DC—code 406及复数的交流码,例如AC—code,,,AC—codei—,,, AC—codei、 AC—codei+,、 AC—codew等。对于一影像的一第一区块而言,DC—code 406与该等交流码分别对应于离散余弦变换系数404的DC—coefficient 408与交流系数,由AC—coefficient,至AC—coefficients
于操作上,每一交流码,例如AC—code, 410,包括Huffman—code, 412与VLI一code'414。如上所述,将该交流码410传送至图3的该交流译码器312,用以产生一些对应的交流系数,如图4所示,例如包括ri个零值的系数416与一既定交流系数AC_coeff icientj 418。更具体地,该霍夫曼译码单元340对Huffman_codei 412执行一霍夫曼译码方法424,用以撷取出一零值长度与一非零值长度,例如Run—Length, 420与VLI—length, 422。再者,该已产生的既定交流系数418利用VLI—code, 414与VLI—length, 422。也就是说,图3的该可变长度整数译码单元342通过对VLI—codei 414与VLI—length, 422执行一可变长度整数译码方法426,用以决定该既定交流系数418。
于此实施例中,假设该零值长度的值为I,则表示该既定交流系数418前面为0值的个数。因此,自AC—codei410所得到的交流系数的全部个数为。此外,同样通过该霍夫曼译码单元340,以取得Huffman—code, 412与VLI—codei 414的位长度。参考图4,根据该霍夫曼码412 (如hi位)与可变长度整数码414 (如Si位)的位长度,该位长度等于(hi+s,)位。
当VLI—codei 414的位长度为0 (也就是,Si等于0)时,则
用连续零值长度(ZRL)及区块终点(E0B)两个标记来处理,分别用来表示16个零值的交流系数、以及该第一区块结束前所剩余的交流系数全为零值。
上述译码该第一单元402的程序,用以产生图4的该离散余弦变换系数404,以下将配合第3与4图详述该单一步骤略过程序428。
如前所述,图3的该决策单元346判断是否对图4的该第一单元402执行该单一歩骤略过程序428。需注意在此假设该影像的原始分辨率为2560 x 1920而显示分辨率为1280 x 960。因此,该縮放比率n等于2,进而决定该既定参数AClimit=15。所以,针对上述显示分辨率,大体上15个交流系数即足够,而不用解出该第一区块的63个交流系数。
如图4所示,对一交流码进行译码后,如AC—codei 410,假设已达到该既定系数AClim,t。紧接着,图3的该决策单元346决定执行图4的该单一步骤略过程序428。于此实施例中,如图4所示,该霍夫曼译码单元340译码一目前交流码,例如AC—codei+1 430,具有Huffman—codei+l 432及VLI—codei+1 434。随后,重新产生Huffman—codei+l 432的一零值长度与一非零值长度。此外,Huffman—codei+1 432的位长度(例如hw位)与VLI—code", 434的位长度(例如Sw位)为(hi+l+si+1)位。然后,丢弃该数据的(h,',+ s,+l)位,以从该第一单元402取得一下一个交流码,例如AC—COdei+2 436。该计数器344利用该零值长度决定一第一数值,用以累加所得到的交流系数总数。举例而言,若Huffman—codew 432的零值长度为3,则该第一数值为15 (AC_codei 410的交流系数)+ 3 + 1 (AC—codei+1 430的一既定交流系数)=19。由于该第一数值小于该第一区块的交流系数总数,该霍夫曼译码单元340继续对AC—codei+1 430后面的AC—codei+2 436的Huffman—codei+2 438进行译码,更进一步,如图4所示,撷取出AC—codei+2 436的Huffman—codei+2 438与VLI—codei+2 440的位长度。除此之外,不管VLI—code—, 434的内容,将AC—codei+l 430的4个交流系数全部设为0。
特别地是,当该第一数值大于63时,或当零值长度与该非零值长度均为0 (例如区块终点标记)时,则表示目前为一区块的结束位置,而必须开始执行一新区块的译码程序。因此,AC—code", 430为该第一单元402的最后交流码,且完成该第一区块的该单一步骤略过程序428。
图5是依第3及4图实施例的一单一步骤略过程序50流程图。
参考第3、4及5图,依据本发明的一实施例,当该决策单元346决定执行一单一步骤略过程序50时,接着对一目前交流码(例如AC一code,+, 430)的霍夫曼码执行一霍夫曼译码方法,用以撷取出一零值长度(像是AC—COdei+1 430的i"w)与该目前交流码的一非零值长度。亦取得该目前交流码的霍夫曼码与该可变长度整数码的位长度,例如,各自为AC—codei+1 430的hw位及AC—codei+, 430的sw位(步骤S502)。
接着,如图4所示,计算用以略过该目前交流码的略过位,例如对应于AC—codei+1 430的(hi+1+ si+l)位。也就是,该略过位为(hi+l+ si+1)位,且将(hi+l+ s",)位丢弃,用以取得该目前交流码后面的一下一个交流码,如图4所示的AC—COdei+2 436(步骤S504)。'
然后,判断该目前交流码的该可变长度整数码的位长度与该零值长度是否均为0 (步骤S506)。若均为0,以ri+, = si+1 = 0为例,AC_codei+1 430则为目前所处理区
14块的区块终点标记(步骤S508)。若不全为O,则依据该目前交流码所取得的零值长度,于该目前交流码中,决定要略过的零值交流系数总数(步骤S510)。最后,于
目前所处理区块中,累加所有己产生的交流系数个数。上述累加值用以判断是否执行
该霍夫曼译码方法,以继续对下一个交流码进行译码。通过此单一步骤略过程序50,较先前技术大幅改善了译码速度与通量。
图6是依本发明另一实施例的一交流系数略过程序示意图,用说明将一比特流的一编码单元数据译码为离散余弦变换系数604。于此实施例中,该编码单位数据为一比特流302 (图3)的一第一单元602,对应于一影像的一第一区块。进一步,该交流系数略过程序为一多重步骤略过程序628。
同样地,如前所述,对一交流码进行译码后,如AC—codei 610,假设已达到一既定参数AC,imit。则将该第一区块的剩余交流系数设为零值。
接着,图3的该决策单元346决定执行图6的该多重步骤略过程序628。图3的该霍夫曼译码单元340对该第一单元602的一 N位数据642进行译码,以重新产生总略过位(L)、总交流系数计数值(R)与一旗标,其中,该总交流系数计数值表示由该N位数据642解出的交流系数。值得注意的是,该N位数据642包括复数的交流码,例如AC—code1+1 630、 AC—codei+2 636等等。译码该N位数据642的程序将考图8详细说明如下。
于此实施例中,该旗标为一区块终点标记,包括一第一状态与一第二状态,分别表示是否已找到该第一区块的该第一单元602的结束位置。同样地,该旗标的判断将参考图8详细说明如下。
于图3中,该决策单元346自该计数器344取得一第二数值,是通过将该总交流系数计数值(R)及交流系数的累加个数相加而得,其中,后者的交流系数是由图6的该第一单元602所产生。
更进一步,该决策单元346判断该第二数值是否超过该第一区块的63个交流系数。若超过,则决定该旗标的状态(例如 一区块终点标记)。当该旗标为该第二状态时,将略过个数为该总交流系数计数值的交流系数,并将对应的交流系数全设为0。于图6中,丢弃该第一单元602的该总略过位(L),用以取得该N位数据642后面的—一下一个n位数据644。图3的该霍夫曼译码单元340继续对该下一个n位数据644进行译码,其中,该下一个N位数据644包括AC—codej 638、 AC—codej+, 640等等。同时,当该旗标为该第一状态时,该决策单元346检査该第二数值是否等于63。根据上述的判断结果、该总略过位与该既定略过位,执行略过的操作,用以取得该比特流的一第二单元,对应于一第二区块,其中,该既定略过位为一常数,并与该旗标的
位长度相关,例如该区块终点标记的位长度。如此一来,便完成了该第一区块的第一单元的译码。
若该第二数值大于该第二单元602的63个交流系数,接着,略过该第一区块的
该总略过位(未图标)。换句话说,利用该单一步骤略过程序取代该多重步骤略过程
序,每次对一交流码进行译码,直到取得该第一单元602后面的一第二单元。更详细地来说,该霍夫曼译码单元340依序继续译码每一交流码(例如AC_codei 630、AC—COdei+, 636等),直到取得对应于一第二区块的该第二单元。图7显示依据图6实施例的一多重步骤略过程序流程图。
参考图3、 6与7,依据本发明的一实施例,当该决策单元346决定执行一多重步骤略过程序时,由一比特流的该第一单元602所取得的一 N位数据642将利用一霍夫曼译码方马进行译码。因此,重新产生总略过位(L)、总交流系数计数值(R)与一旗标(步骤S702),其中,该总交流系数计数值(R)表示自该N位数据642译码的交流系数。如上所述,该旗标为一区块终点标记,且具有一第一状态与一第二状态,分别表示是否巳找到该第一单元602的结束位置。再者,该旗标的判断与该N位数据642的译码程序将配合图8详述如下。
其次,于略过个数为该总交流系数计数值(R)的交流系数后,判断是否超过该第一区块的结束位置(步骤S704)。更明确地,如图6所示,通过比较一第二数值与该第一区块的63个交流系数来完成上述判断,其中,该第二数值为该总交流系数计数值(R)与交流系数所累加个数的和,而后者的交流系数由AC—COdei 630前面的交流码所产生。略过该第二数值后,若超过该第一区块的结束位置,则以一单一步骤略过方法取代该多重步骤略过方法,以便取得该第一单元602后面的一第二单元(步骤S720)。若没有超过,则进一步判断及确认该旗标的状态,例如 一区块终点标记EOB是否被设定(步骤S710)。
当确认该旗标为该第二状态时,该N位数据642所对应的交流系数将被设为零值,且利用总交流系数计数值(R)来略过交流系数的个数(步骤S706)。也就是说,将63个交流系数减去总交流系数计数值(R),以决定需要进一步处理的交流系数的个数。另外,丢弃该第一单元602的总略过位(L),以便取得该N位数据后面的下一个N位数据(步骤S708),像是图6中的一N位数据644。
16当确认该旗标为该第一状态时,进一步判断,在略过个数为总交流系数计数值(R)的交流系数后,是否到达该第一区块的结束位置(步骤S712)。具体而言,即判断该第二数值是否等于该第一区块的63个交流系数。
若是,则该旗标并非表示该第一单元602的结束位置,且需要额外略过该第一单元602,以取得与一第二区块相关的该第二单元(步骤S716)。于一实施例中,该额外略过取决于该总略过位(L)与一既定略过位LE,意即,(L+U)位,其中,该既定略过位LE为一常数,相关于该旗标的位长度,像是该区块终点标记的位长度。
若否,则丢弃该总略过位(L),以取得该第二单元(步骤S714)。
因此,如上所述,在丢弃(L)或(L+LR)位后,该多重步骤略过程序70完成该第一区块的略过程序(步骤S718)。
图8是依第6及7图实施例的一程序80示范流程图,用以说明于一比特流的一编码单元数据中,对一N位数据进行译码。
首先,一N位数据,标示为"—bit,从对应于一第一区块的一第一单元取得。分别初始化变量L (总略过位)、R (总交流系数计数值)与一旗标的状态。于此实施例中,该旗标为一区块终点标记EOB,用以表示对应于该第一区块的该第一单元的结束位置是否已经被找到(步骤S802)。
类似于图4所示的实施例,对该N位数据D^K执行一霍夫曼译码方法424,以撷取出一零值长度(r)。依据一译码结果,亦可取得该霍夫曼码(h位)与该非零值长度(s位)的位长度(步骤S804)。
进一步,进行译码时,判断该N位数据队-bu的位长度是否太短(步骤S806)。若是,直接输出该变量L、 R与该旗标状态,该程序80完成(步骤S820)。
另一方面,若该N位数据D^hu的位长度足够用于译码,则接着判断该非零值长度(s位)与该零值长度(r)的值是否均为0 (步骤S808)。
若是,则该旗标为该第一状态,表示找到一区块终点标记EOB,于此实施例中,设定区块终点标记E0B= 1。再者,该(h)位被用以更新该总略过位(L)(步骤S810),然后再输出该变量L、 R与该区块终点标记(步骤S820)。
若(s)或(r)的值不等于0,则该零值长度(r)被加至该总交流系数计数值R中,用以更新R值。然后,判断该更新的R值是否等于63或大于63 (步骤S812)。若是,如上所述,该程序80继续更新且输出该变量L、 R与该旗标的状态(步骤S810与S820)。进一歩,若该更新的R值小于63,则该程序80将L与R值更新如下(步骤S8M): L = L + h + s,以及 R = R + r + 1。
的后,判断该总略过位(L)是否到达N位(步骤S816)。若判断结果为是, 则输出该变量L、 R与该旗标状态以完成该程序80 (步骤S820)。否则,于该N位数 据队-hu中,通过丢弃该(h + s)位来进行更新(步骤S818)。然后,该程序80回 到执行该霍夫曼译码方法的步骤,以便针对更新的N位数据D^t重复前述的程序。
依据前述,由于冗长的判断程序,使得该N位数据队—bit的译码程序80变得非 常耗时而无法顺利进行,进而降低译码效能。进一步,参考图3,上述情况可借着事 先建立一N位预先译码表350来改善,用以纪录该N位数据D^u所有可能的译码结 果。
图9是依本发明另一实施例的一程序90,用以说明建立一 N位预先译码表350 的示范流程图。首先,取得一内存并加以初始化,用以建立该表350 (步骤S902)。 接着,设定一输入数据D的初始值为O (步骤S904)。该程序90译码该输入数据D, 用以产生总略过位(L)、总交流系数计数值(R)与一旗标状态(例如 一区块终点 标记)(步骤S906)。举例来说,利用上述图8的该程序80来对该输入数据(D) 进行译码。值得注意的是,该总略过位(L)、该总交流系数计数值(R)与该旗标状 态己详述于第6与7图及其相关实施例中,于此不加赘述。
其次,该总略过位(L)、该总交流系数计数值(R)与该旗标状态均被储存于 该表350的一对应地址中(步骤S910)。例如若N为16位且该输入数据D为0x0000, 则译码该输入数据D所产生的上述变量将储存于一对应地址920中。
进一歩,判断该输入数据D是否等于(2N - 1)(步骤S914)。若相等,则表 示该程序完成,建立具有2N个元素的N位预先译码表350。否则,将该输入数据D加 上l,意即,D = D + 1,且该程序90返回,对新的输入数据(D+l)进行译码,例 如D为0x0001 (步骤S908)。
使用图3的N位预先译码表350,依据该N位数据,该决策单元346能够通过 一对应地址,对所预存的译码结果进行査表,,以直接执行一多重步骤略过程序。举 例而言,若N为16位且该N位数据642为(2'6 - 2),依据(216 - 2)所指定的 一对应地址,直接从该表350中读出(216 - 2)的解码结果。因此,能够执行一高 效率的译码程序。
18如上所述,相较于现有技术,本发明所揭露的影像译码装置及方法,能够于低 显示分辨率时,略过区块中不需要的交流系数,进而减少解码时间,并利用一种简单 且可实行的方法,毋需大量牺牲影像传真度,而能大幅提升整体的解码效能。
虽然本发明巳以较佳实施例揭露如上,然其并非用以限定本发明,任何熟悉此 项技艺者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的 保护范围当视后附的申请专利范围所界定者为准。
权利要求
1.一种影像译码装置,包括一剖析器,用以剖析一比特流而取得一第一单元,其中,该第一单元包括一直流码与复数的交流码,分别对应于该影像的一第一区块的一直流系数与交流系数;以及一交流译码器,对该第一单元的该等交流码进行译码,用以产生该第一区块的复数的第一交流系数,以及判断该等第一交流系数的个数是否超过一既定参数,若超过,则对该第一单元执行一交流系数略过程序,用以取得该比特流的一第二单位,系对应于一第二区块,其中,每一交流码包括一霍夫曼码与一可变长度整数码。
2. 根据权利要求l所述的影像译码装置,其特征在于,更包括 一直流译码器,耦接于该剖析器与该交流译码器之间,用以依据该第一单元的直流码,取得该第一区块的该直流系数。
3. 根据权利要求2所述的影像译码装置,其特征在于,该既定参数由一方程式决定-<formula>formula see original document page 2</formula>其中,64表示该第一区块的该直流系数与交流系数的总数,以及n为一原始分 辨率与一显示分辨率的縮放比率,系取决于该影像的一水平分辨率或一垂直分辨率。
4. 根据权利要求1所述的影像译码装置,其特征在于,当该等第一交流系 数的个数超过该既定参数时,该交流译码器将该第一区块的剩余交流系数设定为0。
5. 根据权利要求l所述的影像译码装置,其特征在于,该交流译码器包括-一霍夫曼译码单元,用以依据每一交流码的霍夫曼码产生具有一零值长度与一非零值长度的长度信息;一可变长度整数译码单元,用以接受该非零值长度,并依据每一交流码的可变长度整数码与该非零值长度,用以产生一既定交流系数;一计数器,用以累加该霍夫曼译码单元所产生的交流系数的个数;以及 一决策单元,依据该计数器累加的数值、该既定参数及该长度信息,用以判断该第一单元是否执行该交流系数略过程序。
6. 根据权利要求5所述的影像译码装置,其特征在于,该决策单元通过操 作该霍夫曼译码单元以产生一目前交流码的零值长度与非零值长度,并从该计数器接 收一第一数值,是为该目前交流码的该等第一交流系数的个数与零值长度所累加的结 果,用以执行该交流系数略过程序,其中,依据该霍夫曼码的位长度所计算的一略过位与对应于、该目前交流码的可变 长度整数码,用以取得该目前交流码后面的一下一个交流码,以及其中,依据该第一数值,该决策单元判断该霍夫曼译码单元是否对该下一个交流 码的霍夫曼码进行译码。
7. 根据权利要求6所述的影像译码装置,其特征在于,于该目前交流码中, 当该可变长度整数码的位长度与该零值长度均为0时,该目前交流码为该第一单元的 最后交流码。
8. 根据权利要求5所述的影像译码装置,其特征在于,该决策单元执行该 交流系数略过程序,通过操作该霍夫曼译码单元,使其对该比特流的该第一单元的N 位数据进行译码,用以产生总略过位、总交流系数计数值与一旗标,该旗标具有一第 一状态与一第二状态,分别表示是否找到该第一区块的第一单元的结束位置;自该计 数器取得一第二数值,系由累加该总交流系数计数值与该等第一交流系数的个数而 得;以及,判断该第二数值是否超过该第一区块的交流系数总数;若超过,则操作该 霍夫曼译码单元,每次译码一交流码,直到于该比特流中取得该第二区块所对应的第 二单元。
9. 根据权利要求8所述的影像译码装置,其特征在于,当该第二数值小于 该第一区块的交流系数总数时,丢弃该第一单元的总略过位,用以取得该N位数据后 面的一下一个N位数据。
10. 根据权利要求8所述的影像译码装置,其特征在于,当该旗标具有该第 一状态时,该决策单元判断该第二数值是否等于该第一区块的交流系数总数,并操作 该霍夫曼译码单元,依据该总略过位与对应于上述判断结果的一既定略过位,用以于 该比特流中,取得该第二区块所对应的该第二单元,其中,该既定略过位为一常数,与该旗标的位长度相关。
11. 根据权利要求5所述的影像译码装置,其特征在于,该决策单元执行该 交流系数略过程序,通过一N位预先译码表来搜寻该比特流的第一单元中,一N位数 据的一译码结果;取得总略过位、总交流系数计数值与与一旗标,该旗标具有一第一 状态与一第二状态,分别表示是否找到该第一区块的第一单元的结束位置;当该旗标 具有该第二状态时,自该计数器取得一第二数值,系由累加该总交流系数计数值与该 等第一交流系数的个数而得;以及判断该第二数值是否超过该第一区块的交流系数总 数;若超过,则操作该霍夫曼译码单元,每次译码一交流码,直到于该比特流中,取 得该第二区块所对应的第二单元。
12. 根据权利要求3所述的影像译码装置,其特征在于,当该缩放比率W^8 时,则该既定参数为0。
13. 根据权利要求3所述的影像译码装置,其特征在于,当该縮放比率"〈1 时,则该既定参数为63。
14. 一种影像译码方法,系包括取得一比特流的一第一单元,其中,该第一单元包括一直流码与复数的交流码, 分别对应于该影像的一第一区块的一直流系数与交流系数;对该第一单元执行一影像译码程序的一第一阶段,并且依据该等交流码,产生该 第一区块的复数的第一交流系数;判断该等第一交流系数的个数是否超过一既定参数;以及当该等第一交流系数的个数超过该既定参数时,则对该第一单元执行该影像译码 程序的一第二阶段,用以取得该比特流的一第二单元,系对应于一第二区块; 其中,每一交流码包括一霍夫曼码与一可变长度整数码。
15. 根据权利要求14所述的该影像译码方法,其特征在于,更包括 于取得该第一单元后,依据该直流码,用以产生该第一区块的该直流系数。
16. 根据权利要求15所述的该影像译码方法,其特征在于,该既定参数由一 方程式决定<formula>formula see original document page 5</formula>其中,64表示该第一区块的该直流系数与交流系数的总数,以及n为一原始分 辨率与一显示分辨率的縮放比率,系取决于该影像的一水平分辨率或一垂直分辨率。
17. 根据权利要求14所述的该影像译码方法,其特征在于,更包括 当该等第一交流系数的个数超过该既定参数,将该第一区块的剩余交流系数设定为0。
18. 根据权利要求14所述的该影像译码方法,其特征在于,该影像译码程序 的该第一阶段包括对每一交流码的该霍夫曼码执行一霍夫曼译码方法,用以产生一零值长度与一非 零值长度;以及对每一交流码的可变长度整数码执行一可变长度整数译码方法,用以依据该非零 值长度,产生一既定交流系数。
19. 根据权利要求14所述的该影像译码方法,其特征在于,该影像译码程序 的该第二阶段为一单一步骤略过程序,包括对一 目前交流码的霍夫曼码执行一霍夫曼译码方法,用以取得该目前交流码的一零值长度与一非零值长度;依据对应该目前交流码的该霍夫曼码与该可变长度整数码,用以计算略过位; 依据该略过位,用以取得该目前交流码后面的一下一个交流码; 累加该目前交流码的该等第一交流系数的个数与零值长度,用以输出一第一数值;以及依据该第一数值,判断是否对该下一个交流码的该霍夫曼码执行该霍夫曼译码方法。
20. 根据权利要求19所述的该影像译码方法,其特征在于,于该目前交流码 中,当该可变长度整数码的位长度与该零值长度均为0时,该目前交流码为该第一单 元的最后交流码。
21. 根据权利要求19所述的该影像译码方法,其特征在于,该影像译码程序 的该第二阶段为一多重步骤略过方法,包括自该比特流的该第一单元,取得一N位数据;对该N位数据进行译码,用以取得总略过位、总交流系数计数值与一旗标,该旗 标具有一第一状态与一第二状态,分别表示是否找到该第一区块的第一单元的结束位置;以及判断一第二数值是否超过该第一区块的交流系数总数,其中,累加该总交流系数 计数值与该等第一交流的个数而产生该第二数值,若超过,对该N位数据执行该单一步骤略过程序,用以于该比特流中,取得该第 二区块所对应的该第二单元。
22. 根据权利要求21所述的该影像译码方法,其特征在于,若该第二数值小 于该第一区块的交流系数总数,包括判断该旗标是否为该第二状态,若是,丢弃该第一单元的总略过位,用以取得该N位数据后面的一下一个N位数据。
23. 根据权利要求22所述的该影像译码方法,其特征在于,若该旗标被判断 为一第一状态,包括判断该第二数值是否等于该第一区块的交流系数总数;以及依据该总略过位与对应于上述判断结果的一既定略过位,用以于该比特流中,取 得该第二区块所对应的该第二单元,其中,该既定略过位为一常数,与该旗标的位长度相关。
24. 根据权利要求21所述的该影像译码方法,其特征在于,该霍夫曼译码方 法用以对该N位数据进行译码。
25. 根据权利要求21所述的该影像译码方法,其特征在于,通过一N位预先 译码表对该N位数据进行译码,以查表方式取得指定给该N位数据的该总略过位、该 总交流系数计数值与该旗标。
26. 根据权利要求16所述的该影像译码方法,其特征在于,当该縮放比率为 "》8时,则该既定参数为O。
27. 根据权利要求16所述的该影像译码方法,其特征在于,当该縮放比率为 W〈i时,则该既定参数为63。
全文摘要
一种影像译码装置包括一剖析器与一交流译码器。该剖析器剖析一比特流以取得一第一单元。该第一单元包括一直流码与复数的交流码,分别对应于该影像的一第一区块的一直流系数与交流系数。该交流译码器对该第一单元的该等交流码进行译码,用以产生该第一区块的复数的第一交流系数,并判断该等第一交流系数的个数是否超过一既定参数。若超过,该交流译码器对该第一单元执行一交流系数略过程序,用以取得该比特流的一第二单元,系对应于一第二区块。每一交流码包括一霍夫曼码与一可变长度整数码。
文档编号G06T3/40GK101673392SQ20081004286
公开日2010年3月17日 申请日期2008年9月12日 优先权日2008年9月12日
发明者叶小炜 申请人:慧国(上海)软件科技有限公司;慧荣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1