CN102428499A - 分层无损压缩 - Google Patents
分层无损压缩 Download PDFInfo
- Publication number
- CN102428499A CN102428499A CN201080021924XA CN201080021924A CN102428499A CN 102428499 A CN102428499 A CN 102428499A CN 201080021924X A CN201080021924X A CN 201080021924XA CN 201080021924 A CN201080021924 A CN 201080021924A CN 102428499 A CN102428499 A CN 102428499A
- Authority
- CN
- China
- Prior art keywords
- data
- tiling
- pixel
- generation
- embedded
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
Abstract
提供了用于数据压缩的方法。该数据压缩方法变换正方形数据成平铺数据。然后,将该平铺数据划分为四边形数据,该四边形数数据转换成代表性元素、第一代尔塔元素、第二代尔塔元素、第三代尔塔元素和控制字。然后形成具代表性元素的新的平铺数据,并且重复该过程直到剩余单一代表性元素。然后将该单一代表性元素与该控制字和相对应的代尔塔元素嵌入到输出流中。一旦该位流被解析,该数据解压相对编码是对称的。
Description
技术领域
本发明涉及数据压缩,更特别的是,本发明涉及适合硬件实现的无损数据压缩。
背景技术
数据压缩是转换数据以便使用较少位(bit)存储的过程。数据压缩的两种类型是有损的和无损的。有损数据压缩将数据压缩到较大程度,但在处理中丢失数据。因此,在解压过程中,数据是其原始格式的近似的而不是精确的复制品。无损数据压缩将数据压缩到较小程度,但在处理中不丢失任何的数据。因此,在解压过程中,数据是其在压缩前的精确重建。数据压缩的目的是减小传输需要的带宽量和/或存储需要的存储器量。
常用的无损压缩技术的示例是哈夫曼编码(Huffmancoding)。哈夫曼编码是基于数据项目出现的次数。该技术使用了较短位数编码出现次数多的数据。不幸的是,哈夫曼编码的限制是其具有固定的序列长度程序并且不能压缩超过序列长度的数据中的冗余。因此,哈夫曼编码是复杂的并且需要大量有效存储器。哈夫曼编码包含在提取文件任何部分之前实施整体文件的分析。进一步,哈夫曼技术本质上是不对称的,意思是解码过程比编码过程慢的多。这个特征对于某些硬件实现是不能接受的,因为计算机通常设计为在一个时钟周期内近似地读取和写入相同的数据量。
另一个常用的无损技术是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为根据本发明实施方式所示的在图形形式中的位分配。
具体实施方式
本发明披露了分层无损数据压缩方法。陈述了许多特定细节以便提供对本发明实施方式的完全理解。应明白,然而,对本领域技术人员来说,本发明的实施方式可用其他特定细节实行。
在一个实施方式中,二维表面数据概念性地划分为正方形数据。应明白此处没有物理的正方形。然而,把该正方形看做有尺寸(长和宽)的物理实体和表面能帮助理解本发明的概念。该二维表面数据包括代表图形图像的像素位。将该二维表面数据划分为大小为16×16正方形的正方形数据。在可替换的实施方式中,该二维表面数据能根据所需的压缩或底层(underlying)数据格式划分为任意数量的更大或更小的正方形数据。例如,能将该数据的二维表面划分为8X8正方形的像素数据。
然后,将每个正方形数据变换成平铺数据。使用整数(integer)加上或减去适合硬件实现的操作实施该变换。用来将该正方形数据变换为平铺数据的技术能依赖于用于代表图形图像的数据格式。例如,如果数据是Z缓冲格式,那么平铺数据的第二列(column)设置为等于正方形数据的第二列减去第一列;平铺数据的第三列设置为等于正方形数据的第三列减去正方形数据的第二列;平铺数据的第四列设置为等于正方形数据的第四列减去正方形数据的第三列;并且重复该模式直到每个数据值减去邻近数据值并且将所得差值存储在平铺数据中。
在可替换的实施方式中,使用不同技术将不同的数据格式变换为平铺。例如,为变换正方形颜色缓冲数据,对于每个像素,正方形数据的第一通道(channel)减去正方形数据的第二通道。所得到的值存储在平铺数据的第一通道。正方形数据的第二通道存储在平铺数据的第二通道。正方形数据的第三通道减去正方形数据的第一通道并且将该值存储在平铺数据的第三通道。重复该模式直到在每个像素上实施去相关(decorrelation)变化。
在另一个实施方式中,为变换常用映射数据,对每个像素,正方形数据的第一通道下降,并且代表其符号的位存储在平铺数据的第一通道。正方形数据的第二和第三通道分别存储在平铺数据的第二和第三通道。
在将正方形数据变换为平铺数据后,该平铺被划分成四边形。该四边形优选地为2X2,具有左上像素,右上像素,左下像素,和右下像素。一旦将该平铺划分为四边形,该四边形转换为代表性元素,三个代尔塔元素,以及控制字。该转换优选地包括适合硬件实施的整数加上或减去操作。根据数据的格式,能使用不同技术将四边形数据转换为代表性元素,3代尔塔元素,和控制字。将在下面进一步讨论不同转换技术的示例。
在四边形被转换后,形成由产生的代表性元素组成的新平铺。然后,将该新的平铺划分为四边形,并且将这些四边形转换为代表性元素,3代尔塔元素和控制字。再一次,该产生的代表性元素形成另一新平铺,并且将该平铺划分为四边形,该四边形将转换为代表性元素,3代尔塔元素和控制字。重复该模式直到剩余单一的代表性元素。该结果是数据层次(hierarchy of data)具有顶端和底部,该顶端是单一代表性元素,该底部是代表变换正方形数据的转换的四边形数据。从该底部向上穿过该顶端,每个该层次的等级有4倍以下的四边形。应注意,如果多个正方形数据代表图形图像,那么这个设计使得整个过程能容易地被并行化(parallelized)。
一旦剩余单一代表性元素,开始将像素嵌入到压缩数据紧密排列的像素流中的过程。优选地将控制信息首先嵌入到该流中,该流能根据数据格式略微变化。例如,如果使用Z缓冲或常用映射数据,对于每个像素该控制信息包括256个像素映射符号。然后,将该单一代表性元素嵌入到具有适当数量像素的输出流。
将该层次中的每个平铺数据划分为4等分正方形,产生4个子平铺数据。例如,平铺数据将被划分使得顶端左子平铺是子平铺零,顶端右子平铺是子平铺1,底部左子平铺是子平铺2,以及底部右子平铺是子平铺3。例如,如果该平铺是16X16,那么每个子平铺是8X8。随着单一代表性元素的嵌入,优选的子平铺目录(directory)是由位移(offset)组成的嵌入。例如,如果该平铺数据是16X16,根据子平铺0(【0,7】【0,7】),子平铺1的位移应该是(【8,15】【0,7】),同时,根据子平铺1的起始,子平铺2的位移应该是(【0,7】【8,15】),以及根据子平铺2的起始,子平铺3的位移应该是(【8,15】【8,15】)。
在将单一代表性元素和优选的子平铺目录嵌入到输出流之后,编码来自于每个四边形的代尔塔元素。该编码开始于层次顶端并且向下继续进行到底部。根据四边形相应的控制字编码该四边形。优选地,该编码遵循子平铺模式。例如,应该首先编码从上到下的子平铺0的所有代尔塔,接着编码从上到下的子平铺1的代尔塔。然后,从上到下编码子平铺2的代尔塔,接着是子平铺3代尔塔的编码。应注意,如果该层次的较低等级能从较高等级完全解码,那么,避免了较低等级的编码并且压缩增加。
然后,将已编码的像素嵌入到输出流,优选地遵循子平铺模式。该已编码像素的嵌入将优选地从代表子平铺0顶端四边形的像素开始。接下来,将在子平铺0层次的较低等级上的该已编码像素从上到下嵌入到输出流中。然后,代表子平铺1顶端四边形的像素将被嵌入。接下来,子平铺1的目录优选地嵌入到输出流中。例如,如果正方形数据是16X16,子平铺1的目录应该是位移(【4,7】【0,3】)。遵循目录,将在子平铺1层次较低等级上的已编码像素从上到下嵌入到输出流。接着,代表子平铺2顶端四边形的像素将被嵌入。然后,子平铺2的目录优选地嵌入到输出流。例如,如果正方形数据是16X16,子平铺2的目录应是位移(【0,3】【4,7】)。遵循目录,然后,将在子平铺2层次的较低等级上的已编码像素从上到下嵌入到输出流。接着,代表子平铺3顶端四边形的像素将被嵌入。然后,将子平铺3的目录嵌入到输出流。例如,如果正方形数据是16X16,子平铺3的目录应该是位移(【4,7】【4,7】)。遵循目录,然后,将在子平铺3层次的较低等级上的已编码像素从上到下嵌入到输出流。
如前所述,根据数据格式,能使用不同技术将四边形数据转换为代表性元素,3代尔塔元素,和控制字。例如,为转换颜色缓冲或常用映射数据,设置该代表性元素等于该四边形的左上像素。第一代尔塔元素等于右上像素减去左上像素。第二代尔塔元素等于左下像素减去左上像素。第三代尔塔元素等于右下像素减去左下像素。根据代尔塔元素间的相互关系设置控制字。如果所有的代尔塔元素等于零,那么设置该控制字为零。在像素分配期间,这是像素分配器中止对四边形像素的任何进一步分配的信号。如果代尔塔元素不等于零,那么根据3个代尔塔中的最大绝对值设置该控制字。如果代尔塔中的最大绝对值小于或等于一,那么设置该控制字为1。如果代尔塔中的最大绝对值小于或等于3,那么设置该控制字为2。如果代尔塔中的最大绝对值小于或等于7,那么设置该控制字为3。如果代尔塔中的最大绝对值大于7,那么使用不同的策略。假设代尔塔中的最大绝对值大于7,计算左上像素、右上像素、左下像素和右下像素的平均值。重置该代表性元素等于四边形像素的平均数。重置第一代尔塔元素等于左上像素减去该平均数。重置第二代尔塔元素等于右上像素减去该平均数。重置第三代尔塔元素等于左下像素减去该平均数。如果该重置代尔塔元素间的最大绝对值小于或等于7,设置控制字为4。如果该重置代尔塔元素间的最大绝对值小于或等于15,设置控制字为5。
如果该重置代尔塔元素间的最大绝对值大于15,那么设置控制字为6并且将代表性元素和代尔塔元素设置为原始四边形像素。因此,假定该重置代尔塔元素间的最大绝对值大于15,代表性元素等于左上像素,第一代尔塔元素等于右上像素,第二代尔塔元素等于左下像素,以及第三代尔塔元素等于右下像素。
代尔塔的编码和嵌入可能是不同的,这取决于数据格式。根据优选的实施方式,有定义了如何编码数据的6位前缀(prefix)。每个缓冲有2位。每2位控制字可以是00,01,10或11。
2位 | 2位 | 2位 |
在一个示例中,使用Z缓冲数据并且控制字是2位。如果该控制字是‘00’,那么只有控制字被嵌入到输出流中并且没有其他数据被嵌入。这允许显著压缩,此处数据没有变化。如果控制字是‘01’,该控制字被嵌入并且该代尔塔与其对应的像素值被嵌入。最后,如果控制字是‘11’,代表控制字的位被嵌入并且该代尔塔根据相关情况(见下表)被编码。
D1 | Y | N | N | N | Y | Y | Y |
D2 | N | Y | N | Y | N | Y | Y |
D3 | N | N | Y | Y | Y | N | Y |
情况 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
该编码包括定于位数的5位前缀,再加符号位。如果情况是0、1或2,将单一值与前缀嵌入到指定最大位数为1的输出流中。如果情况是3、4或5,将2个值与前缀嵌入到指定其中的最大位数为2的输出流中。如果情况是6,将3个值与前缀嵌入到指定其中的最大位数为3的输出流中。在替代的实施方式中,能使用不同技术编码和嵌入该代尔塔元素。
例如,如果使用颜色缓冲或常用映射数据,并且控制字是零,那么,将代表控制字的3位嵌入到输出流并且没有其他数据被嵌入。对于颜色,使用3位控制字。
如果控制字是1,那么将代表该控制字的3位嵌入到输出流。然后,代表第一代尔塔元素的一位被嵌入,随后是代表该第一代尔塔元素符号的位。接着,代表第二代尔塔元素的一位被嵌入,随后是代表该第二代尔塔元素符号的位。然后,代表第三代尔塔元素的一位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是2,那么将代表控制字的三位嵌入到输出流。然后,代表第一代尔塔元素的2位被嵌入,随后是代表该第一代尔塔元素符号的位。接着,代表第二代尔塔元素的2位被嵌入,随后是代表该第二代尔塔元素符号的位。然后,代表第三代尔塔元素的2位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是3,那么将代表控制字的3位嵌入到输出流。然后,代表第一代尔塔元素的3位被嵌入,随后是代表该第一代尔塔元素符号的位。接着,代表第二代尔塔元素的3位被嵌入,随后是代表该第二代尔塔元素符号的位。然后,代表第三代尔塔元素的3位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是4,那么将代表控制字的三位嵌入到输出流。然后,代表四边形平均数的2位被嵌入,随后是代表该平均数符号的位。接着,代表第一代尔塔元素的3位被嵌入,随后是代表该第一代尔塔元素符号的位。然后,代表第二代尔塔元素的3位被嵌入,随后是代表该第二代尔塔元素符号的位。接着,代表第三代尔塔元素的3位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是5,那么将代表控制字的3位嵌入到输出流。然后,代表四边形平均数的2位被嵌入,随后是代表该平均数符号的位。接着,代表第一代尔塔元素的4位被嵌入,随后是代表该第一代尔塔元素符号的位。然后,代表第二代尔塔元素的4位被嵌入,随后是代表该第二代尔塔元素符号的位。接着,代表第三代尔塔元素的4位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是6,那么将代表控制字的3位嵌入到输出流。然后,代表第一代尔塔元素的8位被嵌入,随后是代表该第一代尔塔元素符号的位。接着,代表第二代尔塔元素的8位被嵌入,随后是代表该第二代尔塔元素符号的位。然后,代表第三代尔塔元素的8位被嵌入,随后是代表该第三代尔塔元素符号的位。
如果控制字是7,那么该数据都为零。
为了重建该输出流,通过解析位对准流(bit-alignedstream)开始解码过程。一旦解析该位对准流,实施逆转换和变换去重建该数据。该解码程序相对于编码程序是完全对称的。如果提供其每个位流内部的开始位置,一旦数据层次的高等级被解码,那么较低等级能被并行解码。对于子平铺的合适位移的目录,优选地被嵌入在输出流内以便允许并行位流解码。
能在阵列组合中的各种数据格式上实施上述步骤,以达到相同的效果。特别地,该数据格式是表示成数据二维表面的任何方便的和/或已知的数据格式。例如,该数据格式能代表静止图像,移动视频,文本并且能是浮动32和/或固定24格式。进一步,实施在正方形数据和/或四边形数据上的该变换和/或转换能在任何方便和/或已知方式中被实施,以达到相同效果。例如,正方形数据和四边形数据能加上、减去、乘以、除以和/或以任何其他方式操作以达到相同结果。另外,能以任何方便和/或已知方式中实施位分配。能增加附加控制信息的实施方式或没有控制信息嵌入到输出流中。同样,能在处理过程的任何方便和/或已知时间内编码该代尔塔。能在相应四边形被转换或在该层次类似等级上的四边形被转换之后和/或在为分配之前的任何时间编码该代尔塔。进一步,附加目录能包括在位流中,或者能删除该目录以增加压缩。
图1A-1C为根据本发明实施方式所示的通过含有像素的数据二维表面表示的图形图像。在图1A中,图形图像101显示在屏102上。
在图1B中,通过在二维表面数据103上的一系列像素104表示图形图像101。通过一系列1表示图形图像101的存在,同时通过一系列0表示图形图像101的不在。
在图1C中,从二维表面数据103划分出16X16的正方形数据105,该二维表面数据103能使用分层压缩来压缩。该正方形数据105表示图形图像101的左上部分。
在可替换的实施方式中,该二维表面数据能是任何数量的像素宽度乘任何数量的像素高度。例如,二维表面数据能是4X4或1280X1024或任何其他方便或已知的宽度乘高度像素显示。另外,正方形数据105能更大或更小。例如,正方形数据105能是二维表面数据的8X8部分。进一步,在可替换实施方式中,能从二维表面数据划分附加的正方形数据并且并行压缩。
图2A-2B为根据本发明实施方式所示的正方形到平铺的转换。在图2A中,8X8的正方形数据201包含值A1到H8。该数据203是Z缓冲格式。
在图2B中,通过将所有像素替换为邻近像素之间的差值将正方形数据201变换为平铺数据202。对于Z缓冲数据的变换按照公式进行,其中T[i][j]表示在平铺中坐标为(j,i)的像素坐标,S[i][j]表示在正方形坐标中坐标为(j,i)的像素坐标,H表示平铺高度,以及W表示平铺宽度,沿着每行从左到右水平移动:
因为(i=0.,H-1)
因为(j=0.,W-1)
T[i][j]=S[i][j]-S[i][j-1]
另外,沿着第0列从上到下垂直移动:
因为(i=1.,H-1)
T[i][0]=S[i][0]-S[i-1][0]
当T[0][0]被T[0][1]替代时(即最接近的右邻),S[0][0]保持不变。
因此,像素A2被A2-A1替代。像素A3被A3-A2替代。继续该过程直到整个正方形数据1转换成包含邻近像素间差值的平铺数据202。
在可替换实施方式中,根据数据格式使用不同技术对正方形数据进行变换。例如,如果正方形数据是颜色缓冲格式,该变换按照公式进行,其中T[i][j][c]表示在平铺中坐标为(j,i)和像素通道为c的像素坐标,S[i][j][c]表示在正方形坐标中坐标为(j,i)和像素通道为c的像素坐标,H表示平铺高度,以及W表示平铺宽度:
因为(i=0.,H-1)
因为(j=0.,W-1)
T[i][j][0]=S[i][j][0]-S[i][j][1]
T[i][j][1]=S[i][j][1]
T[i][j][2]=S[i][j][2]-S[i][j][1]
因此,每个平铺像素的第0通道等于相对应正方形像素的第0通道减去相对应正方形像素的第1通道。每个平铺像素的第1通道等于相对应正方形像素的第1通道。每个平铺像素的第2通道等于相对应正方形像素的第2通道减去相对应正方形像素的第1通道。通过在每个像素上实施去相关变换,将正方形颜色缓冲数据变换成平铺数据。
在可替换实施方式的另一个示例中,如果正方形数据是常用映射数据,该变换能按照公式进行,其中T[i][j][c]表示在平铺中坐标为(j,i)和像素通道为c的像素坐标,S[i][j][c]表示在正方形坐标中坐标为(j,i)和像素通道为c的像素坐标,H表示平铺高度,以及W表示平铺宽度:
因为(i=0.,H-1)
因为(j=0.,W-1)
如果S[i][j][0]>0,那么T[i][j][0]=1;否则T[i][j][0]=0
T[i][j][1]=S[i][j][1]
T[i][j][2]=S[i][j][2]
因此,如果存储在相对应正方形像素的第0通道中的值是正的,那么每个平铺像素的第0通道等于1。否则,该平铺数据的第0通道等于0。每个平铺数据的第1和第2通道分别等于相对应的正方形像素的第1和第2通道。通过降低一个部分的值并保存该符号,正方形常用映射数据被变换成平铺数据。
图3A-3D为根据本发明实施方式所示的一系列产生数据层次的平铺划分和四边形转换。在图3A中,将16X16的平铺数据301划分为四边形数据302。将每个四边形数据转换为代表性元素303,第一代尔塔元素304,第二代尔塔元素305,第三代尔塔元素306和控制字307。该16X16平铺301的划分产生六十四个四边形302。在转换四边形数据302后,生产出六十四个代表性元素303,六十四个第一代尔塔元素304,六十四个第二代尔塔元素305,六十四个第三代尔塔元素306和六十四个控制字307。
在图3B中,该六十四个代表性元素303形成新的平铺308。将代表性元素303的该8X8平铺308划分为四边形数据309。将每个四边形数据转换成代表性元素310,第一代尔塔元素311,第二代尔塔元素312,第三代尔塔元素313和控制字314。该8X8平铺308的划分产生十六个四边形309。在转换四边形数据309后,生产出十六个代表性元素310,十六个第一代尔塔元素311,十六个第二代尔塔元素312,十六个第三代尔塔元素313和十六个控制字314。
在图3C中,该十六个代表性元素310形成新的平铺315。将代表性元素310的该4X4平铺315划分为四边形数据316。将每个四边形数据转换成代表性元素317,第一代尔塔元素318,第二代尔塔元素319,第三代尔塔元素320和控制字321。该4X4平铺315的划分产生四个四边形316。在转换四边形数据316后,生产出四个代表性元素317,四个第一代尔塔元素318,四个第二代尔塔元素319,四个第三代尔塔元素320和四个控制字321。
在图3D中,该四个代表性元素317形成新的平铺322。代表性元素317的该2X2平铺322不能划分为任何进一步的四边形数据。因此,该平铺数据322是顶端四边形数据322。将该四边形数据转换成单一代表性元素323,第一代尔塔元素324,第二代尔塔元素325,第三代尔塔元素326和控制字327。该单一代表性元素323是数据层次的顶端。该层次的下一个等级是从2X2平铺数据322转换得到的代尔塔元素324,325,326和控制字327。该层次的下一个等级是从4X4平铺数据315转换得到的代尔塔元素318,319,320和控制字321。该层次的下一个等级是从8X8平铺数据308转换得到的代尔塔元素311,312,313和控制字314。该层次的下一个等级是从16X16平铺数据301转换得到的代尔塔元素304,305,306和控制字307。
在可替换实施方式中,能以任何方便的和/或已知方式将该平铺数据划分以便产生相同结果。同样,在可替换实施方式中,能使用各种技术以任何方便的和/或已知方式将该四边形转换以便产生相同结果。进一步,在可替换实施方式中,该四边形的转换是不同的和/或取决于数据格式。
图4为根据本发明实施方式所示的平铺数据的层次。该层次的顶端是来自该层次第二等级的单一代表性元素323。该层次的第二等级是来自该层次第三等级的代表性元素317的平铺。该层次的第三等级是来自该层次第四等级的代表性元素310的平铺。该层次的第四等级是来自该层次第五等级的代表性元素303的平铺。该层次的第五等级是已变换正方形数据301的平铺。
图5为根据本发明实施方式所示的图形形式中的数据压缩方法。在步骤501中,将二维表面数据划分为正方形数据。优选地,独立地压缩每个正方形数据并并行实施每个正方形数据。该正方形数据优选地是16X16正方形数据,但能是任何方便的和/或已知大小的正方形数据。在步骤502中,将每个正方形数据变换成平铺数据。优选地,该变换取决于使用的数据类型。在步骤503中,将该平铺数据划分为四边形数据。优选地,该四边形数据为2X2。在步骤504中,将每个四边形数据转换成代表性元素,第一代尔塔元素,第二代尔塔元素,第三代尔塔元素,和控制字。在步骤505中,新的平铺数据505由从该转换中得到的代表性元素组成。
在判断操作506中,确定是否将新的平铺数据划分成四边形。如果将新的平铺数据划分成四边形,该过程循环回将平铺划分为四边形数据的步骤503。该方法从此处继续。
然而,如果该新的平铺数据不用划分成四边形,在步骤507中,编码该数据层次的位并分配到输出流中。然后该方法结束。
图6为根据本发明实施方式所示的优选地用于编码和嵌入到输出流的数据层次的子平铺模式。将数据层次中的每个平铺划分为四个子平铺。从该层次的顶端开始,顶端平铺601,顶端四边形数据,被划分为子平铺零602,子平铺一603,子平铺二604,和子平铺三605。该层次606中的下一个等级,该4X4平铺数据,也被划分为子平铺零607,子平铺一608,子平铺二609,和子平铺三610。该层次611中的下一个等级,该8X8平铺,也被划分为子平铺零612,子平铺一613,子平铺二614,和子平铺三615。该层次616中的下一个和底部等级,该16X16已变换正方形数据,也被划分为子平铺零617,子平铺一618,子平铺二619,和子平铺三620。优选地,编码和/或嵌入过程开始于带有子平铺零602的代尔塔元素的顶端并且继续向下进行子平铺零层次607,612,617。接着,编码和/或嵌入过程开始于带有子平铺一603的代尔塔元素的顶端并且继续向下进行子平铺一层次608,613,618。然后,编码和/或嵌入过程开始于带有子平铺二604的代尔塔元素的顶端并且继续向下进行子平铺二层次609,614,619。最后,编码和/或嵌入过程开始于带有子平铺三605的代尔塔元素的顶端并且继续向下进行子平铺三层次610,615,620。如果子平铺中所有下方的代尔塔为零,那么该子平铺模式允许并行位流解码和具有中止位分配的能力。
图7为根据本发明实施方式所示的分层数据的位分配输出流。将代表控制信息701的位嵌入到输出流715中。该控制信息优选地取决于数据类型。例如,如果使用的格式是常用映射和/或Z缓冲格式,那么代表数据符号的256位映射的控制位能被嵌入。接着该控制信息701,将代表来自该数据层次顶端的单一代表性元素702的位嵌入到输出流715中。接着该单一代表性元素702,将代表子平铺目录703的位嵌入到输出流715中。该目录优选地包括三个位移。接着该子平铺目录703,根据相对应的控制字编码该代尔塔元素。例如,如果该数据格式是Z缓冲数据,该编码能按照公式进行,其中,放置(PUT)(来源,数量)是发送来自特定代尔塔元素的位的数量的函数,D0表示控制字,D1表示代尔塔一,D2表示代尔塔二,D3表示代尔塔三:
放置(D0,6)
如果D0==2
没有其他数据被嵌入到该层次的流中
如果D0==3
如果D1=Y,D2=N,D3=N或
D1=N,D2=Y,D3=N或
D1=N,D2=N,D3=Y
那么编码5位前缀,符号位和1值。
如果D1=N,D2=Y,D3=Y或
D1=Y,D2=N,D3=Y或
D1=Y,D2=Y,D3=N
那么编码5位前缀,符号位和2值。
如果D1=Y,D2=Y,D3=Y
那么编码5位前缀,符号位和3值。
例如,如果,数据格式是颜色或常用映射数据,该编码能按照公式进行,其中放置(来源,数量)是发送来自特定代尔塔元素的位的数量的函数,放置_符号(值)是如果值不为零时发送该值符号的函数,D0表示控制字,D1表示代尔塔一,D2表示代尔塔二,D3表示代尔塔三,以及LSB表示代尔塔元素的平均:
放置(D0,3)
如果D0=0
没有其他数据被嵌入到该层次的流中
如果D0=7
没有其他数据被嵌入到流中
如果D0==1
放置(D1,1);
放置_符号(D1);
放置(D2,1);
放置_符号(D2);
放置(D3,1);
放置_符号(D3);
如果D0==2
放置(D1,2);
放置_符号(D1);
放置(D2,2);
放置_符号(D2);
放置(D3,2);
放置_符号(D3);
如果D0==3
放置(D1,3);
放置_符号(D1);
放置(D2,3);
放置_符号(D2);
放置(D3,3);
放置_符号(D3);
如果D0==4
放置(LBS,2);
如果LSB有明确的符号,那么放置(LBS_符号,1);
放置(D1,3);
放置_符号(D1);
放置(D2,3);
放置_符号(D2);
放置(D3,3);
放置_符号(D3);
如果D0==5
放置(LBS,2);
如果LSB有明确的符号,那么放置(LBS_符号,1);
放置(D1,4);
放置_符号(D1);
放置(D2,4);
放置_符号(D2);
放置(D3,4);
放置_符号(D3);
如果D0==6
放置(D1,8);
放置_符号(D1);
放置(D2,8);
放置_符号(D2);
放置(D3,8);
放置_符号(D3);
一旦根据相对应的控制字编码代尔塔元素,代表子平铺零顶端四边形704的位被嵌入到输出流715中。然后,代表子平铺零层次较低等级上的四边形705的位被嵌入。接着,代表子平铺一顶端四边形706的位被嵌入。然后,代表子平铺一子平铺目录707的位被嵌入。接着,代表子平铺一层次较低等级上的四边形708的位被嵌入。然后,代表子平铺二顶端四边形709的位被嵌入。接着,代表子平铺二子平铺目录710的位被嵌入。然后,代表子平铺二层次较低等级上的四边形711的位被嵌入。接着,代表子平铺三顶端四边形712的位被嵌入。然后,代表子平铺三子平铺目录713的位被嵌入。接着,代表子平铺三层次较低等级上的四边形714的位被嵌入。
在可替换的实施方式中,能以任何方便的和/或已知的方式编码该代尔塔元素。例如,根据数据格式,能使用各种公式达到类似的编码效果。另外,能以任何方便的和/或已知的方式将该代尔塔元素嵌入。例如,能将该代尔塔元素嵌入平铺模式而不是子平铺模式。进一步,能将附加数据嵌入到输出流中。例如,能根据数据格式将附加控制信息添加到遍及(throughout)输出流。尽管如此,能将数据从输出流删除以进一步压缩。例如,代表目录的位能被删除以提供更大的压缩。
图8为根据本发明实施方式所示的图形形式中的位分配。控制信息801被嵌入到输出流中。在可替换实施方式中,该控制信息能被消除以进一步压缩。接着,单一代表性元素802被嵌入到该流中。接着单一代表性元素802,子平铺目录803被嵌入到输出流中。在可替换实施方式中,子平铺目录803能被消除以进一步压缩。接着,根据相对应的一个或一个以上控制字804编码该代尔塔元素。该编码优选地遵循子平铺模式。在可替换的实施方式中,能在处理过程中的任何方便的时间编码该代尔塔元素。然后,代表子平铺零顶端四边形805的位被嵌入到该输出流中,随后是代表子平铺零剩余四边形806的位。然后,代表子平铺一顶端四边形807的位被嵌入,随后是子平铺一目录808。在可替换的实施方式中,该目录能被消除以进一步压缩。然后,代表子平铺一四边形809的剩余位被嵌入到输出流中。接着,代表子平铺二顶端四边形810的位被嵌入到输出流中。接着该代表子平铺二顶端四边形810的位,代表子平铺二目录811的位被嵌入。在可替换的实施方式中,该目录能被消除以提供进一步的压缩。然后,代表子平铺二四边形812的剩余位被嵌入。然后,代表子平铺三顶端四边形813的位被嵌入,随后是子平铺三目录814。在可替换的实施方式中,该目录能被消除以提供进一步压缩。然后,代表子平铺三四边形815的剩余位被嵌入到输出流中。
本发明实施方式的数据压缩方法是将正方形数据变换为平铺数据。然后,将该平铺数据划分为四边形数据,该四边形数据变换为代表性元素,第一代尔塔元素,第二代尔塔元素,第三代尔塔元素和控制字。然后形成具代表性元素的新的平铺数据,重复该过程直到剩余单一代表性元素。然后将该单一代表性元素与控制字和相对应的代尔塔元素一起嵌入到输出流中。
实施数据压缩的系统和方法
根据本公开的教导,使用传统通用目的或专用数字计算机或微处理器编程能方便地实施本发明实施方式部分,这对于计算机领域的技术人员是显而易见的。
根据本公开的教导,熟练的程序员能容易地准备适当的软件编码,这对于软件领域的技术人员是显而易见的。也能通过制备专用集成电路的应用程序或与常用组件电路的适当的网络互连来实施本发明,这对于本领域的技术人员是显而易见的。可通过软件编码的创制(例如,在硬件描述语言中的编码)完成集成电路中的该实施,在合成和加工时,布置成能配置制造工艺(例如在半导体加工厂中的那些工艺)以制造能够实现本发明方面的半导体集成电路。
本发明的实施方式包括计算机程序产品,该产品是存储介质(媒介),具有存储在其上/中的指令(例如,软件,固件和/或硬件指令,包括硬件描述语言编码),该指令用于控制,或导致计算机去执行本发明实施方式的任何过程。该存储介质包括但不限于任何类型的磁盘,包括软盘,微型磁盘(MD’s),光盘,DVD,CD-ROMS,微型驱动盘,以及磁光盘,ROMs,RAMs,EPROMs,EEPROMs,DRAMs,VRAMs,快闪存储器(包括快闪卡),磁或光卡,纳米系统(包括分子存储器ICs),RAID设备,远程数据存储/存档/仓储,或适合存储指令和/或数据的任何类型的介质或设备。
存储在任一计算机可读介质(媒介)上的本发明实施方式包括用于控制通用/专用计算机或微处理器硬件的软件和用于使计算机和微处理器能与用户或其它使用本发明实施方式结构的机构互相作用的软件。这种软件包括但不限于,设备驱动程序,操作系统,和用户应用程序。最后,这种计算机可读介质进一步包括用于执行上述的本发明实施方式的软件。
根据本发明实施方式的过程,包括在通用/专用计算机或微处理器的编程(软件)中的是用于实施本发明实施方式的教导的软件模块,其包括但不限于,提供正方形数据,将该正方形数据变换为平铺数据,将该平铺数据划分为四边形数据,将每个四边形转换为代表性元素,形成具代表性元素的新的平铺数据,重复前述过程直到剩余单一代表性元素,并且将该代表性元素,控制字和代尔塔元素嵌入到输出流。
依据将细节并入特定实施方式描述了本发明的实施方式以帮助理解本发明构建和操作原理。此处的这种特定实施方式和细节的参照并不限制随附权利要求的范围。对本领域技术人员显而易见,在不脱离本发明精神和范围的前提下,在选择用于阐述的实施方式中能做修改。例如能添加和/或删除用于编码和/或嵌入的不同公式和/或各种数据和/或数据形式,以执行实施方式所阐述的功能。
Claims (24)
1.分层数据压缩方法,该方法包括计算机执行步骤:
压缩多个主子阵列成压缩的子阵列使得形成多个压缩的子阵列,其中,该多个主子阵列形成主阵列;
安排该压缩的子阵列为第二阵列;以及
重复该压缩和安排直到剩余单一子阵列,其中该第二阵列变成主阵列用于重复所述压缩和安排。
2.根据权利要求1所述的方法,其进一步包括将来自该压缩的子阵列的数据嵌入到输出流的步骤。
3.数据压缩方法,该方法包括计算机执行步骤:
提供正方形数据;
将该正方形数据变换为平铺数据;
将该平铺数据划分为四边形数据,每个四边形有左上像素,右上像素,左下像素,和右下像素;
将每个四边形转换为代表性元素,第一代尔塔元素,第二代尔塔元素,第三代尔塔元素,和控制字;
形成具该代表性元素的新的平铺数据;
重复该划分,该转换,以及该形成直到剩余单一代表性元素,其中该新的平铺数据变成平铺数据用于重复该划分,该转换和该形成步骤;以及
将该单一代表性元素,该控制字和该代尔塔元素嵌入到输出流。
4.根据权利要求3所述的方法,其中该正方形数据是二维表面数据的部分。
5.根据权利要求3所述的方法,其中该数据至少是Z缓冲数据、颜色缓冲数据和常用映射数据中的一个。
6.根据权利要求5所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替换每个数据值为新的数据值,该新的数据值等于该数据值减去邻近数据值。
7.根据权利要求3所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为去相关数据值。
8.根据权利要求3所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为具有一个较少组件的新的数据值。
9.根据权利要求3所述的方法,其中转换每个四边形的步骤包括:
设置左上像素为代表性元素;
右上像素减去左上像素从而形成第一代尔塔元素;
左下像素减去左上像素从而形成第二代尔塔元素;
右下像素减去左下像素从而形成第三代尔塔元素;以及
根据该些代尔塔元素间的相互关系设置控制字。
10.根据权利要求3所述的方法,其中控制信息被嵌入到该输出流中。
11.根据权利要求3所述的方法,其中子平铺目录被嵌入到该输出流中,该子平铺目录形成自该划分,该转化和该形成步骤的结果。
12.根据权利要求3所述的方法,其中该嵌入遵循子平铺模式。
13.根据权利要求3所述的方法,其进一步包括根据与该代尔塔元素的相关的控制字编码该代尔塔元素的步骤。
14.机器可读程序存储设备,其明确包含可执行命令程序以实施数据压缩方法,该方法包括:
提供正方形数据;
将该正方形数据变换为平铺数据;
将该平铺数据划分为四边形数据,每个四边形有左上像素,右上像素,左下像素,和右下像素;
将每个四边形转换为代表性元素,第一代尔塔元素,第二代尔塔元素,第三代尔塔元素,和控制字;
形成具该代表性元素的新的平铺数据;
重复该划分,该转换,以及该形成直到剩余单一代表性元素,其中该新的平铺数据变成平铺数据用于重复该划分,转换和形成步骤;以及
将该单一代表性元素,该控制字和该代尔塔元素嵌入到输出流。
15.根据权利要求14所述的方法,其中该正方形数据是二维表面数据的部分。
16.根据权利要求14所述的方法,其中该数据至少是Z缓冲数据,颜色缓冲数据和常用映射数据中的一个。
17.根据权利要求16所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替换每个数据值为新的数据值,该新的数据值等于该数据值减去邻近数据值。
18.根据权利要求14所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为去相关数据值。
19.根据权利要求14所述的方法,其中将该正方形数据变换为平铺数据的步骤包括替代每个数据值为具有一个较少组件的新的数据值。
20.根据权利要求14所述的方法,其中转换每个四边形的所述步骤包括:
设置该左上像素为该代表性元素;
该右上像素减去该左上像素从而形成该第一代尔塔元素;
该左下像素减去该左上像素从而形成该第二代尔塔元素;
该右下像素减去该左下像素从而形成该第三代尔塔元素;以及
根据该些代尔塔元素间的相互关系设置该控制字。
21.根据权利要求14所述的方法,其中控制信息被嵌入到该输出流中。
22.根据权利要求14所述的方法,其中子平铺目录被嵌入到该输出流中,该子平铺目录形成自该划分,该转化和该形成步骤的结果。
23.根据权利要求14所述的方法,其中该嵌入遵循子平铺模式。
24.根据权利要求14所述的方法,其进一步包括根据该代尔塔元素的相关的控制字编码该代尔塔元素的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/468,757 US8810562B2 (en) | 2009-05-19 | 2009-05-19 | Hierarchical lossless compression |
US12/468,757 | 2009-05-19 | ||
PCT/US2010/035228 WO2010135307A2 (en) | 2009-05-19 | 2010-05-18 | Hierarchical lossless compression |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102428499A true CN102428499A (zh) | 2012-04-25 |
CN102428499B CN102428499B (zh) | 2016-08-17 |
Family
ID=43016694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080021924.XA Active CN102428499B (zh) | 2009-05-19 | 2010-05-18 | 分层无损压缩 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8810562B2 (zh) |
EP (1) | EP2433264B1 (zh) |
JP (1) | JP5651170B2 (zh) |
KR (1) | KR101650115B1 (zh) |
CN (1) | CN102428499B (zh) |
WO (1) | WO2010135307A2 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412606B (zh) | 2010-04-13 | 2020-03-27 | Ge视频压缩有限责任公司 | 解码数据流的方法、生成数据流的方法 |
ES2659189T3 (es) | 2010-04-13 | 2018-03-14 | Ge Video Compression, Llc | Herencia en subdivisión de árbol múltiple de matriz de muestras |
FI3955579T3 (fi) | 2010-04-13 | 2023-08-16 | Ge Video Compression Llc | Videokoodaus käyttäen kuvien monipuurakenteen alaosioita |
KR102360005B1 (ko) | 2010-04-13 | 2022-02-08 | 지이 비디오 컴프레션, 엘엘씨 | 샘플 영역 병합 |
JP6066557B2 (ja) * | 2011-12-26 | 2017-01-25 | 株式会社メガチップス | データ記憶制御装置、データ記憶装置、データ記憶方法、圧縮回路、および圧縮方法 |
US10045029B2 (en) * | 2014-05-06 | 2018-08-07 | Intel Corporation | Clustering and encoding for color compression |
US9686560B2 (en) * | 2015-02-23 | 2017-06-20 | Teledyne Dalsa, Inc. | Lossless data compression and decompression apparatus, system, and method |
EP3449942A4 (en) | 2016-04-28 | 2019-12-04 | Nippon Chemiphar Co., Ltd. | METHOD FOR TREATING MULTIPLE SCLEROSIS |
CN110674796B (zh) | 2016-11-18 | 2022-05-03 | 格兰菲智能科技有限公司 | 纹理砖解压缩方法 |
JP7374882B2 (ja) | 2018-03-14 | 2023-11-07 | 日本ケミファ株式会社 | 咳嗽の治療のための医薬 |
US11044474B2 (en) * | 2019-02-18 | 2021-06-22 | Glenfly Technology Co., Ltd. | Image compression method and image processing system |
JPWO2021198745A1 (zh) | 2020-03-30 | 2021-10-07 | ||
WO2022030428A1 (ja) | 2020-08-03 | 2022-02-10 | 日本ケミファ株式会社 | アレルギー反応に伴う症状の予防若しくは抑制又は治療用の医薬組成物 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997002705A1 (en) * | 1995-07-05 | 1997-01-23 | Commonwealth Scientific And Industrial Research Organisation | Method and apparatus for hierarchical representation and compression of data |
US20040153674A1 (en) * | 2002-10-18 | 2004-08-05 | Canon Kabushiki Kaisha | Information processing method and apparatus, computer program, and computer-readable storage medium |
JP4111644B2 (ja) * | 1998-12-09 | 2008-07-02 | シャープ株式会社 | 埋め込み符号化/復号化方法及びシステム |
CN101360242A (zh) * | 2008-09-22 | 2009-02-04 | 西安电子科技大学 | 基于JPEG2000的Tag-tree编码方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9703441D0 (en) * | 1997-02-19 | 1997-04-09 | British Tech Group | Progressive block-based coding for image compression |
JP3937418B2 (ja) * | 1997-07-03 | 2007-06-27 | ソニー株式会社 | 記憶装置および記憶読み出し制御方法 |
US6630933B1 (en) * | 2000-09-01 | 2003-10-07 | Ati Technologies Inc. | Method and apparatus for compression and decompression of Z data |
US6898323B2 (en) * | 2001-02-15 | 2005-05-24 | Ricoh Company, Ltd. | Memory usage scheme for performing wavelet processing |
JP4323178B2 (ja) * | 2003-01-31 | 2009-09-02 | 株式会社リコー | 検索対象制限装置、画像処理装置、プログラム、記憶媒体及び検索対象制限方法 |
JP4527720B2 (ja) * | 2004-02-23 | 2010-08-18 | ティーオーエー株式会社 | 画像圧縮法、画像圧縮装置、画像伝送システム、データ圧縮前処理装置及びコンピュータプログラム |
-
2009
- 2009-05-19 US US12/468,757 patent/US8810562B2/en active Active
-
2010
- 2010-05-18 CN CN201080021924.XA patent/CN102428499B/zh active Active
- 2010-05-18 KR KR1020117028246A patent/KR101650115B1/ko active IP Right Grant
- 2010-05-18 EP EP10721586.5A patent/EP2433264B1/en active Active
- 2010-05-18 WO PCT/US2010/035228 patent/WO2010135307A2/en active Application Filing
- 2010-05-18 JP JP2012511956A patent/JP5651170B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997002705A1 (en) * | 1995-07-05 | 1997-01-23 | Commonwealth Scientific And Industrial Research Organisation | Method and apparatus for hierarchical representation and compression of data |
JP4111644B2 (ja) * | 1998-12-09 | 2008-07-02 | シャープ株式会社 | 埋め込み符号化/復号化方法及びシステム |
US20040153674A1 (en) * | 2002-10-18 | 2004-08-05 | Canon Kabushiki Kaisha | Information processing method and apparatus, computer program, and computer-readable storage medium |
CN101360242A (zh) * | 2008-09-22 | 2009-02-04 | 西安电子科技大学 | 基于JPEG2000的Tag-tree编码方法 |
Non-Patent Citations (2)
Title |
---|
BENJ LIPCHAK: "2d and 3d Progressive Transmission Using Wavelets", 《WORCESTER POLYTECHNIC INSTITUTE,DEPARTMENT OF COMPUTER SCIENCE》 * |
JACOB MUNK BERG ET AL.: "High Quality Normal Map Compression", 《PROCEEDINGS OF THE 21ST ACM SIGGRAPH/EUROGRAPHICS SYMPOSIUM ON GRAPHICS HARDWARE》 * |
Also Published As
Publication number | Publication date |
---|---|
WO2010135307A2 (en) | 2010-11-25 |
JP2012527836A (ja) | 2012-11-08 |
US8810562B2 (en) | 2014-08-19 |
JP5651170B2 (ja) | 2015-01-07 |
CN102428499B (zh) | 2016-08-17 |
KR20120014910A (ko) | 2012-02-20 |
US20100299454A1 (en) | 2010-11-25 |
EP2433264A2 (en) | 2012-03-28 |
WO2010135307A3 (en) | 2011-01-20 |
KR101650115B1 (ko) | 2016-08-22 |
EP2433264B1 (en) | 2017-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102428499A (zh) | 分层无损压缩 | |
US11902551B2 (en) | Methods and apparatuses for hierarchically encoding and decoding a bytestream | |
CN112383780B (zh) | 点匹配参考集和索引来回扫描串匹配的编解码方法和装置 | |
CN103858433A (zh) | 分层熵编码及解码 | |
JP5936687B2 (ja) | ツリー構造の適応的エントロピー符号化方法 | |
CN1316812C (zh) | 利用变长色码对调色板处理的彩色图像进行压缩 | |
EP3721634A1 (en) | Methods and apparatuses for encoding and decoding a bytestream | |
CN104704825B (zh) | 分段图像数据的无损压缩 | |
US20130271463A1 (en) | Triangle mesh compression | |
JP2005516554A6 (ja) | 可変長カラー・コードを用いる、パレット化されたカラー画像の圧縮 | |
JP2001211081A (ja) | ディジタルアレイ再インデクシング方法及びディジタルデータ圧縮器 | |
CN102497545A (zh) | 内容自适应和艺术可引导可缩放视频编码 | |
CN103581676B (zh) | 视频编码变换系数的解码方法及装置 | |
CN101516008B (zh) | 单一位平面的编码系统及方法 | |
CN102855643A (zh) | 一种用于字库文件和单色图像的压缩与解压缩方法 | |
CN117156148A (zh) | 用于渲染系统中的子图元存在指示的压缩和解压缩 | |
JP5630129B2 (ja) | ビットマップフォントの圧縮符号化、復号化を行う方法およびプログラム | |
Huo et al. | Beamlet coder: A tree-based, hierarchical contour representation and coding method | |
CN117152277A (zh) | 用于渲染系统中的子图元存在指示的压缩和解压缩 | |
WO2004029875A2 (en) | Image compression | |
JP2005354169A (ja) | 画像圧縮装置 | |
Upadhayay et al. | Data Compression | |
Senecal | Length-limited data transformation and compression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |