分层无损压缩制造技术

技术编号:7301592 阅读:208 留言:0更新日期:2012-04-27 03:33
提供了用于数据压缩的方法。该数据压缩方法变换正方形数据成平铺数据。然后,将该平铺数据划分为四边形数据,该四边形数数据转换成代表性元素、第一代尔塔元素、第二代尔塔元素、第三代尔塔元素和控制字。然后形成具代表性元素的新的平铺数据,并且重复该过程直到剩余单一代表性元素。然后将该单一代表性元素与该控制字和相对应的代尔塔元素嵌入到输出流中。一旦该位流被解析,该数据解压相对编码是对称的。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及数据压缩,更特别的是,本专利技术涉及适合硬件实现的无损数据压缩。
技术介绍
数据压缩是转换数据以便使用较少位(bit)存储的过程。数据压缩的两种类型是有损的和无损的。有损数据压缩将数据压缩到较大程度,但在处理中丢失数据。因此,在解压过程中,数据是其原始格式的近似的而不是精确的复制品。无损数据压缩将数据压缩到较小程度,但在处理中不丢失任何的数据。因此,在解压过程中,数据是其在压缩前的精确重建。数据压缩的目的是减小传输需要的带宽量和/或存储需要的存储器量。常用的无损压缩技术的示例是哈夫曼编码(Huffman coding)。哈夫曼编码是基于数据项目出现的次数。该技术使用了较短位数编码出现次数多的数据。不幸的是,哈夫曼编码的限制是其具有固定的序列长度程序并且不能压缩超过序列长度的数据中的冗余。因此,哈夫曼编码是复杂的并且需要大量有效存储器。哈夫曼编码包含在提取文件任何部分之前实施整体文件的分析。进一步,哈夫曼技术本质上是不对称的,意思是解码过程比编码过程慢的多。这个特征对于某些硬件实现是不能接受的,因为计算机通常设计为在一个时钟周期内近似地读取和写入相同的数据量。另一个常用的无损技术是Lempel-Ziv-Welch算法(LZW)。LZW在被压缩的数据文件中自动建立之前看到的字符串的字典。该字典从256个条目开始,每个条目用于一个可能的字符。每当看到字符串还不在字典中,就添加包括该字符串的更长的字符串。输出包括到字典中的整数(integer)目录。不幸的是,LZW由于其产生的字符串表而变遭。字典能在短时间内变得很大。此外,因为所需的存储器量取决于所有字符串的总长度,所以所需的存储量是不确定的。同样,与哈夫曼编码一样,必须在将文件的任何部分压缩和/或解压之前将整体文件编码和/或解码。进一步,整个过程本质上是不对称的,并且相对于解压, 压缩需要相当长的时间。除了上述压缩技术强加的限制,另一个主要问题是对于数据的不同格式的统一压缩方法的缺乏。例如,由像素组成的计算机图形能用Z缓冲表示。通过测试像素深度和比较当前Z坐标位置和存储在Z缓冲的数据使得Z缓冲工作。Z缓冲存储关于每个像素最后位置的信息。在接近观察者位置的像素是将要显示的一个。其他用于表示由像素组成图形的常用数据格式是颜色缓冲和常用映射(normal maps)。目前,对于常用映射数据没有无损压缩技术,并且颜色缓冲数据需要面向软件的不同的压缩方法。需要的是本质上对称的数据压缩/解压方法,从而适合硬件实现。进一步,需要的是能压缩和解压一些包括常用映射数据的不同数据格式的数据压缩/解压方法。另外,需要的是适应各种图形硬件设备的数据压缩/解压方法。
技术实现思路
本专利技术一方面提供了分层数据压缩方法,该方法包括以下的计算机实施步骤布置数据成主阵列;将该主阵列划分为多个主子阵列;将每个主子阵列压缩成压缩的子阵列使得形成多个压缩的子阵列;布置该压缩的子阵列成第二阵列;并且重复该划分、压缩和安排步骤直到剩余单一子阵列,其中该第二阵列变成主阵列用于重复这些步骤。来自压缩的子阵列的数据能被嵌入到输出流。本专利技术另一方面提供了数据压缩方法,该方法包括以下的计算机实施步骤提供正方形数据(square of data);将该正方形数据变换为平铺数据(tile of data);将该平铺数据划分为四边形数据(quads of data);每个四边形有左上像素,右上像素,左下像素, 和右下像素;将每个四边形转换为代表性元素,第一代尔塔(delta element)元素,第二代尔塔元素,第三代尔塔元素,和控制字;形成具代表性元素的新的平铺数据;重复该划分、 该转换以及该形成直到剩余单一代表性元素,其中该新的平铺数据变成平铺数据用于重复该划分、转换和形成步骤;以及将该单一代表性元素,该控制字和该代尔塔元素嵌入到输出流。本专利技术另一方面提供了机器可读程序存储设备。该设备明确(tangibly)包含机器可执行命令程序以实施数据压缩方法,该方法包括提供正方形数据;将该正方形数据变换为平铺数据;将该平铺数据划分为四边形数据;每个四边形有左上像素,右上像素,左下像素,和右下像素;将每个四边形转换为代表性元素,第一代尔塔元素,第二代尔塔元素, 第三代尔塔元素,和控制字;形成具代表性元素的新的平铺数据;重复该划分、该转换以及该形成直到剩余单一代表性元素,其中该新的平铺数据变成平铺数据用于重复该划分、该转换和该形成步骤;以及将该单一代表性元素、该控制字和该代尔塔元素嵌入到输出流。本专利技术包含其他实施方式,配置该实施方式为上述和下述方式,以及其他特征和替换。附图说明本专利技术通过下面的详细描述结合所附附图将易于理解。为了帮助描述,类似的参考数指定了类似的元素。图1A-1C为根据本专利技术实施方式所示的含有像素位的数据的2维表面。图2A-2B为根据本专利技术实施方式所示的正方形到平铺的变换。图3A-3D为根据本专利技术实施方式所示的平铺的划分,四边形的转化,以及新的平铺的形成。图4为根据本专利技术实施方式所示的平铺数据的分层。图5为根据本专利技术实施方式所示的在图形形式中的数据压缩方法。图6为根据本专利技术实施方式所示的优选地用于编码以及将分层数据嵌入到输出流的子平铺模式。图7为根据本专利技术实施方式所示的分层数据的位分配输出流。图8为根据本专利技术实施方式所示的在图形形式中的位分配。具体实施例方式本专利技术披露了分层无损数据压缩方法。陈述了许多特定细节以便提供对本专利技术实施方式的完全理解。应明白,然而,对本领域技术人员来说,本专利技术的实施方式可用其他特定细节实行。在一个实施方式中,二维表面数据概念性地划分为正方形数据。应明白此处没有物理的正方形。然而,把该正方形看做有尺寸(长和宽)的物理实体和表面能帮助理解本专利技术的概念。该二维表面数据包括代表图形图像的像素位。将该二维表面数据划分为大小为16X16正方形的正方形数据。在可替换的实施方式中,该二维表面数据能根据所需的压缩或底层(underlying)数据格式划分为任意数量的更大或更小的正方形数据。例如,能将该数据的二维表面划分为8X8正方形的像素数据。然后,将每个正方形数据变换成平铺数据。使用整数(integer)加上或减去适合硬件实现的操作实施该变换。用来将该正方形数据变换为平铺数据的技术能依赖于用于代表图形图像的数据格式。例如,如果数据是Z缓冲格式,那么平铺数据的第二列(column) 设置为等于正方形数据的第二列减去第一列;平铺数据的第三列设置为等于正方形数据的第三列减去正方形数据的第二列;平铺数据的第四列设置为等于正方形数据的第四列减去正方形数据的第三列;并且重复该模式直到每个数据值减去邻近数据值并且将所得差值存储在平铺数据中。在可替换的实施方式中,使用不同技术将不同的数据格式变换为平铺。例如,为变换正方形颜色缓冲数据,对于每个像素,正方形数据的第一通道(channel)减去正方形数据的第二通道。所得到的值存储在平铺数据的第一通道。正方形数据的第二通道存储在平铺数据的第二通道。正方形数据的第三通道减去正方形数据的第一通道并且将该值存储在平铺数据的第三通道。重复该模式直到在每个像素上实施去相关(decorrelation)变化。在另一个实施方式中,为变换常用映射数据,对每个像素,正方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2009.05.19 US 12/468,7571.分层数据压缩方法,该方法包括计算机执行步骤压缩多个主子阵列成压缩的子阵列使得形成多个压缩的子阵列,其中,该多个主子阵列形成主阵列;安排该压缩的子阵列为第二阵列;以及重复该压缩和安排直到剩余单一子阵列,其中该第二阵列变成主阵列用于重复所述压缩和安排。2.根据权利要求1所述的方法,其进一步包括将来自该压缩的子阵列的数据嵌入到输出流的步骤。3.数据压缩方法,该方法包括计算机执行步骤 提供正方形数据;将该正方形数据变换为平铺数据;将该平铺数据划分为四边形数据,每个四边形有左上像素,右上像素,左下像素,和右下像素;将每个四边形转换为代表性元素,第一代尔塔元素,第二代尔塔元素,第三代尔塔元素,和控制字;形成具该代表性元素的新的平铺数据;重复该划分,该转换,以及该形成直到剩余单一代表性元素,其中该新的平铺数据变成平铺数据用于重复该划分,该转换和该形成步骤;以及将该单一代表性元素,该控制字和该代尔塔元素嵌入到输出流。4.根据权利要求3所述的方法,其中该正方形数据是二维表面数据的部分。5.根据权利要求3所述的方法,其中该数据至少是Z缓冲数据、颜色缓冲数据和常用映射数据中的一个。6.根据权利要求5所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替换每个数据值为新的数据值,该新的数据值等于该数据值减去邻近数据值。7.根据权利要求3所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为去相关数据值。8.根据权利要求3所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为具有一个较少组件的新的数据值。9.根据权利要求3所述的方法,其中转换每个四边形的步骤包括 设置左上像素为代表性元素;右上像素减去左上像素从而形成第一代尔塔元素; 左下像素减去左上像素从而形成第二代尔塔元素; 右下像素减去左下像素从而形成第三代尔塔元素;以及根据该些代尔塔元素间的相互关系设置控制字。10.根据权利要求3所述的方法,其中控制信息被嵌入到该输出流中。11.根据权利要求3所述的方法,其中子平铺目录被嵌入到该输出流中,该子平铺目录形成自该划分,该转化和该形...

【专利技术属性】
技术研发人员:亚历山大·M·洛希夫斯基
申请(专利权)人:超威半导体公司
类型:发明
国别省市:

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

1
相关领域技术