LZW

✍ dations ◷ 2025-10-25 22:09:19 #LZW

蓝波-立夫-卫曲编码法(Lempel-Ziv-Welch,缩写LZW),是以色列科学家亚伯拉罕·蓝波(英语:Abraham Lempel)(希伯来语:אברהם למפל‎)、杰可布·立夫(英语:Jacob Ziv)( יעקב זיו‎)与美国学者泰瑞·卫曲(英语:Terry Welch)(Terry Welch)共同提出的一种无损数据压缩算法。

它在1984年由泰瑞·卫曲改良亚伯拉罕·蓝与杰可布·立夫在1978年发表的LZ78的版本而来(主要是基于蓝波、立夫的压缩概念,设计出一套具有可逆推的逻辑程序)。

与霍夫曼编码相比,蓝波-立夫-卫曲编码法被视作将不同长度字符串以固定长的码编辑(霍夫曼编码将固定长度字符用不同长度的码编辑)。其优点在于此方法只需存储一个相当小的表格,即可存储资料还原时相对应的值,所以所需成本相对地低;然而,这种算法的设计着重在实现的速度,由于它并没有对数据做任何分析,所以并不一定是最好的算法(参考LZMA,LZ77)。

编码依据是先将资料的个别单一字符先创建成一个字符串编码表(CSET),再分别给予编号,例如原始资料为aabcaac,其字符串编码表为:

在随后的编(解)码过程,字符串编码表会随着字符串键入而逐渐扩大,如下:

因此aabcaac压缩后为112343。

解码依据是将压缩资料与原先字符串编码表对照,并将对应的字符放于一个暂存队列中,依序将压缩资料读入,若为重复资料保存于队列中,若不为重复资料,则扩展一个新的码置于字符串编码表中。例如压缩资料112343,其字符串编码表为:

步骤1:读取“1”,查字符串编码表为“a”,则:

队列Q:

输出:

步骤2:接着,再读取下一笔资料“1”,查字符串编码表为“a”,则:

队列Q:

输出:

因为aa在字符串编码表内没有,因此扩展字符串编码表为:

步骤3:此时将队列Q(1)丢弃,将Q(2)移至Q(1)位置,读取下一个资料“2”,则:

队列Q:

输出:

依上述步骤重复运作,最后可将压缩资料112343还原成原始资料aabcaac。

方法的主要关键是,它会在将要压缩的文本中,自动地创建一个先前见过字符串的字典。这些字典并不需要与这些压缩的文本一起被传输,因为如果正确地编码,解压缩器也能够依照压缩器一样的方法把它建出来,将会有完全与压缩器字典在文本的同一点有同样之字符串。

字典会从256个条目开始,每一个是给每种可能的字符(单一比特字符串)。每一次一个字符串在字典中并被见过,那么文字中,附加在单一字符后,接着该字符串的一个较长文字,就会被存储到字典中。

输出是包含字典的整数索引。这些一开始每个是9比特,当字典成长时候,可以最大增加到16位。一个特别的符号,保留来"清空字典",会把字典恢复到原先的256个条目,和9比特的索引。这对于压缩文字中含有变动字符很有用处,因为在初期的资料在文字后部分并不会有太多用处。

可变动地增加索引大小的使用是Welch贡献之一。其他是用来详细说明存储字典的一种有效率数据结构。

一般而言,字典基础的压缩会以标记(token)来取代词组(phrase)。如果标记得比特数量是少于词组所需的比特数目,那么压缩就如此产生。未压缩的文本为:

压缩过的文本:

这与有效实用上还很遥远,但是它透过词组取代举例说明了压缩方法。

这个方法在程序"压缩"上变为广泛地被使用,大约在1986年或多或少变成Unix系统中的标准工具(自很多法律和技术的原因消失之后)。数种其他受欢迎的压缩工具也使用这种方法,或者是有紧密关系的方法。

于1987年,在它变为GIF影像格式的一部分后,它变成非常广泛地被使用。它也可以(可选择)被使用于TIFF文件。

在大部分的应用中,LZW压缩算法和当时已有且广为人知的方法相比,能够提供一个比较好的压缩率。lzw压缩算法是使用在电脑上的,第一个被广泛用于一般资料的压缩,对于大的英文文本,一般可以使用lzw将其压缩到大约原来大小的一半。另外,对于其他的种类资料的压缩,它在很多情况下也相当有用。

