遥感数字图像处理-第六章-图像编码与压缩知识分享_第1页
遥感数字图像处理-第六章-图像编码与压缩知识分享_第2页
遥感数字图像处理-第六章-图像编码与压缩知识分享_第3页
遥感数字图像处理-第六章-图像编码与压缩知识分享_第4页
遥感数字图像处理-第六章-图像编码与压缩知识分享_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、遥感数字图像处理遥感数字图像处理-第六章第六章-图图像编码与压缩像编码与压缩第六章 图像编码与压缩6.1 概述6.1.1 6.1.1 图像数据压缩的必要性与可能性图像数据压缩的必要性与可能性 数据压缩的研究内容包括数据的表示、传输、变换和编码方法,目的是减少存储数据所需的空间和传输所用的时间。 图像编码与压缩就是对图像数据按一定的规则进行变换和组合,达到以尽可能少的代码(符号)来表示尽可能多的图像信息。 图像数据的特点之一是信息量大。海量数据需要巨大的存储空间。如多媒体中的海量图像数据,不进行编码压缩处理,一张600M字节的光盘,能存放20秒左右的640480像素的图像,没有编码压缩多媒体信息

2、保存有多么困难是可想而知的。 在现代通信中,图像传输已成为重要内容之一。采用编码压缩技术,减少传输数据量,是提高通信速度的重要手段。 可见,没有图像编码与压缩技术的发展,大容量图像信息的存储与传输是难以实现的,多媒体、信息高速公路等新技术在实际中的应用会遇到很大困难。数据冗余的概念数据冗余的概念 数据是用来表示信息的。如果不同的方法为数据是用来表示信息的。如果不同的方法为表示定量的信息使用了不同的数据量,那么使用表示定量的信息使用了不同的数据量,那么使用较多数据量的方法中,有些数据必然是代表了无较多数据量的方法中,有些数据必然是代表了无用的信息,或者是重复地表示了其它数据已表示用的信息,或者是

3、重复地表示了其它数据已表示的信息,这就是数据冗余的概念。的信息,这就是数据冗余的概念。冗余数据有:编码冗余、像素间冗余、心理视觉冗余数据有:编码冗余、像素间冗余、心理视觉冗余冗余3 3种。种。8512 512 8 8262144256Vw h dBkB 512512数字图像的表示数字图像的表示编码编码存储上面灰度图像所需的容量存储上面灰度图像所需的容量( (数据量数据量):):为表达图像数据需要用一系列符号,用这为表达图像数据需要用一系列符号,用这些符号根据一定的规则来表达图像就是对些符号根据一定的规则来表达图像就是对图像编码图像编码。对每个信息所赋的符号序列称为对每个信息所赋的符号序列称为码

4、字码字,而,而每个码字里的符号个数称为每个码字里的符号个数称为码字的长度码字的长度。编码所用的符号构成的集合称为编码所用的符号构成的集合称为码本码本。等长码等长码:对于一个消息集合中的不同消息,:对于一个消息集合中的不同消息,用相同长度的不同码字表示,用相同长度的不同码字表示,编解码简单,编解码简单,编码效率不高编码效率不高。变长码变长码:与等长码相对应,对于一个消息:与等长码相对应,对于一个消息集合中的不同消息,也可以用不同长度的集合中的不同消息,也可以用不同长度的码字表示,码字表示,编码效率高,编码解码复杂。编码效率高,编码解码复杂。 什么是编码冗余?什么是编码冗余? 如果一个图像的灰度级

5、编码,使用了多于实际需如果一个图像的灰度级编码,使用了多于实际需要的编码符号,就称该图像包含了编码冗余要的编码符号,就称该图像包含了编码冗余。 如果用如果用8位表示该图像位表示该图像的像素,我们就说该图像的像素,我们就说该图像存在编码冗余,因为该图存在编码冗余,因为该图像的像素只有两个灰度,像的像素只有两个灰度,用用1位即可表示。位即可表示。例:例: 黑白二值图像编码黑白二值图像编码 数据冗余数据冗余 什么是像素间冗余?什么是像素间冗余?由于任何给定的像素值,原理上都可以通过它的邻由于任何给定的像素值,原理上都可以通过它的邻居预测到,单个像素携带的信息相对是小的。居预测到,单个像素携带的信息相

6、对是小的。 对于一个图像,很多单个像素对视觉的贡献是冗对于一个图像,很多单个像素对视觉的贡献是冗余的。这是建立在对邻居值预测的基础上。余的。这是建立在对邻居值预测的基础上。 原始图像越有规则,各像素之间的相关性越强,原始图像越有规则,各像素之间的相关性越强,它可能压缩的数据就越多。它可能压缩的数据就越多。例如:例如:原图像数据:原图像数据:234 223 231 238 235 压缩后数据:压缩后数据:234 -11 8 7 -3数据冗余数据冗余 这是由于眼睛对所有视觉信息感受的灵敏度这是由于眼睛对所有视觉信息感受的灵敏度不同。在正常视觉处理过程中各种信息的相对重不同。在正常视觉处理过程中各种

7、信息的相对重要程度不同。要程度不同。 有些信息在通常的视觉过程中与另有些信息在通常的视觉过程中与另外一些信息相比并不那么重要,这些信息被认为外一些信息相比并不那么重要,这些信息被认为是心理视觉冗余的,去除这些信息并不会明显降是心理视觉冗余的,去除这些信息并不会明显降低图像质量。低图像质量。数据冗余数据冗余 什么是心理视觉冗余?什么是心理视觉冗余?33K33K15K15K如果能减少或消除其中的1种或多种冗余,就能取得数据压缩的效果。因此图像信息的压缩是可能的。但到底能压缩多少,除了和图像本身存在的冗余度大小有关外,很大程度取决于对图像质量的要求。 广播电视 压缩比31 可视电话 压缩比15001

8、 目前高效图像压缩编码技术已能用硬件实现实时处理,在广播电视、工业电视、电视会议、可视电话、传真和互连网等多方面得到应用。 图像压缩的目的图像压缩的目的 图像数据压缩的目的是在满足一定图像质量图像数据压缩的目的是在满足一定图像质量条件下,用尽可能少的比特数来表示原始图像,条件下,用尽可能少的比特数来表示原始图像,以提高图像传输的效率和减少图像存储的容量。以提高图像传输的效率和减少图像存储的容量。在信息论中称为信源编码。在信息论中称为信源编码。图像数据压缩技术的重要指标图像数据压缩技术的重要指标(1 1)压缩比压缩比:图像压缩前后所需的信息存储量:图像压缩前后所需的信息存储量之比,压缩比越大越好

9、。之比,压缩比越大越好。(2 2)失真性失真性:压缩前后图像存在的误差大小。:压缩前后图像存在的误差大小。6.2 6.2 图像保真度准则图像保真度准则 描述解码图像相对原始图像偏离程度的测度一般称为保真度。常用的保真度准则可分为两大类:客观保真度准则和主观保真度准则。 6.2.1. 客观保真度准则客观保真度准则 当所损失的信息量可以用初始图像(或输入图像)与先被压缩而后被解压缩的输出图像的函数表示时,它就是基于客观保真度准则的。 常用的两种客观保真度准则常用的两种客观保真度准则 均方根误差 均方根信噪比保真度准则保真度准则6.2.2 6.2.2 主观保真度准则主观保真度准则 很多解压图最终是供

10、人观看的,一种常用的方法是让一组(不少于20人)观察者观察图像并给该图像评分,将他们对该图像的评分取平均,作为这幅图像的质量。 一个主观保真度准则规定为:一个主观保真度准则规定为: 原始图像经编码后成为一串特定的码流,这串码流经解码又成为一幅图像 解码图像与原始图像相同,称编解码过程是无损的;解码图像也可以与原始图像不同,称编解码过程是有损的.2图像编码压缩的分类图像编码压缩的分类 根据解压重建后的图像和原始图像之间是否具有误差,图像编码压缩分为无误差(亦称无失真、无损、信息保持)编码和有误差(有失真或有损)编码两大类。 根据编码作用域划分,图像编码为空间域编码和变换域编码两大

11、类。 图像压缩无损编码有损编码霍夫曼编码行程编码算术编码预测编码变换编码其它编码 无损压缩的必要性无损压缩的必要性 在医疗或商业文件的归档,有损压缩因为法律原因而在医疗或商业文件的归档,有损压缩因为法律原因而被禁止。被禁止。 卫星成像的收集,考虑数据使用和所花费用,不希望卫星成像的收集,考虑数据使用和所花费用,不希望有任何数据损失。有任何数据损失。 X光拍片,信息的丢失会导致诊断的正确性光拍片,信息的丢失会导致诊断的正确性 无损压缩技术无损压缩技术 减少像素间冗余减少像素间冗余 减少编码冗余减少编码冗余无损压缩无损压缩10LiiipBiLiippH210log平均码长 是灰度值为i的编码长度冗

12、余度为 编码效率为 1HBrrBH11 6.2.3 6.2.3 图像冗余度和编码效率图像冗余度和编码效率 根据Shannon无干扰信息保持编码定理,若对原始图像数据的信息进行无失真图像编码,压缩后平均码长存在一个下限,这个下限是图像信息熵H。理论上最佳信息保持编码的平均码长可以无限接近图像信息熵H。但总是大于或等于图像的熵H。i变长最佳编码定理变长最佳编码定理定理定理 在变长码中,对出现概率大的信息符号赋予在变长码中,对出现概率大的信息符号赋予短码字,而对于出现概率小的信息符号赋予长码短码字,而对于出现概率小的信息符号赋予长码字。如果码字长度严格按照所对应符号出现概率字。如果码字长度严格按照所

13、对应符号出现概率大小顺序排列,则编码结果平均码字长度一定小大小顺序排列,则编码结果平均码字长度一定小于任何其它排列方式。于任何其它排列方式。 变长编码变长编码是是统计编码统计编码中最为主要的一种方法中最为主要的一种方法。 6.3 统计编码方法6.3.2 6.3.2 霍夫曼编码霍夫曼编码 Huffman编码是1952年由Huffman提出的一种编码方法。这种编码方法是根据信源数据符号发生的概率进行编码的。思想:在信源数据中出现概率越大的符号,编码以后相应的码长越短;出现概率越小的符号,其码长越长,从而达到用尽可能少的码符表示信源数据。它在无损变长编码方法中是最佳的。通过通过减少编码减少编码冗余来

14、达到压缩的目的。冗余来达到压缩的目的。哈夫曼编码基本思想哈夫曼编码基本思想1) 统计一下符号的出现概率,统计一下符号的出现概率,2) 建立一个概率统计表,建立一个概率统计表, 将最常出现(概率大的)的符号用最短的将最常出现(概率大的)的符号用最短的编码,编码, 最少出现的符号用最长的编码。最少出现的符号用最长的编码。 设输入编码为 ,其频率分布分别为P(x1)=0.4 ,P(x2)=0.3,P(x3)=0.1,P(x4) =0.1,P(x5)=0.06,P(x6)=0.04。求其最佳霍夫曼编码 654321,Xxxxxxx654321,wwwwwwW 编码方法是:把输入符号按出现的概率从大到小

15、排列起来,接着把概率最小的两个符号的概率求和;把它(概率之和)同其余符号概率由大到小排序,然后把两个最小概率求和;重复,直到最后只剩下两个概率为止。 在上述工作完毕之后,从最后两个概率开始逐步向前进行编码。对于概率大的消息赋予0,小的赋予1。Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.0

16、4第一步第一步0.10.1第二步第二步0.1Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.4Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0

17、.0.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101S1=1Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10

18、.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101S2=00Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101S3=011Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步0.40.

19、30.3第四步第四步0.60.40101010101S4=0100Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101S5=01010Huffman编码输入输入S1S2S3S4S5S6输入概率输入概率0.10.060.04第一步第一步0.10.1第二步第二步0.1第三步第三步第四步第四步0.60.40101010101S

20、6=01011元素元素 xi x1 x2 x3 x4 x5 x6概率概率 P(xi) 0.4 0.3 0.1 0.1 0.06 0.04编码编码 wi 1 00 011 0100 01010 01011x1 0.4x2 0.3x3 0.1x4 0.1 x5 0.06 x6 0.04(01010)(01011)(0100)(0101)0.1 0.1 0.1 (010)(011)0.60.4 (00)(01)(0)(1)Huffman编码讨论编码讨论(1) Huffman编码的平均码长接近于熵;编码的平均码长接近于熵;(2)缺点:需要多次排序

21、,耗费时间。)缺点:需要多次排序,耗费时间。62222122261log0.4log 0.40.3log 0.30.1log 0.10.1log 0.1 0.06log 0.060.04log 0.042.14350.4 1 0.3 20.1 30.1 40.06 50.04 52.2iiiiiiHppbitRpbit 用二叉树方法实现Huffman编码方法也较为便利。(P130) 0.60.4 x10.3 x20.3 0.1 x30.2 0.1 x4 0.04 x60 .06 x50.1计算该信源的熵、编码后的平均码长,并思考对于同一图像采用Huffman编码,编码是否唯一? 0 1 0 1

22、 0 1 0 1 0 1 Huffman编码举例 例:对数据序列例:对数据序列 aaaaaaaa bbbbbb cccc d d eeeeeeeeee ffffffffffffff 其概率分布为:其概率分布为: a:4/22 b:3/22 c:2/22a:4/22 b:3/22 c:2/22 d:1/22 e:5/22 f:7/22 d:1/22 e:5/22 f:7/22 概率大小的排序为:概率大小的排序为: d, c, b, a, e, fd, c, b, a, e, f 1/22 2/22 3/22 4/22 5/22 7/221/22 2/22 3/22 4/22 5/22 7/22c

23、bafe7/227/225/225/224/224/222/222/2210f=11 e=01 a=00 b=101 c=1001 d=1000d1/221/223/223/226/226/2222/2222/2213/2213/229/229/223/223/2210101010 Huffman编码举例对这个例子,计算出经过对这个例子,计算出经过HuffmanHuffman编码后编码后的数据为:的数据为: 0000000000000000101101101101101101100110011001100110001000010010101010110101011111111111111111

24、111111111111 共共 7 7* *2+52+5* *2+42+4* *2+32+3* *3+23+2* *4+14+1* *4=4=53 53 bitbit压缩比为压缩比为176176:53=3.32:153=3.32:1f=11 e=01 a=00 b=101 c=1001 d=1000 Huffman编码举例 Huffman编码在图像压缩中的实现 我们知道,对一幅图像进行编码时,如果图像的大小大于256时,这幅图像的不同的码字就有可能是很大,例如极限为256个不同的码字。对整幅图直接进行Huffman编码时,小分布的灰度值,就有可能具有很长的编码。如:100位以上,这样不但达不到

25、压缩的效果反而会使数据量加大,应该如何处理? Huffman编码举例 常用的且有效的方法是: 将图像分割成若干的小块,对每块进行独立的Huffman编码。例如:分成 的子块,就可以大大降低不同灰度值的个数(最多是64而不是256)。88 Huffman编码举例8 8* *8 8分块的编码压缩分块的编码压缩比为比为2.12:12.12:11616* *1616分块的编码分块的编码压缩比为压缩比为1.64:11.64:1全图的编码压全图的编码压缩比为缩比为1.09:11.09:1Huffman编码 图像压缩中的应用题目示例:题目示例:1.有如下信源有如下信源x, u1 u2 u3 u4 u5 u6

26、 u7 u8 P1 P2 P3 P4 P5 P6 P7 P8其中:其中:P10.21, P20.09, P30.11, P40.13, P50.07, P60.12, P70.08, P80.19。将该信源进行哈夫曼编码。将该信源进行哈夫曼编码。2. 设一幅灰度级为设一幅灰度级为8(分别用(分别用S0、S1、S2、S3、S4、S5、 S6、S7表示)的图像中,各灰度所对表示)的图像中,各灰度所对应的概率分别为应的概率分别为0.40、0.18、 0.10、 0.10、 0.07、 0.06、 0.05、0.04。对其进行哈夫曼编码。对其进行哈夫曼编码X3.设有一信源设有一信源X=x1,x2,x3

27、,x4,对应概率,对应概率P=0.5,0.1975,0.1775,0.125.进行霍夫曼编码进行霍夫曼编码(要求大概率的赋码字要求大概率的赋码字0, 小概率小概率的赋码字的赋码字1),给出码字,平均码长,编码效率,给出码字,平均码长,编码效率;对码串对码串10101011010110110000011110011解码解码. 由于霍夫曼编码法需要多次排序,当很多时十分不便,为此费诺(Fano)和香农(Shannon)分别单独提出类似的方法,使编码更简单。具体编码方法如下: 把 按概率由大到小、从上到下排成一列,然后把 分成两组 , , 并使得 把两组分别按0,1赋值。 然后分组、赋值,不断反复,

28、直到每组只有一种输入为止。将每个所赋的值依次排列起来就是费诺香农编码。 nxx ,.,1nxx ,.,1kxx ,.,1nkxx,.,111()()knijijkPxPx 6.3.3香农费诺编码香农费诺编码 以前面哈夫曼编码的例子进行香农费诺编码以前面哈夫曼编码的例子进行香农费诺编码 :输入输入概率概率 x10.40 0 x20.310 10 x30.1100 1100 x40.11 1101x50.0610 1110 x60.041 1111 6.3.5 6.3.5 行程编码行程编码RLE (Run Length Encoding)RLE (Run Length Encoding) 图像中经

29、常包含一些区域,尤其是那些包含很少几个灰图像中经常包含一些区域,尤其是那些包含很少几个灰度级的图像,它们是由具有相同颜色或灰度的相邻像素组成度级的图像,它们是由具有相同颜色或灰度的相邻像素组成的。在一个逐行存储的图像中,具有相同灰度值的一些像素的。在一个逐行存储的图像中,具有相同灰度值的一些像素的序列,称为一个行程。的序列,称为一个行程。 基本原理: 通过改变图像的描述方式,来实现压缩。将一行中颜色值相同的相邻像素用一个计数值和该颜色值来代替。 举例说明:aaaa bbb cc d eeeee fffffff (共22*8=176 bits) 4a3b2c1d5e7f (共12*8=96 bi

30、ts)压缩比为:压缩比为:176:96=1.83:1n行程编码是一种最简单的,在某些场合是非行程编码是一种最简单的,在某些场合是非常有效的一种无损压缩编码方法。常有效的一种无损压缩编码方法。n虽然这种编码方式的应用范围非常有限,但虽然这种编码方式的应用范围非常有限,但是因为这种方法中所体现出的编码设计思想是因为这种方法中所体现出的编码设计思想非常明确,所以在图像编码方法中都会将其非常明确,所以在图像编码方法中都会将其作为一种典型的方法来介绍。作为一种典型的方法来介绍。 二维行程编码 基本概念二维行程编码要解决的核心问题是二维行程编码要解决的核心问题是: : 将二维排列的像素,采用某种方式转化成

31、一将二维排列的像素,采用某种方式转化成一维排列的方式。之后按照一维行程编码方式进行维排列的方式。之后按照一维行程编码方式进行编码。编码。二维行程编码 数据排序如下图所示,是两种典型的二维行程编码的排列如下图所示,是两种典型的二维行程编码的排列方式:方式:(a) (b) 二维行程编码例例:例:130130130129134133129130130130130129134133130130130130130129132132130130129130130129130130129129127128127129131 129131 13012712812712812712813213212512612

32、9129127129133132127125128128126130131131f数据量:数据量:6464* *8=512(bit)8=512(bit)二维行程编码例n 如果按照行扫描的顺序排列的话,数据分布为:如果按照行扫描的顺序排列的话,数据分布为:130130,130130,130130,129129,134134,133133,129129,130130;130130,130130,130130,129129,134134,133133,130130,130130; 130130,130130,130130,129129,132132,132132,130130,130130;1291

33、29,130130,130130,129129,130130,130130,129129,129129;127127,128128,127127,129129,131131,129129,131131,130130;127127,128128,127127,128128,127127,128128,132132,132132;125125,126126,129129,129129,127127,129129,133133,132132;127127,125125,128128,128128,126126,130130,131131,131131二维行程编码例一维行程编码后为一维行程编码后为:

34、:(3 3,130130),(),(1 1,129129),(),(1 1,134134),(),(1 1,133133),(),(1 1,129129),),(4 4,130130),(),(1 1,129129),(),(1 1,134134),(),(1 1,133133),(),(5 5,130130),),(1 1,129129),(),(2 2,132132),(),(2 2,130130),(),(1 1,129129),(),(2 2,130130),),(1 1,129129),(),(2 2,130130),(),(2 2,129129),(),(1 1,127127),(

35、),(1 1,128128),),(1 1,127127),(),(1 1,129129),(),(1 1,131131),(),(1 1,129129),(),(1 1,131131),),(1 1,130130),(),(1 1,127127),(),(1 1,128128),(),(1 1,127127),(),(1 1,128128),),(1 1,127127),(),(1 1,128128),(),(2 2,132132),(),(1 1,125125),(),(1 1,126126),),(2 2,129129),(),(1 1,127127),(),(1 1,129129),(

36、),(1 1,133133),(),(1 1,132132),),(1 1,127127),(),(1 1,125125),(),(2 2,128128),(),(1 1,126126),(),(1 1,130130),),(2 2,131131)数据量为数据量为:46:46* *(3+83+8)=506(bit)=506(bit)压缩比为:压缩比为:512512:506=1.02:1506=1.02:1二维行程编码 例如果按照方式如果按照方式(a)(a)扫描的顺序排列的话,数据分布为:扫描的顺序排列的话,数据分布为:130130,130130,130130,130130,130130,130

37、130,130130,130130,130130;129129,129129,129129,129129,130130,130130,129129;127127,128128,127127,129129,131131,130130,132132,134134,134134;133133,133133,132132,130130,129129,128128,127127,128128,127127,128128,127127,125125,126126,129129,129129;127127,129129,133133,132132,131131,129129,130130,130130;12

38、9129,130130,130130,130130,129129,130130,132132,132132;131131,131131,130130,126126,128128,128128,127127,127127二维行程编码 例一维行程编码为一维行程编码为: :数据量为数据量为:43:43* *(3+83+8)=473(bit) =473(bit) 压缩比为:压缩比为:512512:473=1.08:1473=1.08:1(7 7,130130),(),(2 2,130130),(),(4 4,129129),(),(2 2,130130),(),(1 1,129129););(1 1,127127),(),(1 1,128128),(),(1 1,127127),(),(1 1,129129),(),(1 1,131131),),(1 1,130130),(),(1 1,132132),(),

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论