在图像处理期间执行二维变换的电路和方法技术

技术编号:2935157 阅读:185 留言:0更新日期:2012-04-11 18:40
一种图像解码器将2-D变换作为一系列1-D变换进行,并且是以一种比现有技术解码器更有效率的方式进行。解码器包括存储器和耦合到存储器的处理器。处理器可以操作用于:把一列值作为一行值存储在存储器中,组合存储的行内的值以产生结果值的列,并且把结果值作为一行结果值存储在存储器中。这样一种解码器可以把值存储在一个存储寄存器中,从而当处理器组合这些值以产生中间IDCT值时,它能够以转置方式存储这些中间值。因此,这种图像解码器通过把中间IDCT值的组合和转置组合到一个单一步骤中而减少了图像处理时间。图像解码器能够把值存储在一个存储寄存器中,从而当处理器组合这些值以产生中间IDCT值时,它能够以转置和偶-奇分离的方式存储这些中间IDCT值。因此,这种解码器通过把中间IDCT值的产生、转置和偶-奇分离组合到一个单一步骤中而减少了图像处理时间。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及图像处理电路和技术,尤其涉及图像处理期间执行离散余弦反变换(IDCT)之类的二维变换的电路和方法。这种电路和方法能够比现有技术的电路和方法更高效率地执行IDCT。人们通常希望减小压缩和解压缩图像数据的图像处理器的复杂性。由于图像数据经常是排列在二维(2-D)数据块中,因而处理器通常执行2-D数学功能以处理图像数据。不幸的是,一般需要具有相对复杂结构的处理器来执行这些复杂的图像处理功能。复杂的构造通常会增大处理器算术单元和它内部数据总线的尺寸,因而与标准处理器相比,增大了处理器的成本和总体尺寸。一种有效减小图像处理器构造的复杂性的技术是把复杂的图形处理功能分解成一系列较简单构造能够执行的较简单的功能。例如,Masaki等的论文披露了一种将8点向量乘法分解成一系列4点向量乘法以简化2-D IDCT的技术,这篇论文结合于此作为参考“视频技术电路和系统”IEEE会刊,1995年10月第五号第五卷中的“离散余弦反变换器的VLSI实现和MPEG2 HDTV视频解码的运动补偿”。不幸的是,尽管这种技术使得处理器能够具有比较简单的构造,但是它通常增大了处理器处理图像数据所需的时间。因此,一般规律是,处理器构造越简单,处理时间越慢,而处理器构造越复杂,处理时间越快。为了帮助读者理解上面讨论的概念和以下本专利技术的说明书中所讨论的内容,下面是传统图像压缩/解压缩技术,2-DDCT功能和2-D及1-D IDCT功能基本概念,和用于简化1-D IDCT功能的Masaki技术的讨论。为了通过比较低的带宽信道电子地发送比较高解析度的图像,或为了把这种图像电子地存储在比较小的存储空间中,通常需要压缩代表图像的数字数据。这种图像压缩一般涉及减少代表图像所需的数据比特的数量。例如,压缩高清晰度电视(HDTV)视频图像使它们能够通过现有电视频道传输。不进行压缩,HDTV视频图像将需要具有比现有电视频道带宽大得多的带宽的传输信道。此外,为了将数据业务量和传输时间减少到可接受的水平,可以在通过互联网发送图像之前压缩图像。或为了增大CD-ROM或服务器的图像存储容量,可以在存储图像之前压缩之。参考附图说明图1A-6,讨论现在流行的基于数据块的运动图像专家组(MPEG)压缩标准的基础,标准包括MPEG-1和MPEG-2。为了进行说明,讨论根据使用MPEG 4∶2∶0格式压缩在Y-CB-CR彩色空间表示的视频图像。但是,讨论的概念也适用于其它MPEG格式,以其它彩色空间表示的图像,以及适用于其它基于数据块的压缩标准,例如,通常用于压缩静止图像的联合照相专家组(JPEG)标准。此外,尽管为了简洁而省略了MPEG标准和Y-CB-CR色彩空间的许多细节,但这些细节是众所周知的,并且可以在大量可用参考资料中找到。参考图1A-1D,MPEG标准经常用于压缩暂态图像序列——用于这里讨论的视频帧——例如,可以在电视广播中所见的视频帧。每个视频帧被分割成多个称为宏数据块的子区,每个宏数据块包括一个或多个像素。图1A是一个具有256个像素12的16像素乘16像素的宏数据块10(未按比例画出)。宏数据块10也可以具有其它尺度。在原始视频帧中,即,在压缩前的视频帧中,每个像素12具有各自的亮度值Y和各自的一对彩色差值,即,一对色差值CB和CR(“B”代表“蓝色”,“R”代表“红色”)。在视频帧压缩之前,从原始帧的原始Y,CB和CR产生用于压缩的数字亮度(Y)和色差(CB和CR)值,即,预压缩值。在MPEG 4∶2∶0格式中,预压缩Y值与原始Y值相同。因此,每个像素12只是保持它的原始亮度值Y。但是,为了减少要压缩的数据量,MPEG 4∶2∶0格式仅允许每个四像素12的组14有一个预压缩CB值和一个预压缩CR值。预压缩CB和CR值的每一个是分别从对应的组14中的四个像素12的原始CB和CR值导出的。例如,预压缩CB值可以等于对应的组14中的四个像素12的原始CB值的平均值。因此,参考图1B-1D,针对宏数据块10产生的预压缩Y,CB和CR值被排列成一个预压缩Y值(等于像素12的原始Y值)的16×16矩阵16,一个预压缩CB值(等于每个四像素12的组14的一个导出CB值)的8×8矩阵18,和一个预压缩CR值(等于每个四像素12的组14的一个导出CR值)的8×8矩阵20。矩阵16,18和20通常被称为值的“数据块”。此外,由于MPEG标准需要执行有关像素值的8×8数据块的压缩变换,而不是有关16×16数据块的变换,因此,将预压缩Y值的数据块16再细分成四个8×8数据块22a-22d,这四个数据块分别对应于宏数据块10中的8×8像素数据块A-D。因此,参考图1A-1D,为每个宏数据块10产生了六个预压缩像素数据的8×8数据块四个预压缩Y值的8×8数据块22a-22d,一个预压缩CB值的8×8数据块18,和一个预压缩CR值的8×8数据块20。图2是一个更常被称为编码器的MPEG压缩器30的方框图。编码器30一般将一个帧或一个帧序列的预压缩数据转换成代表具有比预压缩数据显著减少的数据比特的相同的一个帧或多个帧的编码数据。为了执行这种转换,编码器30减少或删除预压缩数据中的冗余数据,并利用有效变换和编码技术重新格式化其余的数据。更具体地讲,编码器30包括一个帧序重排缓冲器32,帧序重排缓冲器32接收一个或多个视频帧的一个序列的预压缩数据,并在一个用于编码的适当的序列中重新给帧排序。重排序的帧序列一般与其中产生出帧并显示该帧的序列不同。编码器30将每个存储的帧分配到一个对应的组,称为图像组(GOP),并且把每个帧标记为一个内(Ⅰ)帧(intra frame)或非内(non-Ⅰ)帧。例如,每个GOP可以包括三个Ⅰ帧和十二个non-Ⅰ帧,总共十五个帧。编码器30总是编码一个Ⅰ帧的宏数据块,而不考虑其它的帧,但是可以并且通常的确是参考GOP中一个或多个其它帧编码一个non-Ⅰ帧的宏数据块。然而,编码器30不参考不同GOP中的一个帧编码non-Ⅰ帧的宏数据块。参考图2和3,在一个Ⅰ帧的编码过程中,代表Ⅰ帧的预压缩Y,CB和CR值的8×8数据块(图1B-1D)通过一个加法器34到达一个离散余弦变换器(DCT)36,DCT36将像素值的这些数据块变换成一个DC(零频率)变换值D00和六十三个AC(非零频率)变换值D01-D77的对应8×8数据块。参考图3,这些DCT变换值排列在一个8×8变换数据块37中,它对应于预压缩像素值的一个数据块,例如,图1B-1D的预压缩数据块中的一个。例如,数据块37可以包括对应于图1B的预压缩数据块22a中预压缩亮度值Y(0,0)A-Y(7,7)A的亮度变换值DY00-DY77。此外,由于编码器30不使用加法器34编码Ⅰ帧,因而预压缩Y,CB和CR值通过加法器34而不与任何其它值相加。但是,如下面将讨论的,编码器30使用加法器34运动编码non-Ⅰ帧的宏数据块。参考图2和4,量化器和折线扫描器38把来自DCT36的每个变换值D限制到各自的最大值,并且以一种折线方式在各自路径40和42上提供量化的AC和DC变换值。图4是一个量化器和折线扫描器38能够实现的一种折线扫描方式43的示例。更具体地讲,量化器和折线扫描器38以指定的顺序在各自路径本文档来自技高网...

【技术保护点】
一种图像解码器,包括:存储器;和耦合到存储器的处理器,并且可操作用于:把一列中间值作为一行中间值存储在存储器中,组合存储的行中的中间值以产生一列结果值,和把结果值作为一行结果值存储在存储器中。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:李愚彬
申请(专利权)人:赤道技术公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1