对于LZW和类似的算法,在美国和其他国家已经发行数个专利。LZ78是包含在美国专利第4,464,650号,由兰波、立夫、柯亨(Cohn)和伊士曼(Eastman)指派给史佩瑞(Sperry)公司,后来是优利系统公司,申请于1981年8月10日,而且现在已经到期。

针对LZW算法有两个美国专利:由维克特·S·米勒(Victor S. Miller)和马克·N·维格曼(Mark N. Wegman)的美国专利第4,814,746号,指派给IBM,原本于1983年6月1日申请和卫曲的美国专利第4,558,302号,让受给史佩瑞公司,后来为优利系统公司,于1983年6月20日申请。

美国专利4,558,302是最常导致争论的一个。优利系统在当时授权免除使用费的专利执照给自由软件和免费获得的私有软件之开发者;该公司于1999年八月终止该执照。很多法律的专家已断定该专利并不包含只能解压缩LZW资料而无法压缩它的各种设备;因为这个原因,普遍使用的Gzip程序只能读取.Z档但是不能写入。

Debian每周新闻以comp.compression讨论串为基础所作的报导,称在美国的优利系统专利于它被授权后的17年又10天之后的2002年12月20日到期。大部分其他来源宣称该专利于它提出申请的20年后的2003年6月到期。

根据优利系统网站上的一个陈述,在英国、法国、德国、意大利、和日本之LZW相对应的专利,已经在2004年6月过期,而加拿大的专利于2004年7月7日到期。

IBM的美国专利已于2006年8月11日到期。

虽然LZW缩写明显地是意指Lempel、Ziv、和Welch这些发明者,某些人声称知识产权是给Ziv为第一位,因此这个方法必须称为,而不是。

相关

  • 辣椒粉辣椒粉,又称辣椒面,是干燥后的辣椒磨成的碎片或粉末。根据粗细不同,英文会区分辣椒片(chili flake)和辣椒粉(chili powder),但中文里常通称辣椒粉。几乎世界各地的料理都有在烹调过
  • Cyrtophorida见内文管口亚纲(学名:Cyrtophoria),亦作叶咽亚纲(层状咽头亚纲, Phyllopharyngia),俗称管口类,是纤毛虫门原生生物之下的一个分类元,属于九大类群的其中之一,有物种150种。依据纤毛虫
  • 42味觉感受器,类型2,成员42,TAS2R42 是一个人类基因组中TAS2R42基因编码的蛋白质,是苦味味觉感受器的一员。
  • 乔波省乔波省(法语:Province de la Tshopo)是位于刚果民主共和国东北部的一个省,首府基桑加尼(Kisangani),人口2,614,630(2005年),面积199,167 km²,是该国面积最大的省。
  • 各国黄金产量列表美国地质调查局网站上公布的一份最新的统计数据报告。 .这是一个2006年各国黄金产量列表,大部分数据基于2008年7月的英国地质调查。
  • 1970年国家人口列表这是按照1970年人口排列的国家列表,只排名主权国家。
  • 马蒂亚斯·比利亚维森西奥马蒂亚斯·塞巴斯蒂安·比利亚维森西奥(Matías Sebastián Villavicencio,1981年9月18日-)是阿根廷职业足球运动员,司职中后卫。比利亚维森西奥的职业生涯首秀是在2001年11月7日
  • 葡萄牙语克里奥尔语葡萄牙语克里奥尔语(葡萄牙语:Crioulos de base portuguesa)是以葡萄牙语为基础的克里奥尔语,为数不少。葡萄牙语克里奥尔语可以按Dulce Pereira的分法,按地域和次源语划分为多个
  • 马加丹马加丹(俄语:Магада́н)是俄罗斯马加丹州首府、科累马地区的中心城市,位于鄂霍次克海沿岸。2010年人口为95,925人。经济以造船和捕鱼为主。交通方面港口5月至12月可以通
  • 2021年美国网球公开赛2021年美国网球公开赛(英语:2021 US Open)是由美国网球协会主办的一项在室外硬地球场举办的网球大满贯赛事,它于2021年8月30日到9月12日在美国纽约市美国网球协会比利·简·金网球中心进行。美国网球锦标赛的赛事类型包括单打、双打和混合双打,还包括青少年赛事和轮椅网球项目)。单打比赛有128名球员参加(包括16名资格赛选手),资格赛于8月24日到8月27日进行,这也是第141届美国网球公开赛。多米尼克·蒂姆和大坂直美分别是男单和女单的卫冕冠军,但蒂姆此前已宣布因伤退赛。现男子世界排名第一选手