![jpg文件格式教程_第1页](http://file4.renrendoc.com/view/1a5740079c229fd34966d93f151adfba/1a5740079c229fd34966d93f151adfba1.gif)
![jpg文件格式教程_第2页](http://file4.renrendoc.com/view/1a5740079c229fd34966d93f151adfba/1a5740079c229fd34966d93f151adfba2.gif)
![jpg文件格式教程_第3页](http://file4.renrendoc.com/view/1a5740079c229fd34966d93f151adfba/1a5740079c229fd34966d93f151adfba3.gif)
![jpg文件格式教程_第4页](http://file4.renrendoc.com/view/1a5740079c229fd34966d93f151adfba/1a5740079c229fd34966d93f151adfba4.gif)
![jpg文件格式教程_第5页](http://file4.renrendoc.com/view/1a5740079c229fd34966d93f151adfba/1a5740079c229fd34966d93f151adfba5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Jpg文件格式[参考]微处理机中的存放顺序有正序(bigendian)和逆序(littleendian)之分。正序存放就是高字节存放在前低字节在后,而逆序存放就是低字节在前高字节在后。例如,十六进制数为A02B,正序存放就是A02B,逆序存放就是2BA0。摩托罗拉(Motorola)公司的微处理器使用正序存放,而英特尔(Intel)公司的微处理器使用逆序。JPEG文件中的字节是按照正序排列的。JPEG委员会在制定JPEG标准时,定义了许多标记(marker)用来区分和识别图像数据及其相关信息,但笔者没有找到JPEG委员会对JPEG文件交换格式的明确定义。直到1998年12月从分析网上具体的JPG图像来看,使用比较广泛的还是JPEG文件交换格式(JPEGFileInterchangeFormat,JFIF)版本号为1.02。这是1992年9月由在C-CubeMicrosystems公司工作的EricHamilton提出的。此外还有TIFFJPEG等格式,但由于这种格式比较复杂,因此大多数应用程序都支持JFIF文件交换格式。JPEG文件使用的颜色空间是CCIR601推荐标准进行的彩色空间(参看第7章)。在这个彩色空间中,每个分量、每个像素的电平规定为255级,用8位代码表示。从RGB转换成YCbCr空间时,使用下面的精确的转换关系:Y=256*E'yCb=256*[E']+128CbCr=256*[E']+128Cr其中亮度电平E'和色差电平E'和E'分别是CCIR601定义的参数。由于E'的范围是0,yCbCby1,E'和E'的范围是-0.5,+0.5,因此Y,Cb和Cr的最大值必须要箝到255。于是RGBCbCb和YCbCr之间的转换关系需要按照下面的方法计算。(1)从RGB转换成YCbCrYCbCr(256级)分量可直接从用8位表示的RGB分量计算得到:Y=0.299R+0.587G+0.114BCb=-0.1687R-0.3313G+0.5B+128Cr=0.5R-0.4187G-0.0813B+128需要注意的是不是所有图像文件格式都按照R0,G0,B0,……Rn,Gn,Bn的次序存储样本数据,因此在RGB文件转换成JFIF文件时需要首先验证RGB的次序。(2)从YCbCr转换成RGBRGB分量可直接从YCbCr(256级)分量计算得到:R=Y+1.402(Cr-128)G=Y-0.34414(Cb-128)-0.71414(Cr-128)B=Y+1.772(Cb-128)在JFIF文件格式中,图像样本的存放顺序是从左到右和从上到下。这就是说JFIF文件中的第一个图像样本是图像左上角的样本。2文件结构JFIF文件格式直接使用JPEG标准为应用程序定义的许多标记,因此JFIF格式成了事实上JPEG文件交换格式标准。JPEG的每个标记都是由2个字节组成,其前一个字节是固定值0xFF。每个标记之前还可以添加数目不限的0xFF填充字节(fillbyte)。下面是其中的8个标记:,SOI0xD8图像开始,APP00xE0JFIF应用数据块,APPn0xE1-0xEF其他的应用数据块(n,1,15),DQT0xDB量化表,SOF00xC0帧开始,DHT0xC4霍夫曼(Huffman)表,SOS0xDA扫描线开始,EOI0xD9图像结束为使读者对JPEG定义的标记一目了然,现将JPEG的标记码列于表6-05,并保留英文解释。表6-05JPEG定义的标记SymbolCodeAssignmentDescription(符号)(标记代码)(说明)StartOfFramemarkers,non-hierarchicalHuffmancodingSOF0xFFC0BaselineDCT0SOF0xFFC1ExtendedsequentialDCT1SOF0xFFC2ProgressiveDCT2SOF0xFFC3Spatial(sequential)lossless3StartOfFramemarkers,hierarchicalHuffmancodingSOF0xFFC5DifferentialsequentialDCT5SOF0xFFC6DifferentialprogressiveDCT6SOF0xFFC7Differentialspatiallossless7StartOfFramemarkers,non-hierarchicalarithmeticcodingJPG0xFFC8ReservedforJPEGextensionsSOF0xFFC9ExtendedsequentialDCT9SOF0xFFCAProgressiveDCT10SOF0xFFCBSpatial(sequential)Lossless11StartOfFramemarkers,hierarchicalarithmeticcodingSOF0xFFCDDifferentialsequentialDCT13SOF0xFFCEDifferentialprogressiveDCT14SOF0xFFCFDifferentialspatialLossless15HuffmantablespecificationDHT0xFFC4DefineHuffmantable(s)arithmeticcodingconditioningspecificationDAC0xFFCCDefinearithmeticconditioningtableRestartintervalterminationRSTm0xFFD0,0xFFD7Restartwithmodulo8countermOthermarkerSOI0xFFD8StartofimageEOI0xFFD9EndofimageSOS0xFFDAStartofscanDQT0xFFDBDefinequantizationtable(s)DNL0xFFDCDefinenumberoflinesDRI0xFFDDDefinerestartintervalDHP0xFFDEDefinehierarchicalprogressionEXP0xFFDFExpandreferenceimage(s)APP0xFFE0,0xFFEFReservedforapplicationusenJPG0xFFF0,0xFFFDReservedforJPEGextensionnCOM0xFFFECommentReservedmarkersTEM0xFF01FortemporaryuseinarithmeticcodingRES0xFF02,0xFFBFReservedJPEG文件由下面的8个部分组成:(1)图像开始SOI(StartofImage)标记(2)APP0标记(Marker)?APP0长度(length)?标识符(identifier)?版本号(version)?X和Y的密度单位(units=0:无单位;units=1:点数/英寸;units=2:点数/厘米)?X方向像素密度(Xdensity)?Y方向像素密度(Ydensity)?缩略图水平像素数目(thumbnailhorizontalpixels)?缩略图垂直像素数目(thumbnailverticalpixels)?缩略图RGB位图(thumbnailRGBbitmap)(3)APPn标记(Markers),其中n=1,15(任选)?APPn长度(length)?由于详细信息(applicationspecificinformation)(4)一个或者多个量化表DQT(difinequantizationtable)?量化表长度(quantizationtablelength)?量化表数目(quantizationtablenumber)?量化表(quantizationtable)(5)帧图像开始SOF0(StartofFrame)?帧开始长度(startofframelength)?精度(precision),每个颜色分量每个像素的位数(bitsperpixelpercolorcomponent)?图像高度(imageheight)?图像宽度(imagewidth)?颜色分量数(numberofcolorcomponents)?对每个颜色分量(foreachcomponent),ID,垂直方向的样本因子(verticalsamplefactor),水平方向的样本因子(horizontalsamplefactor),量化表号(quantizationtable#)(6)一个或者多个霍夫曼表DHT(DifineHuffmanTable)?霍夫曼表的长度(Huffmantablelength)?类型、AC或者DC(Type,ACorDC)?索引(Index)?位表(bitstable)?值表(valuetable)(7)扫描开始SOS(StartofScan)?扫描开始长度(startofscanlength)?颜色分量数(numberofcolorcomponents)?每个颜色分量,ID,交流系数表号(ACtable#),直流系数表号(DCtable#)?压缩图像数据(compressedimagedata)(8)图像结束EOI(EndofImage)表6-06表示了APP0域的详细结构。有兴趣的读者可通过UltraEdit或者PCTOOLS等工具软件打开一个JPG图像文件,对APP0的结构进行分析和验证。表6-06JFIF格式中APP0域的详细结构偏长度内容块的名称说明移020xFFD(StartofImage,SOI)图像开始byte8220xFFEAPP0(JFIFapplicationJFIF应用数据块byte0segment)42lengthofAPP0blockAPP0块的长度bytes65"JFIF"+"0"识别APP0标记bytes111<Majorversion>主要版本号(如版本1.02中的1)byte121<Minorversion>次要版本号(如版本1.02中的02)byte131<UnitsfortheXX和Y的密度单位byteandYdensities>units=0:无单位units=1:点数/英寸units=2:点数/厘米142<Xdensity>水平方向像素密度bytes162<Ydensity>垂直方向像素密度bytes181<Xthumbnail>缩略图水平像素数目byte191<Ythumbnail>缩略图垂直像素数目byte3n<ThumbnailRGBbitmap>缩略RGB位图(n为缩略图的像素数)OptionalJFIFextension任选的JFIF扩展APP0标记段APP0markersegment(s)…………20xFFD(EOI)end-of-file图像文件结束标记byte9JPEG文件格式简单分析作者:小爽摘要:这篇文章大体上介绍了JPEG文件的结构信息以及它的压缩算法和编码方式。使读者能够对JPEG文件格式有大体上的了解。为读者进一步进行学习JPEG文件压缩做好准备关键字:十六进制,段格式,编码一、JPEG文件格式概述:图像和动画的存储方式是一个很重要的问题。幸好我们有了数据压缩,有了JPEG等多种压缩存储图像的文件格式,我们今天才能够拿着小小的一个存储器,却存上许多张色彩鲜艳的图片。如果没有图像压缩算法,也许我们的多媒体时代就会晚到来许多年。JPEG图像存储格式一个比较成熟的图像有损压缩格式,虽然一个图片经过转化为JPEG图像后,一些数据会丢失,但是,人眼是很不容易分辨出来这种差别的。也就是说,JPEG图像存储格式既满足了人眼对色彩和分辨率的要求,又适当的去除了图像中很难被人眼所分辨出的色彩,在图像的清晰与大小中JPEG找到了一个很好的平衡点。虽然图像转化为JPEG格式会减小很多,但是并不是文件就变得简单了,相反,JPEG文件的格式是比较复杂的。不经过认真地分析,是不容易弄懂它的。二、JPEG文件的存储方式:JPEG文件的格式是分为一个一个的段来存储的(但并不是全部都是段),段的多少和长度并不是一定的。只要包含了足够的信息,该JPEG文件就能够被打开,呈现给人们。JPEG文件的每个段都一定包含两部分一个是段的标识,它由两个字节构成:第一个字节是十六进制0xFF,第二个字节对于不同的段,这个值是不同的。紧接着的两个字节存放的是这个段的长度(除了前面的两个字节0xFF和0xXX,X表示不确定。他们是不算到段的长度中的)。注意:这个长度的表示方法是按照高位在前,低位在后的,与Intel的表示方法不同。比方说一个段的长度是0x12AB,那么它会按照0x12,0xAB的顺序存储。但是如果按照Intel的方式:高位在后,低位在前的方式会存储成0xAB,0x12,而这样的存储方法对于JPEG是不对的。这样的话如果一个程序不认识JPEG文件某个段,它就可以读取后两个字节,得到这个段的长度,并跳过忽略它。本人曾经编写过一个读取JPEG文件信息的程序,该程序能够读取JPEG文件中包含的段的信息并显示出来。下面是一个JPEG图片的信息片断:SOIAPP0Length:0x10DQTDQT[0]:865812202631667101329302877812202935607911152644503191119283456520121828326152046253239575206003646394925350050Length:0x43DQTDQT[1]:9912245050505091113335050505012132850505050502433505050505050505050505050500505050505050050505050505005005050505025350050Length:0x43SOF0ImageHeight:173ImageWidth:401NumberofFrame(s):3****************ContentID:1HFactor:2VFactor:2QTID:0****************ContentID:2HFactor:1VFactor:1QTID:1****************ContentID:3HFactor:1VFactor:1QTID:1Length:0x11DHTType:DCTABLEID:0Length:0x1fDHTType:ACTABLEID:0Length:0xb5DHTType:DCTABLEID:1Length:0x1fDHTType:ACTABLEID:1Length:0xb5SOSLength:0xc<-WillNotProcessThisSeg.FATALERROR:FileStructureDoesNOTSupport.你首先会想到为什么最后会出现一个错误的信息呢,这是因为,在SOS(StartOfScan)段的后面,就是编码后的一行一行的图像信息。不再是段的结构了。在开始的SOI(StartOfImage)不是一个段,它是文件的开始,它的值也是类似于0xFF,0xXX的结构(SOI的具体数值清自己察看相关书籍,本文章中将不作重点介绍),但是后面没有段的长度。在文件的最后,有一个EOI(EndOfImage)的标识,它的结构和SOI是类似的。它标志着文件的结束。在这中间,包含了APP0段,DQT段,SOF0段,DHT段,SOS段。有的段的个数是不唯一的,比方说DQT段。我们现在重点地介绍各个段的作用。三、JPEG文件中段的介绍:APP0段中主要存储的是图片的识别信息(字符串”JFIF\0”)、一些分辨率的信息以及缩略图的信息。在我的实际测试中,发现并不是所有的JPEG文件都有APP0段的,有的仅是有APP2之类的其他段,但是每个文件中肯定是包含APPX的段(X可以取得的值可以查阅相关文档)。我个人估计,这些APPX的段的信息应该是大同小异。这个的验证还有待本人进一步的学习,目前只能说到这里。DQT段的内容是量化表的信息。众所周知,一个颜色可以分为RGB(红、绿、兰)三个分量,这三色光组成了我们可以见到的所有色彩。但是,在JPEG文件中,RGB色彩格式需要先转化为YUV的格式。Y分量代表了亮度信息,UV分量代表了色差信息。相比之下,人眼对于Y分量更为敏感。量化表的作用就是对于一些不需要的量进行去除,这也是JPEG有损压缩损失数据的关键。上面的输出可以看到两个量化表,一个给Y分量,另一个给UV分量。其实,他们也可以共用一个量化表。一个量化的结果如下所示(摘自《JPEG压缩编码标准》):150-100000-2-1000000-1-10000000000000000000000000000000000000000000000我们可以看到,量化后出现了大量的0,这种结果很有利于我们进行下一步的数据压缩的。至于为什么是8x8的大小,待会你就知道了。SOF0段的内容是图像的大小信息,每个像素的位数信息,以及YUV每个分量分别得的采样信息(这部分如果读者想要进一步学习,请参考相应书籍和文档)。JPEG文件图像的编码是一个方块一个方块进行的,每块的大小为8x8大小(如果图像不是整数个方块的大小那么就对图像补齐为整数个大小)。简略地说采样信息,就是如何按组记录YUV的信息,即若干个Y方块,若干个U方块,若干个V方块经过量化的数据再次经过编码后组成一组记录,保存在SOS段结束后。DHT段的内容是一个重头戏,如果没有它,JPEG压缩效率就不会那么高了。它内部定义的是一个Huffman表,不同的DHT段定义不同的Huffman表,有的是直流量的表,有的是交流量的表。什么是直流量,什么是交流量呢,待会我再作介绍。最多的Huffman表示几个呢,YUV各一个,直流交流各一个,因为YUV每个分量都有直流和交流,所以最多时,Huffman表有3x2个,也就是可以有6个DHT段。该文件中有4个DHT表,您可以大概猜出来是哪几个表么,Y的直流和交流各一个Huffman表,UV和起来直流和交流各一个Huffman表。这样说应该比较合理吧。好了,现在我们应该弄明白什么是交流量,什么是直流量了。还举上面那个有许多个0的8x8的表的例子说,所谓交流量,是经过量化后的块内部除了左上角15那个值的其余值。实际上,块与块之间左上角那个值是用直流Huffman表来单独编码的。不与块内部一同编码。虽然不同的编码,但是要注意的事,不同的编码方式并不意味着它们是不在一起的,具体的存储编码后的数据的时候,还是按照若干个Y方块,若干个U方块,若干个V方块经过量化的数据再次经过编码后组成一组记录来存储的。SOS段的内容是关于YUV每个分量的直流和交流各使用那个Huffman表来编码的。四、JPEG文件十六进制代码解析我觉得,如果想要的了解JPEG,对十六进制代码的观察是必不可少的。不要认为这样有多难,我会让你知道这是很简单的。目前我们只需要了解我们能够了解的东西就可以了。要记住,每个段的开始是0xFF,0xXX,紧接着两个字节是长度信息。可以看到,上图被选定的标记是SOI标记。上图被选定的段是APP0段。紧接着的段是DQT段,这个JPEG文件有两个DQT段。这里需要强调一点的是,包括量化表在内8x8的块的值是按照Z形来保存量化表8x8的数据的。而不是按照一行一行的保存的。这样做的好处是,能够让实际上相邻的像素点保存后也排列得比较近,便于压缩和编码。如下图所示:(摘自《JPEG压缩编码标准》)上图标记的段是DHT段,一共有4个DHT段。这个段是SOS段,在这个段的后面就是所有压缩后的数据。每段的具体信息在这里我就不详细介绍了,网上有很多相关的文章,如果有兴趣的话,可以去查找阅读。五、图像数据块内的编码方式其实,图像数据块的编码是比较麻烦的,它涉及到了行程编码,Huffman编码等编码方式。这部分很多文档说得都不是很清楚,我力求去除内部比较麻烦的部分,再通过简单的语言让大家明白原理,这样大家如果有兴趣进行下一步的研究,也会比较容易上手的。我们还是使用那刚才那个包含很多0的量化后的8x8的数据块来说明。我们把块内剩余的63个数据用行程编码来编码。经过行程编码后的数据的格式是:(x,y)。x表示的是从当前位置开始有多少个连续的零,y表示这些连续的0的后面的第一个非零的数是多少。但是为了解决存储的问题和进行进一步的压缩。最后的压缩格式变为:(x,y)z。xy占有一个字节的长度。z的长度不固定,需要根据y的值来判断。x仍代表从当前位置开始有几个连续的零,但是因为x只能占有四位的长度,也就是它的最大值是15,所以,当多于16个连续的零的时候。会用一个字节的(15,0)来代替前面的16个0,然后继续编码(注意:这时候没有z部分)。当块结束或者当前块后面剩余的都是零的时候,就用(0,0)即EOB代替(同样也是没有z部分)。前面说到z的长度不固定,需要根据y的值来判断,这是为什么呢,简单的来说,z的长度是不一定的,在1~15的范围内。Y的作用简单的来说表示的是z的二进制位数(1~15),也正好是4位二进制的值能够表示的。然后,把xy合成的一个字节单独提取出来,利用DHT里面的Huffman表来进行编码。这样,编码的长度又能够被压缩了。六、总结叙述了这么多,相信大家对于JPEG已经有了一个大概的了解了吧,如果你通过阅读这篇文章,对JPEG文件的结构和算法有了一个大体上的认识,那么这篇文章的目的也就达到了。下一步进行具体研究就不会有太大问题了。祝愿大家能够在数据压缩的路上走好。微处理机中的存放顺序有正序(bigendian)和逆序(littleendian)之分。正序存放就是高字节存放在前低字节在后,而逆序存放就是低字节在前高字节在后。例如,十六进制数为A02B,正序存放就是A02B,逆序存放就是2BA0。摩托罗拉(Motorola)公司的微处理器使用正序存放,而英特尔(Intel)公司的微处理器使用逆序。JPEG文件中的字节是按照正序排列的。JPEG委员会在制定JPEG标准时,定义了许多标记(marker)用来区分和识别图像数据及其相关信息,但笔者没有找到JPEG委员会对JPEG文件交换格式的明确定义。直到1998年12月从分析网上具体的JPG图像来看,使用比较广泛的还是JPEG文件交换格式(JPEGFileInterchangeFormat,JFIF)版本号为1.02。这是1992年9月由在C-CubeMicrosystems公司工作的EricHamilton提出的。此外还有TIFFJPEG等格式,但由于这种格式比较复杂,因此大多数应用程序都支持JFIF文件交换格式。JPEG文件使用的颜色空间是CCIR601推荐标准进行的彩色空间(参看第7章)。在这个彩色空间中,每个分量、每个像素的电平规定为255级,用8位代码表示。从RGB转换成YCbCr空间时,使用下面的精确的转换关系:Y=256*E'yCb=256*[E']+128CbCr=256*[E']+128Cr其中亮度电平E'和色差电平E'和E'分别是CCIR601定义的参数。由于E'的范围是0,1,E'和E'yCbCbyCbCb的范围是-0.5,+0.5,因此Y,Cb和Cr的最大值必须要箝到255。于是RGB和YCbCr之间的转换关系需要按照下面的方法计算。(1)从RGB转换成YCbCrYCbCr(256级)分量可直接从用8位表示的RGB分量计算得到:Y=0.299R+0.587G+0.114BCb=-0.1687R-0.3313G+0.5B+128Cr=0.5R-0.4187G-0.0813B+128需要注意的是不是所有图像文件格式都按照R0,G0,B0,……Rn,Gn,Bn的次序存储样本数据,因此在RGB文件转换成JFIF文件时需要首先验证RGB的次序。(2)从YCbCr转换成RGBRGB分量可直接从YCbCr(256级)分量计算得到:R=Y+1.402(Cr-128)G=Y-0.34414(Cb-128)-0.71414(Cr-128)B=Y+1.772(Cb-128)在JFIF文件格式中,图像样本的存放顺序是从左到右和从上到下。这就是说JFIF文件中的第一个图像样本是图像左上角的样本。2文件结构JFIF文件格式直接使用JPEG标准为应用程序定义的许多标记,因此JFIF格式成了事实上JPEG文件交换格式标准。JPEG的每个标记都是由2个字节组成,其前一个字节是固定值0xFF。每个标记之前还可以添加数目不限的0xFF填充字节(fillbyte)。下面是其中的8个标记:,SOI0xD8图像开始,APP00xE0JFIF应用数据块,APPn0xE1-0xEF其他的应用数据块(n,1,15),DQT0xDB量化表,SOF00xC0帧开始,DHT0xC4霍夫曼(Huffman)表,SOS0xDA扫描线开始,EOI0xD9图像结束为使读者对JPEG定义的标记一目了然,现将JPEG的标记码列于表6-05,并保留英文解释。表6-05JPEG定义的标记SymbolCodeAssignmentDescription(符号)(标记代码)(说明)StartOfFramemarkers,non-hierarchicalHuffmancodingSOF0xFFC0BaselineDCT0SOF0xFFC1ExtendedsequentialDCT1SOF0xFFC2ProgressiveDCT2SOF0xFFC3Spatial(sequential)lossless3StartOfFramemarkers,hierarchicalHuffmancodingSOF0xFFC5DifferentialsequentialDCT5SOF0xFFC6DifferentialprogressiveDCT6SOF0xFFC7Differentialspatiallossless7StartOfFramemarkers,non-hierarchicalarithmeticcodingJPG0xFFC8ReservedforJPEGextensionsSOF0xFFC9ExtendedsequentialDCT9SOF0xFFCAProgressiveDCT10SOF0xFFCBSpatial(sequential)Lossless11StartOfFramemarkers,hierarchicalarithmeticcodingSOF0xFFCDDifferentialsequentialDCT13SOF0xFFCEDifferentialprogressiveDCT14SOF0xFFCFDifferentialspatialLossless15HuffmantablespecificationDHT0xFFC4DefineHuffmantable(s)arithmeticcodingconditioningspecificationDAC0xFFCCDefinearithmeticconditioningtableRestartintervalterminationRSTm0xFFD0,0xFFD7Restartwithmodulo8countermOthermarkerSOI0xFFD8StartofimageEOI0xFFD9EndofimageSOS0xFFDAStartofscanDQT0xFFDBDefinequantizationtable(s)DNL0xFFDCDefinenumberoflinesDRI0xFFDDDefinerestartintervalDHP0xFFDEDefinehierarchicalprogressionEXP0xFFDFExpandreferenceimage(s)APP0xFFE0,0xFFEFReservedforapplicationusenJPG0xFFF0,0xFFFDReservedforJPEGextensionnCOM0xFFFECommentReservedmarkersTEM0xFF01FortemporaryuseinarithmeticcodingRES0xFF02,0xFFBFReservedJPEG文件由下面的8个部分组成:(1)图像开始SOI(StartofImage)标记(2)APP0标记(Marker)?APP0长度(length)?标识符(identifier)?版本号(version)?X和Y的密度单位(units=0:无单位;units=1:点数/英寸;units=2:点数/厘米)?X方向像素密度(Xdensity)?Y方向像素密度(Ydensity)?缩略图水平像素数目(thumbnailhorizontalpixels)?缩略图垂直像素数目(thumbnailverticalpixels)?缩略图RGB位图(thumbnailRGBbitmap)(3)APPn标记(Markers),其中n=1,15(任选)?APPn长度(length)?由于详细信息(applicationspecificinformation)(4)一个或者多个量化表DQT(difinequantizationtable)?量化表长度(quantizationtablelength)?量化表数目(quanti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年患者隐私保护协议与策划
- 2025年企业销售人员招聘合同范例
- 2025年企业人员临时借调合同范文
- 2025年居民安置过渡性协议
- 2025年个人流转养殖水面使用权协议
- 2025年共享发展市场拓展协议
- 2025年产业园区企业使用条款协议
- 2025年医疗设备更新协议文本
- 2025年医院食堂后勤服务合同标准格式
- 农业合作社土地使用权入股框架协议
- 学习解读2025年印发《教育强国建设规划纲要(2024-2035年)》课件
- 全过程造价咨询服务的质量、进度、保密等保证措施
- 县城屠宰场建设可行性研究报告
- 25学年六年级数学寒假作业《每日一练》
- 2025高考数学一轮复习-第8章-第3节 圆的方程【课件】
- DB3301T 1088-2018 杭州龙井茶栽培技术规范
- 环保行业深度研究报告
- 工程机械租赁服务方案及保障措施 (二)
- 保障性住房补贴委托书范本
- DB36T 1393-2021 生产安全风险分级管控体系建设通则
- 公益捐助活动影响力评估方法
评论
0/150
提交评论