|
JPEG文件由八個(gè)部分組成,每個(gè)部分的標(biāo)記字節(jié)為兩個(gè),首字節(jié)固定為:0xFF,當(dāng)然,準(zhǔn)許在其前面再填充多個(gè)0xFF,以最后一個(gè)為準(zhǔn)。下面為各部分的名稱和第二個(gè)標(biāo)記字節(jié)的數(shù)值,用ultraedit的16進(jìn)制搜索功能可找到各部分的起始位置,在嵌入式系統(tǒng)中可用類似的數(shù)值匹配法定位。
一、圖像開始SOI(Start of Image)標(biāo)記,數(shù)值0xD8
二、APP0標(biāo)記(Marker),數(shù)值0xE0
1、APP0長(zhǎng)度(length)
2、標(biāo)識(shí)符(identifier)
3、版本號(hào)(version)
4、X和Y的密度單位(units=0:無(wú)單位;units=1:點(diǎn)數(shù)/英寸;units=2:點(diǎn)數(shù)/厘米)
5、X方向像素密度(X density)
6、Y方向像素密度(Y density)
7、縮略圖水平像素?cái)?shù)目(thumbnail horizontal pixels)
8、縮略圖垂直像素?cái)?shù)目(thumbnail vertical pixels)
9、縮略圖RGB位圖(thumbnail RGB bitmap),由前面的數(shù)值決定,取值3n,n為縮略圖總像素
三、APPn標(biāo)記(Markers),其中n=1~15,數(shù)值對(duì)應(yīng)0xE1~0xEF
1、APPn長(zhǎng)度(length)
2、應(yīng)用細(xì)節(jié)信息(application specific information)
四、一個(gè)或者多個(gè)量化表DQT(difine quantization table),數(shù)值0xDB
1、量化表長(zhǎng)度(quantization table length)
2、量化表數(shù)目(quantization table number)
3、量化表(quantization table)
五、幀圖像開始SOF0(Start of Frame),數(shù)值0xC0
1、幀開始長(zhǎng)度(start of frame length)
2、精度(precision),每個(gè)顏色分量每個(gè)像素的位數(shù)(bits per pixel per color component)
3、圖像高度(image height)
4、圖像寬度(image width)
5、顏色分量數(shù)(number of color components)
6、對(duì)每個(gè)顏色分量(for each component)
包括:ID、垂直方向的樣本因子(vertical sample factor)、水平方向的樣本因子(horizontal sample factor) 、量化表號(hào)(quantization table#)
六、一個(gè)或者多個(gè)霍夫曼表DHT(Difine Huffman Table),數(shù)值0xC4
1、霍夫曼表的長(zhǎng)度(Huffman table length)
2、類型、AC或者DC(Type, AC or DC)
3、索引(Index)
4、位表(bits table)
5、值表(value table)
七、掃描開始SOS(Start of Scan),數(shù)值0xDA
1、掃描開始長(zhǎng)度(start of scan length)
2、顏色分量數(shù)(number of color components)
3、每個(gè)顏色分量
包括:ID、交流系數(shù)表號(hào)(AC table #)、直流系數(shù)表號(hào)(DC table #)
4、壓縮圖像數(shù)據(jù)(compressed image data)
八、圖像結(jié)束EOI(End of Image),數(shù)值0xD9
以上為基本可供檢索的信息,細(xì)節(jié)內(nèi)容不是小篇幅可以說(shuō)清的,那可是一本書中至少一章的內(nèi)容,幾十頁(yè)紙啊,最好到書店去買一本相關(guān)工具書,搞圖像可少不了書的。
解碼程序:http://www.torrancerestoration.com/bbs/dpj-92775-1.html
|
|